O procedimento a seguir descreve como atualizar o Operador Kubernetes para sua versão mais recente. Este processo de atualização é paralelo ao processo de instalação do Kubernetes Operator.
Atualize os Controladores MongoDB para o Operador Kubernetes em Execução no Kubernetes
Observação
Use o mesmo namespace em todo o
Por padrão, o operador do Kubernetes implanta todos os recursos em seu cluster Kubernetes no namespace mongodb. Você pode implantar recursos do Kubernetes operador em um namespace diferente editando todos os valores de metadata.namespace em mongodb-kubernetes.yaml. Você também deve atualizar o valor de subjects[0].namespace em cada RoleBinding e ClusterRoleBinding no mesmo arquivo. Se você omitir esse valor, as vinculações procurarão o ServiceAccount no namespace mongodb padrão e não conseguirão encontrá-lo:
apiVersion: v1kind: ServiceAccountmetadata: name: mongodb-kubernetes-operator namespace: production
apiVersion: rbac.authorization.k8s.io/v1kind: RoleBindingmetadata: name: mongodb-kubernetes-operator namespace: productionroleRef: apiGroup: rbac.authorization.k8s.io kind: Role name: mongodb-kubernetes-operatorsubjects: - kind: ServiceAccount name: mongodb-kubernetes-operator namespace: production
apiVersion: apps/v1kind: Deploymentmetadata: name: mongodb-kubernetes-operator namespace: production
# Example truncatedPersonalize o YAML do Kubernetes Operator antes de atualizá-lo.
Para evitar alterações significativas, você deve selecionar as mesmas configurações que as da implantação existente. Para saber mais sobre as configurações de instalação opcionais do Kubernetes Operator, consulte Configurações de instalação do Operator Helm.
Atualize para a nova versão do Operador Kubernetes.
Preencha o espaço reservado do <version> e execute o seguinte comando do kubectl para implantar sua versão escolhida do Operador Kubernetes para seu cluster Kubernetes:
kubectl apply -f https://raw.githubusercontent.com/mongodb/mongodb-kubernetes/1.4.0/public/mongodb-kubernetes.yamlUse os Charts Helm do MongoDB para Kubernetes.
Atualize para a versão mais recente do MongoDB Helm Charts for Kubernetes.
Execute o seguinte comando para verificar a versão do seu modelo atual do Helm:
helm search repo mongodb/mongodb-kubernetesSe a versão instalada atualmente não for a versão mais recente, execute o seguinte comando para atualizar seu repositório do Helm:
helm repo update mongodbSe você não tiver o repositório Helm instalado localmente, pode instalá-lo executando:
helm repo add mongodb https://mongodb.github.io/helm-chartsPersonalize seu Gráfico Helm antes de atualizá-lo.
Para evitar alterações significativas, você deve selecionar as mesmas configurações que as da implantação existente. Para saber mais sobre as configurações de instalação opcionais do Kubernetes Operator, consulte Configurações de instalação do Operator Helm.
Atualize o operador Kubernetes.
Execute o seguinte comando helm para distribuir o Operador Kubernetes para o namespace padrão no seu cluster Kubernetes:
helm upgrade mongodb-kubernetes-operator mongodb/mongodb-kubernetesVocê pode passar os sinalizadores --namespace e --namespace-create para distribuir o operador Kubernetes em um namespace não padrão, da seguinte forma:
helm upgrade mongodb-kubernetes-operator mongodb/mongodb-kubernetes \--namespace mongodb \--create-namespaceAtualize os Controladores MongoDB para o Operador Kubernetes em Execução no OpenShift
As etapas a seguir dependem de como seu ambiente está configurado:
Observação
Use o mesmo namespace em todo o
Por padrão, o operador do Kubernetes implanta todos os recursos em seu cluster Kubernetes no namespace mongodb. Você pode implantar recursos do Kubernetes operador em um namespace diferente editando todos os valores de metadata.namespace em mongodb-kubernetes-openshift.yaml. Você também deve atualizar o valor de subjects[0].namespace em cada RoleBinding e ClusterRoleBinding no mesmo arquivo. Se você omitir esse valor, as vinculações procurarão o ServiceAccount no namespace mongodb padrão e não conseguirão encontrá-lo:
apiVersion: v1kind: ServiceAccountmetadata: name: mongodb-kubernetes-operator namespace: production
apiVersion: rbac.authorization.k8s.io/v1kind: RoleBindingmetadata: name: mongodb-kubernetes-operator namespace: productionroleRef: apiGroup: rbac.authorization.k8s.io kind: Role name: mongodb-kubernetes-operatorsubjects: - kind: ServiceAccount name: mongodb-kubernetes-operator namespace: production
apiVersion: apps/v1kind: Deploymentmetadata: name: mongodb-kubernetes-operator namespace: production
# Example truncatedPersonalize o Kubernetes Operator YAML antes de atualizá-lo.
Para evitar alterações significativas, você deve selecionar as mesmas configurações que as da implantação existente. Para saber mais sobre as configurações de instalação opcionais do Kubernetes Operator, consulte Configurações de instalação do Operator Helm.
Você deve adicionar seu <openshift-pull-secret> às definições do ServiceAccount :
apiVersion: v1kind: ServiceAccountmetadata: name: enterprise-operator
namespace: mongodb
imagePullSecrets: - name: <openshift-pull-secret>
apiVersion: v1kind: ServiceAccountmetadata: name: mongodb-kubernetes-appdb
namespace: mongodb
imagePullSecrets: - name: <openshift-pull-secret>
apiVersion: v1kind: ServiceAccountmetadata: name: mongodb-kubernetes-database-pods
namespace: mongodb
imagePullSecrets: - name: <openshift-pull-secret>Atualize para a nova versão do Operador Kubernetes.
Preencha o espaço reservado <version> e execute a seguinte operação:
oc apply -f https://raw.githubusercontent.com/mongodb/mongodb-kubernetes/1.4.0/public/mongodb-kubernetes-openshift.yamlAtualize o CustomResourceDefinitions para sistemas do MongoDB .
Execute o seguinte comando oc:
Preencha o espaço reservado <version> e execute o seguinte comando oc para implantar a versão escolhida dos CRDs no cluster do Kubernetes:
oc apply -f https://raw.githubusercontent.com/mongodb/mongodb-kubernetes/1.4.0/public/crds.yamlAtualize para a versão mais recente do MongoDB Helm Charts for Kubernetes.
Execute o seguinte comando para verificar a versão do seu modelo atual do Helm:
helm search repo mongodb/mongodb-kubernetesSe a versão instalada atualmente não for a versão mais recente, execute o seguinte comando para atualizar seu repositório do Helm:
helm repo update mongodbSe você não tiver o repositório Helm instalado localmente, pode instalá-lo executando:
helm repo add mongodb https://mongodb.github.io/helm-chartsPersonalize seu Gráfico Helm antes de atualizá-lo.
Para evitar alterações significativas, você deve selecionar as mesmas configurações que as da implantação existente. Para saber mais sobre as configurações de instalação opcionais do Kubernetes Operator, consulte Configurações de instalação do Operator Helm.
Atualize o operador Kubernetes.
Execute o seguinte comando helm para distribuir o Operador Kubernetes para o namespace padrão no seu cluster Kubernetes:
helm upgrade mongodb-kubernetes-operator mongodb/mongodb-kubernetesVocê pode passar os sinalizadores --namespace e --namespace-create para distribuir o operador Kubernetes em um namespace não padrão, da seguinte forma:
helm upgrade mongodb-kubernetes-operator mongodb/mongodb-kubernetes \--namespace mongodb \--create-namespacePara solucionar problemas do seu operador Kubernetes, consulte Verificar registros do operador Kubernetes e outros tópicos de solução de problemas.
Importante
Se você precisar remover o Kubernetes Operator ou o namespace, primeiro deverá remover os recursos do MongoDB.
Verificar a instalação
Para verificar se o Kubernetes Operator foi instalado corretamente, execute o seguinte comando e verifique o resultado:
kubectl describe deployments mongodb-kubernetes-operator -n <metadata.namespace>oc describe deployments mongodb-kubernetes-operator -n <metadata.namespace>Por padrão, existem sistemas no namespace mongodb . Se a seguinte mensagem de erro aparecer, certifique-se de usar o namespace correto:
Error from server (NotFound): deployments.apps "mongodb-kubernetes-operator" not foundPara solucionar problemas do seu operador Kubernetes, consulte Verificar registros do operador Kubernetes e outros tópicos de solução de problemas.
Importante
Se você precisar remover o Kubernetes Operator ou o namespace, primeiro deverá remover os recursos do MongoDB.
Próximos passos
Depois de atualizar os Controladores MongoDB para Kubernetes Operator, você pode: