Menu Docs

Página inicial do DocsOperador de Kubernetes do MongoDB Enterprise

Notas de versão do MongoDB Enterprise Kubernetes Operator

Nesta página

Lançado 2023-12-21

  • Adiciona suporte para o próximo Ops Manager 7.0 série .x.

  • Corrige um problema que impediu o encerramento correto de um backup.

Lançado em 13/11/2023

  • Corrige um problema ao dimensionar um conjunto de réplicas em um sistema de multikubernetes-cluster quando um cluster de membros perdeu conectividade. A correção aborda os procedimentos de recuperação manuais e automatizados.

  • Corrige um problema em que a alteração dos nomes dos logs de auditoria do agente de automação e do MongoDB impedia que eles fossem enviados para os logs do Pod do Kubernetes. Não há restrições sobre os nomes de arquivos dos logs de auditoria MongoDB a partir do Kubernetes Operator 1.22.

  • Permite que os seguintes novos tipos de registro do contêiner mongodb-enterprise-database fluam diretamente para logs do Kubernetes:

    • agent-launcher-script

    • monitoring-agent

    • backup-agent

  • Corrige um problema que impediu o armazenamento do recurso MongoDBUser no namespace configurado no spec.mongodbResourceRef.namespace.

Lançado em 21/09/2023

O Operador Kubernetes não utiliza mais o estado Reconciling para todos os recursos personalizados. Na maioria dos casos, este estado foi substituído por Pending e uma mensagem correspondente. Se você utilizar ferramentas de monitoramento com os recursos MongoDB personalizados implantados com o Kubernetes Operator, você poderá precisar ajustar seus painéis e regras de alerta para utilizar o nome de estado do Pending.

  • Adiciona um mecanismo de recuperação automática para recursos MongoDB quando um recurso personalizado permanece em um estado Pending ou Failed por um longo período de tempo. Além disso, introduz as seguintes variáveis de ambiente:

    Para saber mais, consulte Recuperar recurso devido a configuração de automação quebrada.

  • Permite rotear os registros de auditoria do recurso MongoDB para os registros do Kubernetes Pod. Certifique-se de gravar os registros de auditoria do recurso MongoDB no arquivo /var/log/mongodb-mms-automation/mongodb-audit.log. O Pod que hospeda o recurso monitora este arquivo e anexa seu conteúdo aos logs do Kubernetes.

    Para enviar registros de auditoria para os registros do pod do Kubernetes, use o seguinte exemplo de configuração no recurso MongoDB:

    spec:
    additionalMongodConfig:
    auditLog:
    destination: file
    format: JSON
    path: /var/log/mongodb-mms-automation/mongodb-audit.log

    As entradas de registro de auditoria das tags do Kubernetes Operator com a chave mongodb-audit nos logs do Pod.

    Para extrair entradas do registro de auditoria, use um comando semelhante ao exemplo a seguir:

    kubectl logs -c mongodb-enterprise-database replica-set-0 | \
    jq -r 'select(.logType == "mongodb-audit") | .contents'

Corrige um problema em que não era possível definir a configuração despec.backup.autoTerminateOnDeletion como true para clusters fragmentados. Essa configuração controla se o Kubernetes Operator interrompe e encerra o backup quando você exclui um recurso do MongoDB. Se omitido, o valor padrão é false.

Lançado em 25/08/2023

  • Renomeia a variável de ambiente CURRENT_NAMESPACE para NAMESPACE. Esta variável acompanha o namespace do Operador Kubernetes. Se você definiu essa variável editando os recursos MongoDB, atualize CURRENT_NAMESPACE para NAMESPACE enquanto atualiza o Operador Kubernetes.

  • Corrige um problema em que os rótulos de substituição StatefulSet falhavam ao substituir o StatefulSet.

  • Suporta a configuração de backups do Banco de Dados do Aplicativo e MongoDB para o recurso MongoDBMultiCluster.

  • Adiciona documentação para configurar um sistema de recursos do MongoDBMultiCluster em um ambiente GitOps. Para saber mais, consulte Configurar recursos para GitOps.

  • Adiciona MetadataWrapper, um invólucro de rótulos e anotações aos recursos MongoDB, MongoDBMultiCluster e MongoDBOpsManager. O invólucro suporta a substituição de metadata.Labels e metadata.Annotations.

  • Corrige um problema que impediu a configuração de um número de porta arbitrário para spec.externalConnectivity.port ao utilizar o tipo de serviço do LoadBalancer para expor o Ops Manager externamente.

  • Corrige um problema que fazia com que o Ops Manager rejeitasse certificados ao permitir que o Kubernetes Operator importasse o appdb-ca, que é um pacote de CAs, para o armazenamento JVM de confiança do Ops Manager.

Lançado em 07/06/2023

Esta versão corrige um problema que impediu a atualização do Kubernetes Operator para 1.20.0 no OpenShift.

  • Remove appdb.connectionSpec.Project, que foi descontinuado há mais de dois anos.

  • Corrige um problema onde o recurso MongoDBMultiCluster falhava em monitorar o ConfigMap de conexão do Ops Manager e o segredo.

  • Corrige o suporte à rotação do segredo clusterfile, que é usado para autenticação X.509 interna nos recursos MongoDB e MongoDBMultiCluster.

  • Adiciona suporte para votos, priority e tags introduzindo as configurações spec.applicationDatabase.memberConfig.votes, spec.applicationDatabase.memberConfig.priority e spec.applicationDatabase.memberConfig.tags.

  • Altera o registro de container para a imagem do aplicativo de banco de dados de quay.io/mongodb/mongodb-enterprise-appdb-database-ubi para quay.io/mongodb/mongodb-enterprise-server. Isso resulta nas seguintes alterações quando você atualiza para esta versão:

    • A configuração de gráfico Helm para a imagem do Banco de Dados do Aplicativo, values.mongodb.name, padrão para mongodb-enterprise-server.

    • O Kubernetes Operator atualiza os pods do seu conjunto de réplicas do aplicativo de banco de dados definidos para utilizar as novas imagens referenciadas na configuração Helm do values.mongodb.name. As novas imagens são funcionalmente equivalentes às anteriores partindo do princípio de que a versão MongoDB é a mesma.

    • O Operador Kubernetes atualiza automaticamente o sufixo de tag para todas as imagens do Banco de Dados de Aplicativo que fazem referência ao novo registro de contêiner de -ent para -ubi8 ou o sufixo definido em MDB_IMAGE_TYPE ou mongodb.imageType. Por exemplo, o Operador Kubernetes altera quay.io/mongodb/mongodb-enterprise-server:4.4.5-ent para quay.io/mongodb/mongodb-enterprise-server:4.4.5-ubi8. Não é necessário atualizar a configuração de applicationDatabase.version no recurso MongoDBOpsManager .

    • Você pode impedir que o Operador Kubernetes atualize automaticamente o sufixo de tag configurando MDB_APPDB_ASSUME_OLD_FORMAT ou mongodb.appdbAssumeOldFormat como true. Por exemplo, talvez você queira interromper a alteração automática do sufixo se estiver espelhando essa imagem a partir do seu próprio repositório.

  • Adiciona suporte para a especificação de versões sem um sufixo em spec.applicationDatabase.version. Por exemplo, você pode especificar uma versão, como 6.0.5, sem adicionar o sufixo -ubi8. O operador Kubernetes converte isso automaticamente para 6.0.5-${MDB_IMAGE_TYPE}. O padrão para a variável do ambiente MDB_IMAGE_TYPE é -ubi8.

  • Altera todas as imagens para referenciar variantes de UBI por padrão. As novas imagens usam o sufixo -ubi.

    • quay.io/mongodb/mongodb-enterprise-database-ubi

    • quay.io/mongodb/mongodb-enterprise-init-database-ubi

    • quay.io/mongodb/mongodb-enterprise-ops-manager-ubi

    • quay.io/mongodb/mongodb-enterprise-init-ops-manager-ubi

    • quay.io/mongodb/mongodb-enterprise-init-appdb-ubi

    • quay.io/mongodb/mongodb-agent-ubi

    • quay.io/mongodb/mongodb-enterprise-appdb-database-ubi

  • Altera o repositório padrão da imagem do aplicativo de banco de dados para usar o repositório oficial do MongoDB Enterprise, definindo values.mongodb.name como quay.io/mongodb/mongodb-enterprise-server por padrão.

  • Introduz a variável de ambiente values.mongodb.imageType para substituir o novo sufixo padrão -ubi8 da marcação de imagem do aplicativo de banco de dados usado pelo recurso MongoDBOpsManager.

Lançado em 07/06/2023

Aviso

Atualização para a versão 1.20.1

Esta versão (1.20.0) está vinculada a uma versão interrompida no OpenShift Marketplace. Não atualize para a versão 1.20.0 e, em vez disso, atualize para a versão 1.20.1.

Lançado em 30/03/2023

Esta versão corrige um problema que impedia a atualização do Operador Kubernetes para a versão 1.19.0. Atualize para esta versão.

