A primeira decisão arquitetônica que você toma ao planejar uma implementação do Enterprise Advanced é onde o MongoDB é executado: em máquinas virtuais, servidores físicos ou no Kubernetes.
Esta página explica por que essa decisão é importante, quando cada plataforma é a adequada, e resume as principais diferenças entre as plataformas. Não cobre a instalação. Depois de escolher uma plataforma, a documentação do Ops Manager e do MongoDB Operators for Kubernetes (MCK) orienta você no processo de instalação e configuração.
Por que a escolha é importante
VMs, servidores físicos e Kubernetes são plataformas totalmente suportadas para implantações Enterprise Advanced, mas diferem de maneiras notáveis. A plataforma que você escolhe determina o nível de automação que o MongoDB oferece, os recursos que você pode usar e a dificuldade da escolha em alterá-la posteriormente.
Escolha sua plataforma
Kubernetes
Nesse caminho, o MCK, o operador MongoDB Kubernetes, gerencia a infraestrutura e a configuração do MongoDB declarativamente. Isso significa que um ou um pequeno número de arquivos de configuração define uma implantação do MongoDB e a automação do MongoDB resulta no gerenciamento da infraestrutura e da configuração do MongoDB .
Como funciona:
Você declara a implantação que deseja. Em seguida, o MCK implementa e gerencia os recursos do Kubernetes que o MongoDB usa, como StatefulSets, pods, armazenamento e rede. O MCK coordena com o Ops Manager e configura a implantação.
O Ops Manager ainda é necessário para automação, backups e monitoramento. A MCK e o Ops Manager trabalham juntos. O MCK automatiza a infraestrutura e o Ops Manager fornece os serviços necessários para executar o MongoDB como um serviço. Eles não são alternativos.
Trocas e benefícios:
Implantações, dimensionamento, alterações de fragmentação e atualizações tornam-se alterações de configuração declarativas em vez de exigir coordenação interna de infraestrutura e operações do Ops Manager.
As implantações e atualizações não exigem instalação ou reinstalação de binários entre hosts.
Sistemas em várias regiões: os membros de um conjunto de réplicas ou cluster fragmentado podem abranger vários clusters Kubernetes em diferentes locais, garantindo a resiliência e a alta disponibilidade nos clusters Kubernetes e regiões geográficas. Se um cluster ou site ficar inativo, os membros poderão ser recriados em outro por meio da criação automatizada de novos nós do MongoDB em outros clusters do Kubernetes.
Necessário para nós do Enterprise Advanced Search. Se a Pesquisa estiver no escopo, o Kubernetes deverá fazer parte da implantação para pelo menos os nós de Pesquisa, mas não necessariamente os nós do banco de dados .
O Kubernetes é a única plataforma onde o MongoDB pode fornecer automação na camada de infraestrutura. Por exemplo, o provisionamento automático do balanceamento de carga para nós de pesquisa.
Assim como nas VMs, você permanece responsável pela infraestrutura subjacente e sua arquitetura e configuração. Isso inclui o provisionamento de armazenamento com estado para seus clusters Kubernetes e o suporte de quaisquer equipes internas relevantes que gerenciam e mantêm a infraestrutura do Kubernetes. Dependendo de seus requisitos para executar o MongoDB, isso pode se estender a preocupações como conectividade entre clusters Kubernetes se você quiser implantar sistemas individuais do MongoDB em vários locais e, portanto, vários clusters Kubernetes.
Quando é a escolha certa:
As organizações que procuram executar o " MongoDB como serviço" com sobrecarga operacional mínima.
Novas implementações Enterprise Advanced.
Equipes que desejam uma interface unificada para gerenciamento de infraestrutura e banco de dados e acesso completo a recursos Enterprise Advanced, incluindo pesquisa.
VMs ou servidores físicos
Nesse caminho, o gerenciamento do ciclo de vida da infraestrutura para suas implementações do MongoDB é sua responsabilidade. O MongoDB Agent é executado em cada host e permite que você configure o MongoDB por meio do Ops Manager.
Como funciona:
Você mesmo provisiona as VMs ou servidores físicos. O MongoDB não gerencia infraestrutura na camada de VM. Você pode usar automação ou ferramentas existentes para provisionar as VMs ou servidores.
Você instala o MongoDB Agent em cada host e o ponto para o Ops Manager.
O Ops Manager lida com a configuração, backup e monitoramento das implementações em execução nesses hosts.
Trocas e benefícios:
A execução em VMs permite reutilizar qualquer ferramenta de provisionamento de infraestrutura já conhecida para criar hosts para o MongoDB.
No entanto, isso média que qualquer operação que envolva alterações na infraestrutura e na configuração do MongoDB é uma operação de duas etapas, incluindo implantação ou dimensionamento. Você provisiona ou redimensiona a infraestrutura, como adicionar VMs ou adicionar RAM e CPU, e faz a alteração de configuração correspondente no Ops Manager. Dois sistemas controlam partes diferentes do mesmo sistema, infraestrutura e configuração, e você os mantém alinhados. Manter os dois sistemas alinhados é sua responsabilidade, e você deve automatizar e manter esse alinhamento, se necessário.
O MongoDB não pode recuperar a infraestrutura para você. Por exemplo, se um site ficar inativo, recriar o conjunto de réplicas ou os membros do shard em outro local significa que você deve provisionar novos hosts, configurar o agente e anexá-los novamente ao cluster.
Quando é a escolha certa:
Propriedades de VM estabelecidas com ferramentas de infraestrutura existentes e automação de VM.
Organizações onde a adesão ao Kubernetes não é possível.
A implantação baseada em VM é totalmente suportada, e muitos grandes clientes do Enterprise Advanced executam dessa forma atualmente. Não é um caminho legado ou obsoleto, e há um compromisso contínuo do MongoDB para reduzir a sobrecarga e as complexidades do MongoDB auto-hospedado, independentemente da plataforma subjacente.
Observação
A pesquisa exige Kubernetes mesmo que seu banco de dados seja executado em VMs. Se você adicionar a pesquisa posteriormente, introduzirá um ambiente Kubernetes para a camada de pesquisa. Seu banco de dados e o Ops Manager não precisam ser movidos.
Recap
VMs, servidores físicos e Kubernetes são plataformas totalmente suportadas para executar o MongoDB. O Kubernetes oferece o mais alto nível de automação, incluindo provisionamento de infraestrutura e gerenciamento do ciclo de vida de seus clusters, e é a única plataforma compatível com o Search. Você também continua responsável por fornecer e gerenciar os clusters Kubernetes subjacentes e qualquer armazenamento com estado.
Se o Kubernetes não estiver no escopo da sua organização, o sistema baseado em VM com o Ops Manager será totalmente suportado. O valor principal do Enterprise Advanced, incluindo backup, monitoramento, orquestração e suporte, permanece disponível.