פתרון בעיות ב-GKE

במסמך הזה מפורטים מסמכים לפתרון בעיות נפוצות שאתם עשויים להיתקל בהן במהלך השימוש ב-Google Kubernetes Engine ‏ (GKE). המסמכים שמופיעים כאן יכולים לעזור לכם לאבחן שגיאות בעומסי עבודה כמו ImagePullBackOff ו-CrashLoopBackOff, לנפות באגים בהתנהגות של התאמה אוטומטית לעומס של האשכול, לפתור בעיות ב-PersistentVolume או לפתור בעיות ברישום של צמתים.

אם אתם חדשים בפתרון בעיות ב-GKE, כדאי להתחיל עם מבוא לפתרון בעיות.

כדי לאבחן ולפתור בעיות שנתקלתם בהן, כדאי לעיין במסמכים שבקטעים הבאים:

לפתרון בעיות ברישות ב-GKE, אפשר לעיין במאמר פתרון בעיות ברישות ב-GKE במסמכי התיעוד של GKE בנושא רישות.

המסמך הזה מיועד לאדמינים ולאדריכלים, למומחי אבטחה, למומחי רשתות או למומחי אחסון שמבצעים פתרון בעיות בהגדרות של GKE. מידע נוסף על תפקידים ב-GKE זמין במאמר תפקידים ומשימות נפוצים של משתמשים ב-GKE.

מבוא לפתרון בעיות

נושא תיאור
מבוא לפתרון בעיות ב-GKE כדי להתחיל לפתור בעיות ב-GKE, כדאי ללמוד על התהליך הכללי ועל המושגים הבסיסיים.
בדיקת Service Health ואירועים כאן מוסבר איך לבדוק את תקינות GKE ושירותים קשורים Cloud de Confiance by S3NS כדי להחריג בעיות בפלטפורמה.
הערכת התקינות של האשכולות ועומסי העבודה במסוף Cloud de Confiance Cloud de Confiance איך משתמשים במסוף כדי לחקור ולפתור בעיות ב-GKE
בדיקת מצב האשכול באמצעות kubectl פקודות ושיטות נפוצות של kubectl לאבחון בעיות באשכולות ובעומסי העבודה.
ביצוע ניתוח היסטורי באמצעות Cloud Logging להבין איך להשתמש ביעילות ב-Cloud Logging כדי למצוא את שורש הבעיות ב-GKE.
ביצוע מעקב פרואקטיבי באמצעות Cloud Monitoring להשתמש במדדים ובלוחות בקרה של Cloud Monitoring כדי לזהות, לאבחן ולפתור בעיות ב-GKE.
אבחון מהיר יותר בעזרת Gemini Cloud Assist איך Gemini יכול לעזור לכם לאבחן ולפתור בעיות ב-GKE.
סיכום: תרחיש לדוגמה לפתרון בעיות דוגמה מפורטת לפתרון בעיה בתרחיש נפוץ ב-GKE

הגדרת אשכול

נושא תיאור
יצירת אשכול פתרון בעיות שקשורות ליצירת אשכולות.
אשכולות Autopilot אבחון ופתרון בעיות באשכולות GKE Autopilot, כולל בעיות ביצירת אשכולות, במחיקת מרחבי שמות, בהתאמה לעומס (scaling) ובעומסי עבודה.
כלי שורת הפקודה Kubectl פתרון בעיות בכלי שורת הפקודה kubectl ב-GKE, כולל בעיות באימות ובאישור. בדף הזה יש גם עצות לפתרון בעיות בשרת ה-proxy של Konnectivity כדי לבדוק אם הוא גורם לכך שהפקודות kubectl logs,‏ attach,‏ exec או port-forward מפסיקות להגיב.
מאגרי צמתים רגילים פתרון בעיות במאגרי צמתים של GKE Standard, כולל בעיות ביצירת מאגרי צמתים, הקצאת משאבים על בסיס התוצאה הטובה ביותר, מטא-נתונים פגומים של מופעים והעברת עומסי עבודה למאגרי צמתים חדשים.
הסטטוס של צומת NotReady איך מאבחנים ופותרים את הסטטוס NotReady של הצומת ב-GKE, על ידי פתרון בעיות נפוצות כמו מחסור במשאבים, בעיות ברשת וכשלים ברכיבים.
רישום צומת פתרון בעיות שמתרחשות כשמוסיפים צמתים לאשכול GKE Standard, כמו כשלים ברישום צמתים ודרישות קדם חסרות לרישום צמתים מוצלח.
זמן ריצה של מאגר פתרון בעיות בזמני ריצה של קונטיינרים ב-GKE, כולל בעיות ב-containerd וב-dockershim, ורישומים פרטיים.
מאגרי צמתים של Windows Server פתרון בעיות במאגרי צמתים של Windows Server ב-GKE, כולל כשלים בהפעלת Pod, שגיאות במשיכת קובצי אימג', בעיות בקישוריות לרשת ובעיות בסטטוס הצומת.