Defina o campo data.orgId como obrigatório para o ConfigMap dos recursos do MongoDB. Se você deixar o campo orgId em branco, como mostrado em: orgId = "", o Ops Manager criará a organização com o mesmo nome do projeto. Antes de atualizar o Operador Kubernetes para a versão 1.19.1, defina o valor orgId:"" no ConfigMap do Ops Manager e aplique novamente as configurações.

  • Apresenta sistemas de vários clusters Kubernetes. Para saber mais, consulte Implantar recursos do MongoDB em vários clusters Kubernetes.

    Faz as seguintes alterações no suporte de sistema de vários clusters do Kubernetes em comparação com a versão Beta do suporte de sistema de vários clusters do Kubernetes Operator 1.18.x:

    • Renomeia o recurso MongoDBMulti nas versões Beta para o recurso MongoDBMultiCluster.

    • Renomeia o nome do atalho do recurso MongoDBMultiCluster para mdbmc. Use este nome de atalho em todos os comandos no recurso MongoDBMultiCluster. Por exemplo, para verificar o status do seu recurso do MongoDBMultiCluster, execute:

      kubectl get mdbmc <resource-name> -o yaml -w
    • Renomeia a ferramenta "CLI de vários clusters" para o "plug-in kubectl mongodb". Para saber mais, consulte a Referência de plug-ins do MongoDB.

    • Remove o objeto intermediário desnecessário clusterSpecs do clusterSpecList na especificação do recurso MongoDBMultiCluster. Para obter um exemplo válido de um arquivo de configuração de recurso MongoDBMultiCluster, consulte a Especificação de recursos multi-Kubernetes-cluster.

  • Adiciona suporte para Kubernetes 1.26 e OpenShift 4.12. Para saber mais, consulte Compatibilidade do operador MongoDB Enterprise Kubernetes.

  • Permite configurar podSpec por shard em um cluster fragmentado MongoDB especificando uma array de podSpecs na configuração spec.shardSpecificPodSpec para cada shard.

  • Torna o campo data.orgId exigido para o ConfigMap dos recursos do MongoDB. Se você fornecer um orgId vazio, como em: orgId = " ", o Ops Manager criará uma organização com o nome do projeto.

  • Adiciona documentação para a Especificação de Recursos Multi-Kubernetes-Cluster.

  • Adiciona as Perguntas frequentes do Kubernetes Operator à documentação.

  • Adiciona documentação para configurar armazenamentos de backup do sistema de arquivos nos sistemas do MongoDB do Kubernetes Operator.

  • Corrige o manuseio da variável de ambiente do WATCH_NAMESPACE='*' para sistemas de multikubernetes-cluster. Nos seguintes casos, os clientes de API para clusters de membros são configurados incorretamente, resultando em erros de sistema:

    • A variável de ambiente WATCH_NAMESPACE='*' é especificada para a implantação de clusters multikubernetes.

    • Um espaço de nome específico é configurado no kubeconfig para agrupamentos de membros.

    • O plugin kubectl mongodb não é utilizado para configurar sistemas de multikubernetes-cluster.

    Isso leva aos seguintes erros:

    The secret object 'mdb-multi-rs-cert' does not contain all the valid
    certificates needed: secrets "mdb-multi-rs-cert-pem" already exists

    Para evitar este problema, configure a variável de ambiente do WATCH_NAMESPACE para namespaces específicos em vez do '*' e verifique se as configurações do kubeconfig para clusters de membros não especificam um namespace. Para definir o namespace para sistemas de vários clusters do Kubernetes, consulte Definir o escopo do sistema e a Referência do plug-in do MongoDB.

  • Corrige um problema quando CertificatesSecretsPrefix é definido, mas nenhuma configuração spec.security.tls relacionada, como tls.additionalCertificateDomains ou tls.ca, é fornecida.

  • Corrige um problema que permite especificar explicitamente o valor none para spec.security.authentication.ldap.transportSecurity quando o TLS não é usado. Antes, o Kubernetes Operator tratava esta definição como none quando você omitiu o valor e não especificou o valor tls , mas o Kubernetes Operator não permitiu que você especificasse o valor none explicitamente.

Lançado em 28/03/2023

Aviso

Não faça upgrade para o 1.19.0. Em vez disso, atualize para 1.19.1

Esta versão está vinculada a uma versão interrompida no Openshift Marketplace. Não atualize para esta versão (1.19.0) e, em vez disso, atualize para a versão do Kubernetes Operator 1.19.1.

Esta versão remove imagens baseadas no Ubuntu. As imagens baseadas em Ubunts foram preteridas a favor de imagens baseadas em UBI no Operador Kubernetes em 1.17.0. Migre o operador Kubernetes de imagens baseadas em Ubuntu para imagens baseadas em UBI. Todas as imagens existentes baseadas no Ubuntu continuarão a receber suporte até as datas de fim de vida (EOL)de suas versões .

Lançado em 29/12/2022

  • Corrige o problema em que você configura uma sonda de noite e ele relata um resultado positivo quando você encerra o processo de um MongoDB Agent. Isso pode fazer com que os Pods que hospedam recursos MongoDB sejam executados sem o MongoDB Agent. Além desta correção, considere a possibilidade de configurar substituições da sonda de prontidão.

  • Corrige o roteiro de inicialização no Pod do banco de dados que pode relatar erros quando o Pod é reiniciado.

Lançado em 18/10/2022

  • Corrige o problema de instalação do OpenShift mencionado nas notas de versão v1.17.1. O gráfico de atualização do Kubernetes Operator Lifecycle Manager ignora automaticamente a versão v1.17.1 e executa uma atualização da v1.17.0 diretamente para esta versão.

  • Melhora a confiabilidade das atualizações, adicionando sondagens de inicialização para os recursos personalizados do MongoDB e do OpsManager com alguns padrões. Use spec.podSpec.podTemplate para substituir as configurações da sondagem.

Lançado em 10/10/2022

Aviso

Instalações para OpenShift

Esta versão tem resumos quay.io inválidos referenciados no CSV do pacote certificado. Isso afeta somente as implantações do OpenShift quando você instala ou atualiza o operador Kubernetes do pacote certificado (OperatorHub) em quay.io.

Se você usa o Kubernetes Operator com o OpenShift, recomendamos que NÃO atualize para esta versão (v1.17.1) e, em vez disso, atualize para o Kubernetes Operator v1.17.2, que deve ser lançado na semana que começa em 17 de outubro de 2022.

Como resultado desse problema, a instalação dessa versão pode resultar em erros ImagePullBackOff nos Pods que hospedam o AppDB, o banco de dados do Ops Manager. Os erros serão semelhantes aos seguintes:

Failed to pull image "quay.io/mongodb/mongodb-agent-ubi@sha256:a4cadf209ab87eb7d121ccd8b1503fa5d88be8866b5c3cb7897d14c36869abf6": rpc error: code = Unknown desc = reading manifest sha256:a4cadf209ab87eb7d121ccd8b1503fa5d88be8866b5c3cb7897d14c36869abf6 in quay.io/mongodb/mongodb-agent-ubi: manifest unknown: manifest unknown

Para continuar usando o Operador Kubernetes v1.17.1, use a seguinte solução alternativa e atualize a Assinatura do Operador Kubernetes com o seguinte spec.config.env:

spec:
config:
env:
- name: AGENT_IMAGE
value: >-
quay.io/mongodb/mongodb-agent-ubi@sha256:ffa842168cc0865bba022b414d49e66ae314bf2fd87288814903d5a430162620
- name: RELATED_IMAGE_AGENT_IMAGE_11_0_5_6963_1
value: >-
quay.io/mongodb/mongodb-agent-ubi@sha256:e7176c627ef5669be56e007a57a81ef5673e9161033a6966c6e13022d241ec9e
- name: RELATED_IMAGE_AGENT_IMAGE_11_12_0_7388_1
value: >-
quay.io/mongodb/mongodb-agent-ubi@sha256:ffa842168cc0865bba022b414d49e66ae314bf2fd87288814903d5a430162620
- name: RELATED_IMAGE_AGENT_IMAGE_12_0_4_7554_1
value: >-
quay.io/mongodb/mongodb-agent-ubi@sha256:3e07e8164421a6736b86619d9d72f721d4212acb5f178ec20ffec045a7a8f855

Remova esta solução assim que instalar o novo Kubernetes Operator v1.17.2.

Esta versão tem a seguinte alteração de quebra adicional:

  • Remove o parâmetro operator.deployment_name dos gráficos do Helm do Operador Kubernetes. Em versões anteriores, você pode ter usado esse parâmetro para personalizar o nome do contêiner do Operador Kubernetes.

    A partir desta versão, o valor do Helm chart parameter operator.name determina o nome do contêiner Kubernetes Operator.

    Essa é uma alteração de ruptura somente se você definir operator.deployment_name com um valor diferente de operator.name e se tiver configurado as ferramentas para depender do valor de operator.deployment_name.

  • Utiliza Quay como um registro de imagem para o Kubernetes Operator no OpenShift. Quando você atualiza seu sistema do Kubernetes Operator, ele obtém automaticamente novas imagens do Quay. Você não precisa tomar nenhuma medida.

