Você pode definir as configurações de rotação de registro para CustomResourceDefinitions nos manifestos MongoDB e Ops Manager CRD.
A tabela a seguir descreve os campos de configuração de registro que você pode definir nos manifestos CRD do MongoDB e onde eles podem ser definidos ou acessados em outro lugar se você optar por não configurá-los diretamente dos manifestos CRD .
Componente | Tipo de registro | Configuração do manifesto CRD | Local de configuração padrão |
|---|---|---|---|
MongoDB | Registros do agente de automação | ||
MongoDB | agente de monitoramento | API ou UI do Ops Manager | |
MongoDB | Registros de backup | API ou UI do Ops Manager | |
MongoDB | Logs do MongoDB | MongoDB Ops Manager 7.0.4, 6.0.24 ou posterior: | UI do Ops Manager |
MongoDB | Logs de auditoria | UI do Ops Manager | |
MongoDB | Teste de preparação | ||
Banco de dados de aplicativos | Registros do MongoDB | ||
Banco de dados de aplicativos | Registros do agente de automação | ||
Banco de dados de aplicativos | agente de monitoramento | Encaminhado apenas para | |
Banco de dados de aplicativos | Logs de auditoria | ||
Ops Manager | Registros do Ops Manager |
Rotação de registros do MongoDB
Observação
Para o MongoDB Ops Manager 6, você só pode configurar mongod logs com essa configuração a partir da versão 6.0.2. Para o MongoDB Ops Manager 7, você só pode configurar mongod logs com essa configuração a partir da versão 7.0.4. Para versões anteriores MongoDB Ops Manager , você deve usar a interface do usuário do MongoDB Ops Manager para configurar os registros mongod.
Você pode configurar a rotação de um log no MongoDB CRD, como mostrado no manifesto de exemplo a seguir.
Consulte a tabela de comparação anterior para obter mais informações sobre como configurar a rotação de outros registros específicos do MongoDB.
Registros do agente de automação
Você pode configurar os registros do agente de automação do MongoDB no manifesto CRD do MongoDB em spec.agent.startupOptions.
Exemplo de manifesto
Observação
Para clusters fragmentados, você só pode configurar a rotação de registros no nível spec.agent . A configuração da rotação de registros em níveis subespecificados, como spec.configsrv.agent ou spec.shardsvr.agent , não é suportada.
apiVersion: mongodb.com/v1 kind: MongoDB metadata: name: log-rotate namespace: mongodb spec: podSpec: podTemplate: spec: containers: - name: mongodb-enterprise-database env: - name: READINESS_PROBE_LOGGER_MAX_SIZE value: "50" version: 8.0.0 opsManager: configMapRef: name: my-project credentials: my-credentials type: Standalone persistent: false # https://docs.opsmanager.mongodb.com/current/reference/mongodb-agent-settings/ agent: startupOptions: maxLogFiles: "10" maxLogFileSize: "2" readinessProbe: environmentVariables: READINESS_PROBE_LOGGER_MAX_SIZE: "10" READINESS_PROBE_LOGGER_BACKUPS: "1" READINESS_PROBE_LOGGER_MAX_AGE: "3" READINESS_PROBE_LOGGER_COMPRESS: "true" MDB_WITH_AGENT_FILE_LOGGING: "false" LOG_FILE_PATH: /var/log/mongodb-mms-automation/readiness.log backupAgent: logRotate: sizeThresholdMB: "200" timeThresholdHrs: "10" monitoringAgent: logRotate: sizeThresholdMB: "200" timeThresholdHrs: "10" # For Ops Manager 6, you can only configure mongod logs with this setting starting with version 6.0.2. # For Ops Manager 7, you can only configure mongod logs with this setting starting with version 7.0.4. # For previous Ops Manager versions, you must configure mongod logs using the Ops Manager UI. mongod: logRotate: sizeThresholdMB: "200" timeThresholdHrs: "10" numUncompressed: "10" numTotal: "10" percentOfDiskspace: "0.1" auditLogRotate: sizeThresholdMB: "200" timeThresholdHrs: "10" numUncompressed: "10" numTotal: "10" percentOfDiskspace: "0.1"
Rotação de registros do banco de dados de aplicativos
Você pode configurar a rotação do seguinte log no CRD do MongoDBOpsManager , como mostrado no exemplo de manifesto a seguir. Consulte a tabela anterior para obter mais informações sobre como configurar a rotação de outros registros específicos do banco de dados de aplicativo.
Registros do MongoDB
Você pode configurar a rotação do registro do MongoDB do banco de dados do aplicativo no manifesto MongoDBOpsManager em spec.applicationDatabase.agent.<component>.logRotate. O MongoDB comprime arquivos de log além dos dois registros mais recentes por padrão.
- Registros:
/var/log/mongodb-mms-automation/mongodb.log
Registros do agente de automação
Você pode configurar a rotação do registro do agente de automação do banco de dados do aplicativo no manifesto MongoDBOpsManager em spec.applicationDatabase.agent.startupOptions.
- Registros:
/var/log/mongodb-mms-automation/automation-agent-stderr.log/var/log/mongodb-mms-automation/automation-agent-verbose.log/var/log/mongodb-mms-automation/automation-agent.log
Registros de auditoria
Você pode configurar a rotação do registro de auditoria do banco de dados do aplicativo no manifesto MongoDBOpsManager em spec.applicationDatabase.agent.mongod.auditlogRotate.
- Registros:
/var/log/mongodb-mms-automation/mongodb-audit.log
Exemplo de manifesto
apiVersion: mongodb.com/v1 kind: MongoDBOpsManager metadata: name: ops-manager namespace: mongodb spec: replicas: 1 version: 8.0.0 adminCredentials: ops-manager-admin-secret applicationDatabase: version: "8.0.0" members: 3 agent: #agent.logRotate is deprecated and overwritten by agent.mongod.logRotate. logRotate: #Automation Agent log rotation startupOptions: maxLogFiles: 10 maxLogFileSize: 2 #Readiness probe log rotation readinessProbe: environmentVariables: READINESS_PROBE_LOGGER_MAX_SIZE: 10 READINESS_PROBE_LOGGER_BACKUPS: 1 READINESS_PROBE_LOGGER_MAX_AGE: 3 READINESS_PROBE_LOGGER_COMPRESS: true MDB_WITH_AGENT_FILE_LOGGING: false LOG_FILE_PATH: /var/log/mongodb-mms-automation/readiness.log #AppDB backup log rotation backupAgent: logRotate: sizeThresholdMB: 10 timeThresholdHrs: 10 #AppDB Monitoring Agent log rotation monitoringAgent: logRotate: sizeThresholdMB: 10 timeThresholdHrs: 10 #AppDB (mongod) log rotation mongod: logRotate: sizeThresholdMB: 10 timeThresholdHrs: 10 numUncompressed: 10 numTotal: 10 percentOfDiskspace: 10 auditLogRotate: sizeThresholdMB: 10 timeThresholdHrs: 10 numUncompressed: 10 numTotal: 10 percentOfDiskspace: 10
Rotação do registro MongoDB Ops Manager
Para gerenciar e girar o MongoDB Ops Manager, você pode substituir manualmente o StatefulSet ou usar as configurações de CRD.
Configure os registros MongoDB Ops Manager com o StatefulSet
Para gerenciar e girar os registros MongoDB Ops Manager , você pode substituir manualmente a configuração de registro padrão usando uma substituição do ConfigMap e do StatefulSet. Este processo envolve a criação de um arquivo de configuração logback.xml personalizado e sua aplicação aos Pods MongoDB Ops Manager .
Crie o logback.xml arquivo de configuração do personalizado.
Você pode recuperar o logback.xml existente para usar como modelo, executando o seguinte comando:
kubectl cp om-pod-spec-0:/mongodb-ops-manager/conf/logback.xml ~/Downloads/logback-confs/logback.xml
Para saber mais sobre como criar um logback.xml personalizado, consulte Alterar Política de Rotação de Registro MongoDB Ops Manager .
Crie um ConfigMap a partir do logback.xml personalizado.
Certifique-se de que a chave no ConfigMap seja exatamente o nome do arquivo que você deseja substituir para que o caminho de montagem e o subcaminhos sobrescrevam apenas um arquivo e não o diretório inteiro. Neste exemplo, o nome do arquivo é logback.xml:
kubectl create configmap logback-config --from-file=logback.xml=path/to/your/custom_logback.xml
Substitua a configuração do StatefulSet.
Use o recurso de substituição StatefulSet para montar o logback.xml personalizado em seus pods MongoDB Ops Manager . Adicione o seguinte à sua configuração do StatefulSet:
Observação
O key no seguinte ConfigMap é logback.xml por padrão para garantir que substitua corretamente o arquivo padrão pelo mesmo nome.
spec: template: spec: volumes: - name: logback-volume configMap: name: logback-config items: - key: logback.xml path: logback.xml containers: - name: mongodb-ops-manager volumeMounts: - name: logback-volume mountPath: /mongodb-ops-manager/conf-template/logback.xml subPath: logback.xml
Configurar registros do MongoDB Ops Manager com o CRD
Você também pode gerenciar a rotação de registro MongoDB Ops Manager usando as configurações de CRD , o que simplifica o processo de rotação de registro vinculando o ConfigMap diretamente no CRD.
Crie o logback.xml arquivo de configuração do personalizado.
Você pode recuperar o logback.xml existente para usar como modelo, executando o seguinte comando:
kubectl cp om-pod-spec-0:/mongodb-ops-manager/conf/logback.xml ~/Downloads/logback-confs/logback.xml
Para saber mais sobre como criar um logback.xml personalizado, consulte Alterar Política de Rotação de Registro MongoDB Ops Manager .
(Opcional) Crie um logback-access.xml arquivo de configuração do personalizado.
Use o arquivo logback-access.xml para configurar o registro para solicitações de acesso HTTP, como aquelas manipuladas por um servidor da web. Se você quiser personalizar como esses registros de acesso são gerenciados, poderá criar um arquivo logback-access.xml personalizado semelhante ao logback.xml.
Recupere o logback-access.xml existente para usar como modelo, executando o seguinte comando:
kubectl cp om-pod-spec-0:/mongodb-ops-manager/conf/logback-access.xml ~/Downloads/logback-confs/logback-access.xml
Modifique este arquivo de acordo com seus requisitos de registro.
Crie um ConfigMap a partir do personalizado logback.xml logback-access.xmle.
Certifique-se de que a chave no ConfigMap seja exatamente o nome do arquivo que você deseja substituir para que o caminho de montagem e o subcaminhos sobrescrevam apenas um arquivo e não o diretório inteiro. Os exemplos a seguir usam nomes de arquivo padrão, logback.xml e logback-access.xml:
kubectl create configmap logback-config --from-file=logback.xml=path/to/your/custom_logback.xml
kubectl create configmap logback-access-config --from-file=logback-access.xml=path/to/your/custom_access_logback.xml
Defina as propriedades de registro CRD.
Adicione as seguintes configurações ao seu MongoDB Ops Manager CRD:
Observação
Os nomes de arquivo logback.xml e logback-access.xml são os nomes de arquivo padrão e devem ser as chaves no ConfigMap para o Operador Kubernetes reconhecê-los.
Por exemplo:
apiVersion: mongodb.com/v1 kind: MongoDBOpsManager metadata: name: ops-manager namespace: mongodb spec: replicas: 1 version: 8.0.0 adminCredentials: ops-manager-admin-secret logging: logBackAccessRef: logback-access-config logBackRef: logback-config backup: enabled: true logging: logBackAccessRef: my-logback-access-cm-backup logBackRef: my-logback-cm-backup
O operador Kubernetes gera automaticamente as montagens de volume semelhantes ao exemplo anterior e vincula os arquivos ConfigMap aos locais corretos nos pods do MongoDB Ops Manager .