Determina quale deployment dell'operatore AlloyDB Omni analizzare. L'operatore AlloyDB Omni include due deployment e puoi analizzare l'heap di memoria per uno dei due. Per identificare i due deployment, esegui questo comando:
kubectl get deployment -n alloydb-omni-system
L'output mostra i due deployment nello spazio dei nomi
alloydb-omni-system
:fleet-controller-manager
local-controller-manager
Puoi ottenere l'heap di memoria di uno dei due deployment. A scopo dimostrativo, questi passaggi mostrano come ottenere l'heap di memoria per il deployment
local-controller-manager
.Attiva l'analisi della memoria specificando una porta disponibile da utilizzare. Dopo aver specificato la porta, il pod viene riavviato. Per specificare una porta disponibile, utilizza l'argomento
pprof-address
nel deployment:Apri il deployment in un editor di testo eseguendo questo comando:
kubectl edit -n alloydb-omni-system deploy local-controller-manager
Specifica la porta in
args
della sezionecontainer
nel modellospec
:apiVersion: apps/v1 kind: Deployment spec: ... template: ... spec: containers: - args - --pprof-address=:PORT
Salva il file di deployment. Dopo aver salvato il file di deployment, il pod viene riavviato.
Attendi il riavvio del pod prima di procedere al passaggio successivo.
Per assicurarti che il pod sia stato riavviato, esegui questo comando:
kubectl get pod -n alloydb-omni-system
Verifica che il valore di output nella colonna
STATUS
del pod siaRunning
e che il valore di output nella colonnaAGE
sia una durata breve. Ad esempio, se la colonnaSTATUS
èRunning
e il valore nella colonnaAGE
è50s
, allora il pod è in esecuzione da 50 secondi dopo il riavvio.Attiva l'inoltro delle porte utilizzando il seguente comando:
kubectl port-forward -n alloydb-omni-system DEPLOYMENT_POD_NAME PORT:PORT
Sostituisci DEPLOYMENT_POD_NAME con il nome del deployment visualizzato nella colonna
NAME
dell'output del seguente comando:kubectl get pod -n alloydb-omni-system
In un altro terminale, esegui questo comando per creare un file con uno snapshot dell'heap di memoria del deployment:
curl http://localhost:PORT/debug/pprof/heap > heap.out
Salva il file
heap.out
e utilizzalo per visualizzare l'heap di memoria del deployment dell'operatore AlloyDB Omni che hai scelto di analizzare.Disattiva l'analisi della memoria rimuovendo l'argomento
pprof-address
con la porta che hai utilizzato dal deployment:Apri il deployment in un editor di testo:
kubectl edit -n alloydb-omni-system deploy local-controller-manager
Rimuovi la riga della porta
--pprof-address=:PORT
daargs
della sezionecontainer
nel modellospec
che hai aggiunto in precedenza.
Passaggi successivi
- Gestire e monitorare AlloyDB Omni
- Generare e diagnosticare i file di dump di AlloyDB Omni
- Scopri di più sulla gestione automatica della memoria