Lançado em 19/09/2022

Esta versão:

  • Remove o suporte para o Ops Manager 4.4 devido ao seu fim de vida útil. Se você estiver utilizando o Ops Manager 4.4, atualize para uma versão mais nova do Ops Manager antes de atualizar para o Kubernetes Operator 1.17.

  • Descontinua imagens baseadas em Ubuntu. Começando com o Kubernetes Operator 1.19.0, Imagens baseadas em Ubunts não serão mais disponibilizadas. Todas as imagens existentes baseadas no Ubuntu continuarão a ser suportadas até as datas de fim de vida útil (EOL) de sua versão. Recomendamos fortemente que você Migre o MongoDB Enterprise Kubernetes Operator de Imagens baseadas em Ubunts para Imagens baseadas em UBI o mais rápido possível.

  • Remove o suporte para certificados TLS no formato PEM concatenado. Esses certificados foram preteridos no Kubernetes Operator 1.13.0. Se você quiser usar esses certificados, a última versão para a qual você pode atualizar é o Kubernetes Operator 1.16.4.

    A partir da versão do Kubernetes Operator 1.17.0, você deve migrar manualmente os segredos TLS de estilo antigo de segredos do Opaque para kubernetes.io/tls, criando novos segredos que contêm os certificados relevantes e chaves de assinatura. Para saber como criar esses segredos, consulte os seguintes recursos:

Lançado em 03/08/2022

  • Os binários Init-Ops Manager e Operator agora usam o Go 1.18.4, que aborda questões de segurança.

Lançado em 15/07/2022

  • Foi corrigido um bug em que securityContext definido no nível do Pod não era respeitado, pois o Kubernetes Operator o substituía por um securityContext no nível do container. Para saber mais, consulte a descrição da configuração spec.persistent .

  • Adiciona campos timeoutMS e userCacheInvalidationInterval ao objeto spec.security.authentication.ldap.

  • Corrige o comportamento em que a configuração additionalMongodConfig.net.tls.mode era ignorada para objetos mongos, configSrv e shard ao configurar recursos ShardedCluster.

Lançado em 28/06/2022

Aviso

Mudanças de última hora

Esta versão remove a computação de cache do WiredTiger, necessária para versões do MongoDB anteriores à 4.0.9. Antes de atualizar para esta versão, você deve atualizar seu sistema do banco de dados para utilizar MongoDB versão 4.0.9 ou posterior.

Para saber como atualizar sua implantação, consulte Atualizar versão MongoDB e FCV.

  • Remove as configurações spec.podSpec.podAntiAffinityTopologyKey, spec.podSpec.podAffinity e spec.podSpec.nodeAffinity.

    Em vez disso, utilize spec.podSpec.podTemplate para configurar estes parâmetros.

  • Remove as configurações spec.applicationDatabase.podSpec.podAntiAffinityTopologyKey, spec.applicationDatabase.podSpec.podAffinity e spec.applicationDatabase.podSpec.nodeAffinity.

    Em vez disso, utilize spec.applicationDatabase.podSpec.podTemplate para configurar estes parâmetros.

Suporte adicionado para autenticação de cliente LDAP e para gerenciar usuários do banco de dados com LDAP para sistemas de multikubernetes-cluster.

Essa funcionalidade é uma versão beta. Use implantações de clusters multi-Kubernetes somente em ambientes de desenvolvimento.

Lançado em 24/05/2022

Lançado em 29/04/2022

  • Remove o parâmetro spec.security.tls.secretRef.name.

    • O Kubernetes Operator versão v1.10.0 depreciou este parâmetro.

    • Para especificar o nome secreto contendo o certificado para o banco de dados, utilize spec.security.certsSecretPrefix.

    • Crie o segredo contendo os certificados adequadamente.

  • Remove os parâmetros spec.podSpec.cpu e spec.podSpec.memory.

    Para substituir os recursos de memória/CPU do pod do banco de dados, configure o parâmetro statefulset em spec.podSpec.podTemplate.spec.containers.

  • Propaga rótulos personalizados especificados em metadata.labels para o banco de dados StatefulSet e o os objetos Persistent Volume Claim.

  • Permite adicionar endpoints de scraping Prometheus aos recursos MongoDB utilizando o atributo de configuração spec.prometheus.

    • Encontre um exemplo de configuração do Prometheus no repositório do GitHub.

  • Remove o parâmetro spec.applicationDatabase.security.tls.secretRef.name.

    • O Kubernetes Operator versão v1.10.0 depreciou este parâmetro.

    • Para especificar o nome secreto contendo o certificado para AppDB, utilize o parâmetro spec.applicationDatabase.security.certsSecretPrefix.

    • Crie o segredo contendo os certificados adequadamente.

  • Remove spec.applicationDatabase.podSpec.cpu e spec.applicationDatabase.podSpec.memory.

    Para substituir os recursos de memória e a CPU do pod appDB, use o parâmetro statefulset no spec.applicationDatabase.podSpec.podTemplate.spec.containers.

  • Propaga rótulos personalizados especificados em metadata.labels ao Ops Manager, AppDB e BackupDaemon StatefulSets e os objetos Persistent Volume Claim.

  • Permite adicionar endpoints de limpeza Prometheus aos recursos do ApplicationDatabase utilizando o atributo de configuração do spec.applicationDatabase.prometheus.

Adiciona o parâmetro opcional spec.connectionStringSecretName. Esse parâmetro fornece um nome secreto determinístico para o segredo da cadeia de conexão específica do usuário que o Kubernetes Operator gera.

Lançado em 24/03/2022

Lançado em 04/032022

  • Os binários Init-database, Init-Ops-Manager e Operator agora usam o Go 1.17.7 para impedir CVE-2022-23773.

  • Corrige um problema que impedia o upgrade do Operator ao gerenciar um ApplicationDB habilitado para TLS cujo certificado TLS é armazenado em um Secret do tipo Opaque.

Lançado em 11/02/2022

A versão 1.15.1 do operador Kubernetes corrige um problema que impedia a atualização do operador Kubernetes ao gerenciar um aplicativo de banco de dados habilitado para TLS cujo certificado TLS é armazenado em um segredo Opaco.

Recomendamos que você atualize para o Kubernetes Operator versão 1.16.0 ou posterior.

Desaconselhamos a atualização para as versões 1.14.0 e 1.15.0 do Operador Kubernetes.

  • Os campos spec.security.tls.enabled e spec.security.tls.secretRef.prefix agora estão obsoletos e serão removidos em uma versão futura.

    Para habilitar o TLS para recursos do banco de dados MongoDB, forneça um valor para o campo spec.security.certsSecretPrefix.

  • Adiciona o campo spec.backup.queryableBackupSecretRef. O valor deste campo faz referência a um secreto que armazena certificados para Backups desejáveis.

  • Adiciona dois campos para habilitar o suporte para configurar certificados TLS personalizados para o Oplog S3 e Armazenamentos de Instantâneos para cópia de segurança: spec.security.tls.ca e spec.security.tls.secretRef.

  • Adiciona a capacidade de fazer backup de bancos de dados de aplicativos. Para fazer backup de um banco de dados de aplicativo, primeiro desative seus processos usando o campo spec.applicationDatabase.automationConfig.processes[n].disabled.

  • Os campos spec.security.tls.enabled, spec.security.tls.secretRef.prefix, spec.applicationDatabase.security.tls.enabled e spec.applicationDatabase.security.tls.prefix estão agora descontinuados e serão removidos em uma versão futura.

    Para habilitar o TLS para recursos do Ops Manager, forneça um valor para o campo spec.security.certsSecretPrefix.

    Para ativar o TLS para os recursos do banco de dados de aplicativos, forneça um valor para o campo spec.applicationDatabase.security.certsSecretPrefix.

Encontre todas as novas imagens em:

Lançado em 16/12/2021

A versão 1.15.1 do operador Kubernetes corrige um problema que impedia a atualização do operador Kubernetes ao gerenciar um aplicativo de banco de dados habilitado para TLS cujo certificado TLS é armazenado em um segredo Opaco.

Recomendamos que você atualize para o Kubernetes Operator versão 1.16.0 ou posterior.

Desaconselhamos a atualização para as versões 1.14.0 e 1.15.0 do Operador Kubernetes.

  • Esta versão adiciona a configuração spec.backup.autoTerminateOnDeletion, que indica se o Operador Kubernetes deve parar e encerrar a cópia de segurança quando você excluir o recurso MongoDB.

  • Corrige um problema que fazia com que um recurso ShardedCluster falhasse ao desativar a autenticação.

  • Esta versão adiciona a capacidade de configurar armazenamento de oplog S3 utilizando a configuração do spec.backup.s3OpLogStores.name e outras configurações relacionadas.

  • Corrige um problema que impedia o Operador Kubernetes de acionar uma reconciliação de recursos ao girar o certificado TLS do banco de dados da aplicação.

  • Corrige um problema onde o Operador Kubernetes não montou o CA personalizado especificado no recurso MongoDBOpsManager no Backup Daemon Pod. Esse problema impedia o funcionamento dos backups quando você configurava o Ops Manager para ser executado no modo híbrido e usava uma CA personalizada.

