קובעים איזו פריסת אופרטור של AlloyDB Omni רוצים לנתח. האופרטור AlloyDB Omni כולל שתי פריסות, ואפשר לנתח את ערימת הזיכרון של כל אחת מהן. כדי לזהות את שני הפריסות, מריצים את הפקודה הבאה:
kubectl get deployment -n alloydb-omni-systemבפלט מוצגים שני הפריסות במרחב השמות
alloydb-omni-system:fleet-controller-managerlocal-controller-manager
אפשר לקבל את ערימת הזיכרון של כל פריסה. לצורך הדגמה, השלבים האלה מראים איך לקבל את ערימת הזיכרון של פריסת
local-controller-manager.מפעילים את ניתוח הזיכרון על ידי ציון יציאה זמינה לשימוש. אחרי שמציינים את היציאה, ה-pod מופעל מחדש. כדי לציין יציאה זמינה, משתמשים בארגומנט
pprof-addressבפריסה:פותחים את הפריסה בכלי לעריכת טקסט על ידי הרצת הפקודה הבאה:
kubectl edit -n alloydb-omni-system deploy local-controller-managerמציינים את היציאה ב-
argsשל הקטעcontainerבתבניתspec:apiVersion: apps/v1 kind: Deployment spec: ... template: ... spec: containers: - args - --pprof-address=:PORTשומרים את קובץ הפריסה. אחרי ששומרים את קובץ הפריסה, ה-pod מופעל מחדש.
מחכים שה-Pod יופעל מחדש לפני שממשיכים לשלב הבא.
כדי לוודא שה-pod הופעל מחדש, מריצים את הפקודה הבאה:
kubectl get pod -n alloydb-omni-systemמוודאים שערך הפלט בעמודה
STATUSשל ה-pod הואRunningוערך הפלט בעמודהAGEהוא משך קצר. לדוגמה, אם העמודהSTATUSהיאRunningוהערך בעמודהAGEהוא50s, הפוד פועל כבר 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מסירים את השורה של היציאה
--pprof-address=:PORTמהקטעcontainerבתבניתspecשהוספתם קודם.args
המאמרים הבאים
- ניהול ומעקב אחרי AlloyDB Omni
- יצירה ואבחון של קובצי dump של AlloyDB Omni
- מידע על ניהול זיכרון אוטומטי