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

בדף הזה מוסבר איך מגדירים חלונות תחזוקה למופעים של Cloud Data Fusion.

חלונות תחזוקה נתמכים במופעי Cloud Data Fusion בגרסה 6.8.0 ואילך.

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

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

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

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

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

כדי לשמור על אבטחת המערכת ועל עמידה בתקנות, Cloud Data Fusion מבצע פעולות תחזוקה באופן קבוע. הפעולות האלה כוללות החלה של עדכונים קריטיים ותיקוני אבטחה כדי לצמצם את נקודות החולשה ולהגן על נתוני המשתמשים. חלונות תחזוקה מתוזמנים מבטיחים שהעדכונים יוחלו בצורה יעילה, תוך שמירה על תקינות המערכת וצמצום השיבושים במכונות ובצינורות (pipeline) של ביצועים.

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

    • יכול להיות שממשק Cloud Data Fusion Studio לא יהיה זמין באופן זמני.
    • יכול להיות שהדבר ישפיע על ההפעלה של צינור עיבוד הנתונים ויגרום לכשל.
    • יכול להיות שהשירותים של Cloud Data Fusion מושבתים באופן זמני, ולכן קריאות ה-API נכשלות.
    • יכול להיות שמופעים לא יפעלו באופן מלא למשך שעה במהלך חלון הזמן לתחזוקה. מומלץ להגדיר חלונות תחזוקה כשהצינורות לא פועלים או לא מתוזמנים לפעול.

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

המסוף

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

  1. עוברים לדף Instances של Cloud Data Fusion ולוחצים על Create instance.

    יצירת מופע

  2. מזינים שם מכונה ומהדורה. מידע נוסף על כל שדה זמין במאמר יצירת מופע.
  3. מרחיבים את הקטע אפשרויות מתקדמות.
  4. מרחיבים את הקטע תחזוקה ופועלים לפי השלבים הבאים:
    1. מסמנים את תיבת הסימון הפעלת חלון זמן לתחזוקה.
    2. בשדה Start time, מזינים שעה בפורמט נתמך.
    3. ברשימה TimeZone, בוחרים אזור זמן.
    4. ברשימות ימים ומשך, בוחרים את הימים בשבוע ואת משך הזמן של חלון ההמרה. מידע נוסף על ההגדרות האלה זמין במאמר בנושא פעולות תחזוקה.
    5. לוחצים על יצירה.

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

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

  1. מגדירים את Instance באמצעות instance.create API:
{
  "name": string,
  "description": string,
  
  
  "maintenancePolicy": {
    "maintenanceWindow": {
      "recurringTimeWindow": {
        "window": {
            "startTime": "START_TIME",
            "endTime": "END_TIME"
        },
        "recurrence": "MAINTENANCE_RECURRENCE"
      }
    },
  }
}

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

  • START_TIME: שעת ההתחלה של חלון הזמן, בפורמט RFC 3339.
  • END_TIME: שעת הסיום של חלון הזמן, בפורמט RFC 3339.
  • MAINTENANCE_RECURRENCE: RRULE לציון המחזוריות של חלון התחזוקה. ‫Cloud Data Fusion תומך רק בפורמטים הבאים:

    • FREQ=WEEKLY;BYDAY=SU,MO,TU,WE,TH,FR,SA או BYDAY=SU,MO,TU,WE,TH,FR,SA,MO;FREQ=WEEKLY. ההגדרה הזו מציינת את התדירות השבועית של החלון בימים שנבחרו, החל מ-startTime ולמשך הזמן שצוין.

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

בדוגמה הבאה נוצר מופע עם חלון זמן לתחזוקה של שש שעות בין 10:00 ל-16:00 (שעון UTC) בימי שבת וראשון בכל שבוע. מידע נוסף זמין במאמרי העזרה בנושא API של מופעים.

// POST https://datafusion.googleapis.com/v1/projects/example-project/locations/us-central1/instances?instanceID=example-instance

{
  "maintenancePolicy": {
      "maintenanceWindow": {
          "recurringTimeWindow": {
              "window": {
                  "startTime": "2024-01-01T10:00:00Z",
                  "endTime": "2024-01-01T16:00:00Z",
              },
              "recurrence": "FREQ=WEEKLY;BYDAY=SA,SU"
          }
      },
  }
}

gcloud

אפשר לציין את חלון הזמנים לתחזוקה כשיוצרים מכונה באמצעות הפקודה gcloud beta data-fusion instances create.