Lançado em 21/10/2021

Aviso

Mudanças de última hora

O Operador Kubernetes não gera mais certificados TLS para recursos MongoDB e MongoDBOpsManager.

Importante

Aviso de depreciação

Esta versão substitui os segredos de tipo genérico para certificados TLS.

  • O operador Kubernetes agora suporta segredos TLS do kubernetes.io/tls tipo.

    • O Kubernetes Operator lê esses segredos e gera automaticamente novos arquivos .pem que contêm os campos tls.crt e tls.key concatenados quando você atualiza esses segredos.

    • Isso elimina a necessidade de concatenar manualmente esses vales para criar arquivos .pem e permite que você faça referência nativa a segredos que as ferramentas nativas do Kubernetes, como o cert-manager, geram.

  • Para recursos habilitados para TLS , o operador agora observa o ConfigMap que contém a CA e os segredos que contêm certificados TLS. As alterações nestes ConfigMaps e segredos agora desencadeiam uma reconciliação do recurso relacionado.

Aviso

Mudanças de última hora

Esta versão remove a configuração spec.project da especificação de recursos de banco de dados MongoDB.

Se suas especificações de recursos MongoDB usarem a configuração spec.project, atualize suas especificações para usar spec.opsManager.configMapRef.name ou spec.cloudManager.configMapRef.name antes de atualizar o Operador Kubernetes para a versão 1.13.0 ou posterior.

  • Corrige um problema onde as cópias de segurança do cluster fragmentado não puderam ser configuradas corretamente usando as especificações de recurso do MongoDB.

  • Corrige um problema onde o Backup Daemon falha ao iniciar após você atualizar um sistema do Ops Manager atualizando o spec.version.

  • O Operador Kubernetes agora relata o status de armazenamentos de snapshots do sistema de arquivo que você configura na configuração do spec.backup.fileSystemStores na especificação de recurso do MongoDBOpsManager .

    Você deve configurar manualmente os armazenamentos de snapshots do sistema de arquivos.

  • Esta versão adiciona um novo campo, spec.backup.externalServiceEnabled, à especificação do recurso MongoDBOpsManager.

    Por padrão, o Kubernetes Operator cria um serviço LoadBalancer quando você habilita queryable backups.

    Defina spec.backup.externalServiceEnabled como false antes de ativar os queryable backups para evitar que o Operador Kubernetes crie um serviço LoadBalancer.

  • O Operador Kubernetes agora atualiza automaticamente chaves de API pessoais para chaves de API programáticas quando você atualiza um sistema do Ops Manager para a versão 5.0.0 ou posterior. Você não deve mais alterar as chaves manualmente para atualizar seu sistema.

  • Esta versão adiciona o campo spec.security.certsSecretPrefix para determinar o nome que você deve fornecer ao segredo que contém seu certificado TLS para recursos do MongoDBOpsManager.

    Para saber mais, consulte spec.security.certsSecretPrefix e a guia HTTPS no tutorial Implantar um recurso do Ops Manager.

Aviso

Mudanças de última hora

Esta versão remove a configuração espec.project da MongoDBUser CustomResourceDefinition.

Se suas especificações de recursos MongoDBUser usarem a configuração spec.project, atualize suas especificações para usar spec.MongoDBResourceRef.name antes de atualizar o Kubernetes Operator para a versão 1.13.0 ou posterior.

  • Gerente de operações 4.4.7, 4.4.9, 4.4.10, 4.4.11, 4.4.12 e 4.4.13 as imagens base foram atualizadas para o Ubuntu 20.04.

  • As versões 4.4.16 e 5.0.1 do Ops Manager agora são compatíveis.

Lançado em 15/07/2021

  • Se você definir spec.externalConnectivity como false depois que ele foi definido como true, o Kubernetes Operator excluirá o serviço correspondente.

  • Se você definir spec.externalConnectivity como false depois que ele foi definido como true, o Kubernetes Operator excluirá o serviço correspondente.

  • Você pode especificar o número de pods daemon de backup com spec.backup.members. Se não for definido, o valor padrão será 1.

  • O Operador Kubernetes agora suporta as seguintes versões do Ops Manager:

    • 4.4.13, 4.4.14, 4.4.15, 4.2.25 e 5.0.0.

  • Antes de atualizar o Ops Manager para a versão 5.0.0, verifique se o Kubernetes Operator usa uma chave de API programática.

  • As imagens do Operador de Kubernetes baseados em Ubuntu são agora baseadas em Ubuntu 20.04 em vez de Ubuntu 16.04.

  • Imagens MongoDB baseadas em Ubuntu a partir de 2.0.1 são baseadas em Ubuntu 18,04 ao invés de Ubuntu 16.04.

    Aviso

    MongoDB 4.0. não suporta Ubuntu 18.04

    MongoDB 4.0. não suporta o Ubuntu 18.04. Se você deseja usar MongoDB 4.0. com o Operador Kubernetes, use imagens lançadas anteriormente.

  • As imagens do gerente de operações baseado em Ubuntu após 4.4.13 são baseadas em Ubuntu 20.04 em vez de Ubuntu 16.04.

  • As imagens UBI recém-lançadas para o Kubernetes Operator, Ops Manager e MongoDB são baseadas em ubi-minimal em vez de ubi.

Lançado em 03/06/2021

Remove o tópico " Migrar para um recurso por projeto (necessário para a versão 1.3.0) " da documentação atual porque v.1.3.0 é EOL. Este tópico foi arquivado.

  • Corrige um problema da Liveness Probe que ocasionalmente reiniciava os Pods do banco de dados durante um processo de restauração de backup.

Aviso

Mudanças de última hora

  • A partir desta versão, você pode usar qualquer versão do MongoDB para o aplicativo de banco de dados. Você deve especificar esta versão explicitamente quando distribuir o recurso MongoDBOpsManager.

  • Para atualizar o Operador Kubernetes, você deve especificar a versão do banco de dados do aplicativo. Verifique se spec.applicationDatabase.version tem um valor em seus arquivos de configuração para o sistema do recurso personalizado MongoDBOpsManager.

  • Cada Pod de Aplicativo de Banco de Dados agora contém os seguintes contêineres (em vez de um único contêiner com uma versão MongoDB em pacote das versões anteriores):

    • mongodb

    • mongodb-agent

    • mongodb-agent-monitoring

  • A configuração spec.applicationDatabase.persistent é removida. O Operador Kubernetes sempre utiliza volumes persistentes para o Banco de Dados de Aplicativos implantado por seus recursos personalizados do MongoDBOpsManager.

Lançado em 25/03/2020

  • Atualiza CustomResourceDefinitions da v1beta1 versão para a v1 versão . Os clusters no Kubernetes 1.16 e superior não devem ser afetados. As CustomResourceDefinitions não é possível instalar em clusters em versões do Kubernetes inferiores a 1.16.

  • Corrige um problema que impedia que vários recursos do Ops Manager tivessem o mesmo nome em namespaces diferentes.

  • Corrige um problema que fez com que novos recursos MongoDB criados com spec.backup.mode=disabled falhassem.

  • Corrige um problema ao salvar as alterações na página S3 Store.

  • Corrige um problema que alterou o status do conjunto de réplica para Fail, aumentou o número de membros do conjunto de réplicas e desabilitou o TLS.

  • Quando utiliza o modo remoto ou híbrido e configura o automation.versions.download.baseUrl, você deve configurar a propriedade automation.versions.download.baseUrl.allowOnlyAvailableBuilds para false. Ops Manager 4.4.11 corrige esse problema.

Lançado em 05/02/2020

Corrige erros no CSV (isso só afeta o mercado Red Hat)

  • Você não pode usar MongoDB 4.4 como um banco de dados de aplicativos para um recurso do Ops Manager.

  • mongodb-enterprise-operator:1.9.2

Você pode encontrar todas as imagens nos seguintes registros:

Lançado em 15/01/2020

  • Corrige um problema onde você não pôde especificar o service-account-name na substituição do StatefulSet podSpec.

  • Remove a permissão delete service desnecessária da função Operador.

Aviso

Mudanças de última hora

Esta versão introduz:

  • Uma nova imagem do banco de dados de aplicativos, mongodb-enterprise-appdb:10.2.15.5958-1_4.2.11-ent. A imagem inclui MongoDB 4.2.11-ent em vez de 4.2.2-ent. Você deve enviar a nova imagem para quaisquer repositórios privados que sua instalação do Kubernetes Operator utilizar, caso contrário, o recurso MongoDBOpsManager não iniciará.

  • Uma nova variável de ambiente exigida, APPDB_AGENT_VERSION. Se você não definir APPDB_AGENT_VERSION, o recurso MongoDBOpsManager não poderá buscar a versão do MongoDB Agent para o Banco de Dados de Aplicativos.

  • Você não pode usar MongoDB 4.4 como um banco de dados de aplicativos para um recurso do Ops Manager.

  • mongodb-enterprise-operator:1.9.1

  • mongodb-enterprise-appdb:10.2.15.5958-1_4.2.11-ent

  • mongodb-enterprise-init-appdb:1.0.2

  • mongodb-enterprise-init-database:1.0.6

