אירועים ומדיניות בנושא תחזוקה

כדי לשמור על המכונות ב-Managed Lustre ב-Google Cloud מעודכנות, Google Cloud אנחנו מבצעים בהן תחזוקה תקופתית. אירועי תחזוקה יכולים לכלול עדכונים של התוכנה או התשתית הבסיסיות. האירועים האלה עלולים לגרום להשבתה זמנית, שבמהלכה פעולות קלט/פלט (I/O) למופע עלולות להפסיק להגיב. פעולות הקלט/פלט שמושפעות מהתחזוקה יתחדשו כשהיא תסתיים. זמן ההשבתה הוא בדרך כלל בין 2 ל-25 דקות.

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

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

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

מכונות בקנה מידה קיצוני

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

מידע על מדיניות תחזוקה

אפשר להגדיר מדיניות תחזוקה בכל מופע של Managed Lustre. מדיניות תחזוקה כוללת את הפרטים הבאים:

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

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

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

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

לדף Communication

אחרי ההרשמה, יישלחו ההתראות הבאות:

  • הודעה מראש: נשלחת 7 עד 14 ימים לפני אירוע תחזוקה מתוזמן, או אחרי שהלקוח תזמן מחדש אירוע תחזוקה.
  • בוטל: נשלח אם אירוע מתוזמן של תחזוקה בוטל על ידי Google או אם הלקוח שינה את התזמון שלו.
  • בתהליך: נשלח כשאירוע תחזוקה מתחיל.
  • הושלם: נשלח כשאירוע תחזוקה מסתיים.

אפשר גם לראות את לוחות הזמנים הקרובים לתחזוקה בדף פרטי המופע ב Google Cloud מסוף, או להשתמש ב-Cloud Logging כדי לראות את יומני התחזוקה.

הגדרת חלון זמן לתחזוקה

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

מסוף Google Cloud

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

gcloud

כדי ליצור מכונה עם חלון תחזוקה, מציינים את הדגל --maintenance-policy-weekly-windows:

gcloud lustre instances create INSTANCE_ID \
  --per-unit-storage-throughput=PER_UNIT_STORAGE_THROUGHPUT \
  --capacity-gib=CAPACITY_GIB \
  --filesystem=FS_NAME \
  --location=LOCATION \
  --network=NETWORK_PATH \
  --maintenance-policy-weekly-windows='dayOfWeek=DAY,startTime={START_TIME}'

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

  • INSTANCE_ID: המזהה של מכונת Managed Lustre.
  • PER_UNIT_STORAGE_THROUGHPUT הוא רמת הביצועים ב-MBps לכל TiB. הערכים התקפים הם 0,‏ 125,‏ 250,‏ 500 ו-1000. כדי לציין את [הרמה הדינמית][dynamic-tier], צריך להגדיר את הערך 0 ולכלול את הדגל --dynamic-tier-options-mode=DEFAULT_CACHE.
  • CAPACITY: הקיבולת של המופע ב-GiB.
  • FS_NAME: השם של מערכת הקבצים.
  • LOCATION: המיקום של מופע Managed Lustre.
  • NETWORK_PATH: הנתיב המלא של רשת ה-VPC שאליה שייך המופע, בפורמט projects/PROJECT_ID/global/networks/NETWORK. איך מגדירים רשת VPC
  • DAY: היום בשבוע של חלון התחזוקה (למשל, TUESDAY).
  • START_TIME: שעת ההתחלה של חלון התחזוקה לפי שעון UTC בפורמט של מילון (למשל, {hours=1,minutes=0}).

פרטים נוספים על יצירת מופע זמינים במאמר יצירת מופע מנוהל של Lustre.

‫API בארכיטקטורת REST

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

דוגמה לאובייקט maintenancePolicy:

"maintenancePolicy": {
  "weeklyMaintenanceWindows": [
    {
      "dayOfWeek": "DAY",
      "startTime": {
        "hours": HOURS,
        "minutes": MINUTES
      }
    }
  ]
}

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

  • DAY: היום בשבוע שבו חל חלון התחזוקה (למשל, TUESDAY).
  • HOURS: השעה ביום שבה מתחיל חלון התחזוקה (לדוגמה, 1).
  • MINUTES: הדקה בשעה של זמן ההתחלה של חלון התחזוקה (לדוגמה, 0).