צריך להגדיר את הפרמטרים הבאים לחלון זמן לתחזוקה:

  • --maintenance-window-start מגדיר את שעת ההתחלה של חלון הזמן.
  • --maintenance-window-end מגדיר את שעת הסיום של חלון הזמנים.
  • --maintenance-window-recurrence מגדיר RRULE לחזרה של חלון התחזוקה.
gcloud beta data-fusion instances create INSTANCE_NAME \
    --project=PROJECT_NAME \
    --location=LOCATION \
    --maintenance-window-start=START_TIME \
    --maintenance-window-end=END_TIME \
    --maintenance-window-recurrence=MAINTENANCE_RECURRENCE

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

  • INSTANCE_NAME: השם של המכונה.
  • PROJECT_NAME: שם הפרויקט.
  • LOCATION: השם של האזור של המכונה.
  • START_TIME: שעת ההתחלה של חלון הזמן בפורמט הקלט של התאריך והשעה. המערכת משתמשת רק בשעה שצוינה ביום, ומתעלמת מהתאריך שצוין.
  • END_TIME: שעת הסיום של חלון הזמן בפורמט הקלט של התאריך והשעה. המערכת משתמשת רק בשעה שצוינה ביום, ומתעלמת מהתאריך שצוין. התאריך והשעה שצוינו צריכים להיות אחרי שעת ההתחלה.
  • MAINTENANCE_RECURRENCE: RRULE לציון המחזוריות של חלון התחזוקה. ‫Cloud Data Fusion תומך רק בפורמטים הבאים:

    • FREQ=WEEKLY;BYDAY=SU,MO,TU,WE,TH,FR,SA או BYDAY=SU,MO,TU,WE,TH,FR,SA,MO;FREQ=WEEKLY. ההגדרה הזו מציינת את החזרה השבועית של החלון בימים שנבחרו, החל מהשעה --maintenance-window-start ולמשך הזמן שצוין.

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

הפקודה הבאה יוצרת מופע עם חלון זמן לתחזוקה של שש שעות בין השעות 12:00 ל-18:00 (UTC) בימי שבת וראשון בכל שבוע.

gcloud beta data-fusion instances create example-instance \
    --project='example-project' \
    --location='us-east1' \
    --maintenance-window-start='2024-01-01T12:00:00Z' \
    --maintenance-window-end='2024-01-01T18:00:00Z' \
    --maintenance-window-recurrence='FREQ=WEEKLY;BYDAY=SA,SU'

עדכון חלונות התחזוקה של מופע

המסוף

כדי לעדכן את חלון זמן לתחזוקה במופע קיים במסוףGoogle Cloud :

  1. עוברים לדף Instances ב-Cloud Data Fusion.

    כניסה לדף Instances

  2. לוחצים על שם המכונה כדי לראות את פרטי המכונה.

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

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

    1. מסמנים את תיבת הסימון הפעלת חלון זמן לתחזוקה.
    2. בשדה Start time, מזינים שעה בפורמט נתמך.
    3. ברשימה TimeZone, בוחרים אזור זמן.
    4. ברשימות ימים ומשך, בוחרים את הימים בשבוע ואת משך הזמן של החלון. מידע נוסף על ההגדרות האלה זמין במאמר בנושא פעולות תחזוקה.
  5. לוחצים על Save.

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

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

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

יוצרים בקשת API באופן הבא:

  1. בפרמטר updateMask, מציינים את המסכה maintenance_policy.
  2. בגוף הבקשה, מציינים את חלון זמן לתחזוקה בהגדרת מדיניות התחזוקה:
{
  "maintenancePolicy": {
    "maintenanceWindow": {
        "recurringTimeWindow": {
          "window": {
              "startTime": "START_TIME",
              "endTime": "END_TIME"
          },
          "recurrence": "MAINTENANCE_RECURRENCE"
        }
    },
  }
}

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

בדוגמה הבאה מתעדכנת ההגדרה של מדיניות התחזוקה של המופע עם חלון זמן לתחזוקה של ארבע שעות בין 11:00 ל-15:00 (UTC) בימי שישי, שבת וראשון בכל שבוע.

// PATCH https://datafusion.googleapis.com/v1/projects/example-project/locations/us-central1/instances/example-instance?updateMask=maintenance_policy

{
"maintenancePolicy": {
  "maintenanceWindow": {
    "recurringTimeWindow": {
      "window": {
          "startTime": "2024-01-01T11:00:00Z",
          "endTime": "2024-01-01T15:00:00Z",
        },
      "recurrence": "FREQ=WEEKLY;BYDAY=FR,SA,SU"
    }
  },
}
}