Você pode encontrar todas as imagens nos seguintes registros:

Lançado em 08/12/2020

  • Corrige um problema em que o Kubernetes Operator não fechava conexões com o Ops Manager, causando muitos descritores de arquivo abertos.

  • Agora você pode configurar o backup contínuo para um recurso de banco de dados do MongoDB em seu CustomResourceDefinition.

    Observação

    Para habilitar o backup contínuo no MongoDB CustomResourceDefinition, é necessário enable backup em uma instância do Ops Manager que você implantou usando o Operador Kubernetes.

  • Você não pode usar MongoDB 4.4 como um banco de dados de aplicativos para um recurso do Ops Manager.

  • Quando você atualiza o Operador Kubernetes para esta versão, o Operador Kubernetes exclui e recria o statefulset do Backup Daemon.

    Esta é uma operação segura.

    O novo serviço Kubernetes que habilita queryable backups requer uma alteração no atributo matchLabels Backup Daemon StatefulSet .

  • O operador Kubernetes altera a forma como coleta o status dos MongoDB Agents no banco de dados de aplicativos Pods.

  • mongodb-enterprise-operator:1.9.0

Você pode encontrar todas as imagens nos seguintes registros:

Lançado em 16/11/2020

  • Você não pode usar MongoDB 4.4 como um banco de dados de aplicativos para um recurso do Ops Manager.

Corrige um problema onde o recurso do Gerente de Operações alcançaria um estado do Failing quando ambos spec.externalConnectivity e spec.backup.enabled estivessem habilitados.

Lançado em 13/11/2020

  • Você não pode usar MongoDB 4.4 como um banco de dados de aplicativos para um recurso do Ops Manager.

  • Quando spec.externalConnectivity e spec.backup.enabled estão ativados no Ops Manager ao mesmo tempo, o recurso do Ops Manager não consegue se reconciliar.

  • Corrige um erro que impedia a modificação de spec.security.authentication.ignoreUnknownUsers após a criação de um recurso MongoDB.

  • Corrige backups consultáveis com falha. O Kubernetes Operator agora cria um serviço do Kubernetes que o Ops Manager usa para acessar backups.

  • Corrige um problema que tornou impossível passar de não TLS para um aplicativo banco de dados habilitado para TLS.

  • Containers de origem não são executados como raiz.

  • O daemon de backup do Ops Manager é executado em modo sem privilégios.

  • Para gerenciar recursos de Pod do Banco de Dados, use o atributo spec.podSpec.podTemplate Recurso Personalizado MongoDB. Para uma definição de recurso de exemplo de cada tipo suportado, consulte o diretório amostras/mongodb/podspec. Os seguintes atributos são preteridos:

    • spec.podSpec.cpu

    • spec.podSpec.cpuRequests

    • spec.podSpec.memory

    • spec.podSpec.memoryRequests

Banco de dados inicial 1.0.1
Init-ops-manager 1.0.3
Init-appdb 1.0.5
Versão 4.4.5
Versão 4.2.21
Versão 4.2.20

Para obter uma lista dos pacotes instalados e quaisquer vulnerabilidades de segurança detectadas no processo de criação, consulte o repositório do Quay para o Operador do MongoDB Enterprise e o Banco de dados do MongoDB Enterprise.

Lançado em 30/09/2020

Aviso

Mudanças de última hora

A imagem do Banco de Dados Corporativo MongoDB agora exige um contêiner de entrada. Se você estiver utilizando um repositório privado, você deverá configurar a variável de ambiente do INIT_DATABASE_IMAGE_REPOSITORY no sistema do Operador e o novo contêiner de entrada deverá existir dentro deste repositório.

  • Apresenta novos campos de configuração:

    • spec.security.authentication.requireClientTLSAuthentication para usar a autenticação do certificado de cliente do MongoDB Agent em conjunto com qualquer outro mecanismo de autenticação.

    • spec.security.authentication.agents.clientCertificateSecretRef para configurar o certificado TLS do cliente usado pelo agente MongoDB ao habilitar o ClientTLSAuthentication.

  • Altera as permissões padrão de volumes criados a partir de segredos de 0644 para 0640.

  • Permite que o banco de dados de aplicativos seja configurado com autenticação SCRAM-SHA-256 ao usar o Ops Manager 4.4 ou versão mais recente.

  • Altera a validação do campo do Ops Manager spec.version para permitir tags que não correspondem aos requisitos do semver. O campo spec.version deve começar com a string Major.Minor.Patch que representa a versão do Ops Manager. Para saber mais sobre este campo, consulte Especificação de recursos do Ops Manager.

  • Corrige um problema que fazia com que o operador escolhesse um nome de projeto incorreto ao criar usuários do MongoDB.

  • Corrige um problema que fazia com que o CRD do MongoDB Ops Manager tivesse o caminho da CA no local incorreto.

  • Corrige um erro em que o MongoDB Agent não conseguiu reconhecer corretamente os parâmetros que passaram pelo spec.agent.startupOptions.

  • Corrige um problema que pode causar possíveis imprevistos quando certas opções de configuração são modificadas em paralelo.

  • Você não pode usar MongoDB 4.4 como um banco de dados de aplicativos para um recurso do Ops Manager.

  • Ao habilitar o queryable backup, você deve criar manualmente dois serviços adicionais para:

    • Expondo a porta do queryable backup (padrão: 25999) para o pod do Ops Manager.

    • O pod Backup Daemon, para garantir que ele possa ser resolvido no pod do Ops Manager.

  • Se você implantar o Ops Manager no modo local e atualizar a partir da v4.4.1, você deverá atualizar as ferramentas MongoDB localizadas no automation.versions.directory, que padroniza para /mongodb-ops-manager/mongodb-releases/.

    Dica

Lançado em 02/09/2020

  • Recursos do Ops Manager:

    • Corrige um bug em que não era possível ativar a autenticação SCRAM-SHA para recursos de aplicativo de banco de dados usando determinadas versões do MongoDB com o Ops Manager 4.4.

    • Corrige um bug em que o monitoramento do aplicativo de banco de dados não era configurado corretamente no Ops Manager quando você habilitava o TLS para o aplicativo de banco de dados.

    • Corrige um erro para mover a configuração do Ops Manager CA de spec.applicationDatabase.security.tls.ca para spec.security.tls.ca.

  • Recursos do MongoDB:

    • Corrige um bug que impedia você de aumentar ou diminuir o número de membros em um conjunto de réplicas ou um cluster fragmentado em mais de um membro por vez para sistemas do MongoDB 4.4.

    • Corrige um problema que impedia o Operador Kubernetes de habilitar a autenticação do agente quando a autenticação LDAP era habilitada para um recurso do MongoDB.

    • Corrige um problema em que não era possível criar SCRAM usuários e ativar SCRAM autenticação em qualquer ordem para um recurso do MongoDB.

    • Corrige um problema em que o Operador Kubernetes não removeu a configuração de automação de backup antes de iniciar o agente em um recurso MongoDB Pod.

  • Se você habilitar TLS no banco de dados do aplicativo, você não deverá fornecer o campo spec.applicationDatabase.version em uma definição de recurso do Ops Manager.

  • Você não pode usar MongoDB 4.4 como um banco de dados de aplicativos para um recurso do Ops Manager.

  • Ao atualizar para o Kubernetes Operator 1.7.1, você pode ter que excluir a implantação do mongodb-enterprise-operator devido a alterações de configuração do sistema.

    Esta é uma operação segura. A exclusão do pod mongodb-enterprise-operator não afeta os recursos personalizadosdo MongoDB.

  • Se você utilizar certificados TLS assinados por um CA personalizado, você deverá:

    • Omita a configuração spec.version.applicationDatabase da definição de recurso do Ops Manager e

    • Implemente o Ops Manager no modo local. Você deve copiar manualmente os arquivos de instalação de todas as versões do MongoDB que deseja usar em um Volume persistente para o Ops Manager StatefulSet.

Lançado em 2020/08/14

Importante

Versão final com suporte OpenShift 3.11

Kubernetes Operator 1.7.x é a série final de versões secundárias que oferece suporte ao OpenShift 3.11. Não atualize para nenhuma versão principal ou secundária futura se quiser continuar a distribuir o operador Kubernetes usando o OpenShift 3.11.

O fim da vida útil planejado para a série de lançamento do Kubernetes Operator 1.7.x é julho de 2021.

  • Todas as imagens do Operador Red Hat Docker da Kubernetes agora são baseadas no UBI 8. Na versão anterior, as imagens do Operador Red Hat Docker da Kubernetes eram baseadas no UBI 7.

  • Suporta LDAP como um mecanismo de autorização para os recursos do banco de dados MongoDB que você implementa com o Kubernetes Operator. Para obter mais informações, consulte a amostra de configurações de LDAP no GitHub

  • Corrige um bug que impediu a redução de um conjunto de réplicas de três nós para um nó.

  • O Ops Manager não pode monitorar aplicativos de banco de dados protegidos usando TLS.

  • Para implantações do MongoDB 4.4, você pode aumentar ou diminuir o número de nós em um conjunto de réplicas ou em um cluster fragmentado em apenas um nó por vez.

