בדף הזה מוסבר איך אפשר לקבל מידע על שדרוגים של אשכולות Google Kubernetes Engine (GKE). מערכת GKE משדרגת באופן אוטומטי את כל האשכולות לאורך זמן. כש-GKE משדרג אשכול, הוא מעדכן את הגרסה של רמת הבקרה של Kubernetes ושל צמתים של עובדים בפעולות נפרדות.
GKE אוסף מידע על שדרוגי אשכולות כדי לעזור לכם להבין טוב יותר את הסטטוס של האשכול. אפשר לקבל את המידע הבא על אשכול:
- שדרוגים מתוזמנים (גרסת Preview): מערכת GKE שולחת לכם הודעה לפחות 72 שעות לפני שדרוגים אוטומטיים של מישור הבקרה של האשכול ושדרוגים אוטומטיים של צומתי האשכול. כשמפעילים שדרוגים מתוזמנים, GKE עדיין משדרג אוטומטית אשכול על בסיס קבוע, אבל רק אחרי שהוא מספק את ההודעה המוקדמת הזו. אם לא תקבלו הודעה מראש, האשכול לא ישודרג אוטומטית.
- יעדי שדרוג אוטומטי: כאן אפשר לראות אילו גרסאות חדשות של GKE מיועדות לאשכול שלכם. יכול להיות שמדובר בתיקוני באגים או בגרסאות משניות חדשות, בהתאם לגרסה הקיימת של האשכול ולמגבלות. אם אין יעד לשדרוג אוטומטי, האשכול כבר נמצא ביעד השדרוג האחרון, או ש-GKE לא הקצה יעד לשדרוג אוטומטי מסיבות טכניות או עסקיות. אפשר גם לאחזר יעדי שדרוג אוטומטי כלליים על סמך גרסה משנית של אשכול בהערות על גרסאות GKE, כמו הערה על גרסה 2024-R33.
- סטטוס השדרוג האוטומטי: לאשכולות GKE יש סטטוס לשדרוגי אשכולות. הסטטוס הזה מאפשר לקבל מידע נוסף על שדרוגים נוכחיים ועל האילוצים ש-GKE לוקח בחשבון כשבוחר מתי לשדרג אוטומטית את האשכול, כולל גורמים כמו החרגות של תחזוקה או סיבות שמונעות שדרוגים. מידע נוסף זמין במאמר בנושא סטטוס השדרוג האוטומטי של אשכול.
היסטוריית שדרוגים: GKE מספק תמונת מצב של שדרוגים אחרונים של רמת הבקרה ושדרוגים של צמתים באשכול, כולל שדרוגים אוטומטיים וידניים. לשדרוגים האחרונים של מישור הבקרה והצמתים, אפשר לראות פרטים כמו:
- גרסאות: הגרסה הראשונית וגרסת היעד.
- מצב: האם השדרוג עדיין פועל, או אם הוא הצליח, נכשל או בוטל.
- שעה: שעת ההתחלה ושעת הסיום.
- סוג ההתחלה: האם השדרוג הופעל אוטומטית או ידנית.
תאריכי סיום התמיכה: GKE תומכת בגרסאות משניות למשך עד 24 חודשים. מידע נוסף זמין במאמר בנושא מחזור החיים של גרסאות משניות של GKE. כדי לראות את התאריכים של סוף התמיכה בכל הגרסאות המשניות הנוכחיות, אפשר לעיין בלוח הזמנים המשוער של ערוצי ההפצה.
אירועים של אשכולות: GKE שולח התראות על אשכולות ל-Cloud Logging לגבי אירועים מסוימים, למשל כששדרוגים מתחילים או מסתיימים, כשגרסאות חדשות זמינות, כשמתפרסמים עלוני אבטחה וכשמגיע תאריך סיום התמיכה. בנוסף לכך ש-GKE מציג את האירועים האלה באופן אוטומטי באמצעות Cloud Logging, אפשר גם להעביר את ההתראות האלה ל-Pub/Sub. מידע נוסף זמין במאמר בנושא התראות על אשכולות.
לפני שמתחילים
לפני שמתחילים, חשוב לוודא שביצעתם את הפעולות הבאות:
- מפעילים את ממשק Google Kubernetes Engine API. הפעלת Google Kubernetes Engine API
- כדי להשתמש ב-CLI של Google Cloud למשימה הזו, צריך להתקין ואז להפעיל את gcloud CLI. אם התקנתם בעבר את ה-CLI של gcloud, מריצים את הפקודה
gcloud components updateכדי לקבל את הגרסה העדכנית. יכול להיות שגרסאות קודמות של ה-CLI של gcloud לא יתמכו בהרצת הפקודות שמופיעות במסמך הזה.
קבלת התראות על שדרוגים מתוזמנים של אשכולות
אפשר להפעיל שדרוגים מתוזמנים ל-GKE כדי לקבל מראש התראות על הסוגים הבאים של שדרוגים אוטומטיים של אשכולות:
- שדרוגים של מישור הבקרה
- שדרוגים של צמתים, עם התראה אחת לכל יעד לשדרוג אוטומטי
אחרי שמפעילים את התכונה הזו, GKE מפרסם התראה על אשכול ב-Cloud Logging, או לחלופין ב-Pub/Sub, עם המידע הבא:
- שם האשכול.
- שעת ההתחלה של חלון השדרוג. חלון הזמן הוא 8 שעות לרמת הבקרה ו-10 ימים לצמתים.
- גרסת היעד.
- מאגרי צמתים מושפעים (לשדרוגי צמתים): כל התראה מתייחסת ליעד שדרוג אוטומטי יחיד ומפרטת עד 10 מאגרי צמתים שמתוכננים לשדרוג. שימו לב: כל מאגרי הצמתים שמשתפים את יעד השדרוג האוטומטי הזה ישודרגו, ולא רק אלה שמופיעים ברשימה. כדי לוודא שמאגר צמתים מסוים הושפע, צריך לקבל את פרטי השדרוג של מאגרי הצמתים ולוודא שהיעד של השדרוג האוטומטי תואם לזה שמופיע בהודעה.
GKE שולח לכם הודעה 72 עד 96 שעות לפני שעת ההתחלה. מערכת GKE מתחילה את השדרוג של מישור הבקרה או של הצמתים בתוך חלון הזמן של 8 שעות (מישור הבקרה) או 10 ימים (צמתים) עד לאחד מהמצבים הבאים:
- גרסת GKE שצוינה בהתראה
- תיקון מאוחר יותר באותה גרסה משנית, אם תיקון הופך ליעד לשדרוג אוטומטי בערוץ ההפצה של האשכול לפני השדרוג
ההתראות על שדרוגים מתוזמנים מאפשרות לדעת מתי GKE יתחיל שדרוג של רמת בקרה או של מאגר צמתים. עם זאת, קבלת ההודעה הזו לא מבטיחה ש-GKE ישדרג את האשכול בזמן שצוין. בנוסף, ההתראה רק מודיעה לכם מתי השדרוג מתחיל, ולא מבטיחה שהשדרוג יושלם.
אם מפעילים את התכונה הזו ויש הרבה צמתים באשכול, מומלץ גם להגדיר שדרוגים מקבילים של מאגר הצמתים כדי ששדרוגי הצמתים יושלמו במהירות המקסימלית האפשרית בסביבת האשכול.
אם לא מפעילים את התכונה הזו, GKE עדיין משדרג אוטומטית את מישור הבקרה של האשכול. עם זאת, התנהגות ברירת המחדל בלי התכונה הזו היא שלא תקבלו מראש הודעה על שדרוג מתוזמן.
בקטעים הבאים מוסבר אילו פעולות אפשר לבצע (או לא לבצע) כשמקבלים הודעה על שדרוג מתוזמן, ומהן הסיבות האחרות לכך ש-GKE לא ישדרג אשכול בזמן שצוין.
מה עושים כשמקבלים התראה על שדרוג מתוזמן
אם אתם מוכנים שהשדרוג המתוזמן יתבצע בזמן שצוין בהתראה, אתם לא צריכים לבצע שום פעולה נוספת, מלבד מעקב אחרי תקינות סביבת האשכול ועומסי העבודה כש-GKE יתחיל את השדרוג האוטומטי.
אפשר גם לבצע חלק מהפעולות הבאות, שישפיעו על התזמון של השדרוג:
- החרגת תחזוקה: אם אתם לא מוכנים לכך ש-GKE ישדרג אוטומטית את מישור הבקרה או את מאגר הצמתים, אתם יכולים להגדיר החרגת תחזוקה, שתמנע את השדרוג בזמן שהוא אמור להתבצע.
- חלון תחזוקה: אפשר גם להגדיר חלון תחזוקה, שבו GKE ישדרג אוטומטית את האשכול בזמן אחר במהלך השבוע.
- שדרוג ידני: אם רוצים שהשדרוג יתבצע מוקדם יותר, אפשר לשדרג ידנית את מישור הבקרה של האשכול או לשדרג ידנית את מאגר הצמתים, בהתאם לסוג השדרוג המתוזמן.
סיבות אפשריות לכך ש-GKE לא יבצע שדרוג מתוזמן
יכול להיות ש-GKE לא יבצע שדרוג מתוזמן בחלון הזמן שצוין אם נצפתה בעיה בגרסה בין מועד שליחת ההתראה לבין מועד תחילת השדרוג המתוזמן. מידע נוסף זמין במאמר זיהוי הגורם שמונע את השדרוג הבא של האשכול.
כשמבצעים שדרוגים של צמתים, GKE שולח התראה שמסכמת את כל מאגרי הצמתים עם אותו יעד לשדרוג אוטומטי. יכול להיות ש-GKE לא יוכל להתחיל את כל השדרוגים לפני סוף חלון הזמן של 10 ימים. התרחיש הזה סביר יותר באשכולות עם הרבה מאגרי צמתים, או במאגרי צמתים שנדרש זמן רב יותר לשדרוג שלהם – כמו מאגרי צמתים גדולים עם הרבה צמתים. במקרים כאלה, שבהם שדרוג הצמתים עשוי להימשך זמן רב יותר, מומלץ להגדיר שדרוגים מקבילים של מאגרי צמתים כדי ש-GKE יוכל לשדרג כמה מאגרי צמתים בו-זמנית במהלך חלון הזמן של 10 ימים.
אם GKE מבטל את השדרוג המתוזמן או לא מצליח לבצע אותו, בגלל פעולות שביצעתם, מגבלות זמן או נסיבות בלתי צפויות אחרות, GKE שולח הודעה נוספת על האשכול כשהשדרוג מתוזמן מחדש.
מגבלות
- אי אפשר להפעיל שדרוגים מתוזמנים עם השקה מדורגת.
- GKE לא שולח התראה על ביטול של שדרוג מתוזמן. GKE שולח התראה רק לגבי שדרוג מתוזמן חדש.
- אם מפעילים שדרוגים מתוזמנים, יכול להיות שההפעלה הזו תגרום לכך שהשדרוגים האוטומטיים יושלמו לאט יותר מאשר אם ההודעות לא היו מופעלות. הסיבה לכך היא שלכל שדרוג, מערכת GKE צריכה לספק הודעה מראש של 72 שעות לפחות, לפעול בהתאם לחלון הזמן להתחלת השדרוג ולפעול בהתאם לחלון הזמן לתחזוקה, אם הגדרתם כזה לאשכול. אם אתם צריכים לבצע שדרוגים באשכול שלכם בצורה יעילה ככל האפשר, ובמיוחד אם יש לכם מספר גדול של מאגרי צמתים או מאגרי צמתים גדולים, מומלץ גם להגדיר שדרוגים מקבילים של מאגרי צמתים. בנוסף, אפשר להשתמש בשדרוגים ידניים כדי לקדם שדרוגים כשצריך.
- אל תפעילו שדרוגים מתוזמנים לאשכולות עם יותר מ-1,000 מאגרי צמתים.
- GKE מספק הודעה מראש רק לגבי שדרוגים של גרסאות – כולל שדרוגים של רמת הבקרה ושל הצמתים – ולא לגבי סוגים אחרים של עדכונים של הצמתים. מידע נוסף על ההבדל בין שדרוגים (עדכוני גרסה) לבין סוגים אחרים של עדכונים זמין במאמר ניהול שינויים במחזור החיים של אשכולות כדי למזער שיבושים.
- אי אפשר להפעיל או להשבית שדרוגים מתוזמנים באמצעות Terraform.
ההתראות על שדרוגים מתוזמנים רק מבטיחות ששדרוגים אוטומטיים של רמת הבקרה או הצמתים של האשכול לא יתחילו בלי התראה מראש. עם זאת, ההתראה לא מבטיחה את הדברים הבאים:
- אין ערובה לכך שהשדרוגים יתחילו בשעה מדויקת, אלא רק בטווח של 8 שעות לשדרוגים של מישור הבקרה, או בטווח של 10 ימים לשדרוגים של הצמתים.
- אין ערובה לכך ש-GKE יתחיל את השדרוג בטווח הזמן הזה. מידע נוסף מופיע במאמר הסיבות לכך ש-GKE לא מבצע שדרוג מתוזמן.
- אין ערובה לכך ש-GKE ישדרג אוטומטית את רמת הבקרה או את מאגרי הצמתים לגרסת התיקון המדויקת, אם בערוץ ההפצה יש גרסת תיקון מאוחרת יותר של אותה גרסה משנית שאליה מיועד השדרוג האוטומטי.
הפעלה של שדרוגים מתוזמנים
מפעילים שדרוגים מתוזמנים, ומחליפים את CLUSTER_NAME בשם האשכול:
gcloud beta container clusters update CLUSTER_NAME
--enable-scheduled-upgrades
אחרי שמפעילים שדרוגים מתוזמנים, אפשר לראות את ההתראות באמצעות Cloud Logging או להגדיר התראות באמצעות Pub/Sub. מידע נוסף מופיע במאמר התראות על אשכולות.
בנוסף, אם יש לכם הרבה צמתים באשכול, מומלץ גם להגדיר שדרוגים מקבילים של מאגרי צמתים כדי ששדרוגי הצמתים יושלמו במהירות המקסימלית האפשרית בסביבת האשכול.
כשמקבלים הודעה על שדרוג מתוזמן, צריך לעיין במאמר מה עושים כשמקבלים הודעה על שדרוג מתוזמן.
השבתה של שדרוגים מתוזמנים
משביתים את השדרוגים המתוזמנים ומחליפים את CLUSTER_NAME בשם האשכול:
gcloud beta container clusters update CLUSTER_NAME
--disable-scheduled-upgrades
אחרי שמשביתים את התכונה הזו, GKE לא שולח יותר הודעות על שדרוגים מתוזמנים.
קבלת מידע על שדרוגים של אשכול
אפשר לקבל מידע באופן יזום על שדרוגים של אשכול באמצעות מסוףCloud de Confiance או gcloud CLI.
קבלת מידע על שדרוגים ברמת הפרויקט
כדי לקבל מידע מצטבר על שדרוגים של אשכולות בפרויקט, אפשר להשתמש בלוח הבקרה שדרוגים.
נכנסים ללוח הבקרה Upgrades במסוף Cloud de Confiance :
בכרטיסיות של לוח הבקרה הזה מוצג מידע רלוונטי על שדרוגים, כמו:
- הסטטוסים של השדרוגים האחרונים של רמת הבקרה והצמתים
- יומני התראות של אשכולים לשדרוגים
- המלצות שקשורות לשדרוגים
- ציר זמן לסיום התמיכה בגרסאות משניות ספציפיות
- מספר האשכולות בכל ערוץ הפצה
קבלת מידע על שדרוגים ברמת האשכול
המסוף
נכנסים לדף Kubernetes clusters במסוף Cloud de Confiance .
בוחרים את שם האשכול כדי לראות את הדף פרטי האשכול.
בדף פרטי האשכול, עוברים לקטע שדרוגים של האשכול.
gcloud
מריצים את הפקודה הבאה:
gcloud container clusters get-upgrade-info CLUSTER_NAME
מחליפים את CLUSTER_NAME בשם האשכול.
קבלת מידע על שדרוגים של מאגרי צמתים באשכול רגיל
אפשר לקבל נראות של מאגרי צמתים נפרדים עבור אשכולות Standard. הקטע הזה לא רלוונטי לאשכולות במצב Autopilot, שבהם GKE מנהל את הצמתים, ולכן אין מאגרי צמתים לניהול.
המסוף
נכנסים לדף Kubernetes clusters במסוף Cloud de Confiance .
לוחצים על שם האשכול כדי לראות את הפרטים שלו.
לוחצים על הכרטיסייה Nodes.
בקטע Node Pools, לוחצים על השם של מאגר הצמתים שרוצים לקבל לגביו מידע על שדרוגים.
בדף פרטים של מאגר הצמתים, מעיינים בקטע שדרוגים.
gcloud
מריצים את הפקודה הבאה:
gcloud container node-pools get-upgrade-info POOL_NAME
--cluster=CLUSTER_NAME
מחליפים את POOL_NAME בשם של מאגר הצמתים.
סטטוס השדרוג האוטומטי של האשכול
אלה הסטטוסים האפשריים של שדרוגים אוטומטיים של אשכול:
ACTIVE: סטטוס שדרוג פעיל.-
UNKNOWN: סטטוס השדרוג לא ידוע. -
MINOR_UPGRADE_PAUSED: שדרוגים של גרסאות משניות מושהים. -
UPGRADE_PAUSED: כל השדרוגים האוטומטיים מושהים.
אלה הסיבות האפשריות לכך ש-GKE משהה שדרוגים אוטומטיים של אשכול:
-
MAINTENANCE_WINDOW: חלון זמן לתחזוקה מונע שדרוגים של אשכולות. -
MAINTENANCE_EXCLUSION_: סיבת ההשהיה עם הקידומת הזו מציינת שהחרגת תחזוקה מונעת שדרוגים של אשכולות. הסיומת מציינת את ההיקף של ההחרגה מתחזוקה, כמוMAINTENANCE_EXCLUSION_NO_UPGRADES. -
CLUSTER_DISRUPTION_BUDGET: אחרי פעולות מסוימות, כמו יצירה או שדרוג של אשכול, האשכולות צריכים תקופת צינון כדי להגן על היציבות והזמינות של האשכול והאפליקציות שלו. -
CLUSTER_DISRUPTION_BUDGET_MINOR_UPGRADE: האשכול נמצא מחוץ לתקציב ההפרעות של האשכול לשדרוגים של גרסאות משניות. -
SYSTEM_CONFIG: השדרוגים האוטומטיים מושהים זמנית מסיבות טכניות או עסקיות. בסטטוס הזה, אנחנו ממליצים לא לבצע שדרוג ידני אלא אם יש צורך בכך. AUTO_UPGRADE_PAUSED_REASON_UNSPECIFIED: סיבה לא מוגדרת.
מידע על תרחישים נפוצים לשדרוג אשכולות
מידע על תרחישים נפוצים שאתם עשויים להיתקל בהם כשאתם מנהלים שדרוגים של אשכולות.
איך יודעים מתי צפוי השדרוג הבא של האשכול
כדי לדעת מתי צפוי השדרוג הבא של האשכול, כדי שתוכלו לתכנן את השדרוג לגרסה החדשה ולבדוק אם אתם עומדים בדרישות, תוכלו להיעזר במקורות המידע הבאים:
- לוח זמנים להפצה: בלוח הזמנים המשוער להפצה של ערוצי הפצה, אפשר למצוא את התאריך המשוער לשדרוג אוטומטי שמתאים לגרסה המשנית ולערוץ ההפצה של האשכול.
- קבלת מידע על שדרוגים ברמת האשכול: אפשר לראות את יעד השדרוג האוטומטי של האשכול.
- התראות על אשכולות: GKE שולח התראה כשגרסה חדשה הופכת לזמינה בערוץ. אחרי שגרסה חדשה הופכת לזמינה, בהתאם לערוץ, מערכת GKE מציינת את הגרסה כיעד לשדרוג אוטומטי בערוץ. כדי לראות את ההתראות האלה, מסננים לפי
UpgradeAvailableEventכשמציגים התראות של אשכול ב-Cloud Logging. - הערות לגבי הגרסה: כדאי לעקוב אחרי ההערות לגבי הגרסה כדי לדעת מתי GKE מגדיר את גרסת המשנה החדשה כיעד לשדרוג אוטומטי בערוץ.
איך מוצאים מה חוסם את השדרוג הבא של האשכול
כדי לדעת מה חוסם את השדרוג ולבטל את החסימה, צריך למצוא את סטטוס השדרוג האוטומטי של האשכול. אם השדרוגים האוטומטיים מושהים, תוכלו לראות את הסיבה לכך. אפשר להשתמש באחת מהשיטות הבאות:
- קבלת מידע על שדרוגים ברמת הפרויקט (גרסת טרום-השקה) לוחצים על הכרטיסייה שדרוגים, שבה אפשר לראות את הטבלה סטטוס השדרוג. מחפשים את האשכול בטבלה ומסתכלים על העמודה שדרוג אוטומטי של האשכול.
- אפשר לקבל מידע על שדרוגים ברמת האשכול כדי לראות את סטטוס השדרוג האוטומטי של האשכול.
איך בודקים מתי השדרוג של האשכול מסתיים
כדי לדעת מתי שדרוגי מישור הבקרה והצמתים של האשכול מסתיימים, וכך לוודא שעומסי העבודה פועלים כמצופה, אפשר להשתמש במקורות המידע הבאים:
- התראות על אשכולות: GKE שולח התראה כש-GKE מסיים פעולה לשדרוג אשכול. כדי לראות את ההתראות האלה, מסננים לפי
UpgradeInfoEventכשמציגים את ההתראות של האשכול ב-Cloud Logging. - לוח הבקרה של השדרוגים (גרסת Preview): עוברים לטבלה סטטוסים של שדרוגים בCloud de Confiance מסוף. מאתרים את האשכול. אם בעמודה סטטוס מופיע הערך שודרג, אפשר לראות בעמודה העדכון האחרון מתי השדרוג הסתיים.
- קבלת מידע על שדרוגים ברמת האשכול: אפשר להשתמש ב-CLI של gcloud כדי למצוא את היסטוריית השדרוגים של האשכול, כולל שדרוגים מהזמן האחרון.
כמה זמן צפוי להימשך השדרוג
כדי לדעת כמה זמן צפוי להימשך השדרוג, אפשר לקבל מידע על שדרוגים ברמת האשכול ולראות את משך השדרוגים הקודמים. כדי לראות דוגמאות עדכניות, אפשר לעיין בהיסטוריית השדרוגים.
משך השדרוג תלוי בשאלה אם משדרגים את מישור הבקרה או את הצמתים, באסטרטגיית השדרוג, בתקציבים להפרעות ב-Pod (PDB), במדיניות פעילה של תחזוקה ובגורמים נוספים.
איך בודקים מתי מסתיימת התמיכה בגרסה המשנית של האשכול
מערכת GKE משדרגת אוטומטית אשכולות שעדיין פועלים בגרסאות משניות אחרי תאריך סיום התמיכה שלהן. מידע נוסף זמין במאמר שדרוגים אוטומטיים בסיום התמיכה.
כדי לדעת מתי גרסת המשנה של האשכול תגיע לסוף תקופת התמיכה – למשל, כדי להגדיר החרגה מתחזוקה או להבין מתי לא יהיה יותר אפשר להשתמש בממשקי API שהוצאו משימוש – אפשר להיעזר במקורות המידע הבאים:
- לוח זמנים להפצה: בלוח הזמנים המשוער להפצה של ערוצי הפצה, מחפשים את תאריך סיום התמיכה שמתאים לגרסה המשנית ולערוץ ההפצה של האשכול. לגבי אשכולות שלא נמצאים בערוץ Extended, אפשר לראות את התאריך של סיום התמיכה הרגילה. לגבי אשכולות שנמצאים בערוץ Extended, אפשר לראות את תאריך הסיום של התמיכה המורחבת.
- התראות לגבי אשכולות: GKE שולח התראה כשאשכול מריץ גרסה משנית בסוף תקופת התמיכה או קרוב לסוף התקופה. כדי לראות את ההתראות האלה, צריך לסנן לפי
UpgradeInfoEventכשמציגים התראות של אשכול ב-Cloud Logging. - תובנות והמלצות: מערכת GKE מודיעה לכם כשהאשכול שלכם מריץ גרסה משנית אחרי סיום התמיכה הרגילה. מידע נוסף זמין במאמר זיהוי אשכולות שפועלת בהם גרסה משנית שעבר יותר זמן מסיום התמיכה הרגילה.
- קבלת מידע על שדרוגים ברמת האשכול: אפשר למצוא את תאריך סיום התמיכה בגרסה המשנית של האשכול.
- לוח הבקרה 'שדרוגים' (גרסת Preview): לוח הבקרה שדרוגים כולל את הקטע סיום התמיכה בגרסה עם גרסאות ספציפיות ומספר הימים שנותרו עד לסיום התמיכה.