Determine que implementação do operador do AlloyDB Omni analisar. O operador do AlloyDB Omni inclui duas implementações, e pode analisar o heap de memória de qualquer uma delas. Para identificar as duas implementações, execute o seguinte comando:
kubectl get deployment -n alloydb-omni-system
O resultado mostra as duas implementações no espaço de nomes
alloydb-omni-system
fleet-controller-manager
local-controller-manager
Pode obter a memória dinâmica de qualquer uma das implementações. Para fins de demonstração, estes passos mostram como obter a memória de heap da implementação
local-controller-manager
.Ative a análise de memória especificando uma porta disponível para utilização. Depois de especificar a porta, o pod é reiniciado. Para especificar uma porta disponível, use o argumento
pprof-address
na implementação:Abra a implementação num editor de texto executando o seguinte comando:
kubectl edit -n alloydb-omni-system deploy local-controller-manager
Especifique a porta no elemento
args
da secçãocontainer
no modelospec
:apiVersion: apps/v1 kind: Deployment spec: ... template: ... spec: containers: - args - --pprof-address=:PORT
Guarde o ficheiro de implementação. Depois de guardar o ficheiro de implementação, o pod é reiniciado.
Aguarde que o pod seja reiniciado antes de continuar para o passo seguinte.
Para se certificar de que o pod foi reiniciado, execute o seguinte comando:
kubectl get pod -n alloydb-omni-system
Verifique se o valor de saída na coluna
STATUS
do pod éRunning
e se o valor de saída na colunaAGE
é uma duração curta. Por exemplo, se a colunaSTATUS
forRunning
e o valor na colunaAGE
for50s
, o pod está em execução há 50 segundos após o reinício.Ative o encaminhamento de portas através do seguinte comando:
kubectl port-forward -n alloydb-omni-system DEPLOYMENT_POD_NAME PORT:PORT
Substitua DEPLOYMENT_POD_NAME pelo nome da sua implementação, tal como aparece na coluna
NAME
do resultado do seguinte comando:kubectl get pod -n alloydb-omni-system
Num terminal diferente, execute o seguinte comando para criar um ficheiro com uma captura instantânea da memória de heap da implementação:
curl http://localhost:PORT/debug/pprof/heap > heap.out
Guarde o ficheiro
heap.out
e use-o para ver a memória de heap da implementação do operador do AlloyDB Omni que optou por analisar.Desative a análise de memória removendo o argumento
pprof-address
com a porta que usou na implementação:Abra a implementação num editor de texto:
kubectl edit -n alloydb-omni-system deploy local-controller-manager
Remova a linha da porta
--pprof-address=:PORT
da secçãocontainer
do modelospec
que adicionou anteriormente.args
O que se segue?
- Faça a gestão e a monitorização do AlloyDB Omni
- Gere e diagnostique ficheiros de despejo do AlloyDB Omni
- Saiba mais sobre a gestão automática de memória