Lançado em 30/07/2020

  • A imagem do Ops Manager para a versão 4.4.0 está disponível.

  • As imagens do Red Hat database e operator Docker agora são baseadas na versão mais recente do UBI 7. Dois problemas de alta criticidade foram resolvidos.

  • As seguintes imagens do Docker foram lançadas:

    Tipo de imagem
    Ubuntu 16.04
    Red hat UBI 7

    Kubernetes Operator

    quay.io/mongodb/mongodb-enterprise-operator:1.6.1
    quay.io/mongodb/mongodb-enterprise-operator-ubi:1.6.1
    Banco de dados MongoDB
    quay.io/mongodb/mongodb-enterprise-database:1.6.1
    quay.io/mongodb/mongodb-enterprise-database-ubi:1.6.1

    Ops Manager

    quay.io/mongodb/mongodb-enterprise-ops-manager:4.4.0
    quay.io/mongodb/mongodb-enterprise-ops-manager-ubi:4.4.0
  • Corrige um bug em que o Kubernetes Operator não armazenava uma configuração de seus recursos implantados em um segredo.

  • Corrige um bug em que o Kubernetes Operator não permitia senhas de qualquer comprimento ou complexidade para recursos de banco de dados de aplicativo, armazenamento de oplog e banco de dados de blockstore definidos nos recursos do Ops Manager.

  • Corrige um bug em que a configuração de autenticação não era removida dos projetos do Ops Manager ou do Cloud Manager quando você removia um recurso de banco de dados Banco de dados MongoDB.

Lançado em 16/07/2020

  • Suporta LDAP como um mecanismo de autenticação para os recursos do banco de dados MongoDB que você implementa com o Kubernetes Operator. Para obter mais informações, consulte a amostra de configurações de LDAP no GitHub.

    Observação

    A autorização LDAP ainda não é suportada.

  • Preserva o histórico de backup retendo os registros de cluster do Ops Manager quando você habilita o backup.

  • Corrige um erro que impedia o Operador Kubernetes de reportar erros quando um projectName continha espaços.

  • Corrige um bug que impediu o Ops Manager de monitorar todos os recursos do banco de dados MongoDB que você implementa com o Kubernetes Operator.

Lançado em 02/07/2020

  • Fornece opções adicionais para configuração mais granular de processos do mongod / mongos. Você pode encontrar um exemplo de como aplicar estas opções no arquivo /samples/mongodb/mongodb-options do repositório do MongoDB Enterprise Kubernetes Operator.

  • Corrige um bug introduzido em 1.5.4 onde MongoDB Enterprise Kubernetes Operator não marcaria projetos corretamente ao trabalhar em versões do Ops Manager anteriores à 4.2.2. Nesta versão, o MongoDB Enterprise Kubernetes Operator marca os projetos corretamente.

Lançado em 22/06/2020

  • Permite a modificação das configurações de autenticação usando a interface do usuário do Cloud Manager ou do Ops Manager se a configuração spec.security.authentication não for fornecida na definição de objeto de recurso do MongoDB.

  • Suporta instalação do Helm com helm install além do helm template | kubectl apply. O helm install agora é a maneira recomendada de instalar com o Helm.

  • Suporta a configuração do mecanismo de autenticação do MongoDB Agent independentemente do mecanismo de autenticação do cluster.

  • Suporta a configuração do monitoramento do banco de dados de aplicativos para enviar métricas ao Ops Manager. Para saber mais sobre a função de monitoramento do MongoDB Agent, consulte MongoDB Agent.

  • Corrige um bug que afetou a transição de mecanismos de autenticação de X.509 para SCRAM.

  • Corrige um bug que impedia que o MongoDB Agent atingisse um estado de meta se a configuração do SCRAM fosse alterada na UI do Ops Manager.

Lançado em 29-05-2020

Passa propriedades de configuração do sistema do Ops Manager e MongoDB como variáveis de ambiente secretas.

  • Configura corretamente os tempos limite de desligamento para o Ops Manager e o Backup Daemon.

  • Corrige um problema em que os segredos assistidos pelo operador e os mapas de configuração do Kubernetes acionaram reconciliações desnecessárias.

  • Corrige um problema em que o status dos recursos personalizados falhou ao atualizar no OpenShift 3.11.

Lançado em 08/05/2020

  • Executa Ops Manager e Backup Daemon pods em uma conta de serviço dedicada.

  • Pode configurar o operador Kubernetes para observar um subconjunto de CustomResourceDefinitions fornecidos. Você pode encontrar mais informações na documentação.

  • Pode gerar CustomResourceDefinitions sem usar subrecursos. Algumas versões do Openshift 3.11 exigem esse recurso. Para evitar utilizar subrecursos, utilize o --set subresourceEnabled=false ao instalar o Operador Kubernetes com capacete.

  • Corrige a definição dos campos spec.statefulSet e spec.backup.statefulSet no Recurso MongoDBOpsManager.

  • Corrige um problema que requer uma reinicialização do Operador Kubernetes durante a configuração do webhook.

  • Corrige um problema que poderia fazer com que um recurso do Ops Manager atingisse um estado irrecuperável se a senha de administrador fornecida tiver força insuficiente.

Lançado em 30/04/2020

Desativa a geração de certificados TLS pelo Kubernetes Operator. Se você usa certificados gerados pelo Kubernetes Operator, as mensagens de aviso agora aparecem nos registros do Kubernetes Operator. Para configurar sistemas seguros, consulte Conexões seguras do cliente.

Corrige um problema em que, quando nenhuma autenticação é configurada pelo Operador Kubernetes, o Operador Kubernetes desativa a autenticação no Cloud Manager ou no Ops Manager. O Operador Kubernetes não desabilita a autenticação a menos que você defina explicitamente spec.security.authentication.enabled como false.

Quando você configura as configurações do spec.statefulSet.spec e spec.backup.statefulSet.spec do recurso MongoDBOpsManager, você pode somente configurar os campos spec.statefulSet.spec.template e spec.backup.statefulSet.spec.template. Qualquer outro campo spec.statefulSet.spec ou spec.backup.statefulSet.spec não tem efeito.

Lançado em 24/04/2020

Adiciona a capacidade de iniciar o Operador Kubernetes com algumas, mas não todas, CustomResourceDefinitions do MongoDB instaladas. Os administradores podem especificar o argumento de container watch-resource para limitar o Operador Kubernetes a implantar instâncias do MonogDB ou do Ops Manager, ou ambos.

Aviso

Mudanças de última hora

Adiciona as seguintes propriedades de configuração do Kubernetes Operator:

  • INIT_OPS_MANAGER_IMAGE_REPOSITORY

  • INIT_APPDB_IMAGE_REPOSITORY

  • APPDB_IMAGE_REPOSITORY

Ao usar um registro de docker privado, essas propriedades devem apontar para os registros relevantes após copiar as imagens dos canais de distribuição MongoDB.

  • Aumenta o suporte a certificados TLS personalizados com as definições de configuração spec.security.tls.secretRef e spec.security.tls.ca.

  • Substitui a geração de certificado TLS pelo Operador Kubernetes. Recomenda-se migrar para certificados TLS personalizados.

  • Libera o recurso MongoDBOpsManager como Geralmente Disponível (GA). O MongoDB agora oferece suporte para distribuir recursos do Ops Manager no Operador Kubernetes em ambientes de produção.

  • Suporta armazenamentos de snapshots do Blockstore de backup.

  • O padrão é o banco de dados de aplicativos como um banco de dados de metadados para o Backup S3 Snapshot Stores.

  • Oferece suporte a spec.jvmParameters e spec.backup.jvmParameters para adicionar ou substituir parâmetros JVM nos processos do Ops Manager e do Backup Daemon.

  • Configura automaticamente os parâmetros de memória do Ops Manager e do Backup Daemon JVM com base na disponibilidade de memória do Pod.

  • Permite TLS para o Ops Manager e o aplicativo de banco de dados.

  • Adiciona informações mais detalhadas no campo status.

  • Suporta o modo local do Ops Manager para recursos do MongoDBOpsManager com múltiplas réplicas permitindo aos usuários especificar o PersistentVolumeClaimTemplates no spec.statefulSet.spec.

  • Implementa um novo esquema de controle de versão de imagem.

Aviso

Mudanças de última hora

Confira os exemplos nos arquivosYAML para conhecer novas formas de utilizar os recursos.

Corrige CVE-2020-7922: o Kubernetes Operator gera certificados potencialmente inseguros.

