Stai visualizzando la documentazione relativa a Apigee e Apigee ibrido.
Non esiste una equivalente
Documentazione di Apigee Edge per questo argomento.
Sintomo
I problemi di heap di Cassandra potrebbero causare rallentamenti nel proxy ibrido Apigee
o addirittura Datastore
errori. A volte i log sono un'analisi
l'indicatore, anche prima dell'insorgenza dei sintomi.
Messaggio di errore
Nei log dei pod Cassandra (Cloud Logging), voci di log che sono simili ai seguenti:
WARN [Service Thread] 2023-01-01 01:14:51,121 GCInspector.java:283 - G1 Young Generation GC in 2510ms... ... WARN [Service Thread] 2023-01-01 01:14:51,121 GCInspector.java:283 - G1 Old Generation GC in 3100ms...
2023-01-01 01:14:51,123 FailureDetector.java:278 - Not marking nodes down due to local pause of 45261214670 > 5000000000
java.lang.OutOfMemoryError: Java heap space
Causa: dimensioni heap Java insufficienti
Diagnosi
Nel file overrides.yaml
per Apigee hybrid
dell'installazione, il valore maxHeapSize
non è impostato su un valore sufficiente.
Ciò potrebbe essere dovuto a
impostazioni di produzione non applicate o le velocità effettiva attuali che richiedono
un valore più alto del solito.
Risoluzione
Per risolvere il problema, modifica maxHeapSize
e memory
di conseguenza e
applica le modifiche:
resources: requests: cpu: 7 memory: 15Gi maxHeapSize: 8192M heapNewSize: 1200M
Se il problema persiste con la configurazione di produzione predefinita, prova a aumenta ulteriormente i valori. Tieni presente che devi assicurarti che la capacità del nodo, velocità effettiva del disco di rete sono sufficienti.
resources: requests: cpu: 7 memory: 30Gi maxHeapSize: 16384M heapNewSize: 2400M
Se l'impostazione di heap da 16 GB non è ancora sufficiente per il volume di traffico, continua con scalabilità orizzontale.
Raccogliere dati diagnostici
Se il problema persiste anche dopo aver seguito le istruzioni riportate sopra, raccogli i dati le informazioni diagnostiche e contatta il Assistenza clienti Google Cloud:
Oltre ai soliti dati che potresti dover fornire, raccogli i dati dati diagnostici di tutti i pod Cassandra con il comando seguente:
for p in $(kubectl -n apigee get pods -l app=apigee-cassandra --no-headers -o custom-columns=":metadata.name") ; do \ for com in info describecluster failuredetector version status ring info gossipinfo compactionstats tpstats netstats cfstats proxyhistograms gcstats ; do kubectl \ -n apigee exec ${p} -- bash -c 'nodetool -u $APIGEE_JMX_USER -pw $APIGEE_JMX_PASSWORD '"$com"' 2>&1 '\ | tee /tmp/k_cassandra_nodetool_${com}_${p}_$(date +%Y.%m.%d_%H.%M.%S).txt | head -n 40 ; echo '...' ; done; done
Comprimilo e forniscilo nella richiesta di assistenza:
tar -cvzf /tmp/cassandra_data_$(date +%Y.%m.%d_%H.%M.%S).tar.gz /tmp/k_cassandra_nodetool*