במאמר הזה מוסבר איך להשתמש ב-Pub/Sub כדי לקבל התראות על אשכולות של Google Kubernetes Engine (GKE).
כברירת מחדל, GKE מעביר את ההתראות האלה אל Cloud Logging. אתם יכולים להשתמש בכל היכולות של Cloud Logging, כולל שליחת שאילתות ליומנים וצפייה בהם והגדרת כללי מדיניות להתראות שמבוססות על יומנים. כדי למצוא את היומנים האלה ב-Cloud Logging, אפשר לעיין במאמר הצגת התראות של אשכול ב-Cloud Logging.
סקירה כללית
כשמתרחשים אירועים מסוימים שרלוונטיים לאשכולות GKE, כמו שדרוגים חשובים שנקבעו מראש או עדכוני אבטחה דחופים שזמינים, GKE מפרסם התראות לגבי האירועים האלה כהודעות בנושאים של Pub/Sub שאתם מגדירים. אתם יכולים לקבל את ההתראות האלה במינוי ל-Pub/Sub, לשלב אותן עם שירותי צד שלישי ולסנן את סוגי ההתראות שאתם רוצים לקבל.
במאמר התראות מקובצות מוסבר על היתרונות של התראות מקובצות, על אופן הפעולה של ההתראות ועל החשיבות של הסינון. אפשר להגדיר התראות על אשכולות באשכולות רגילים חדשים וקיימים, וגם לעדכן אשכולות קיימים במצב Autopilot. אי אפשר להשתמש ב-Pub/Sub כדי לקבל התראות על פריסה מדורגת עם שלבים בהתאמה אישית.
לפני שמתחילים
לפני שמתחילים, חשוב לוודא שביצעתם את המשימות הבאות:
- מפעילים את ממשק ה-API של Google Kubernetes Engine. הפעלת Google Kubernetes Engine API
- כדי להשתמש ב-CLI של Google Cloud למשימה הזו, צריך להתקין ואז לאתחל את ה-CLI של gcloud. אם התקנתם בעבר את ה-CLI של gcloud, מריצים את הפקודה
gcloud components updateכדי לקבל את הגרסה העדכנית. יכול להיות שבגרסאות קודמות של ה-CLI של gcloud אי אפשר להריץ את הפקודות שבמסמך הזה.
יצירת נושא Pub/Sub אפשר ליצור נושא בפרויקט של האשכול, או בפרויקט אחר בארגון.
מוודאים שיש לכם אשכול קיים במצב Autopilot או במצב Standard. אם אתם צריכים אשכול, צרו אשכול Autopilot.
הרשאות להתראות על אשכולות בכמה פרויקטים
כדי להשתמש בנושא Pub/Sub מפרויקט שונה מהאשכול, צריך להקצות את התפקידים הבאים מפרויקט הנושא לחשבון השירות service-PROJECT_NUMBER@container-engine-robot.iam.gserviceaccount.com בפרויקט האשכול:
הפעלת התראות באשכול קיים
אפשר להפעיל התראות על אשכול GKE באשכול קיים באמצעות Google Cloud CLI או מסוף Google Cloud .
אתם יכולים ליצור נושא אחד לכל האשכולות, או ליצור כמה נושאים לקבוצות של אשכולות.
gcloud
כדי להפעיל התראות על אשכול קיים, מריצים את הפקודה הבאה:
gcloud container clusters update CLUSTER_NAME \
--location=CONTROL_PLANE_LOCATION \
--notification-config=pubsub=ENABLED,pubsub-topic=projects/TOPIC_PROJECT_ID/topics/TOPIC_NAME,filter=NOTIFICATION_TYPE
מחליפים את מה שכתוב בשדות הבאים:
-
CLUSTER_NAME: שם האשכול. -
CONTROL_PLANE_LOCATION: המיקום של מישור הבקרה של האשכול ב-Compute Engine. מציינים אזור לאשכולות אזוריים או אזור לאשכולות אזוריים. -
TOPIC_PROJECT_ID: מזהה הפרויקט ב- Google Cloud של נושא ה-Pub/Sub. אם פרויקט הנושא שונה מפרויקט האשכול, ודאו שהענקתם את ההרשאות הנדרשות. מידע נוסף זמין במאמר בנושא הרשאות לקבלת התראות על אשכולות בפרויקטים שונים. -
TOPIC_NAME: השם של נושא ה-Pub/Sub.
NOTIFICATION_TYPE: רשימה של סוגי ההתראות שרוצים לקבל, מופרדת באמצעות קו אנכי (|). לדוגמה,filter="UpgradeEvent|SecurityBulletinEvent"שולח רק התראות מסוגUpgradeEventו-SecurityBulletinEvent, ומתעלם מכל שאר הסוגים.
המסוף
כדי להפעיל התראות לגבי אשכול קיים:
נכנסים לדף Google Kubernetes Engine במסוף Google Cloud .
לוחצים על השם של האשכול שרוצים לשנות.
בקטע אוטומציה, ליד התראות, לוחצים על עריכת התראות.
בתיבת הדו-שיח עריכת התראות, מסמנים את התיבה הפעלת התראות.
מהרשימה הנפתחת, בוחרים את נושא ה-Pub/Sub שיצרתם.
כדי לסנן את ההתראות, מסמנים את התיבה סינון סוגי ההתראות ואז בוחרים את סוגי ההתראות שרוצים לקבל.
לוחצים על שמירת השינויים.
אחרי שמפעילים את ההתראות, בוחרים את סוג המינוי לנושא.
סינון התראות לגבי אשכולות
אתם יכולים לסנן את ההתראות לפי סוג ההתראה כדי לוודא שתקבלו את ההתראות שאתם רוצים.
אפשר לסנן את ההתראות בדרכים הבאות:
- GKE: מציינים ערכים ל-
filterבדגל--notification-config, כמו בדוגמאות הקודמות להפעלת התראות על אשכולות. - Pub/Sub: מגדירים את המינוי ל-Pub/Sub כדי לסנן הודעות כשיוצרים מינוי.
שינוי מסננים קיימים ב-GKE
כדי לשנות את מסנני ההתראות הקיימים של אשכול GKE, פועלים לפי ההוראות במאמר הפעלת התראות באשכול קיים ומציינים את סוגי ההתראות החדשים לסינון בפקודה gcloud או בוחרים את הסוגים החדשים במסוף Google Cloud .
השבתת מסננים ב-GKE
אתם יכולים להשבית את מסנני ההתראות של GKE ולקבל את כל סוגי ההתראות שרלוונטיים לאשכול שלכם באמצעות ה-CLI של gcloud או מסוף Google Cloud .
gcloud
כדי להשבית את המסננים באמצעות ה-CLI של gcloud, מריצים את הפקודה הבאה:
gcloud container clusters update CLUSTER_NAME \
--location=CONTROL_PLANE_LOCATION \
--notification-config=pubsub=ENABLED,pubsub-topic=projects/TOPIC_PROJECT_ID/topics/TOPIC_NAME
המסוף
כדי להשבית מסננים באמצעות מסוף Google Cloud :
נכנסים לדף Google Kubernetes Engine במסוף Google Cloud .
לוחצים על השם של האשכול שרוצים לשנות.
בקטע אוטומציה, ליד התראות, לוחצים על עריכת התראות.
בתיבת הדו-שיח עריכת התראות, מבטלים את הסימון בתיבת הסימון סינון סוגי התראות.
לוחצים על שמירת השינויים.
אימות ההגדרה של התראות על אשכולות
במצב אוטומטי, אפשר לאמת את ההתראות על האשכול באופן הבא:
- התחלת שדרוג של מישור הבקרה
- מחכים ש-GKE ישדרג אוטומטית את הצמתים לגרסה החדשה. משך הזמן עשוי להשתנות בהתאם לחלונות הזמן לתחזוקה ולהחרגות שהוגדרו.
- אחרי ש-GKE ישדרג את הצמתים, צריך לבדוק את המינוי ל-Pub/Sub.
במצב רגיל, אפשר לאמת את ההתראות על אשכולות באופן הבא:
שדרוג מאגר צמתים ספציפי לגרסה חדשה. אם אתם לא רוצים לשנות את גרסת GKE בצמתים, אתם יכולים לשדרג לאותה גרסה שמותקנת כרגע בצמתים.
אחרי ש-GKE ישדרג את הצמתים, צריך לבדוק את המינוי ל-Pub/Sub.
אפשר לאמת את ההגדרה באופן ידני רק עבור סוג ההתראה UpgradeEvent. אם המסננים שלכם מוגדרים להתעלם מהסוג הזה, לא תראו הודעה.
השבתת ההתראות לגבי אשכולות
אפשר להשבית את ההתראות על אשכולות באמצעות ה-CLI של gcloud או מסוףGoogle Cloud .
gcloud
כדי להשבית את ההתראות באמצעות ה-CLI של gcloud, מריצים את הפקודה הבאה:
gcloud container clusters update CLUSTER_NAME \
--location=CONTROL_PLANE_LOCATION \
--notification-config=pubsub=DISABLED
המסוף
כדי להשבית את ההתראות באמצעות מסוף Google Cloud :
נכנסים לדף Google Kubernetes Engine במסוף Google Cloud .
לוחצים על השם של האשכול שרוצים לשנות.
בקטע אוטומציה, ליד התראות, לוחצים על עריכת התראות.
בתיבת הדו-שיח עריכת התראות, מבטלים את הסימון בתיבת הסימון הפעלת התראות.
לוחצים על שמירת השינויים.
אפשר גם למחוק את נושא ה-Pub/Sub שיצרתם בשביל ההתראות.
המאמרים הבאים
- מידע נוסף על התראות לגבי אשכולות
- מידע על הגדרת התראות Pub/Sub
- איך מגדירים התראות על אשכולות לשירותים של צד שלישי
- איך מגדירים קלאסטרים לקבלת התראות באימייל