הגדרת חלון החרגה

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

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

מסוף Google Cloud

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

gcloud

כדי ליצור מכונה עם חלון החרגה, מציינים את הדגל --maintenance-policy-exclusion-window:

gcloud lustre instances create INSTANCE_ID \
  --per-unit-storage-throughput=PER_UNIT_STORAGE_THROUGHPUT \
  --capacity-gib=CAPACITY_GIB \
  --filesystem=FILESYSTEM \
  --location=LOCATION \
  --network=NETWORK_PATH \
  --maintenance-policy-exclusion-window='startDate={START_DATE},endDate={END_DATE},time={TIME}'

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

  • INSTANCE_ID: המזהה של מכונת Managed Lustre.
  • PER_UNIT_STORAGE_THROUGHPUT הוא רמת הביצועים ב-MBps לכל TiB. הערכים התקפים הם 0,‏ 125,‏ 250,‏ 500 ו-1000. כדי לציין את [הרמה הדינמית][dynamic-tier], צריך להגדיר את הערך 0 ולכלול את הדגל --dynamic-tier-options-mode=DEFAULT_CACHE.
  • CAPACITY: הקיבולת של המופע ב-GiB.
  • FS_NAME: השם של מערכת הקבצים.
  • LOCATION: המיקום של מופע Managed Lustre.
  • NETWORK_PATH: הנתיב המלא של רשת ה-VPC שאליה שייך המופע, בפורמט projects/PROJECT_ID/global/networks/NETWORK. איך מגדירים רשת VPC
  • START_DATE: תאריך ההתחלה של חלון ההחרגה מתחזוקה בפורמט מילון (למשל, {day=08,month=06,year=2026}). כדי להגדיר חזרה שנתית, משמיטים את המפתח year.
  • END_DATE: תאריך הסיום של חלון ההחרגה של התחזוקה בפורמט מילון (לדוגמה, {day=08,month=06,year=2026}). כדי להגדיר חזרה שנתית, משמיטים את המפתח year.
  • TIME: זמן ההתחלה וזמן הסיום של חלון ההחרגה לפי שעון UTC, בפורמט של מילון (למשל, {hours=1,minutes=0}).

‫API בארכיטקטורת REST

הדוגמה הבאה היא של אובייקט maintenancePolicy עם חלון החרגה:

"maintenancePolicy": {
  "maintenanceExclusionWindow": [
    {
      "startDate": {
        "day": START_DAY,
        "month": START_MONTH,
        "year": START_YEAR
      },
      "endDate": {
        "day": END_DAY,
        "month": END_MONTH,
        "year": END_YEAR
      },
      "time": {
        "hours": HOURS,
        "minutes": MINUTES
      }
    }
  ]
}

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

  • START_YEAR: השנה שבה מתחיל חלון ההחרגה (לדוגמה, 2026). אם לא מציינים את השדה הזה ואת END_YEAR, נוצר חלון שחוזר על עצמו מדי שנה.
  • START_MONTH: החודש של תאריך ההתחלה של חלון ההחרגה (לדוגמה, 12).
  • START_DAY: היום שבו מתחיל חלון ההחרגה (לדוגמה, 24).
  • END_YEAR: השנה של תאריך הסיום של חלון ההחרגה (לדוגמה, 2027). אם משמיטים את השדה הזה ואת START_YEAR, נוצר חלון שחוזר על עצמו מדי שנה.
  • END_MONTH: החודש של תאריך הסיום של חלון ההחרגה (לדוגמה, 1).
  • END_DAY: היום של תאריך הסיום של חלון ההחרגה (לדוגמה, 7).
  • HOURS: השעה ביום של חלון הזמן להחרגה (לדוגמה, 0).
  • MINUTES: הדקה בשעה של זמן חלון ההחרגה (לדוגמה, 0).

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

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

מסוף Google Cloud

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

gcloud

בדוגמה הבאה של gcloud מעדכנים את מדיניות התחזוקה של מופע:

gcloud lustre instances update INSTANCE_ID \
--location=LOCATION \
--maintenance-policy-weekly-windows='dayOfWeek=DAY,startTime={START_TIME}'

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

  • INSTANCE_ID: המזהה של מכונת Managed Lustre.
  • LOCATION: המיקום של מכונת Managed Lustre.
  • DAY: היום בשבוע של חלון התחזוקה (למשל, TUESDAY).
  • START_TIME: שעת ההתחלה של חלון התחזוקה לפי שעון UTC בפורמט של מילון (למשל, {hours=1,minutes=0}).

‫API בארכיטקטורת REST

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

בדוגמה הבאה של curl מעדכנים את מדיניות התחזוקה של מופע:

curl -X PATCH -H "Authorization: Bearer $(gcloud auth print-access-token)" -H "Content-Type: application/json" -d '{
  "maintenancePolicy": {
    "weeklyMaintenanceWindows": [
      {
        "dayOfWeek": "DAY",
        "startTime": {
          "hours": HOURS,
          "minutes": MINUTES
        }
      }
    ]
  }
}' "https://lustre.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/instances/INSTANCE_ID?updateMask=maintenancePolicy"

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

  • PROJECT_ID: מזהה הפרויקט ב- Google Cloud .
  • LOCATION המיקום של מכונת Managed Lustre.
  • INSTANCE_ID המזהה של מכונת Managed Lustre.
  • DAY: היום בשבוע של חלון התחזוקה (למשל, TUESDAY).
  • HOURS השעה ביום שבה מתחיל חלון הזמן לתחזוקה (לדוגמה, 3).
  • MINUTES הדקה בשעה של זמן ההתחלה של חלון התחזוקה (לדוגמה, 45).

הסרה של מדיניות תחזוקה

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

מסוף Google Cloud

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

gcloud

משתמשים בפקודה gcloud lustre instances update עם הדגלים --clear-maintenance-policy-weekly-windows ו---clear-maintenance-policy-exclusion-window:

gcloud lustre instances update INSTANCE_ID \
--location=LOCATION \
--clear-maintenance-policy-weekly-windows \
--clear-maintenance-policy-exclusion-window

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

  • INSTANCE_ID: המזהה של מכונת Managed Lustre.
  • LOCATION: המיקום של מכונת Managed Lustre.

‫API בארכיטקטורת REST

כדי להסיר מדיניות תחזוקה באמצעות API ל-REST, משתמשים ב-method‏ instances.patch עם אובייקט maintenancePolicy ריק ופרמטר השאילתה updateMask שמוגדר ל-maintenancePolicy:

curl -X PATCH -H "Authorization: Bearer $(gcloud auth print-access-token)" -H "Content-Type: application/json" -d '{
  "maintenancePolicy": {}
}' "https://lustre.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/instances/INSTANCE_ID?updateMask=maintenancePolicy"

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

  • PROJECT_ID: מזהה הפרויקט ב- Google Cloud .
  • LOCATION: המיקום של מכונת Managed Lustre.
  • INSTANCE_ID: המזהה של מכונת Managed Lustre.

צפייה ביומני התחזוקה

ב-Managed Lustre נעשה שימוש ב-Cloud Logging כדי לרשום ביומן אירועי תחזוקה, כולל סוגי הפעילויות הבאים:

  • LustreAdvancedNotification: נקבעו עבודות תחזוקה למכונה.
  • LustreOngoingNotification: התחילו עבודות תחזוקה במכונה. אחרי שהפעולה תושלם, יתועד אירוע נוסף של LustreOngoingNotification, הפעם עם is_completed=true.
  • LustreCancelledNotification: ביטלנו את עבודות התחזוקה.

אפשר לצפות ביומני תחזוקה באמצעות כלי Logs Explorer או באמצעות Google Cloud CLI.

Logs Explorer

כדי לראות את יומני התחזוקה של Managed Lustre באמצעות Logs Explorer:

  1. במסוף Google Cloud , נכנסים לדף Cloud Logging > Logs Explorer:

    כניסה לדף Logs Explorer

  2. מזינים את המסנן הבא בעורך השאילתות ולוחצים על Run query:

    resource.type="lustre.googleapis.com/Instance"
    resource.labels.instance_id="INSTANCE_ID"
    resource.labels.location="LOCATION"
    logName="projects/PROJECT_ID/logs/lustre.googleapis.com%2Fmaintenance"
    

‫CLI של gcloud

כדי להציג את יומני התחזוקה באמצעות Google Cloud CLI, מריצים את הפקודה gcloud logging read:

gcloud logging read 'resource.type="lustre.googleapis.com/Instance" resource.labels.instance_id="INSTANCE_ID" resource.labels.location="LOCATION" logName="projects/PROJECT_ID/logs/lustre.googleapis.com%2Fmaintenance"' --project=PROJECT_ID

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

  • INSTANCE_ID: המזהה של מכונת Managed Lustre.
  • LOCATION: האזור שבו נמצאת המכונה.
  • PROJECT_ID: מזהה הפרויקט שבו נמצא המופע.

קביעת מועד חדש לתחזוקה

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

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

כדי לשנות את המועד של עבודות התחזוקה:

gcloud

כדי להתחיל את אירוע התחזוקה בהקדם האפשרי:

gcloud lustre instances reschedule-maintenance INSTANCE_ID \
--location=LOCATION \
--reschedule-type=immediately

כדי לתזמן מחדש את התחזוקה לחלון הזמין הבא:

gcloud lustre instances reschedule-maintenance INSTANCE_ID \
--location=LOCATION \
--reschedule-type=next-available-window

כדי לקבוע מועד חדש לתחזוקה לשעה ספציפית:

gcloud lustre instances reschedule-maintenance INSTANCE_ID \
--location=LOCATION \
--reschedule-type=by-time \
--reschedule-schedule-time=TIMESTAMP

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

  • INSTANCE_ID: המזהה של מכונת Managed Lustre.
  • LOCATION: המיקום של מכונת Managed Lustre.
  • TIMESTAMP: שעת ההתחלה בפורמט RFC 3339 (לדוגמה, 2026-04-30T10:00:00Z). השעה הזו לא יכולה להיות מאוחרת יותר מ-28 ימים מהשעה המקורית שנקבעה.

‫API בארכיטקטורת REST

משתמשים בשיטה instances.rescheduleMaintenance.

בדוגמה הבאה curl, אירוע התחזוקה מתחיל בהקדם האפשרי:

curl -X POST -H "Authorization: Bearer $(gcloud auth print-access-token)" -H "Content-Type: application/json" -d '{
  "reschedule": {
    "rescheduleType": "IMMEDIATELY"
  }
}' "https://lustre.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/instances/INSTANCE_ID:rescheduleMaintenance"

בדוגמה הבאה curl מתוזמן מחדש עדכון לתקופת הזמינות הבאה:

curl -X POST -H "Authorization: Bearer $(gcloud auth print-access-token)" -H "Content-Type: application/json" -d '{
  "reschedule": {
    "rescheduleType": "NEXT_AVAILABLE_WINDOW"
  }
}' "https://lustre.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/instances/INSTANCE_ID:rescheduleMaintenance"

בדוגמה הבאה curl מוגדר מועד חדש לתחזוקה:

curl -X POST -H "Authorization: Bearer $(gcloud auth print-access-token)" -H "Content-Type: application/json" -d '{
  "reschedule": {
    "rescheduleType": "BY_TIME",
    "scheduleTime": "TIMESTAMP"
  }
}' "https://lustre.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/instances/INSTANCE_ID:rescheduleMaintenance"

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

  • PROJECT_ID: מזהה הפרויקט ב- Google Cloud .
  • INSTANCE_ID: המזהה של מכונת Managed Lustre.
  • LOCATION: המיקום של מכונת Managed Lustre.
  • TIMESTAMP: שעת ההתחלה בפורמט RFC 3339 (לדוגמה, 2026-04-30T10:00:00Z). השעה הזו צריכה להיות לא יותר מ-28 ימים אחרי השעה המקורית שנקבעה.