התאמה אוטומטית לעומס (Automatic scaling)

נושא תיאור
מידרוג אוטומטי של אשכול לא מצמצם אנכית בהתאם לעומס אבחון ופתרון של סיבות נפוצות לכך שהאשכול לא מסיר צמתים שלא מנוצלים מספיק. כאן מוסבר איך לבדוק אם יש בעיות כמו PodDisruptionBudgets מגביל, Pods עם אחסון מקומי או הערות ספציפיות (לדוגמה, "cluster-autoscaler.kubernetes.io/safe-to-evict": "false") שמונעות פינוי של צמתים.
לא מתבצעת סילומיות אנכית (scale up) של המידרוג האוטומטי של האשכול למה המידרוג האוטומטי של האשכול לא מוסיף צמתים חדשים כדי לעמוד בביקוש. בודקים אם יש פודים שלא ניתן לתזמן, מוודאים שלא חרגתם ממגבלות הגודל של האשכול או של מאגר הצמתים, ומזהים בעיות פוטנציאליות במכסות המשאבים או בזמינות של המכונות הווירטואליות באזור.
התאמה אופקית של קבוצות Pod לעומס פתרון בעיות שקשורות ל-Horizontal Pod Autoscaler (HPA) שלא משנה את קנה המידה של רפליקות ה-Pod של האפליקציה. פתרון בעיות נפוצות, כמו משאבי HorizontalPodAutoscaler שלא הוגדרו כראוי או בעיות בצינור הנתונים של המדדים.
התאמה אנכית של קבוצות Pod לעומס פתרון בעיות שקשורות לכך ש-VerticalPodAutoscaler לא משנה את קנה המידה של משאבי ה-Pod של האפליקציה. פתרון בעיות נפוצות, כמו משאבים של VerticalPodAutoscaler שהוגדרו באופן שגוי או בעיות בצינור עיבוד הנתונים של המדדים.

אחסון

נושא תיאור
אחסון פתרון בעיות באחסון, כולל בעיות בדיסקים לאחסון מתמיד אזורי, בביצועי הדיסק ובהרחבת נפח האחסון.

אבטחת אשכולות

נושא תיאור
אימות פתרון בעיות באימות ב-GKE, כולל בעיות ב-RBAC, באיחוד זהויות של עומסי עבודה ל-GKE ובשרת המטא-נתונים של GKE.
חשבונות שירות פתרון בעיות בחשבונות שירות, כולל שחזור חשבון השירות שמוגדר כברירת מחדל והפעלת חשבון השירות שמוגדר כברירת מחדל ב-Compute Engine.
סודות בשכבת האפליקציה פתרון בעיות שיכולות להתרחש כשמגדירים הצפנה של סודות בשכבת האפליקציה, כולל עדכונים שנכשלו ושגיאות שבהן אי אפשר להשתמש במפתח Cloud KMS או שבהן גרסת המפתח של Cloud KMS הושמדה.

התוקף של רשות אישורי הבסיס של האשכול יפוג בקרוב

נושא תיאור
תוקף של רשות אישורי בסיס (CA) עומד לפוג אם תוקף רשות אישורי הבסיס (CA) של האשכול עומד לפוג בקרוב, כדאי לקרוא איך לבצע רוטציית פרטי כניסה כדי למנוע שיבושים בפעולות הרגילות של האשכול.

