Esta seção descreve as tarefas de manutenção periódica do Cassandra.
Manutenção anti-entropia
Os nós do anel do Apache Cassandra exigem manutenção periódica para garantir a consistência em todos os nós. Para realizar essa manutenção, use o seguinte comando:
apigee-service apigee-cassandra apigee_repair -pr
A Apigee recomenda o seguinte ao executar esse comando:
- Executar em todos os nós do Cassandra (em todas as regiões ou data centers).
Executar em um nó por vez para garantir a consistência em todos os nós do anel. A execução de jobs de reparo em vários nós ao mesmo tempo pode prejudicar a integridade do Cassandra.
Para verificar se um job de reparo em um nó foi concluído, procure no arquivo dos nós's
system.loguma entrada com o UUID da sessão de reparo mais recente e a frase "session completed successfully." Confira um exemplo de entrada de registro:INFO [AntiEntropySessions:1] 2015-03-01 10:02:56,245 RepairSession.java (line 282) [repair #2e7009b0-c03d-11e4-9012-99a64119c9d8] session completed successfully" Ref: https://support.datastax.com/hc/en-us/articles/204226329-How-to-check-if-a-scheduled-nodetool-repair-ran-successfully
- Executar durante períodos de carga de trabalho relativamente baixa (a ferramenta impõe uma carga significativa no sistema).
- Executar pelo menos a cada sete dias para eliminar problemas relacionados às "exclusões esquecidas" do Cassandra.
- Executar em nós diferentes em dias diferentes ou programar para que haja várias horas entre a execução em cada nó.
- Use a opção
-pr(intervalo de particionador) para especificar apenas o intervalo de particionador principal do nó.
Se você ativou a autenticação JMX para o Cassandra,
inclua o nome de usuário e a senha ao invocar nodetool. Exemplo:
apigee-service apigee-cassandra apigee_repair -u username -pw password -pr
Você também pode executar o comando a seguir para verificar as opções compatíveis de apigee_repair:
apigee-service apigee-cassandra apigee_repair -h
Observação: apigee_repair é um wrapper em torno do reparo do nodetool do Cassandra,
que realiza verificações adicionais antes de executar o reparo do Cassandra.
Para saber mais, acesse os recursos a seguir:
Manutenção de arquivos de registro
Os registros do Cassandra são armazenados no diretório /opt/apigee/var/log/apigee-cassandra em
cada nó. Por padrão, é possível criar um máximo de 50 arquivos de registro, cada um com um tamanho máximo de 20 MB.
Quando esse limite é atingido, os registros mais antigos são excluídos quando os mais recentes são criados.
Se você notar que os arquivos de registro do Cassandra estão ocupando muito espaço, modifique a quantidade de espaço alocado para arquivos de registro editando as configurações do log4j.
- Edite
/opt/apigee/customer/application/cassandra.propertiespara definir as seguintes propriedades. Se o arquivo não existir, crie-o:conf_logback_maxfilesize=20MB # max file size conf_logback_maxbackupindex=50 # max open files
- Reinicie o Cassandra usando o seguinte comando:
/opt/apigee/apigee-service/bin/apigee-service apigee-cassandra restart
Manutenção de espaço em disco
Monitore a utilização do disco do Cassandra regularmente para garantir que pelo menos 50% de cada disco esteja livre. Se a utilização do disco subir acima de 50%, recomendamos que você adicione mais espaço em disco para reduzir a porcentagem em uso.
O Cassandra realiza automaticamente as seguintes operações para reduzir a utilização do disco:
- Exclusão de token de autenticação quando os tokens expiram. No entanto, pode levar algumas semanas para liberar o espaço em disco que os tokens estavam usando, dependendo da configuração. Se a exclusão automática não for adequada para manter espaço em disco suficiente, entre em contato com o suporte para Aprenda Mais sobre como excluir tokens manualmente para recuperar espaço.
Compactação de dados: a partir do Edge para nuvem privada 4.51.00, as novas instalações do Apigee Cassandra criam keyspaces com a estratégia de compactação nivelada.
As instalações de versões anteriores do Edge para nuvem privada que foram atualizadas para o Edge para nuvem privada 4.54.00 mantêm a estratégia de compactação anterior. Se a estratégia de compactação atual for
SizeTieredCompactionStrategy, a Apigee recomenda mudar paraLeveledCompactionStrategy, que oferece melhor utilização do disco. Para instruções, consulte Como mudar a estratégia de compactação do Cassandra.
Observação: quando o Cassandra realiza compactações de dados, ele pode levar uma quantidade considerável de ciclos de CPU
e memória. No entanto, a utilização de recursos vai voltar ao normal quando as compactações forem concluídas.
Você pode executar o comando 'Nodetool compactionstats' em cada nó
para verificar se a compactação está em execução. A saída de compactionstats informa se há compactações pendentes a serem executadas e o tempo estimado para conclusão.