Certificados X.509 gerados pelo MongoDB Enterprise Kubernetes Operator podem permitir que um invasor com acesso ao cluster Kubernetes tenha acesso inadequado às instâncias MongoDB. Os clientes que não usam a autenticação X.509 e aqueles que não usam o Operador Kubernetes para gerar seus certificados X.509 não são afetados.

CWE-295: pontuação CVSS de validação de certificado inadequada: 6.4 CVSS:3.1/AV:A/AC:H/PR:L/UI:N/S:U/C:H/I:H/A:N

  • 1,0, 1,1

  • 1.2.0 - 1.2.4

  • 1,3,0 - 1,3,1

  • 1.4.0 - 1.4.4

  • 1.2.5

  • 1.4.5 e superior

Suporta alterações na API do Cloud Manager.

  • Encerra adequadamente os recursos com um hook de encerramento.

  • Implementa validações mais rigorosas.

  • Recursos do MongoDB:

    • Corrige um problema ao trabalhar com o Ops Manager com certificados HTTPS personalizados.

Lançado em 24/02/2020

Adiciona um webhook para validar uma configuração do Operador Kubernetes.

  • Adiciona suporte para sidecars para MongoDB pods de recurso utilizando a configuração spec.podSpec.podTemplate.

  • Permite aos usuários alterar o PodSecurityContext para permitir contêineres de sidecar privilegiados.

  • Adiciona as definições de configuração spec.podSpec para o Ops Manager, o Backup Daemon e o aplicativo de banco de dados. Consulte Especificação de recursos do Ops Manager.

  • A imagem do Ops Manager para a versão 4.2.8 está disponível.

  • Recursos do MongoDB:

    • Corrige possíveis condições de corrida ao excluir recursos MongoDB.

  • Recursos do Ops Manager:

    • Oferece suporte à configuração spec.clusterDomain para recursos do Ops Manager e do Banco de Dados de Aplicativos.

    • Não inicia mais os processos de monitoramento e backup do banco de dados de aplicativos.

Confira os exemplos nos arquivosYAML para conhecer novas formas de utilizar os recursos.

Lançado em 24/01/2020

  • Executa o banco de dados MongoDB Kubernetes Pods em uma conta de serviço dedicada do Kubernetes: mongodb-enterprise-database-pods.

  • Adiciona a configuração do spec.podSpec.podTemplate, que permite a você aplicar modelos para Kubernetes Pods que o Operador Kubernetes gera para cada banco de dados StatefulSet.

  • Renomeia a configuração spec.clusterName para spec.clusterDomain.

  • Adiciona suporte ao modo off-line para o banco de dados de aplicativos. Inclui o MongoDB Enterprise versão 4.2.2 com a imagem do banco de dados de aplicativos. O acesso à Internet não é necessário para instalar o aplicativo de banco de dados se spec.applicationDatabase.version for definido como "4.2.2-ent" ou omitido.

  • Renomeia a configuração spec.clusterName para spec.clusterDomain.

  • As imagens do Ops Manager para as versões 4.2.6 e 4.2.7 estão disponíveis.

  • Recursos do MongoDB:

    • Corrige a ordem da criação do componente de cluster fragmentado.

    • Permite que o TLS seja habilitado no Amazon EKS.

  • Recursos do Ops Manager:

    • Permite que o operador Kubernetes use a configuração spec.clusterDomain.

Confira os exemplos nos arquivosYAML para conhecer novas formas de utilizar os recursos.

Lançado em 13/12/2019

Lançado em 09/12/2019

  • Adiciona suporte de DNS de horizonte dividido para conjuntos de réplicas do MongoDB, o que permite que os clientes se conectem a um conjunto de réplicas de fora do cluster Kubernetes.

  • Permite solicitações de certificados gerados pelo Kubernetes Operator para domínios de certificados adicionais, o que os torna válidos para os subdomínios especificados.

  • Promove o recurso MongoDBOpsManager para Beta. A versão 4.2.4 do Ops Manager está disponível.

  • Oferece suporte a backup e restauração em instâncias do Ops Manager implantadas pelo Operador Kubernetes. Esse é um processo semiautomatizado que implementa tudo o que você precisa para ativar os backups no Ops Manager. Você pode ativar o backup definindo a configuração spec.backup.enabled no recurso personalizado do Ops Manager. Você pode configurar o Head Database, o Oplog Store e o S3 Snapshot Store usando a especificação de recursos MongoDBOpsManager.

  • Oferece suporte ao acesso ao Ops Manager de fora do cluster do Kubernetes por meio da configuração spec.externalConnectivity.

  • Habilita a autenticação SCRAM-SHA-1 no aplicativo de banco de dados do Ops Manager por padrão.

  • Adiciona suporte para OpenShift (Red Hat UBI Images).

Para mais informações sobre como habilitar novas feições, consulte a amostra de arquivos YAML no diretório de amostras.

  • Melhora a estabilidade geral do gerenciamento de usuários do X.509.

Lançado em 08/11/2019

Importante

Esta versão apresenta alterações significativas que podem não ser compatíveis com sistemas anteriores ou configurações de recursos. Migre para um recurso por projeto antes de atualizar o Kubernetes Operator.

  • Exige um recurso MongoDB por projeto do Ops Manager. Se você tiver mais de um recurso MongoDB em um projeto, todos os recursos mudarão para um status Pending e o Operador Kubernetes não executará nenhuma alteração neles. Os bancos de dados MongoDB existentes ainda estarão acessíveis. Você deve migrar para um recurso por projeto.

  • Suporta o modo de autenticação SCRAM-SHA. Consulte o repositório do MongoDB Enterprise Kubernetes Operator GitHub para obter exemplos.

  • Exige que o projeto (ConfigMap) e credenciais (secreto) referenciados de um recurso MongoDB estejam no mesmo namespace.

  • Adiciona arquivos de instalação do OpenShift (arquivo YAML e configuração de gráfico Helm).

Lançado em 25/10/2019

Importante

Esta versão apresenta alterações significativas que podem não ser compatíveis com sistemas anteriores ou configurações de recursos. Migre para um recurso por projeto antes de instalar ou atualizar o Kubernetes Operator.

Esta versão introduz alterações significativas na arquitetura do recurso do Ops Manager. O banco de dados de aplicativos do Ops Manager agora é gerenciado pelo Operador Kubernetes, não pelo Ops Manager.

  • Interrompe a recriação desnecessária de NodePorts.

  • Corrige o registro para que esteja sempre no formato JSON.

  • Define USER na imagem do Docker do Operador Kubernetes.

Corrige CVE-2020-7922: o Kubernetes Operator gera certificados potencialmente inseguros.

Certificados X.509 gerados pelo MongoDB Enterprise Kubernetes Operator podem permitir que um invasor com acesso ao cluster Kubernetes tenha acesso inadequado às instâncias MongoDB. Os clientes que não usam a autenticação X.509 e aqueles que não usam o Operador Kubernetes para gerar seus certificados X.509 não são afetados.

CWE-295: pontuação CVSS de validação de certificado inadequada: 6.4 CVSS:3.1/AV:A/AC:H/PR:L/UI:N/S:U/C:H/I:H/A:N

  • 1,0, 1,1

  • 1.2.0 - 1.2.4

  • 1,3,0 - 1,3,1

  • 1.4.0 - 1.4.4

  • 1.2.5

  • 1.4.5 e superior

Lançado em 02/10/2019

  • Aumenta a estabilidade dos sistemas de clusters fragmentados.

  • Melhora a infraestrutura de testes internos.

Lançado em 13/09/2019

  • Atualização: o MongoDB Enterprise Kubernetes Operator removerá o suporte para vários clusters por projeto em uma versão futura. Se um projeto tiver mais de um cluster, um aviso será adicionado ao status dos Recursos MongoDB. Além disso, qualquer novo cluster adicionado a um projeto não vazio resultará em um estado Failed e não será processado.

  • Correção: A estabilidade geral do operador foi melhorada. A operadora agora é mais conservadora nas atualizações de recursos tanto no Kubernetes quanto no Cloud Manager ou Ops Manager.

Lançado em 30/08/2019

  • Correção de segurança: os clusters configurados pelas versões 1.0 a 1.2.1 do Kubernetes Operator usavam um arquivo de chave insuficientemente forte para autenticação interna do cluster entre processos mongod. Isso afeta apenas os clusters que estão usando o X.509 para autenticação de usuário, mas não estão usando o X.509 para autenticação interna do cluster. Os usuários são aconselhados a atualizar para a versão 1.2.2, que substituirá todos os arquivos de chave gerenciados.

  • Correção de segurança: Os clusters configurados pelas versões 1.0 a 1.2.1 do Kubernetes Operator usavam uma senha insuficientemente forte para autenticar o MongoDB Agent. Isso afeta apenas clusters que foram configurados manualmente para habilitar SCRAM-SHA-1, que não é uma configuração com suporte. Os usuários são aconselhados a atualizar para a versão 1.2.2, que redefinirá essas senhas.

