ניהול חלונות תחזוקה של אשכולות AlloyDB ל-PostgreSQL

בדף הזה מוסבר איך לבצע את הפעולות הבאות שקשורות לתחזוקת אשכולות של AlloyDB ל-PostgreSQL:

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

כל הפעולות שמופיעות ברשימה חלות על אשכולות ראשיים ומשניים.

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

לפני שמתחילים

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

הגדרת חלון זמן לתחזוקה באשכול

המסוף

  1. עוברים לדף Clusters.

    מעבר אל Clusters

  2. לוחצים על אשכול בעמודה שם המשאב.

  3. בדף סקירה כללית, בקטע תחזוקה, לוחצים על עריכה.

  4. בקטע חלון זמן לתחזוקה, בוחרים את היום בשבוע שבו יתבצע חלון הזמן לתחזוקה.

    ברירת המחדל היא Any window (כל חלון). כשיוצרים אשכול, חלון הזמן הזה לתחזוקה מוקצה לאשכול כברירת מחדל.

  5. בוחרים את השעה ביום לחלון זמן לתחזוקה הזה.

  6. לוחצים על עדכון כדי לשמור את השינויים.

gcloud

כדי להשתמש ב-ה-CLI של gcloud, אפשר להתקין ולהפעיל את Google Cloud CLI, או להשתמש ב-Cloud Shell.

כדי להגדיר חלון זמן לתחזוקה באשכול, מריצים את הפקודה gcloud alloydb clusters update

עם הדגלים --maintenance-window-day ו---maintenance-window-hour:

gcloud alloydb clusters update CLUSTER_ID \
  --region LOCATION_ID \
  --maintenance-window-day DAY_OF_WEEK \
  --maintenance-window-hour HOUR_OF_DAY

מחליפים את מה שכתוב בשדות הבאים:

  • ‫CLUSTER_ID: האשכול שבו רוצים להגדיר את חלון זמן לתחזוקה.

  • ‫LOCATION_ID: האזור Google Cloud שבו נמצאת האשכול הזה. לדוגמה, us-central1.

  • ‫DAY_OF_WEEK: היום בשבוע, באזור הזמן של הזמן האוניברסלי המתואם (UTC), עבור חלון התחזוקה הזה. הערכים האפשריים הם MONDAY,‏ TUESDAY,‏ WEDNESDAY,‏ THURSDAY,‏ FRIDAY,‏ SATURDAY ו-SUNDAY.

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

  • ‫HOUR_OF_DAY: מספר שלם בין 0 ל-23 שמייצג את השעה ביום, באזור הזמן UTC, עבור חלון זמן לתחזוקה זה.

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

מחיקת חלון זמן לתחזוקה

המסוף

  1. עוברים לדף Clusters.

    מעבר אל Clusters

  2. לוחצים על אשכול בעמודה שם המשאב.

  3. בדף סקירה כללית, בקטע תחזוקה, לוחצים על עריכה.

  4. בקטע חלון זמן לתחזוקה, בוחרים באפשרות כל חלון זמן.

  5. לוחצים על עדכון כדי לשמור את השינויים.

gcloud

כדי להשתמש ב-ה-CLI של gcloud, אפשר להתקין ולהפעיל את Google Cloud CLI, או להשתמש ב-Cloud Shell.

כדי לנקות את חלון זמן לתחזוקה מאשכול, מריצים את הפקודה gcloud clusters update עם הדגל --maintenance-window-any:

gcloud alloydb clusters update CLUSTER_ID \
  --region LOCATION_ID \
  --maintenance-window-any

מחליפים את מה שכתוב בשדות הבאים:

  • ‫CLUSTER_ID: האשכול שבו רוצים להגדיר את חלון זמן לתחזוקה.

  • ‫LOCATION_ID: האזור שבו נמצא האשכול הזה Google Cloud , לדוגמה us-central1.

צפייה בחלון הזמן לתחזוקה של אשכול

המסוף

  1. עוברים לדף Clusters.

    מעבר אל Clusters

  2. לוחצים על אשכול בעמודה שם המשאב.

  3. בדף סקירה כללית, בקטע תחזוקה, אפשר לראות את פרטי חלון התחזוקה של האשכול.

