El siguiente procedimiento describe cómo actualizar el operador de Kubernetes a su versión más reciente. Este proceso de actualización es similar al de instalación.
Actualizar los controladores MongoDB para el operador de Kubernetes que se ejecuta en Kubernetes
Nota
Se puede usar el mismo namespace siempre
De forma predeterminada, el operador de Kubernetes implementa todos los recursos en su clúster de Kubernetes en namespace mongodbPuede implementar recursos de Kubernetes Operator en un espacio de nombres diferente editando todos los valores de metadata.namespace en mongodb-kubernetes.yaml:
apiVersion: v1 kind: ServiceAccount metadata: name: mongodb-kubernetes-operator namespace: production apiVersion: apps/v1 kind: Deployment metadata: name: mongodb-kubernetes-operator namespace: production # Example truncated ...
Personaliza tu operador de Kubernetes YAML antes de actualizarlo.
Si es necesario, busque el archivo YAML de implementación de ejemplo adecuado para la versión elegida del operador de Kubernetes en el repositorio de GitHub. Luego, para evitar cambios importantes, personalice el archivo YAML de ejemplo para que coincida con los detalles de configuración de su operador de Kubernetes implementado actualmente.
Actualice a la nueva versión del operador Kubernetes.
Implemente su operador de Kubernetes personalizado ejecutando lo siguiente:
kubectl apply -f <customized-operator-yaml-file>.yaml
Si no necesita modificar el YAML de implementación proporcionado, puede aplicarlo directamente de la siguiente manera:
Multi-Clúster
kubectl apply -f https://raw.githubusercontent.com/mongodb/mongodb-kubernetes/1.7.0/mongodb-enterprise-multi-cluster.yaml
Clúster único
kubectl apply -f https://raw.githubusercontent.com/mongodb/mongodb-kubernetes/1.7.0/public/mongodb-kubernetes.yaml
Utiliza los MongoDB Helm Charts para Kubernetes.
Actualice a la última versión de MongoDB Helm Charts para Kubernetes.
Ejecute el siguiente comando para verificar la versión de su plantilla Helm actual:
helm search repo mongodb/mongodb-kubernetes
Si la versión que tiene instalada actualmente no es la última versión, ejecute el siguiente comando para actualizar su repositorio de Helm:
helm repo update mongodb
Si no tiene el repositorio de Helm instalado localmente, puede instalarlo ejecutando:
helm repo add mongodb https://mongodb.github.io/helm-charts
Personaliza tu Helm gráfica antes de actualizarlo.
Para evitar cambios importantes, asegúrese de seleccionar la misma configuración que en su implementación actual. Para obtener más información sobre la configuración opcional de instalación del operador de Kubernetes, consulte Configuración de instalación del timón del operador.
Actualice el operador de Kubernetes.
Ejecuta el siguiente comando helm para implementar el operador de Kubernetes en el namespace por defecto de tu clúster de Kubernetes:
helm upgrade --install mongodb-kubernetes-operator mongodb/mongodb-kubernetes
Puedes pasar las banderas --namespace y --namespace-create para implementar el operador de Kubernetes en un namespace que no esté establecido por defecto, de la siguiente manera:
helm upgrade --install mongodb-kubernetes-operator mongodb/mongodb-kubernetes \ --namespace mongodb \ --create-namespace
Actualice los controladores MongoDB para el operador Kubernetes que se ejecuta en OpenShift
Los siguientes pasos dependen de cómo esté configurado su entorno:
Nota
Se puede usar el mismo namespace siempre
Por defecto, el operador de Kubernetes implementa todos los recursos de tu clúster de Kubernetes en el namespace mongodb. Puedes implementar recursos de operador de Kubernetes en otro namespace diferente editando todos los valores para metadata.namespace en mongodb-kubernetes-openshift.yaml:
apiVersion: v1 kind: ServiceAccount metadata: name: mongodb-kubernetes-operator namespace: production apiVersion: apps/v1 kind: Deployment metadata: name: mongodb-kubernetes-operator namespace: production # Example truncated ...
Personalice el operador YAML de Kubernetes antes de actualizarlo.
Para evitar cambios importantes, asegúrese de seleccionar la misma configuración que en su implementación actual. Para obtener más información sobre la configuración opcional de instalación del operador de Kubernetes, consulte Configuración de instalación de Operator Helm.
Debes agregar tu <openshift-pull-secret> a las ServiceAccount definiciones:
apiVersion: v1 kind: ServiceAccount metadata: name: enterprise-operator namespace: mongodb imagePullSecrets: - name: <openshift-pull-secret> apiVersion: v1 kind: ServiceAccount metadata: name: mongodb-kubernetes-appdb namespace: mongodb imagePullSecrets: - name: <openshift-pull-secret> apiVersion: v1 kind: ServiceAccount metadata: name: mongodb-kubernetes-database-pods namespace: mongodb imagePullSecrets: - name: <openshift-pull-secret>
Actualice CustomResourceDefinitions para las implementaciones de MongoDB.
Ejecute el siguiente comando oc:
Ejecute el siguiente comando oc para implementar la versión elegida de los CRD en su clúster de Kubernetes:
oc apply -f https://raw.githubusercontent.com/mongodb/mongodb-kubernetes/1.7.0/public/crds.yaml
Actualice a la nueva versión del operador Kubernetes.
Ejecuta el siguiente comando oc para implementar tu versión elegida del Operador de Kubernetes en tu clúster de Kubernetes:
oc apply -f https://raw.githubusercontent.com/mongodb/mongodb-kubernetes/1.7.0/public/mongodb-kubernetes-openshift.yaml
Actualice a la última versión de MongoDB Helm Charts para Kubernetes.
Ejecute el siguiente comando para verificar la versión de su plantilla Helm actual:
helm search repo mongodb/mongodb-kubernetes
Si la versión que tiene instalada actualmente no es la última versión, ejecute el siguiente comando para actualizar su repositorio de Helm:
helm repo update mongodb
Si no tiene el repositorio de Helm instalado localmente, puede instalarlo ejecutando:
helm repo add mongodb https://mongodb.github.io/helm-charts
Personaliza tu Helm gráfica antes de actualizarlo.
Para evitar cambios importantes, asegúrese de seleccionar la misma configuración que en su implementación actual. Para obtener más información sobre la configuración opcional de instalación del operador de Kubernetes, consulte Configuración de instalación de Operator Helm.
Actualice el operador de Kubernetes.
Ejecuta el siguiente comando helm para implementar el operador de Kubernetes en el namespace por defecto de tu clúster de Kubernetes:
helm upgrade --install mongodb-kubernetes-operator mongodb/mongodb-kubernetes
Puedes pasar las banderas --namespace y --namespace-create para implementar el operador de Kubernetes en un namespace que no esté establecido por defecto, de la siguiente manera:
helm upgrade --install mongodb-kubernetes-operator mongodb/mongodb-kubernetes \ --namespace mongodb \ --create-namespace
Para solucionar problemas de tu operador de Kubernetes, consulta Revisión de registros del operador de Kubernetes y otros temas de solución de problemas.
Importante
Si necesitas eliminar el operador Kubernetes o el namespace, primero debes eliminar los recursos de MongoDB.
Verifica la instalación
Para verificar que el Operador de Kubernetes se instaló correctamente, ejecuta el siguiente comando y verifica el resultado:
kubectl describe deployments mongodb-kubernetes-operator -n <metadata.namespace>
oc describe deployments mongodb-kubernetes-operator -n <metadata.namespace>
Por defecto, las implementaciones existen en el namespace mongodb. Si aparece el siguiente mensaje de error, asegúrate de utilizar el namespace correcto:
Error from server (NotFound): deployments.apps "mongodb-kubernetes-operator" not found
Para solucionar problemas de tu operador de Kubernetes, consulta Revisión de registros del operador de Kubernetes y otros temas de solución de problemas.
Importante
Si necesitas eliminar el operador Kubernetes o el namespace, primero debes eliminar los recursos de MongoDB.
Próximos pasos
Después de actualizar los controladores MongoDB para el operador de Kubernetes, puede: