Conecte com segurança o MongoDB aos clusters Kubernetes oferecidos na nuvem
Avaliar este tutorial
Os aplicativos em container estão se tornando um padrão do setor para virtualização. Quando falarmos sobre o gerenciamento desses containers, oKubernetes provavelmente será criado muito rapidamente.
O Kubernetes é um sistema de código aberto conhecido por automatizar a implantação, o dimensionamento e o gerenciamento de aplicativos em contêiner. Atualmente, todos os principais provedores de nuvem (AWS, Google Cloud e Azure) têm uma oferta de Kubernetes gerenciado para permitir que as organizações iniciem e dimensionem facilmente seus ambientes Kubernetes.
Não é de surpreendenter que o MongoDB Atlas também seja executado em todas essas funcionalidades para oferecer aos seus aplicativos modernos em container a melhor oferta de banco de dados. No entanto, a facilidade de desenvolvimento pode resultar na perda de alguns aspectos essenciais, como segurança e controle de conectividade com nossos serviços de cloud.
Neste artigo, vou orientá-lo sobre como proteger adequadamente seus serviços Kubernetes cloud ao conectar-se ao MongoDB Atlas usando as soluções robustas e recomendadas que temos.
Você precisará ter uma conta de fornecedor de nuvem e a capacidade de implantar uma das ofertas do Kubernetes:
E, é claro, você precisará de um projeto MongoDB Atlas do qual você é o proprietário do projeto.
Se você ainda não configurou seu cluster gratuito no MongoDB Atlas, agora é um ótimo momento para fazê-lo. Você tem todas as instruções nesta publicação doblog. Observe que, para este tutorial, é necessário ter um cluster M10+.
As conexões do Atlas, por padrão, usam credenciais e criptografia de ponta a ponta para proteger a conexão. No entanto, construir uma rede confiável é fundamental para fechar o ciclo de segurança entre seu aplicativo e o banco de dados.
Não importa em qual nuvem você decide construir seu cluster Kubernetes, a base básica para proteger esse sistema é criar sua própria rede. Você pode consultar os seguintes guias para criar sua própria rede e coletar as informações principais (Nomes, IDs e sub -redeClassless Inter-Domain Routing - CIDR).
Agora, configuraremos a conectividade da rede virtual na qual a região do Atlas reside com a rede virtual que criamos na Etapa 1. Essa conectividade é necessária para garantir que a comunicação entre as redes seja possível. Configuraremos o Atlas para permitir conexões da rede virtual a partir da Etapa 1.
Esse processo é chamado de configuração de uma conexão de pareamento de rede. É significativo, pois permite a comunicação interna entre redes de duas contas diferentes (a conta na nuvem do Atlas e sua conta na nuvem).

No entanto, destacarei os principais pontos em cada cloud para uma configuração de emparelhamento bem-sucedida:
AWS | GCP | Azure |
---|---|---|
|
|
|
Os clusters Kubernetes que lançamos devem estar associados ao
rede com peering. Vou destacar as especificidades de cada provedor de nuvem.
Quando lançamos nosso EKS por meio do serviço de console da AWS, precisamos configurar a VPC emparelhada na aba "Rede".
Defina as configurações corretas:
- Nome da VPC
- Sub-redes relevantes (recomendado escolher pelo menos três zonas de disponibilidade)
- Escolha um grupo de segurança com portas 27015-27017 abertas para o Atlas CIDR.
- Opcionalmente, você pode adicionar um intervalo de IP para seus pods.

Quando lançamos nosso serviço GKE, precisamos configurar a VPC emparelhada na seção "Rede".
Defina as configurações corretas:
- Nome da VPC
- Nome da sub-rede
- Opcionalmente, você pode adicionar uma faixa de IP para a rede interna do pod que não possa se sobrepor ao CIDR emparelhado.

Quando Almoçamos nosso serviço AKS, precisamos usar o mesmo grupo de recursos que o VNET emparelhado e configurar o VNET emparelhado como a rede CNI na guia avançada Rede.
Defina as configurações corretas:
- Grupo de Recursos
- Nome VNET em "Rede virtual"
- A sub-rede do cluster deve ser o intervalo de sub-rede emparelhado.
- O outro CIDR deve ser um CIDR não sobreposto da rede emparelhada.

Quando o cluster estiver em funcionamento no seu provedor de nuvem, você poderá testar a conectividade com o nosso cluster emparelhado.
Primeiro, precisaremos obter nossa connection string e método a partir da UI do Atlas cluster. Observe que o GCP e o Azure têm cadeias de conexão privadas para emparelhamento e elas devem ser usadas para redes com peering.


Agora, vamos testar nossa conexão a partir de um dos pods do Kubernetes:

Os clusters gerenciados pelo Kubernetes oferecem uma maneira simples e moderna de implantar aplicativos em contêiner no fornecedor de sua escolha. É ótimo podermos proteger facilmente suas conexões para trabalhar com a melhor oferta de banco de dados em nuvem que existe, o MongoDB Atlas, desbloqueando outras possibilidades para criar aplicativos incríveis.
Em caso de dúvidas, acesse nosso website da comunidade de desenvolvedores, no qual os engenheiros do MongoDB e a MongoDB Community ajudarão você a colocar em prática sua próxima grande ideia com o MongoDB.