gcloud

כדי להשתמש ב-ה-CLI של gcloud, אפשר להתקין ולהפעיל את Google Cloud CLI, או להשתמש ב-Cloud Shell.

כדי לבדוק את חלון זמן לתחזוקה הנוכחי באשכול, מריצים את הפקודה gcloud alloydb clusters describe:

gcloud alloydb clusters describe CLUSTER_ID \
  --region LOCATION_ID

מחליפים את מה שכתוב בשדות הבאים:

  • ‫CLUSTER_ID: האשכול שבו רוצים להגדיר את חלון זמן לתחזוקה.

  • ‫LOCATION_ID: האזור שבו נמצא האשכול הזה Google Cloud , לדוגמה us-central1.

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

maintenanceUpdatePolicy:
  maintenanceWindows:
  - day: TUESDAY
    startTime:
      hours: 23

אם הפלט לא כולל קטע maintenanceUpdatePolicy, לא הוגדר חלון זמן לתחזוקה באשכול.

הצגת עבודות תחזוקה מתוכננות באשכול

המסוף

  1. עוברים לדף Clusters.

    מעבר אל Clusters

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

gcloud

כדי להשתמש ב-ה-CLI של gcloud, אפשר להתקין ולהפעיל את Google Cloud CLI, או להשתמש ב-Cloud Shell.

כדי לראות את התחזוקה הקרובה שמתוכננת לאשכול שהוגדר לו חלון תחזוקה, מריצים את הפקודה gcloud clusters describe:

gcloud alloydb clusters describe CLUSTER_ID \
  --region LOCATION_ID

מחליפים את מה שכתוב בשדות הבאים:

  • ‫CLUSTER_ID: האשכול שבו רוצים להגדיר את חלון זמן לתחזוקה.

  • ‫LOCATION_ID: ה Google Cloud אזור שבו נמצא האשכול הזה, לדוגמה us-central1.

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

maintenanceSchedule:
  startTime: 2024-07-03T09:46:40Z

חותמת הזמן בפורמט UTC מציינת את הרגע שבו מערכת AlloyDB מתכננת להתחיל לעדכן את תוכנת המערכת של כל הצמתים באשכול הזה.

הסכמה לקבלת התראות לגבי פעולות תחזוקה

ההתראות על תחזוקה מושבתות כברירת מחדל. אם תבחרו להצטרף לקבלת התראות באימייל על אירועי תחזוקה מתוכננים של AlloyDB, חשוב לזכור את הנקודות הבאות:

  • תקבלו התראה אוטומטית לגבי האירוע ברגע שהוא יתוזמן. אירועי תחזוקה מתוזמנים לפחות שבוע מראש.
  • ההתראות לגבי פעולות תחזוקה מופעלות Google Cloud ברמת הפרויקט. אי אפשר לבחור לקבל התראות על קבוצת משנה של אשכולות בפרויקט.
  • אפשר להפעיל התראות רק לעצמכם. כל משתמש צריך להביע הסכמה בנפרד לקבלת התראות על תחזוקה.

מידע נוסף מופיע במאמר סקירה כללית על תחזוקה.

כדי לקבל התראה אוטומטית באימייל בכל פעם שאירוע תחזוקה מתוזמן או מבוטל עבור אשכול שהוגדר לו חלון זמן לתחזוקה, מבצעים את השלבים הבאים באמצעות מסוף Google Cloud :

  1. עוברים לדף Clusters.

    מעבר אל Clusters

  2. לוחצים על אשכול בעמודה שם המשאב.

  3. בדף סקירה כללית, בקטע תחזוקה, לוחצים על עריכה בשורה Notifications:.

  4. לוחצים על תקשורת.

  5. בשורה של AlloyDB, חלון זמן לתחזוקה, לוחצים על המתג בעמודה Email.

הגדרת תקופת תחזוקה לדחייה

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