gcloud

אפשר לעדכן את חלון הזמן לתחזוקה של מכונה באמצעות הפקודה gcloud beta data-fusion instances update.

צריך להגדיר את הפרמטרים הבאים לחלון זמן לתחזוקה:

  • --maintenance-window-start מגדיר את שעת ההתחלה של חלון הזמן.
  • --maintenance-window-end מגדיר את שעת הסיום של חלון הזמנים.
  • --maintenance-window-recurrence מגדיר RRULE לחזרה של חלון התחזוקה.
gcloud beta data-fusion instances update INSTANCE_NAME \
    --project=PROJECT_NAME \
    --location=LOCATION \
    --maintenance-window-start=START_TIME \
    --maintenance-window-end=END_TIME \
    --maintenance-window-recurrence=MAINTENANCE_RECURRENCE

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

  • INSTANCE_NAME: השם של המכונה.
  • PROJECT_NAME: שם הפרויקט.
  • LOCATION: השם של האזור של המכונה.
  • START_TIME: שעת ההתחלה של חלון הזמן בפורמט הקלט של התאריך והשעה. המערכת משתמשת רק בשעה שצוינה ביום, ומתעלמת מהתאריך שצוין.
  • END_TIME: שעת הסיום של חלון הזמן בפורמט הקלט של התאריך והשעה. המערכת משתמשת רק בשעה שצוינה ביום, ומתעלמת מהתאריך שצוין. התאריך והשעה שצוינו צריכים להיות אחרי שעת ההתחלה.
  • MAINTENANCE_RECURRENCE: RRULE לציון המחזוריות של חלון התחזוקה. ‫Cloud Data Fusion תומך רק בפורמטים הבאים:

    • FREQ=WEEKLY;BYDAY=SU,MO,TU,WE,TH,FR,SA או BYDAY=SU,MO,TU,WE,TH,FR,SA,MO;FREQ=WEEKLY. ההגדרה הזו מציינת את החזרה השבועית של החלון בימים שנבחרו, החל מהשעה --maintenance-window-start ולמשך הזמן שצוין.

הפקודה הבאה מעדכנת את המופע example-instance עם חלון זמן לתחזוקה של שש שעות בין השעות 12:00 ל-18:00 (UTC) בימי שבת וראשון בכל שבוע.

gcloud beta data-fusion instances update example-instance \
    --project='example-project' \
    --location='us-east1' \
    --maintenance-window-start='2024-01-01T12:00:00Z' \
    --maintenance-window-end='2024-01-01T18:00:00Z' \
    --maintenance-window-recurrence='FREQ=WEEKLY;BYDAY=SA,SU'

הגדרת חלון הזמנים לתחזוקה ואת המחזוריות (RRULE)

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

כשמגדירים חזרה על הפעולה, חשוב לזכור ש-RRULE פועל לפי ימים ב-UTC, ולכן צריך לבצע התאמות בהתאם אם אזור הזמן שלכם שונה. לדוגמה, אם אזור הזמן שלכם הוא PDT (UTC-7) ואתם רוצים שחלון זמן לתחזוקה יתחיל בשעה 21:00 בימי רביעי באזור הזמן שלכם (שמקביל לשעה 4:00 UTC בימי חמישי), צריך לציין TH במקום WE באפשרות BYDAY של ה-RRULE.

הסרת חלון זמן לתחזוקה של מופע

המסוף

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

  1. עוברים לדף Instances ב-Cloud Data Fusion.

    כניסה לדף Instances

  2. לוחצים על שם המכונה כדי לראות את פרטי המכונה.

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

  4. כדי להסיר את חלון זמן לתחזוקה מהמכונה, מבטלים את הסימון בתיבה Enable maintenance window.

  5. לוחצים על Save.

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

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

// PATCH https://datafusion.googleapis.com/v1/projects/example-project/locations/us-central1/instances/example-instance?updateMask=maintenance_policy

{
    "maintenancePolicy": {}
}

gcloud

כדי להסיר את חלון זמן לתחזוקה ממכונה, משתמשים בפקודה gcloud beta data-fusion instances update עם הדגל --clear-maintenance-window.

gcloud beta data-fusion instances update INSTANCE_NAME \
    --project=PROJECT_NAME \
    --location=LOCATION \
    --clear-maintenance-window

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

  • INSTANCE_NAME: השם של המכונה.
  • PROJECT_NAME: שם הפרויקט.
  • LOCATION: השם של האזור של המכונה.

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