עומסי עבודה

נושא תיאור
עומסי עבודה (workloads) שנפרסו פתרון בעיות שקשורות לעומסי עבודה שפועלים באשכול GKE, כולל PodUnschedulable. בקטע PodUnschedulable מפורטים טיפים לפתרון שגיאות כמו MatchNodeSelector ו- Does not have minimum availability.
שליפת תמונות פתרון בעיות בשליפת תמונות. כאן מוסבר מה גורם לסטטוסים כמו ImagePullBackOff ו-ErrImagePull ואיך לפתור בעיות נפוצות כמו אימות וקישוריות לרשת כדי לשנות את הסטטוסים האלה.
אירועים של CrashLoopBackOff פתרון בעיות באירועי CrashLoopBackOff ב-GKE. אבחון בעיות כמו ניצול יתר של משאבים, הגדרות שגויות של אפליקציות וכשלים בבדיקת הפעילות.
אירועי OOM פתרון בעיות שקשורות לאירועי חוסר זיכרון (OOM) ב-Kubernetes. לזהות את הסיבות, להבחין בין סוגי אירועים ולהחיל פתרונות יעילים לבעיות של OOM ברמת המאגר וברמת הצומת.
עומסי עבודה (workloads) של Arm פתרון בעיות שקשורות לעומסי עבודה של Arm, כולל קריסות של Pods בצמתי Arm.
יחידות TPU פתרון בעיות ב-TPU, כולל בעיות שקשורות למכסת השימוש, להקצאה אוטומטית של צמתים, להגדרת עומס העבודה ולתזמון.
‫GPUs פתרון בעיות ב-GPU, כולל בעיות בהתקנת מנהלי ההתקנים (דרייברים) של ה-GPU, שגיאות בתוספים של המכשיר ותמונות של קונטיינרים.

ניהול אשכולות

נושא תיאור
שדרוגי אשכולות פתרון בעיות בשדרוג של אשכולות GKE וצמתים, כולל שדרוגים ארוכים או לא מלאים, שדרוגים אוטומטיים לא צפויים, כשלים ובעיות אחרי שדרוג.
תגובות לפעולה מאתר אחר (webhooks) איך פותרים בעיות ומוודאים שמישור הבקרה של האשכול יציב כשמשתמשים ב-webhooks של אימות.
מרחב שמות תקוע במצב Terminating כדי לפתור בעיות שקשורות למרחבי שמות שנתקעו במצב Terminating, צריך לזהות ולהסיר את הרכיבים הבעייתיים שמונעים את המחיקה.
פעולות בו-זמניות כדי לפתור בעיות שקשורות לפעולות בו-זמניות, צריך לזהות את השגיאות האלה ולחכות שהפעולות יסתיימו.

מעקב

נושא תיאור
מדדי מערכת פתרון בעיות שקשורות למדדי מערכת שלא מופיעים ב-Cloud Monitoring.
מרכזי בקרה של מעקב פתרון בעיות בלוחות בקרה של ניטור, כולל בעיות בהפעלת הניטור, משאבי Kubernetes חסרים והרשאות.
פתרון בעיות שקשורות ליומנים חסרים פתרון בעיות שקשורות ליומני GKE חסרים. כאן מוסבר איך לבדוק את סטטוס ה-API, הגדרות האשכול, ההרשאות, המכסות, המסננים וההתנהגות של האפליקציה.

שגיאות 4xx

נושא תיאור
שגיאות 4xx פתרון בעיות שקשורות לחלק מהשגיאות 400, 401, 403 ו-404 שאתם עשויים להיתקל בהן כשאתם משתמשים ב-GKE. בדף הזה מוסבר גם איך לפתור בעיות שקשורות לשגיאות בחשבון שמונעות עריכה.

בעיות מוכרות

נושא תיאור
בעיות מוכרות זיהוי ופתרון של בעיות ידועות שעשויות להשפיע על השימוש ב-GKE.

המאמרים הבאים