Lançado em 23/08/2019

  • Consertar: O Operador Kubernetes não recria mais CSRs quando a autenticação X.509 está habilitada e os CSRs aprovados foram excluídos

  • Consertar: Se a variável de ambiente OPERATOR_ENV for definida como algo não reconhecido pelo Operador Kubernetes, ela não resultará mais em uma CrashLoopBackOff do pod. Um valor padrão de prod é usado.

  • O Kubernetes Operator agora oferece suporte a mais de 100 agentes em um determinado projeto.

Lançado em 13/08/2019

  • Adiciona uma sonda de prontidão aos pods do MongoDB para melhorar a confiabilidade das atualizações contínuas.

Essa funcionalidade é uma versão alfa. Não está pronto para uso em produção.

Lançado em 19/07/2019

  • Correção: Adiciona arquivos yaml de amostra, em particular, o atributo relacionado à featureCompatibilityVersion.

  • Corrigir: O TLS pode ser desabilitado em um sistema.

  • Melhoria: adiciona script no diretório suporte que pode coletar informações de seus recursos MongoDB no Kubernetes.

  • Melhoria: Em um ambiente TLS, o Kubernetes Operator pode usar uma CA personalizada. Todos os certificados devem ser passados como objetos secretos.

Lançado em 18/06/2019

  • Suporta Kubernetes v1.11 ou posterior.

  • Provisões de qualquer tipo de sistema MongoDB no Cluster Kubernetes de sua organização:

  • Configura o TLS nos sistemas MongoDB e criptografa todo o tráfego. Hosts e clientes podem verificar as identidades uns dos outros.

  • Gerencia usuários MongoDB.

  • Habilita a autenticação X.509 nos seus bancos de dados MongoDB.

Dica

Veja também:

Para saber como instalar e configurar o Operador, consulte Instalar e Configurar o Kubernetes Operator.

Observação

Perguntas sobre o lançamento do Kubernetes Operator GA

Em caso de dúvidas sobre esta versão, use o canal do Slack #enterprise-kubernetes.

Lançado em 07/06/2019

  • As atualizações contínuas dos recursos do MongoDB garantem que rs.stepDown() seja chamado para o membro principal. Exige patch MongoDB versão 4,0,8 e posterior ou patch MongoDB versão 4.1.10 e mais tarde.

  • Durante uma atualização da versão principal do MongoDB, o campo featureCompatibilityVersion pode ser configurado.

  • Foi corrigido um erro em que não foi possível criar conjuntos de réplicas com mais de sete membros.

  • A autenticação X.509 pode ser ativada no nível do projeto. Requer o Cloud Manager, patch do Ops Manager versão 4.0.11 e posterior, ou o patch do Ops Manager versão 4.1.7 e posterior.

  • A autenticação de cluster interno com base no X.509 pode ser habilitada no nível de sistema.

  • Os usuários do MongoDB com autenticação X.509 podem ser criados usando o novo recurso personalizado do MongoDBUser.

Lançado em 29/04/2019

  • NodePort a criação do serviço pode ser desabilitada.

  • O TLS pode ser habilitado para autenticação interna entre MongoDB em conjuntos de réplicas e clusters fragmentados. Os certificados TLS são criados automaticamente pelo Operador Kubernetes. Consulte os .yaml arquivos de amostra no repositório GitHub por exemplo.

  • Papéis amplos ou asterisco foram substituídos por uma lista rigorosa de verbos em roles.yaml.

  • A impressão de objetos mdb com kubectl fornecerá mais informações sobre o objeto MongoDB: tipo, estado e versão do servidor MongoDB.

Lançado em 02/04/2019

  • As imagens do Operador Kubernetes e do banco de dados agora são baseadas em ubuntu:16.04.

  • O Operador Kubernetes agora usa uma única CustomResourceDefinition chamada MongoDB em vez de MongoDbReplicaSet, MongoDbShardedCluster e MongoDbStandalone CRDs.

    Importante

    Siga o procedimento de atualização para transferir os recursos existentes do MongoDbReplicaSet, MongoDbShardedCluster e MongoDbStandalone para o novo formato.

  • Para obter uma lista dos pacotes instalados e quaisquer vulnerabilidades de segurança detectadas em nosso processo de criação, consulte:

Lançado em 19/03/2019

  • As imagens do operador e do banco de dados agora são baseadas em debian:stretch-slim, que é a imagem Docker mais recente e atualizada para Debian 9.

Lançado em 26/02/2019

  • Execute a limpeza do Ops Manager na exclusão do recurso MongoDB sem o uso de finalizadores.

  • Correção de bug: condições de corrida ao se comunicar com o Ops Manager.

  • Correção de bug: ImagePullSecrets sendo inicializado incorretamente no OpenShift.

  • Correção de erro: busca não intencional de projetos encerrados.

  • Correção de erros: criação de organizações duplicadas.

  • Correção de bugs: a reconciliação poderia falhar para o recurso MongoDB se alguns outros recursos no Ops Manager estivessem em estado de erro.

Lançado em 01/02/2019

  • Campo de status detalhado aprimorado para recursos MongoDB.

  • O Kubernetes Operator observa alterações nos parâmetros de configuração em um projeto configMap e o secret de credenciais então executa uma atualização móvel para recursos relevantes do Kubernetes.

  • Registro estruturado JSON adicionado para Pods de MongoDB Agent.

  • Ofereça suporte a registros DNS SRV para acesso MongoDB.

  • Correção de erros: evitando reconciliação desnecessária.

  • Correção de erros: gerenciamento de estado aprimorado do Ops Manager/Cloud Manager para recursos excluídos.

Lançado em 17/12/2018

  • Código refatorado para usar a biblioteca do controller-runtime para corrigir problemas em que o Operator poderia deixar os recursos em um estado inconsistente. Isso também introduziu um processo de reconciliação adequado.

  • Novo campo status adicionado para todos os recursos do MongoDB Kubernetes.

  • Pode configurar o Operator para monitorar qualquer namespace único ou todos os namespaces em um cluster (requer a função de cluster).

  • Registro de banco de dados melhorado adicionando uma nova propriedade de configuração logLevel. Esta propriedade é definida como INFO por padrão. Os registros do MongoDB Agent e do MongoDB são mesclados em um único fluxo de registros.

  • Uma nova configuração de tempo de espera do operador foi adicionada. Ela configura o tempo máximo de espera para a inicialização dos pods de banco de dados ao atualizar os recursos MongoDB.

  • Correção: detecção de falha corrigida para mongos.

Lançado em 14/11/2018

  • A imagem do banco de dados não inclui mais o binário do Agente de automação. O container baixa o agente de automação do Ops Manager quando é iniciado.

  • Correção: a comunicação com o Ops Manager falhava se o projeto com o mesmo nome existisse em uma organização diferente.

Lançado em 04/10/2018

  • Se um backup foi habilitado no Ops Manager para um conjunto de réplicas ou cluster fragmentado criado pelo Kubernetes Operator, o Kubernetes Operator desabilita o backup antes de remover um recurso.

  • Suporte de persistência aprimorado:

    • Os diretórios de dados, diário e registro são montados em três pontos de montagem em um ou três volumes dependendo da configuração do podSpec.persistence.

      Contexto
      Montar diretórios em
      podSpec.persistence.single
      Um volume
      podSpec.persistence.multiple
      Três volumes

      Antes desta versão, apenas o diretório de dados era montado no armazenamento persistente.

    • Um novo parâmetro, labelSelector, permite a você especificar o seletor para volumes que o Operador Kubernetes deve considerar montagem.

    • Se a StorageClass não for especificada na configuração persistence, será usado o padrão StorageClass para o cluster. Na maioria dos provedores de nuvem pública, isso resulta em provisionamento dinâmico de volume.

Lançado em 07/08/2018

  • O Operador não cria mais os objetos CustomResourceDefinition. O usuário precisa criá-los manualmente. Baixe e aplique este novo arquivo yaml (crd.yaml) para criar/configurar esses objetos.

  • ClusterRoles não são mais necessários. A forma como o Operador monitora os recursos mudou. Até a última versão, o Operador observava qualquer recurso em qualquer namespace. Com o 0.3, o Operador observa os recursos no mesmo namespace em que foi criado. Para suportar vários namespaces, vários Operadores podem ser instalados. Isso permite o isolamento dos sistemas MongoDB.

  • Foram feitas alterações nas permissões na forma como os PersistentVolumes são montados.

  • Configuração adicionada ao Operador para não criar SecurityContexts para Pods. Isso resolve um problema com o OpenShift que não permite essa configuração quando SecurityContextContraints é usado.

    Se você estiver usando o Helm, defina managedSecurityContext como true. Isso diz ao Operator para não criar SecurityContext para Pods, satisfazendo o requisito do OpenShift.

  • A combinação de projectName e orgId substitui o projectId sozinho para configurar a conexão com o Ops Manager. O projeto é criado se não existir.

Lançado em 03/08/2018

  • Calcula o cache de memória do WiredTiger.

Lançado em 27/06/2018

Lançamento inicial

  • Pode implantar instâncias independentes, conjuntos de réplicas, clusters fragmentados usando arquivos de configuração do Kubernetes.

←  Perguntas frequentesSolucionar problemas do Kubernetes Operator →