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

Implemente em redes restritas

Este tutorial demonstra como implantar o MongoDB Enterprise Operator, uma instância MongoDB Ops Manager e um conjunto de réplicas do MongoDB usando o Kubernetes Operator em um ambiente OpenShift de rede restrita.

1

Os catálogos do Red Hat Operator contêm metadados que o OLM query para instalar Operadores e suas dependências em um cluster. Você deve criar uma cópia do catálogo do Operador e, em seguida, desabilitar o catálogo padrão como administrador do cluster.

O relatedImages no pacote do operador lista as seguintes imagens:

  • Imagens diretamente usadas pelo operador, que são a versão atual do mongodb-enterprise-init-database-ubi, mongodb-enterprise-init-ops-manager-ubi, mongodb-enterprise-init-appdb-ubi, mongodb-enterprise-init-database-ubi.

  • Todas as imagens atualmente suportadas do MongoDB Ops Manager, AppDB e mongodb-agent-ubi que podem ser configuradas em um sistema do MongoDB Ops Manager .

Para imagens init , use somente a versão presente na versão mais recente do Kubernetes Operator.

O tamanho de todas as imagens relacionadas referenciadas pelo pacote do operador é superior a 26 GB.

Seu comando de espelhamento não escolherá versões não suportadas das imagens do AppDB. Se você quiser usar qualquer outra versão não suportada, deverá fornecer manualmente essas imagens ao registro espelhado. Para outras versões para uma determinada versão do operador, consulte imagem para a Implementação.

Para a lista completa de imagens definidas nas RELATED_IMAGE_* variáveis de ambiente do , consulte o arquivo CSV .

  1. Para espelhar,consulte espelhando imagens para uma instalação desconectada.

    Quando você oc adm catalog mirror executa o comando para espelhar o catálogo, ele gera o imageContentSourcePolicy.yaml arquivo , que você deve aplicar para remapear a fonte original para imagens espelhadas. Por exemplo:

    oc apply -f ./<output dir>/imageContentSourcePolicy.yaml

    Para saber mais, consulte Catálogos do operador de espelhamento para uso com clusters desconectados. Para obter uma lista de versões do MongoDB compatíveis com cada versão MongoDB Ops Manager , consulte Versão compatível do MongoDB .

  2. Para desabilitar o catálogo padrão, adicione disableAllDefaultSources: true ao objeto OperatorHub .

Para saber mais,consulte Usando o Operator Lifecycle Manager em redes restritas.

2

Para saber mais, consulte:

  • Planejar a instalação do Enterprise Kubernetes Operator do MongoDB

  • Instale o MongoDB Enterprise Kubernetes Operator

3

Para implantar o MongoDB Ops Manager no Modo Local, você deve fazer o seguinte:

  1. Copie o seguinte MongoDB Ops Manager Kubernetes objeto e salve-o como um .yaml arquivo .

    • Use a configuração automation.versions.source: local do MongoDB Ops Manager em spec.configuration para habilitar o modo local.

    • Definir um volume persistente para o Ops Manager StatefulSet armazenar o arquivo de instalação do MongoDB. A execução do MongoDB Agent nos contêineres de recursos de banco de dados MongoDB que você cria com o Kubernetes Operator baixa os arquivos de instalação do Ops Manager em vez da Internet.

    1apiVersion: mongodb.com/v1
    2kind: MongoDBOpsManager
    3metadata:
    4 name: ops-manager-localmode
    5spec:
    6 replicas: 2
    7 version: "6.0.0"
    8 adminCredentials: ops-manager-admin-secret
    9 configuration:
    10 # this enables local mode in Ops Manager
    11 automation.versions.source: local
    12 statefulSet:
    13 spec:
    14 # the Persistent Volume Claim will be created for each Ops Manager Pod
    15 volumeClaimTemplates:
    16 - metadata:
    17 name: mongodb-versions
    18 spec:
    19 accessModes: [ "ReadWriteOnce" ]
    20 resources:
    21 requests:
    22 storage: "20Gi"
    23 template:
    24 spec:
    25 containers:
    26 - name: mongodb-ops-manager
    27 volumeMounts:
    28 - name: mongodb-versions
    29 # this is the directory in each Pod where all MongoDB
    30 # archives must be put
    31 mountPath: /mongodb-ops-manager/mongodb-releases
    32 backup:
    33 enabled: false
    34 applicationDatabase:
    35 members: 3
    36 persistent: true

    Para saber mais sobre as configurações, consulte Implantar um recurso do Ops Manager.

  2. Configure oc como padrão para seu namespace.

    oc config set-context $(oc config current-context) --namespace=<metadata.namespace>
  3. Copie as seguintes configurações de recursos do MongoDB Ops Manager , cole no recurso existente do MongoDB Ops Manager e salve o arquivo de configuração MongoDB Ops Manager .

    1configuration:
    2 # this enables local mode in Ops Manager
    3 automation.versions.source: local
    4statefulSet:
    5 spec:
    6 # the Persistent Volume Claim will be created for each Ops Manager Pod
    7 volumeClaimTemplates:
    8 - metadata:
    9 name: mongodb-versions
    10 spec:
    11 accessModes: [ "ReadWriteOnce" ]
    12 resources:
    13 requests:
    14 storage: "20Gi"
    15 template:
    16 spec:
    17 containers:
    18 - name: mongodb-ops-manager
    19 volumeMounts:
    20 - name: mongodb-versions
    21 # this is the directory in each Pod where all MongoDB
    22 # archives must be put
    23 mountPath: /mongodb-ops-manager/mongodb-releases
  4. Copie o arquivo de instalação do MongoDB para o Volume persistente do MongoDB Ops Manager .

    Para saber como copiar o arquivo de instalação do MongoDB , consulte a etapa 10 no procedimento Configurar um recurso MongoDB Ops Manager para usar o modo local .

  5. Crie credenciais e armazene-as como um segredo.

    Execute o seguinte comando:

    Observação

    Forneça seus valores de Chave Pública e Privada para os seguintes parâmetros. Para saber mais, consulte Criar Credenciais para o Operador Kubernetes.

    oc \
    create secret generic ops-manager-admin-key \
    --from-literal="publicKey=<publicKey>" \
    --from-literal="privateKey=<privateKey>"
  6. Crie um ConfigMap semelhante ao seguinte:

    cat <<EOF | oc apply -f -
    apiVersion: v1
    kind: ConfigMap
    metadata:
    name: my-project
    namespace: mongodb
    data:
    projectName: myProjectName # this is an optional parameter
    orgId: 5b890e0feacf0b76ff3e7183 # this is a required parameter
    baseUrl: https://ops.example.com:8443
    EOF

    Para saber mais sobre as configurações no ConfigMap, consulte a etapa 7 no Início Rápido do OpenShift.

Para saber mais sobre como implantar o Ops Manager no Modo Local, consulte Configurar um recurso do Ops Manager para usar o Modo Local.

4

Você pode implantar um conjunto de réplicas ou implantar um cluster fragmentado. Para saber mais, consulte Implementar um recurso de MongoDB database .

Voltar

Início rápido

Próximo

Arquitetura do operador Kubernetes