בדרך כלל אי אפשר להגדיר תקופות של דחייה (deny) באשכולות עם מופעים בגרסאות קודמות. אם אתם צריכים להגדיר תקופת סירוב באשכול שלא עודכן מספיק, אתם יכולים לבצע תחזוקה בשירות עצמי כדי לעדכן את האשכול.

תקופות דחייה קיימות לא חוסמות תחזוקה בשירות עצמי.

הגדרת חלונות סירוב לעבודות תחזוקה

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

תאריכי ההתחלה והסיום צריכים להיות בפורמט הבא:

  • ‫YYYY-MM-DD: מציין תאריך ספציפי

תאריך ההתחלה, תאריך הסיום והשעה הם לפי אזור הזמן UTC.

gcloud

כדי להשתמש ב-ה-CLI של gcloud, אפשר להתקין ולהפעיל את Google Cloud CLI, או להשתמש ב-Cloud Shell.

כדי להוסיף תקופה שבה אסור לבצע תחזוקה באשכול AlloyDB, מריצים את הפקודה gcloud alloydb clusters update עם הדגלים deny-maintenance-period-start-date, deny-maintenance-period-end-date ו-deny-maintenance-period-time:

gcloud alloydb clusters update CLUSTER_ID \
   --region LOCATION_ID \
   --deny-maintenance-period-start-date START_DATE \
   --deny-maintenance-period-end-date END_DATE \
   --deny-maintenance-period-time TIME

מחליפים את מה שכתוב בשדות הבאים:

  • ‫CLUSTER_ID: האשכול שרוצים להגדיר עבור התקופה ללא תחזוקה.
  • ‫LOCATION_ID: האזור שבו נמצא האשכול הזה Google Cloud , לדוגמה us-central1.
  • ‫START_DATE: תאריך ההתחלה של התקופה ללא תחזוקה בפורמט YYYY-MM-DD UTC.
  • ‫END_DATE: סוף התקופה ללא תחזוקה בפורמט YYYY-MM-DD UTC.
  • ‫TIME: השעה של התקופה ללא תחזוקה בפורמט HH:MM UTC. השעות מיוצגות בפורמט של 24 שעות, והערכים נעים בין 00:00 ל-23:59 – לדוגמה, 16:45.

REST v1

בדוגמה הזו מוסיפים תקופת תחזוקה של דחייה לאשכול קיים. רשימה מלאה של הפרמטרים של הקריאה הזו מופיעה במאמר Method: projects.locations.clusters.instances.patch.

לפני שמשתמשים בנתוני הבקשה, צריך להחליף את הנתונים הבאים:

  • ‫CLUSTER_ID: האשכול שרוצים להגדיר עבור התקופה ללא תחזוקה.
  • ‫PROJECT_ID: מזהה הפרויקט שבו נמצא האשכול.
  • ‫LOCATION_ID: האזור שבו נמצא האשכול הזה Google Cloud , לדוגמה us-central1.
  • ‫START_YEAR: השנה שבה מתחילה התקופה ללא עלות תחזוקה בפורמט YYYY.
  • ‫START_MONTH: החודש שבו מתחילה התקופה ללא עלות תחזוקה, בפורמט MM. אפשר להוסיף אפס מוביל לחודשים עם ספרה אחת – לדוגמה, גם 2 וגם 02 הם ערכים תקינים לחודש פברואר.
  • ‫START_DAY: היום שבו מתחילה התקופה ללא תחזוקה בפורמט DD. אפשר להוסיף אפס מוביל לימים שמיוצגים בספרה אחת. לדוגמה, גם 1 וגם 01 הם ערכים תקינים ליום הראשון בחודש.
  • ‫END_YEAR: השנה שבה מסתיימת התקופה ללא עלות תחזוקה, בפורמט YYYY.
  • ‫END_MONTH: החודש שבו מסתיימת תקופת הפטור מתחזוקה בפורמט MM.
  • ‫END_DAY: היום שבו מסתיימת תקופת השימוש ללא תחזוקה, בפורמט DD.
  • ‫HOUR(S): השעה של התקופה ללא תחזוקה בפורמט של 24 שעות, לדוגמה: 16. אם השעה היא חד-ספרתית, אפשר להוסיף אפס מוביל או לא להוסיף אותו. לדוגמה, גם 2 וגם 02 הם ערכים תקינים.
  • ‫MINUTE(S): הדקה של התקופה ללא תחזוקה, שמקבלת ערכים מ-0 עד 59. לדוגמה, 45. אפשר להוסיף אפס מוביל לדקות חד-ספרתיות – 7 ו-07 הם ערכים תקינים.

