Esta seção descreve as tarefas periódicas de manutenção do Cassandra.
Manutenção antientropia
Os nós de anel do Apache Cassandra requerem manutenção periódica para assegurar consistência em todos nós. Para realizar esta manutenção, use o seguinte comando:
apigee-service apigee-cassandra apigee_repair -pr
A Apigee recomenda o seguinte ao executar este comando:
- Executar em todos os nós do Cassandra (em todas as regiões ou data centers).
Executar em um nó de cada 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 saúde do Cassandra.
Para verificar se um trabalho de reparo em um nó foi concluído com êxito, procure no arquivo Arquivo
system.log
de uma entrada com o UUID da sessão de reparo mais recente e a frase "sessão concluída". Este é 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
- Execute durante períodos de carga de trabalho relativamente baixa (a ferramenta impõe uma carga significativa sobre o sistema.
- Executar pelo menos a cada sete dias para eliminar problemas relacionados à operação do Cassandra "exclusões esquecidas".
- Execute em nós diferentes, em dias diferentes, ou programe-o para que haja várias horas entre a execução dele em cada nó.
- Use a opção
-pr
(intervalo do particionamento) para especificar o intervalo do particionamento principal. apenas do nó.
Se você ativou a autenticação JMX para o Cassandra,
é necessário incluir o nome de usuário e a senha ao invocar nodetool
. Exemplo:
apigee-service apigee-cassandra apigee_repair -u username -pw password -pr
Também é possível executar o seguinte comando para verificar as opções compatíveis de apigee_repair:
apigee-service apigee-cassandra apigee_repair -h
Observação:apigee_repair
é um wrapper para o reparo de ferramenta de nó do Cassandra.
que realiza outras verificações antes do reparo do Cassandra.
Para saber mais, acesse os recursos a seguir:
.Manutenção do arquivo de registros
Os registros do Cassandra são armazenados no diretório /opt/apigee/var/log/cassandra
na
cada nó. Por padrão, podem ser gerados no máximo 50 arquivos de registro, cada um com tamanho máximo de 20 MB.
criado; Quando esse limite é atingido, os registros mais antigos são excluídos junto com a criação de registros mais recentes.
Se você perceber que os arquivos de registro do Cassandra estão ocupando muito espaço, poderá modificar quantidade de espaço alocada para arquivos de registro editando as configurações do log4j.
- Editar
/opt/apigee/customer/application/cassandra.properties
para definir as propriedades a seguir. Se esse arquivo não existir, crie-o:conf_logback_maxfilesize=20MB # max file size conf_logback_maxbackupindex=50 # max open files
- Reinicie o Cassandra com o seguinte comando:
/opt/apigee/apigee-service/bin/apigee-service apigee-cassandra restart
Manutenção de espaço em disco
Monitore o uso do disco do Cassandra regularmente para garantir pelo menos 50% cada disco fica livre. Se a utilização do disco subir acima de 50%, recomendamos que você adicionar mais espaço em disco para reduzir a porcentagem que está em uso.
O Cassandra executa automaticamente as seguintes operações para reduzir a própria utilização de disco:
- Exclusão do 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 configuração do Terraform. Se a exclusão automática não for adequada espaço em disco suficiente, entre em contato com o suporte para saber como excluir tokens manualmente para recuperá-los espaço.
Compactação de dados. Recomendamos mudar a estratégia de compactação nos keyspaces para
LeveledCompactionStrategy
, que oferece melhores estratégias de utilização de disco do que o padrãoSizeTieredCompactionStrategy
. Consulte Estratégia de compactação em nível.
Observação: quando o Cassandra executa compactações de dados, pode ser necessário uma quantidade considerável de ciclos de CPU
e memória. No entanto, a utilização dos recursos vai voltar ao normal depois que as compactações forem concluídas.
É possível 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á
há compactações pendentes a serem executadas e o tempo estimado para conclusão.