Configurações de rotação do registro CRD do MongoDB
Nesta página
Você pode definir as configurações de rotação de registros para CustomResourceDefinitions nos manifestosCRD do MongoDB e do Ops Manager .
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: MongoDB CRD | 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 stdout (registros do Kubectl). Gerenciado e armazenado no plano de controle do Kubernetes. | |
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: 6.0.0-ent 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: 10 timeThresholdHrs: 10 monitoringAgent: logRotate: sizeThresholdMB: 10 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: 10 timeThresholdHrs: 10 numUncompressed: 10 numTotal: 10 percentOfDiskspace: 10 auditLogRotate: sizeThresholdMB: 10 timeThresholdHrs: 10 numUncompressed: 10 numTotal: 10 percentOfDiskspace: 10
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: 6.0.19 adminCredentials: ops-manager-admin-secret applicationDatabase: version: "6.0.11-ent" 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
e logback-access.xml
.
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: 6.0.19 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 .