Attività di manutenzione di Apache Cassandra

Questa sezione descrive le attività di manutenzione periodica di Cassandra.

Manutenzione antientropia

I nodi ad anello di Apache Cassandra richiedono manutenzione periodica per garantire la coerenza tra tutti i nodi. Per eseguire questa manutenzione, utilizza il comando seguente:

apigee-service apigee-cassandra apigee_repair -pr

Apigee consiglia quanto segue durante l'esecuzione di questo comando:

  • Esegui su ogni nodo Cassandra (in tutte le regioni o tutti i data center).
  • Per verificare se un job di riparazione su un nodo è stato completato correttamente, cerca nel file system.log dei nodi una voce con l'UUID dell'ultima sessione di riparazione e la frase "sessione completata correttamente". Di seguito è riportata una voce di log di esempio:

    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
  • Eseguilo durante periodi di carico di lavoro relativamente ridotto (lo strumento impone un carico significativo al sistema).
  • Esegui almeno ogni sette giorni per eliminare i problemi relativi alle "eliminazioni dimenticate" di Cassandra.
  • Esegui l'esecuzione su nodi diversi in giorni diversi o pianificala in modo che trascorri diverse ore tra l'esecuzione su ciascun nodo.
  • Utilizza l'opzione -pr (intervallo del partizionatore) per specificare solo l'intervallo del partizionatore principale del nodo.

Se hai attivato l'autenticazione JMX per Cassandra, devi includere il nome utente e la password quando richiami nodetool. Ad esempio:

apigee-service apigee-cassandra apigee_repair -u username -pw password -pr

Puoi anche eseguire il comando seguente per controllare le opzioni supportate di apigee_repair:

apigee-service apigee-cassandra apigee_repair -h

Nota: apigee_repair è un wrapper per la riparazione dello strumento nodetool di Cassandra, che esegue controlli aggiuntivi prima di eseguire la riparazione di Cassandra.

Per maggiori informazioni, consulta le seguenti risorse:

Manutenzione del file di log

I log Cassandra sono archiviati nella directory /opt/apigee/var/log/cassandra su ciascun nodo. Per impostazione predefinita, è possibile creare un massimo di 50 file di log, ciascuno con una dimensione massima di 20 MB. Una volta raggiunto questo limite, i log meno recenti vengono eliminati quando vengono creati quelli più recenti.

Se scopri che i file di log di Cassandra occupano troppo spazio, puoi modificare la quantità di spazio allocata per i file di log modificando le impostazioni di log4j.

  1. Modifica /opt/apigee/customer/application/cassandra.properties per impostare le seguenti proprietà. Se il file non esiste, crealo:
    conf_logback_maxfilesize=20MB
    # max file size
    conf_logback_maxbackupindex=50 # max open files
  2. Riavvia Cassandra utilizzando il seguente comando:
    /opt/apigee/apigee-service/bin/apigee-service apigee-cassandra restart

Manutenzione dello spazio su disco

Dovresti monitorare regolarmente l'utilizzo del disco Cassandra per assicurarti che almeno il 50% di ciascun disco sia libero. Se l'utilizzo del disco supera il 50%, ti consigliamo di aggiungere altro spazio su disco per ridurre la percentuale di utilizzo.

Cassandra esegue automaticamente le seguenti operazioni per ridurre il proprio utilizzo del disco:

  • Eliminazione del token di autenticazione alla scadenza dei token. Tuttavia, a seconda della configurazione, potrebbero essere necessarie un paio di settimane per liberare spazio su disco utilizzato dai token. Se l'eliminazione automatica non è adeguata per mantenere sufficiente spazio su disco, contatta l'assistenza per avere informazioni sull'eliminazione manuale dei token per recuperare spazio.
  • Nota sulla compattazione dei dati: a partire da Edge per Private Cloud 4.51.00, le nuove installazioni di Apigee Cassandra creeranno spazi delle chiavi con la strategia di compattazione livellata.

    Le installazioni di versioni precedenti di Edge per Cloud privato che sono state aggiornate a Private Cloud 4.51.00 continueranno a mantenere la strategia di compattazione precedente. Se la strategia di compattazione esistente è sizeTieredCompactionStrategy, ti consigliamo di passare a LeveledCompactionStrategy, che fornisce un migliore utilizzo del disco.

Nota: quando Cassandra esegue la compattazione dei dati, può richiedere una notevole quantità di cicli della CPU e di memoria. Tuttavia, l'utilizzo delle risorse dovrebbe tornare alla normalità una volta completata la compattazione. Puoi eseguire il comando 'Nodetool compactionstats' su ciascun nodo per verificare se la compattazione è in esecuzione. L'output di compactionstats indica se sono presenti compattazioni in attesa da eseguire e il tempo stimato per il completamento.