Para fornecer configurações opcionais, edite o arquivo YAML que corresponde ao seu tipo de sistema no diretório onde você clonou o repositório do Kubernetes Operator:
Vanilla Kubernetes using kubectl: mongodb-kubernetes.yaml
OpenShift usando oc: mongodb-kubernetes-openshift.yaml
Se a configuração que você deseja adicionar não existir no arquivo YAML , adicione-a como uma nova array de mapeamentos de pares de valores-chave no arquivo spec.template.spec.containers.name.env. collection:
Defina o valor da chave spec.template.spec.containers.name.env.name para o nome da configuração.
Defina o valor da chave spec.template.spec.containers.name.env.value para o valor da configuração.
Para preencher valores para imagens de container, consulte Imagens de container.
spec: template: spec: serviceAccountName: mongodb-kubernetes-operator containers: - name: mongodb-kubernetes-operator image: <operatorVersionUrl> imagePullPolicy: <policyChoice> env: - name: INIT_DATABASE_IMAGE_REPOSITORY value: quay.io/mongodb/mongodb-kubernetes-init-databaseAGENT_IMAGE
URL do repositório do qual o Operador Kubernetes baixa a imagem do MongoDB Agent para sistemas de banco de dados não estáticos. Inclua a versão do MongoDB Agent . Para saber mais, consulte Planejar suas imagens de contêiner do Kubernetes Operator.
spec: template: spec: serviceAccountName: mongodb-kubernetes-operator containers: - name: mongodb-kubernetes-operator image: <operatorVersionUrl> imagePullPolicy: <policyChoice> env: - name: AGENT_IMAGE value: quay.io/mongodb/mongodb-agent:<version>CLUSTER_CLIENT_TIMEOUT
Tempo, em segundos, o Kubernetes Operator tenta se conectar ao endpoint de servidor da API Kubernetes de um cluster. Esse tempo limite é definido para todos os clusters Kubernetes em sistemas do MongoDB de vários clusters Kubernetes. Se o Kubernetes Operator não receber uma resposta do servidor da API do Kubernetes dentro do tempo especificado, ele registrará o status do cluster como "não íntegro". Para saber mais, consulte Solução de problemas de clusters Kubernetes.
O valor padrão é 10 .
spec: template: spec: serviceAccountName: mongodb-kubernetes-operator containers: - name: mongodb-kubernetes-operator image: <operatorVersionUrl> imagePullPolicy: <policyChoice> env: - name: CLUSTER_CLIENT_TIMEOUT value: 10DATABASE_VERSION
Versão da imagem do MongoDB Enterprise reconhecimento de data center que o Kubernetes Operator implementa.
spec: template: spec: serviceAccountName: mongodb-kubernetes-operator containers: - name: mongodb-kubernetes-operator image: <operatorVersionUrl> imagePullPolicy: <policyChoice> env: - name: DATABASE_VERSION value: 1.15.0IMAGE_PULL_POLICY
Política de pull para a imagem do banco de dados MongoDB Enterprise que o Operador Kubernetes implementa.
O Operador Kubernetes aceita os seguintes valores: Sempre, IfNotPresent, Nunca.
O valor padrão é Sempre.
INIT_DATABASE_IMAGE_REPOSTORY
URL do repositório do qual a imagem initContainer que contém os scripts de inicialização do MongoDB Agent e a sonda de prontidão é baixada.
spec: template: spec: serviceAccountName: mongodb-kubernetes-operator containers: - name: mongodb-kubernetes-operator image: <operatorVersionUrl> imagePullPolicy: <policyChoice> env: - name: INIT_DATABASE_IMAGE_REPOSITORY value: quay.io/mongodb/mongodb-kubernetes-init-databaseINIT_DATABASE_VERSION
Versão da imagem initContainer que contém os scripts de inicialização do MongoDB Agent e o teste de preparação.
O valor padrão é 1.15.0.
spec: template: spec: serviceAccountName: mongodb-kubernetes-operator containers: - name: mongodb-kubernetes-operator image: <operatorVersionUrl> imagePullPolicy: <policyChoice> env: - name: INIT_DATABASE_VERSION value: 1.15.0INIT_OPS_MANAGER_IMAGE_REPOSTORY
URL do repositório do qual a imagem initContainer que contém os scripts de inicialização do MongoDB Ops Manager e a sonda de prontidão é baixada.
spec: template: spec: serviceAccountName: mongodb-kubernetes-operator containers: - name: mongodb-kubernetes-operator image: <operatorVersionUrl> imagePullPolicy: <policyChoice> env: - name: INIT_OPS_MANAGER_IMAGE_REPOSITORY value: quay.io/mongodb/mongodb-kubernetes-init-ops-managerINIT_OPS_MANAGER_VERSION
Versão da imagem initContainer que contém os scripts de inicialização do Ops Manager e o teste de preparação.
O valor padrão é 1.15.0.
spec: template: spec: serviceAccountName: mongodb-kubernetes-operator containers: - name: mongodb-kubernetes-operator image: <operatorVersionUrl> imagePullPolicy: <policyChoice> env: - name: INIT_OPS_MANAGER_VERSION value: 1.15.0LOG_FILE_PATH
Caminho para os arquivos de backup rotacionados do readiness.log mantidos pelo Readiness Probe.
O valor padrão é /var/log/mongodb-mms-automation/readiness.log.
spec: template: spec: serviceAccountName: mongodb-kubernetes-operator containers: - name: mongodb-kubernetes-operator image: <operatorVersionUrl> imagePullPolicy: <policyChoice> env: - name: LOG_FILE_PATH value: /var/log/mongodb-mms-automation/readiness.logmanaged_security_context
Sinalizador que determina se o Kubernetes Operator herda ou não as configurações de securityContext que seu cluster do Kubernetes managed.
Este valor deve ser verdadeiro se você deseja executar o Operador Kubernetes no OpenShift ou em um ambiente restritivo.
O valor padrão é falso.
spec: template: spec: serviceAccountName: mongodb-kubernetes-operator containers: - name: mongodb-kubernetes-operator image: <operatorVersionUrl> imagePullPolicy: <policyChoice> env: - name: MANAGED_SECURITY_CONTEXT value: falseO valor padrão é verdadeiro .
spec: template: spec: serviceAccountName: mongodb-kubernetes-operator containers: - name: mongodb-kubernetes-operator image: <operatorVersionUrl> imagePullPolicy: <policyChoice> env: - name: MANAGED_SECURITY_CONTEXT value: trueMDB_AGENT_IMAGE_REPOSITORY
URL do repositório do qual o Operador Kubernetes baixa a imagem do MongoDB Agent para sistemas de banco de dados . Para saber mais, consulte Planejar suas imagens de contêiner do Kubernetes Operator.
spec: template: spec: serviceAccountName: mongodb-kubernetes-operator containers: - name: mongodb-kubernetes-operator image: <operatorVersionUrl> imagePullPolicy: <policyChoice> env: - name: MDB_AGENT_IMAGE_REPOSITORY value: quay.io/mongodb/mongodb-agentMDB_APPDB_ASSUME_OLD_FORMAT
O valor padrão é false, que atualiza automaticamente o sufixo da imagem.
spec: template: spec: serviceAccountName: mongodb-kubernetes-operator containers: - name: mongodb-kubernetes-operator image: <operatorVersionUrl> imagePullPolicy: <policyChoice> env: - name: MDB_APPDB_ASSUME_OLD_FORMAT value: falseMDB_AUTOMATIC_RECOVERY_ENABLE
Sinalizador que determina se o Kubernetes Operator habilita ou não a recuperação automática para recursos do MongoDB por Pod.
O valor padrão é verdadeiro .
spec: template: spec: serviceAccountName: mongodb-kubernetes-operator containers: - name: mongodb-kubernetes-operator image: <operatorVersionUrl> imagePullPolicy: <policyChoice> env: - name: MDB_AUTOMATIC_RECOVERY_ENABLE value: falseMDB_AUTOMATIC_RECOVERY_BACKOFF_TIME_S
Número de segundos que um recurso personalizado pode permanecer em um estado Pending ou Failed antes de o Operador Kubernetes recuperar automaticamente seus recursos MongoDB .
O valor padrão é 1200 segundos (20 minutos).
Para desabilitar a recuperação automática, configure a variável de ambiente MDB_AUTOMATIC_RECOVERY_ENABLE para false.
spec: template: spec: serviceAccountName: mongodb-kubernetes-operator containers: - name: mongodb-kubernetes-operator image: <operatorVersionUrl> imagePullPolicy: <policyChoice> env: - name: MDB_AUTOMATIC_RECOVERY_BACKOFF_TIME_S value: 3600MDB_DEFAULT_ARCHITECTURE
Determina a arquitetura de containers usada por todos os seus sistemas:
Os contêineres não estáticos padrão que baixam o binário MongoDB no tempo de execução, ou
Containers estáticos (visualização pública) que são imutáveis no tempo de execução.
Para habilitar contêineres estáticos para uma única implantação, use metadata.annotations.mongodb.com/v1.architecture no recurso MongoDB .
O padrão é non-static.
Para habilitar contêineres estáticos, defina como static.
spec: template: spec: serviceAccountName: mongodb-kubernetes-operator containers: - name: mongodb-kubernetes-operator image: <operatorVersionUrl> imagePullPolicy: <policyChoice> env: - name: MDB_DEFAULT_ARCHITECTURE value: staticMDB_DEFAULT_IMAGE_TYPE
Determina a variante padrão da imagem mongodb-enterprise-server para todos os sistemas que usam Containers estáticos (visualização pública) e para o banco de dados de aplicativos.
Os valores aceitos são:
ubi8ubi9ubi9-slim
Quando não estão definidos, os sistemas que usam containers estáticos usam ubi9, e um aplicativo de banco de dados não estático usa ubi8.
Para definir a variante da imagem para uma única implantação, use metadata.annotations.mongodb.com/v1.containerImageType no recurso MongoDB . A anotação tem precedência sobre esta configuração.
Se você definir um valor não suportado, o Kubernetes Operator ignorará o valor e registrará um aviso.
spec: template: spec: serviceAccountName: mongodb-kubernetes-operator containers: - name: mongodb-kubernetes-operator image: <operatorVersionUrl> imagePullPolicy: <policyChoice> env: - name: MDB_DEFAULT_IMAGE_TYPE value: ubi9-slimMDB_WITH_AGENT_FILE_LOGGING
Controla se os arquivos de log são enviados para a saída padrão, como quando você executa kubectl describe.
O padrão é true.
spec: template: spec: serviceAccountName: mongodb-kubernetes-operator containers: - name: mongodb-kubernetes-operator image: <operatorVersionUrl> imagePullPolicy: <policyChoice> env: - name: MDB_WITH_AGENT_FILE_LOGGING value: trueMDB_MAX_CONCURRENT_RECONCILES
O número de processos de reconciliação simultâneos que o Kubernetes Operator pode executar.
Exemplo
spec: template: spec: serviceAccountName: mongodb-kubernetes-operator containers: - env: - name: MDB_MAX_CONCURRENT_RECONCILES value: "10"MDB_OPERATOR_TELEMETRY_ENABLED
Permite que o Operador Kubernetes colete e envie telemetria ao MongoDB para análise. MDB_OPERATOR_TELEMETRY_SEND_ENABLED também deve ser definido como true para o Operador Kubernetes enviar telemetria para MongoDB.
O padrão é true. Se definido como false, o Operador Kubernetes não coleta nem envia telemetria para o MongoDB.
spec: template: spec: serviceAccountName: mongodb-kubernetes-operator containers: - env: - name: MDB_OPERATOR_TELEMETRY_ENABLED value: "true"MDB_OPERATOR_TELEMETRY_SEND_ENABLED
Permite que o Operador Kubernetes envie telemetria para MongoDB para análise. MDB_OPERATOR_TELEMETRY_ENABLED também deve ser definido como true para o Operador Kubernetes enviar telemetria.
O padrão é true. Se definido como false, o Operador Kubernetes coleta telemetria no ConfigMap denominado mongodb-kubernetes-operator-telemetry, mas não o envia para MongoDB.
spec: template: spec: serviceAccountName: mongodb-kubernetes-operator containers: - env: - name: MDB_OPERATOR_TELEMETRY_SEND_ENABLED value: "true"MDB_PROPAGATE_PROXY_ENV
Enables the Kubernetes Operator to function in proxy-restricted environments. Set this variable to true with the standard proxy settings (HTTP_PROXY, HTTPS_PROXY, NO_PROXY) to propagate these proxy settings from your Kubernetes Operator Pod to the MongoDB Agents, allowing all components to communicate effectively through the specified proxies.
Exemplo
spec: template: spec: serviceAccountName: mongodb-kubernetes-operator containers: - env: - name: MDB_PROPAGATE_PROXY_ENV value: "true" - name: HTTP_PROXY value: "http://example-http-proxy:7312" - name: HTTPS_PROXY value: "https://secure-proxy:3242" - name: NO_PROXY value: "google.com"MONGODB_enterprise_DATABASE_IMAGE
URL da imagem do MongoDB Enterprise reconhecimento de data center que o Kubernetes Operator implementa.
spec: template: spec: serviceAccountName: mongodb-kubernetes-operator containers: - name: mongodb-kubernetes-operator image: <operatorVersionUrl> imagePullPolicy: <policyChoice> env: - name: MONGODB_ENTERPRISE_DATABASE_IMAGE value: quay.io/mongodb/mongodb-kubernetes-databaseMONGODB_REPO_URL
URL do repositório base para imagens oficiais do servidor MongoDB.
O valor padrão é quay.io/mongodb.
spec: template: spec: serviceAccountName: mongodb-kubernetes-operator containers: - name: mongodb-kubernetes-operator image: <operatorVersionUrl> imagePullPolicy: <policyChoice> env: - name: MONGODB_REPO_URL value: quay.io/mongodbOperator_env
Etiqueta para o ambiente de implementação dos Operadores Kubernetes. Esse valor afeta os tempos limite padrão e o nível e o formato do registro:
Se o valor for | O nível de registro está definido como | O formato de registro está definido como |
|---|---|---|
| debug | text |
| informações | JSON |
O valor padrão é prod.
OPS_MANAGER_IMAGE_PULL_POLICY
Política de pull para as imagens do Ops Manager que o Kubernetes Operator implementa.
O Operador Kubernetes aceita os seguintes valores: Sempre, IfNotPresent e Nunca.
O valor padrão é Sempre.
spec: template: spec: serviceAccountName: mongodb-kubernetes-operator containers: - name: mongodb-kubernetes-operator image: <operatorVersionUrl> imagePullPolicy: <policyChoice> env: - name: OPS_MANAGER_IMAGE_PULL_POLICY value: AlwaysOPS_MANAGER_IMAGE_REPOSTORY
URL do repositório do qual a imagem de um recurso do Ops Manager é baixada.
spec: template: spec: serviceAccountName: mongodb-kubernetes-operator containers: - name: mongodb-kubernetes-operator image: <operatorVersionUrl> imagePullPolicy: <policyChoice> env: - name: OPS_MANAGER_IMAGE_REPOSITORY value: quay.io/mongodb/mongodb-enterprise-ops-manager-ubireadincess_probe_logger_backups
O número de arquivos de backup readiness.log rotacionados e mantidos pelo Readiness Probe.
O valor padrão é 5 .
spec: template: spec: serviceAccountName: mongodb-kubernetes-operator containers: - name: mongodb-kubernetes-operator image: <operatorVersionUrl> imagePullPolicy: <policyChoice> env: - name: READINESS_PROBE_LOGGER_BACKUPS value: 1READINESS_PROBE_LOGGER_COMPRESS
Controla se os arquivos de backup do readiness.log rotacionados mantidos pela Probe Readiness são compactados para arquivos readiness.log.gz .
O valor padrão é false, que deixa os arquivos readiness.log descompactados.
spec: template: spec: serviceAccountName: mongodb-kubernetes-operator containers: - name: mongodb-kubernetes-operator image: <operatorVersionUrl> imagePullPolicy: <policyChoice> env: - name: READINESS_PROBE_LOGGER_COMPRESS value: truereadincess_probe_logger_max_size
O tamanho máximo do arquivo readiness.log em MB.
O valor padrão é 100.
spec: template: spec: serviceAccountName: mongodb-kubernetes-operator containers: - name: mongodb-kubernetes-operator image: <operatorVersionUrl> imagePullPolicy: <policyChoice> env: - name: READINESS_PROBE_LOGGER_MAX_SIZE value: 125readincess_probe_logger_max_age
O número máximo de dias para reter arquivos readiness.log rotacionados, começando com a data no carimbo de data/hora do arquivo. Se definido como 0, o Kubernetes Operator não remove readiness.log arquivos com base na idade, mas depende de READINESS_PROBE_LOGGER_BACKUPS para determinar a retenção.
O valor padrão é 0 .
spec: template: spec: serviceAccountName: mongodb-kubernetes-operator containers: - name: mongodb-kubernetes-operator image: <operatorVersionUrl> imagePullPolicy: <policyChoice> env: - name: READINESS_PROBE_LOGGER_MAX_AGE value: 3WATCH_NAMESPACE
Namespaces que o Operador do Kubernetes observa quanto a alterações de recursos MongoDB. If this namespace for diferente do padrão, certifique-se de que o Kubernetes Operator ServiceAccount possa acessá-lo namespace.
Para observar todos os namespaces, especifique * e atribua a ClusterRole à
mongodb-kubernetes-operatorServiceAccount que você usa para executar o Kubernetes Operator.Para observar um subconjunto de todos os namespaces, especifique-os em uma lista separada por vírgula, escape de cada vírgula com uma barra invertida e coloque a lista entre aspas, como
"operator.watchNamespace=ns1\,ns2".
Observar um subconjunto de namespaces é útil em sistemas em que uma única instância do Kubernetes Operator observa um tipo de recurso de cluster diferente. Por exemplo, você pode configurar o Operador Kubernetes para observar recursos do MongoDB em um subconjunto de namespaces e para monitorar recursos do MongoDBMultiCluster em outro subconjunto de namespaces. Para evitar condições de corrida durante a reconciliação de recursos, para cada tipo de recurso personalizado que você deseja que o Operador Kubernetes assista, certifique-se de definir o escopo para um subconjunto distinto de namespaces.
Importante
Para implantar recursos do Ops Manager e do MongoDB para um ou mais namespaces diferente daquele onde você implanta o Operador Kubernetes, consulte Definir escopo para Controladores MongoDB para Sistema do Operador Kubernetes para valores que você deve usar e etapas adicionais que você pode ter que executar.
O valor padrão é <metadata.namespace>.