決定要分析哪個 AlloyDB Omni 運算子部署作業。AlloyDB Omni 運算子包含兩項部署作業,您可以分析其中一項的記憶體堆積。如要找出這兩個部署作業,請執行下列指令:
kubectl get deployment -n alloydb-omni-system
輸出結果會顯示
alloydb-omni-system
命名空間中的兩個部署項目:fleet-controller-manager
local-controller-manager
您可以取得任一部署項目的記憶體堆積。為示範起見,這些步驟說明如何取得
local-controller-manager
部署作業的記憶體堆積。指定要使用的可用通訊埠,即可開啟記憶體分析功能。指定通訊埠後,Pod 會重新啟動。如要指定可用通訊埠,請在部署作業中使用
pprof-address
引數:執行下列指令,在文字編輯器中開啟部署作業:
kubectl edit -n alloydb-omni-system deploy local-controller-manager
在範本的
container
區段中,於args
指定通訊埠:spec
apiVersion: apps/v1 kind: Deployment spec: ... template: ... spec: containers: - args - --pprof-address=:PORT
儲存部署檔案。儲存部署檔案後,Pod 會重新啟動。
等待 Pod 重新啟動,再繼續下一個步驟。
如要確認 Pod 已重新啟動,請執行下列指令:
kubectl get pod -n alloydb-omni-system
確認 Pod 的
STATUS
欄輸出值為Running
,且AGE
欄輸出值為短時間。舉例來說,如果STATUS
欄為Running
,且AGE
欄中的值為50s
,則表示 Pod 在重新啟動後已執行 50 秒。使用下列指令開啟連接埠轉送:
kubectl port-forward -n alloydb-omni-system DEPLOYMENT_POD_NAME PORT:PORT
將 DEPLOYMENT_POD_NAME 替換為部署名稱,該名稱會顯示在下列指令輸出內容的
NAME
欄中:kubectl get pod -n alloydb-omni-system
在另一個終端機中執行下列指令,建立含有部署項目記憶體堆積快照的檔案:
curl http://localhost:PORT/debug/pprof/heap > heap.out
儲存
heap.out
檔案,並用來查看您選擇分析的 AlloyDB Omni 運算子部署作業記憶體堆積。如要關閉記憶體分析,請從部署作業中移除您使用的
pprof-address
引數和連接埠:在文字編輯器中開啟部署作業:
kubectl edit -n alloydb-omni-system deploy local-controller-manager
從您先前新增的範本
spec
中,移除container
區段args
的「port」--pprof-address=:PORT
行。
分析 AlloyDB Omni Kubernetes 運算子的記憶體堆積使用量
除非另有註明,否則本頁面中的內容是採用創用 CC 姓名標示 4.0 授權,程式碼範例則為阿帕契 2.0 授權。詳情請參閱《Google Developers 網站政策》。Java 是 Oracle 和/或其關聯企業的註冊商標。
上次更新時間:2025-09-03 (世界標準時間)。