Explore o novo chatbot do Developer Center! O MongoDB AI chatbot pode ser acessado na parte superior da sua navegação para responder a todas as suas perguntas sobre o MongoDB .

Learn why MongoDB was selected as a leader in the 2024 Gartner® Magic Quadrant™
Desenvolvedor do MongoDB
Central de desenvolvedor do MongoDBchevron-right
Produtoschevron-right
Atlaschevron-right

Conecte com segurança o MongoDB aos clusters Kubernetes oferecidos na nuvem

Pavel Duchovny4 min read • Published Feb 14, 2022 • Updated Sep 09, 2024
KubernetesGoogle cloudAtlas
Ícone do FacebookÍcone do Twitterícone do linkedin
Avalie esse Tutorial
star-empty
star-empty
star-empty
star-empty
star-empty

Introdução

Os aplicativos em contêineres estão se tornando um padrão do setor para virtualização. Quando falarmos sobre o gerenciamento desses containers, Kubernetes 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.

Pré-requisitos

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+.

Etapa 1: Configurar redes

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).
Criação de rede privada
AWSGCPAzure
Criar um AWS VPCCriar uma VPC do GCPCriar uma VNET

Etapa 2: Criar peerings de rede

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).
Página de emparelhamento do Atlas
Os peerings de rede são estabelecidos em nossos projetos > Network Access > Peering > " ADD PEERING CONNECTION. " Para obter mais informações, leia nossa [documentação] (https://docs.atlas.mongodb.com/security-vpc-peering/).
No entanto, destacarei os principais pontos em cada cloud para uma configuração de emparelhamento bem-sucedida:
Criação de rede privada
AWSGCPAzure
  1. Permitir o tráfego de saída para o Atlas CIDR em 2015-27017.
  2. Obter informações da VPC (Account ID, VPC Name, VPC Region, VPC CIDR). Ative a resolução de DNS e nome de host nessa VPC.
  3. Usando essas informações, inicie o emparelhamento de VPC.
  4. Aprove o emparelhamento no lado Amazon Web Services .
  5. Adicione a rota de peering na(s) sub-rede(s) relevante(s) direcionada(s) ao CIDR do Atlas e adicione essas sub-redes/grupos de segurança na página de lista de acesso do Atlas.
  1. Obtenha informações da VPC do GCP (Project ID, VPC Name, VPC Region e CIDR).
  2. Quando você inicia um peering de VPC no lado do Atlas, ele gera informações que você precisa inserir na página de emparelhamento de rede VPC do GCP (Atlas Project ID e Atlas VPC Name).
  3. Envie a aprovação da solicitação de emparelhamento no GCP e adicione o CIDR do GCP nas listas de acesso do Atlas.
  1. Obtenha os seguintes detalhes azure de sua assinatura (Subscription ID, Azure Active Directory Directory ID, VNET Resource Group Name, VNet Name, VNet Region).
  2. Insira as informações coletadas e obtenha uma lista de comandos para executar no console do Azure.
  3. Abra o console do Azure e execute os comandos, que criarão uma função personalizada e permissões para emparelhamento.
  4. Valide e inicie o peering.

Etapa 3: Implementar o Cluster Kubernetes em Nossas Redes

Os clusters Kubernetes que lançamos devem estar associados à rede emparelhada. Destacarei as especificidades de cada provedor de nuvem.

AWS EKS

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.
Nesse caso, coloquei meu nome de VPC emparelhado, escolhi três zonas de disponibilidade da minha região Oeste da UE e especifiquei um grupo de segurança que permitia o acesso 27015 - 27017 ao Atlas CIDR.

GCP GKE

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.
Nesse caso, quando acessei a aba de rede, coloquei o nome da minha rede

Azure AKS

Quando almoçamos nosso serviço AKS, precisamos usar o mesmo grupo de recursos que a VNET emparelhada e configurar a VNET emparelhada como a rede CNI na guia Rede avançada.
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.
Nesse caso, marquei a caixa

Etapa 4: distribuir contêineres e testar a conectividade

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.
Conectar ao teste de emparelhamento: etapa 1
Conectar ao teste de emparelhamento: etapa 2
Agora, vamos testar nossa conexão a partir de um dos pods do Kubernetes:
Teste de shell bem-sucedido
É isso. Estamos conectados com segurança!

Resumo

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.
Se tiver dúvidas, acesse o site da nossa comunidade de desenvolvedores, no qual os engenheiros e a comunidade do MongoDB ajudarão você a desenvolver sua próxima grande ideia com o MongoDB.

Ícone do FacebookÍcone do Twitterícone do linkedin
Avalie esse Tutorial
star-empty
star-empty
star-empty
star-empty
star-empty
Relacionado
Tutorial

Trabalhando com MongoDB Charts e o novo SDK para JavaScript


Apr 02, 2024 | 10 min read
Tutorial

Parte #2: criar um modelo de endpoint com o Amazon SageMaker, o AWS Lambda e o AWS API Gateway


Sep 18, 2024 | 7 min read
Artigo

Colocando o RAG em produção com o chatbot de IA da documentação do MongoDB


Aug 29, 2024 | 11 min read
Vídeo

A cena do Atlas Search: Temporada 1


Sep 11, 2024 | 2 min
Sumário