כדי להוסיף תקופת תחזוקה שבה נדחות בקשות, משתמשים בבקשת PATCH הבאה:

PATCH https://alloydb.googleapis.com/v1/{cluster.name=projects/PROJECT_ID/locations/LOCATION_ID/clusters/CLUSTER_ID?update_mask=maintenance_update_policy.deny_maintenance_periods}

פרמטר השאילתה maintenance_update_policy.deny_maintenance_periods אומר ל-API לעדכן את השדה denyMaintenancePeriods בתוך הבלוק maintenanceUpdatePolicy.

תוכן בקשת ה-JSON נראה כך:

"maintenanceUpdatePolicy": {
 "denyMaintenancePeriods": [
   {
     "startDate": {
       "year": START_YEAR,
       "month": START_MONTH,
       "day": START_DAY
     },
     "endDate": {
       "year": END_YEAR,
       "month": END_MONTH,
       "day": END_DAY
     },
     "time": {
       "hours": TIME
       "minutes": TIME
     }
   }
 ]
},

דחיית תחזוקה מתוכננת

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

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

כדי לעזור בהחלת עדכונים קריטיים, המערכת בדרך כלל לא מאפשרת להגדיר תקופת דחייה כדי לדלג על יותר מאירוע תחזוקה אחד, ובמקרים נדירים עשויה להחיל תחזוקת חירום מחוץ להעדפות התחזוקה שהוגדרו.

הסרת תקופת תחזוקה שבה נדחתה בקשה מאשכול

אפשר להסיר את תקופת ההמתנה לביטול בכל שלב.

gcloud

כדי להשתמש ב-ה-CLI של gcloud, אפשר להתקין ולהפעיל את Google Cloud CLI, או להשתמש ב-Cloud Shell.

כדי להסיר תקופת תחזוקה שנדחתה מאשכול AlloyDB, מריצים את הפקודה gcloud alloydb clusters update עם הדגל remove-deny-maintenance-period:

gcloud alloydb clusters update CLUSTER_ID --region LOCATION_ID  --remove-deny-maintenance-period

מחליפים את מה שכתוב בשדות הבאים:

  • ‫CLUSTER_ID: האשכול שממנו רוצים להסיר את תקופת ההמתנה לדחיית תחזוקה.
  • ‫LOCATION_ID: האזור שבו נמצא האשכול הזה Google Cloud —לדוגמה us-central1.

REST v1

בדוגמה הזו מוסרת תקופת תחזוקה שבה נדחית תחזוקה מאשכול AlloyDB. רשימה מלאה של הפרמטרים של הקריאה הזו מופיעה במאמר Method: projects.locations.clusters.patch.

לפני שמשתמשים בנתוני הבקשה, צריך להחליף את הנתונים הבאים:

  • ‫CLUSTER_ID: המזהה של האשכול שרוצים להוסיף לו תקופת תחזוקה של דחייה.
  • ‫PROJECT_ID: מזהה הפרויקט שבו נמצא האשכול.
  • ‫LOCATION_ID: האזור שבו נמצא האשכול הזה Google Cloud , לדוגמה us-central1.

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

PATCH https://alloydb.googleapis.com/v1/{cluster.name=projects/PROJECT_ID/locations/LOCATION_ID/clusters/CLUSTER_ID?update_mask=maintenance_update_policy.deny_maintenance_periods}

פרמטר השאילתה maintenance_update_policy.deny_maintenance_periods אומר ל-API לעדכן את השדה denyMaintenancePeriods בתוך הבלוק maintenanceUpdatePolicy.

תוכן בקשת ה-JSON נראה כך:

{}

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