Menu Docs
Página inicial do Docs
/
Operador de Kubernetes do MongoDB Enterprise
/

Arquitetura, recursos e limitações

Nesta página

  • Limitações
  • Recursos de implantação de vários clusters
  • Conecte-se com registros DNS SRV
  • Gerenciar segurança para usuários do banco de dados
  • Configurar queryable backups para recursos do MongoDB Ops Manager de cluster único
  • Arquitetura e diagramas de implantação
  • Diagrama: sistema de cluster multi-Kubernetes com uma malha de serviço
  • Diagrama: sistema de cluster multi-Kubernetes sem uma malha de serviço

As seguintes limitações existem para sistemas MongoDB de multikubernetes cluster:

  • Implemente somente conjuntos de réplicas de recursos do MongoDBMultiCluster . Sistemas de cluster fragmentado não são suportados.

  • Use versões do Ops Manager posteriores a 5.0.7.

  • Use somente segredos do Kubernetes{ para sua ferramenta de armazenamento secreta.HashiCorp Vault a ferramenta de armazenamento secreto não é suportada.

  • Para sistemas em que a mesma instância do Kubernetes Operator não está gerenciando os recursos personalizados MongoDBOpsManager e MongoDB , você deve definir manualmente as configurações do cliente de criptografia de backup KMIP no MongoDB Ops Manager. Para saber mais, consulte Configurar manualmente o KMIP Backup Encryption.

  • Não adicione um ServiceMonitor aos seus MongoDBMultiCluster recursos do . O Operador Kubernetes não permite a integração com Prometeus.

  • Você pode criar uma nova sistema MongoDB de cluster multi-Kubernetes e entrar em contato com o Suporte do MongoDB para ajudá-lo a migrar dados de seu sistema existente do Kubernetes para uma sistema do MongoDB de cluster multi-Kubernetes. Você não pode estender um sistema de cluster Kubernetes único existente para novos clusters Kubernetes.

Esta seção descreve os recursos de implantação do MongoDB de clusters multikubernetes que você pode configurar usando os mesmos procedimentos que os procedimentos para clusters únicos de recursos do MongoDB implementados com o Kubernetes Operator. Outros recursos de implantação do MongoDB em clusters multi-Kubernetes têm sua própria documentação neste guia.

Para se conectar ao banco de dados de sistema MongoDB do cluster multi- banco de dados como usuário, você pode usar o connectionString.standardSrv: string de conexão da lista de sementes de DNS. Essa string está incluída no segredo que o Operador Kubernetes cria para sua implantação do MongoDB de clusters Kubernetes múltiplos. Use o mesmo procedimento para conectar-se ao sistema do MongoDB de cluster multi-Kubernetes e para clusters únicos implementados com o Kubernetes Operator. Consulte Conectar-se a um recurso de banco de dados MongoDB de dentro do Kubernetes e selecione a aba Using the Kubernetes Secret.

Use estes métodos para managed a segurança dos trigger de banco de dados:

Esses procedimentos são os mesmos que os procedimentos para clusters únicos distribuídos com o Kubernetes Operator, com as seguintes exceções:

  • Os procedimentos se aplicam somente a conjuntos de réplicas. Os sistemas do MongoDB de cluster multi-Kubernetes não suportam a criação de clusters fragmentados.

  • No mongodbResourceRef, especifique o nome do conjunto de réplica de implantação do MongoDB do cluster multi-Kubernetes: name: "<my-multi-cluster-replica-set>".

Se você implantar uma instância MongoDB Ops Manager em um único cluster Kubernetes com o Kubernetes Operator, o cluster de hospedagem do operador também poderá hospedar o MongoDB Ops Manager. Nesse caso, você pode configurar queryable backup para recursos MongoDB Ops Manager . Não há suporte para queryable backup em sistemas de recursos do MongoDB Ops Manager em vários clusters do Kubernetes .

Você pode criar deployments do MongoDB em clusters multi-Kubernetes com ou sem depender de uma service mesh. Para saber mais, consulte Planejar a conectividade externa: Você deve usar uma Service Mesh?

Em ambos os diagramas a seguir, o MongoDB Enterprise Kubernetes Operator executa estas ações:

  • Observa a criação da especificação de recursos MongoDBMultiCluster no cluster central.

  • Utiliza o arquivo kubeconfig montado para se comunicar com clusters de membros.

  • Cria os recursos necessários, como objetos ConfigMaps, Secrets, Services e StatefulSet Kubernetes em cada cluster de membros correspondente ao número de membros do conjunto de réplicas no cluster MongoDB.

  • Identifica o cluster para implantar cada conjunto de réplicas do MongoDB usando a especificação de recurso MongoDBMultiCluster correspondente e distribuir os conjuntos de réplicas do MongoDB.

  • Observa os eventos CentralCluster e MemberCluster .

  • Reconcilia os recursos criados para confirmar se o sistema MongoDB de cluster multi-Kubernetes está no estado desejado.

Um sistema do MongoDB de vários clusters Kubernetes que usa o MongoDB Enterprise Kubernetes Operator consiste em um cluster central e um ou mais clusters de membros no Kubernetes:

  • O cluster central tem a seguinte função:

    • Hospeda o MongoDB Enterprise Kubernetes Operator

    • Atua como o plano de controle para o sistema MongoDB do cluster multi-Kubernetes

    • Hospeda a especificação de recurso MongoDBMultiCluster para o conjunto de réplicas do MongoDB

    • Hosts Ops Manager, se você implantar o Ops Manager com o Kubernetes Operator

    • Também pode hospedar membros do conjunto de réplicas MongoDB

    Importante

    O cluster central também é conhecido como cluster do operador. As referências ao cluster central podem ser renomeadas para se referir ao cluster do operador em versões futuras.

  • Os clusters de membros hospedam os conjuntos de réplicas do MongoDB.

Observe que, se o cluster central (também conhecido como cluster do operador) falhar, você não poderá usar o Kubernetes Operator para alterar seu sistema até restaurar o acesso a esse cluster ou até reimplantar o Kubernetes Operator em outro cluster Kubernetes disponível. Para saber mais, consulte Recuperação de desastres.

O diagrama a seguir mostra a arquitetura de alto nível de uma implantação do MongoDB de vários clusters Kubernetes em regiões e zonas de disponibilidade. Essa implantação usa uma interface de serviço, como Istipo. A tela de serviço:

  • Managed a descoberta de nós do MongoDB distribuídos em diferentes clusters de membros do Kubernetes.

  • Lida com a comunicação entre membros do conjunto de réplicas.

Você pode hospedar seu aplicativo em qualquer um dos clusters de membros dentro da tela de serviço, como:

  • Em clusters Kubernetes fora daqueles que você implementa com o Operador Kubernetes, ou

  • Nos clusters de membros em um sistema do MongoDB de cluster multi-Kubernetes.

Diagrama mostrando a arquitetura de alto nível de um sistema de vários clusters do Kubernetes entre regiões e zonas de disponibilidade usando o MongoDB Enterprise Kubernetes Operator com uma malha de serviço
clique para ampliar

O diagrama a seguir mostra a arquitetura de alto nível de uma implantação do MongoDB de vários clusters Kubernetes em regiões e zonas de disponibilidade. Essa implantação não depende de uma malha de serviço para conectividade entre os clusters Kubernetes que hospedam Pods com instâncias MongoDB.

Para lidar com a comunicação externa entre os membros do conjunto de réplicas do MongoDB hospedados em Pods em clusters Kubernetes distintos, use domínios externos e zonas de DNS.

Diagrama mostrando a arquitetura de alto nível de uma implantação de vários clusters do Kubernetes entre regiões e zonas de disponibilidade usando o MongoDB Enterprise Kubernetes Operator e sem uma malha de serviço
clique para ampliar

Você pode hospedar seu aplicativo em qualquer um dos clusters de membros.

Voltar

Visão geral