Para agentes de IA: um índice de documentação está disponível em https://www.mongodb.com/pt-br/docs/llms.txt — as versões de markdown de todas as páginas estão disponíveis anexando .md a qualquer caminho de URL.

Configurar TLS para uma migração para o Kubernetes

Quando você migra um conjunto de réplicas habilitado para TLS de máquinas virtuais para o Kubernetes, um conjunto de réplicas é um domínio de confiança. Emita os certificados de nó do Kubernetes da mesma autoridade de certificação (CA) que assinou os certificados das máquinas virtuais. Este é o único requisito TLS específico para migração. A documentação TLS geral para o operador do Kubernetes abrange todo o resto sobre a configuração de TLS. Uma incompatibilidade de CA causa a falha do teste, por design. Para aprender como a execução de teste revela essa falha, consulte Validar a prontidão da migração com uma execução de teste.

Importante

Os campos nesta página existem apenas para migração. Não os defina em uma implantação de operador Kubernetes greenfield, a menos que a descrição do campo diga o contrário.

Para aprender como emitir certificados, estruturar Secrets e ConfigMaps e configurar as definições gerais de TLS no recurso personalizado MongoDB, consulte:

Ao seguir essa documentação para uma migração, emita os certificados de nó do Kubernetes da mesma CA que assinou os certificados da máquina virtual, não de uma nova CA. A CA ConfigMap chamada <resourceName>-ca deve conter uma chave ca-pem populada a partir dessa mesma CA.

Você precisa do seguinte:

  • O certificado CA existente e o material de chave da implantação da máquina virtual.

  • cert-manager ou uma ferramenta equivalente para emitir os certificados de nó do Kubernetes dessa mesma CA.

  • O recurso personalizado MongoDB gerado de Migrar um conjunto de réplicas para o Kubernetes.

1

Siga Configurar uma integração do cert-gerente ou Gerar certificados de cliente X.509 para criar o kubernetes.io/tls Secret chamado <certsSecretPrefix>-<resourceName>-cert, emitindo o certificado da mesma CA que assinou os certificados da máquina virtual.

Crie a CA ConfigMap nomeada <resourceName>-ca com uma chave ca-pem preenchida a partir dessa mesma CA.

Se você usar a autenticação de agente X.509, crie também o <certsSecretPrefix>-<resourceName>-agent-certs Secret e defina spec.security.authentication.agents.clientCertificateSecretRef para referenciá-lo. Este requisito aplica-se apenas à autenticação de agente, não à autenticação de cluster interno (spec.security.authentication.internalCluster).

2

Esses campos existem apenas para que a visualização do Kubernetes Operador dos caminhos de arquivo corresponda à forma como a implantação da máquina virtual já organiza seus certificados e arquivo de chave. Defina apenas os que se aplicam à sua implantação de origem:

  • spec.security.tls.caFilePath: o caminho absoluto para o qual a CA é projetada dentro do Pod. O padrão é /mongodb-automation/tls/ca/ca-pem. O caminho deve conter pelo menos dois segmentos de caminho. Este campo não é compatível com o banco de dados de aplicativo. Se o seu podTemplate montar outro volume sobre este caminho, essa montagem sombreia a CA projetada e o agente do MongoDB Ops Manager não poderá lê-lo.

  • spec.security.authentication.agents.autoPEMKeyFilePath: o caminho absoluto do arquivo PEM combinado do agente dentro dos Pods do banco de dados. Este campo configura apenas a autenticação do agente. Definir este campo define o valor de tls.autoPEMKeyFilePath do MongoDB Ops Manager e monta o Secret referenciado por clientCertificateSecretRef nesse caminho. O padrão é um caminho de montagem de certificado de agente derivado de hash, e defini-lo requer que spec.security.authentication.agents.clientCertificateSecretRef já esteja definido. Defina este campo apenas quando a implantação da máquina virtual usar um caminho PEM de agente não padrão.

  • spec.downloadBase: o diretório onde o binário do Ops Manager agente é baixado. O padrão é /var/lib/mongodb-mms-automation. O Kubernetes operador deriva o caminho do arquivo de chave deste valor como <downloadBase>/keyfile.

3

Se a implantação da máquina virtual nunca configurou o TLS, defina net.tls.mode como disabled no MongoDB Ops Manager ou Cloud Manager na implantação da máquina virtual existente antes de migrar. Não defina este campo no recurso personalizado MongoDB.

Se você deixar o modo TLS da implantação de origem não definido, o operador Kubernetes tentará uma alteração de implantação que não corresponde à configuração de automação de origem, porque sua visão padrão de TLS difere de uma implantação que nunca configurou TLS. Definir o campo como disabled na implantação de origem faz com que a visualização do operador Kubernetes corresponda à implantação da máquina virtual e evita essa alteração espúria.

4

Aplique o recurso com a anotação dry-run ainda presente e verifique a condição NetworkConnectivityVerified. Para aprender como ler o resultado e o que fazer se ele falhar, consulte Validar a prontidão da migração com uma executar.

Um cluster sharded precisa de um certificado por componente, seguindo o padrão <resourceName>-config-* para o servidor de configuração, <resourceName>-<shardIndex>-* para cada shard e <resourceName>-mongos-* para os mongos roteadores.

Observação

Confirme os nomes exatos dos Secret por componente em relação ao recurso gerado antes de reconciliar. Para aprender como uma migração de cluster difere de uma migração de conjunto de réplicas, consulte Migrar um cluster para o Kubernetes.