Menu Docs

Conecte-se a um recurso de banco de dados MongoDB a partir de Kubernetes internos

O procedimento a seguir descreve como se conectar a um recurso do MongoDB distribuído em Kubernetes a partir de dentro do cluster de Kubernetes.

Você deve conseguir se conectar ao host e à porta onde implantou seu recurso do Kubernetes. Para saber mais sobre como se conectar à sua implantação, consulte Conectar a um processo MongoDB.

Recupere e execute o comando de conexão para sua implementação. Você pode recuperar o comando de conexão a partir do aplicativo MongoDB Ops Manager ou Cloud Manager , dependendo de onde seus clusters estão hospedados. Você também pode recuperar o comando de conexão do segredo do Kubernetes que o Kubernetes Operator cria automaticamente quando você adiciona um usuário MongoDB com autenticação SCRAM ou X509.

O procedimento para se conectar a um recurso de banco de dados MongoDB varia de acordo com a forma como você deseja recuperar a string de conexão:

Execute as seguintes etapas no aplicativo Gerenciador de Operações ou Gerenciador de Nuvem, dependendo de onde seus clusters são hospedados:

1

Clique em Deployment na navegação à esquerda.

2
3
4
5

Exemplo

Para conectar a um recurso de agrupamento fragmentado denominado shardedcluster, você pode utilizar a seguinte string de conexão:

mongosh --host shardedcluster-mongos-0.shardedcluster-svc.mongodb.svc.cluster.local \
--port 27017

Ao se conectar a um recurso de dentro do Kubernetes, o nome do host ao qual você se conecta tem o seguinte formulário:

<k8s-pod-name>.<k8s-internal-service-name>.<k8s-namespace>.<cluster-name>

Quando você cria um novo MongoDB database usuário do , o operadorKubernetes cria automaticamente um novo Kubernetes segredo. O segredo do Kubernetes contém as seguintes informações sobre o novo usuário do banco de dados:

  • username: Nome de usuário para o usuário de banco de dados de dados

  • password: Senha do usuário de banco de dados de dados

  • connectionString.standard: string de conexão padrão que pode conectar você ao banco de banco de dados como esse usuário de banco de dados de dados.

  • connectionString.standardSrv: connection string da lista de sementes de DNS que pode conectar você ao banco de dados como esse usuário do banco de dados.

Observação

Como alternativa, você pode especificar um campo spec.connectionStringSecretName opcional na Especificação de Recurso de Usuário do MongoDB para especificar o nome do segredo da string de conexão que o Kubernetes Operator cria.

Execute as etapas a seguir para visualizar as credenciais e usar a string de conexão para se conectar ao MongoDB:

1

Execute o seguinte comando em um terminal para visualizar o segredo, substituindo as variáveis pelos valores na tabela:

Espaço reservado
Descrição

{MongoDB-Resource-Name}

Rótulo legível por humanos que identifica o recurso MongoDB.

{User-Name}

Rótulo legível por humanos que identifica o usuário MongoDB.

kubectl get secret {MongoDB-Resource-Name}-{User-Name}-admin -o jsonpath='{.data}'

Se este comando retornar um erro, você poderá verificar o nome do segredo executando o seguinte comando e recuperando o nome correto:

kubectl get secrets
2
3

Use o valor connectionString.standard em uma connection string para se conectar ao sistema.

mongosh {connectionString.standard}
4

Você pode montar o segredo no seu pod para garantir que seus aplicativos possam acessar as credenciais.