בנוסף להפעלת משימות תיקון לפי דרישה, אפשר ליצור פריסת תיקון כדי להגדיר משימות תיקון שיפעלו אוטומטית לפי לוח זמנים מוגדר.
לכל פריסת תיקון יכול להיות לוח זמנים חד-פעמי, שמריץ עבודת תיקון בתאריך ובשעה ספציפיים, או לוח זמנים חוזר, שמריץ עבודת תיקון במרווח זמן מוגדר.
מסנני מופעים
מאפשרים להחיל תיקון על הרבה מופעים בו-זמנית. המסננים האלה מוחלים על כל משימת תיקון בנפרד בזמן ההפעלה שלה. כך תוכלו לוודא שהשינויים בפרויקט יתועדו בזמן אמת.
לדוגמה, נניח שיוצרים פריסת תיקון כדי להחיל תיקונים על כל המופעים באזור asia-souteast1-b, החל משבועיים מעכשיו. בזמן יצירת התיקון היו באזור 20 מופעים, אבל כמה ימים לאחר מכן נוספו לאזור 40 מופעים חדשים. הסיבה לכך היא שהמסנן מוחל בזמן שהתיקון מתחיל, ולכן כל 60 המופעים מתעדכנים. כך אפשר להוסיף ולהסיר מופעים בלי לעדכן את לוח הזמנים לפריסת תיקוני האבטחה.
לפני שמתחילים
- בודקים את המכסות של OS Config.
-
אם עדיין לא עשיתם את זה, תצטרכו להגדיר אימות.
אימות הוא תהליך שבו מאמתים את הזהות שלכם כדי לקבל גישה לממשקי API ולשירותים של Cloud de Confiance by S3NS . כדי להריץ קוד או דוגמאות מסביבת פיתוח מקומית, אפשר לבצע אימות ל-Compute Engine באחת מהדרכים הבאות:
צריך לבחור את הכרטיסייה הרלוונטית לאופן שבו תכננתם להשתמש בדוגמאות בדף הזה:
המסוף
כשמשתמשים במסוף Cloud de Confiance כדי לגשת לשירותים ולממשקי ה-API, לא צריך להגדיר אימות. Cloud de Confiance by S3NS
gcloud
-
התקינו את ה-CLI של Google Cloud ואז היכנסו ל-CLI של gcloud באמצעות הזהות המאוחדת שלכם. אחרי שנכנסתם לחשבון, אתחלו את ה-CLI של Google Cloud באמצעות הפקודה הבאה:
gcloud init
-
- הגדרת אזור ותחום כברירת מחדל
REST
כדי להשתמש בסביבת פיתוח מקומית בדוגמאות של API בארכיטקטורת REST שבדף הזה, צריך להשתמש בפרטי הכניסה שאתם נותנים ל-CLI של gcloud.
התקינו את ה-CLI של Google Cloud ואז היכנסו ל-CLI של gcloud באמצעות הזהות המאוחדת שלכם.
מידע נוסף מופיע במאמר אימות לשימוש ב-REST במסמכי האימות של Cloud de Confiance .
אפשר לתזמן את עבודות הטלאים באמצעות Cloud de Confiance מסוף, Google Cloud CLI או REST.
הרשאות
לבעלי פרויקט יש גישה מלאה ליצירה ולניהול של פריסות תיקונים. לכל שאר המשתמשים, צריך להעניק הרשאות. אפשר להעניק את אחד מהתפקידים הבאים עם הרשאות מפורטות:
-
roles/osconfig.patchDeploymentAdmin: מכיל הרשאות ליצירה, למחיקה, לקבלת מידע ולרישום של פריסות תיקונים. -
roles/osconfig.patchDeploymentViewer: מכיל הרשאות לגישת קריאה בלבד כדי לקבל ולרשום פריסות של תיקוני אבטחה.
לדוגמה, כדי להעניק למשתמש הרשאת אדמין לגישה לפריסות של תיקוני אבטחה, מריצים את הפקודה הבאה:
gcloud projects add-iam-policy-binding project-id \
--member user:user-id@gmail.com \
--role roles/osconfig.patchDeploymentAdmin
מחליפים את מה שכתוב בשדות הבאים:
-
project-id: מזהה הפרויקט. user-id: שם המשתמש של המשתמש ב-Google Workspace.
יצירת פריסת תיקון
כשיוצרים פריסת תיקון, השם של פריסת התיקון צריך לעמוד בדרישות הבאות:
- כל שם חייב להיות ייחודי בפרויקט
- הוא יכול לכלול רק אותיות קטנות, מספרים ומקפים
- התחלה באות
- השם צריך להסתיים בספרה או באות
- להיות באורך של 1 עד 63 תווים
ב-Google Cloud CLI וב-REST, השם של פריסת התיקון נקרא patch-deployment-id.
אחרי שמתחילים לפרוס תיקון, אפשר לעקוב אחרי התיקונים באמצעות לוח הבקרה של התיקונים. הנתונים יופיעו בלוח הבקרה כ-30 דקות אחרי שתהליך הטלאי יתחיל.
console
- במסוף Cloud de Confiance , עוברים לדף Compute Engine > VM Manager > Patch.
- לוחצים על פריסת תיקון חדשה.
בקטע Target VMs בוחרים את האזור שמכיל את מכונות ה-VM שרוצים להחיל עליהן תיקון. אפשר גם לבחור את כל האזורים.
לדוגמה, כדי להחיל תיקון על מכונות וירטואליות ספציפיות באזורים שבחרתם, מזינים את שם המסנן ואת מסנני התוויות באופן דומה לזה:
- קידומת שם:
test- - תוויות:
env=devו-app=web
- קידומת שם:
בקטע Patch configuration (הגדרת תיקון), מגדירים את התיקון.
- מציינים שם לתיקון.
- בוחרים את העדכונים הנדרשים למערכת ההפעלה. מידע נוסף זמין במאמר מה כלול בעבודת תיקון של מערכת הפעלה.
בקטע Scheduling (תזמון), מבצעים את הפעולות הבאות:
- בוחרים לוח זמנים. אתם יכולים לתזמן עבודת תיקון חד-פעמית או עבודות תיקון חוזרות.
- (אופציונלי) מגדירים משך או חלון זמן לתחזוקה.
בקטע Rollout options (אפשרויות הפצה), מגדירים את אפשרויות הפצת הטלאי:
- בוחרים אם להחיל תיקון על אזור אחד בכל פעם או על כמה אזורים בו-זמנית.
- מגדירים תקציב שיבושים. תקציב ההפרעות הוא מספר או אחוז המכונות הווירטואליות באזור שרוצים להפריע להן בו-זמנית בתהליך תיקון הבאגים.
(אופציונלי) בקטע אפשרויות מתקדמות, אפשר לבצע את הפעולות הבאות:
- בוחרים באפשרות להפעלה מחדש.
- מעלים סקריפטים לפני התיקון ואחרי התיקון. מידע נוסף על סקריפטים לפני ואחרי תיקון זמין במאמר בנושא הגדרת סקריפטים לפני ואחרי תיקון.
לוחצים על פריסה.
gcloud
כדי ליצור פריסת תיקון, משתמשים בפקודה os-config patch-deployments create.
gcloud compute os-config patch-deployments create patch-deployment-id \
--file patch-deployment-fileמחליפים את מה שכתוב בשדות הבאים:
-
patch-deployment-id: השם של פריסת התיקון. -
patch-deployment-file: הנתיב לקובץ ה-YAML או ה-JSON שמכיל את ההגדרות של פריסת התיקון.
קבצי YAML לדוגמה לפריסת תיקון
אפשר להשתמש בקובץ ה-YAML לדוגמה הבא כדי ליצור תזמון חוזר לכל המופעים באזורים us-west2-b ו-us-west2-c. המאפיינים של התזמון החוזר:
- תאריך ההתחלה הוא 9 בינואר 2019 בשעה 19:30
- תאריך הסיום הוא 9 בינואר 2020 בשעה 19:30
- אזור הזמן לשימוש הוא America/Los_Angeles
- פועל כל שבוע ביום שלישי
instanceFilter:
zones:
- us-west2-b
- us-west2-c
recurringSchedule:
frequency: WEEKLY
weekly:
dayOfWeek: TUESDAY
timeOfDay:
hours: 19
minutes: 30
timeZone:
id: America/Los_Angeles
startTime: '2019-09-01T12:00:00Z'
endTime: '2020-09-01T12:00:00Z'
REST
ב-API, יוצרים בקשת POST כדי ליצור פריסת תיקון חדשה.
צריך להגדיר באופן מפורש את כל שדות ההגדרה הנדרשים, כפי שמתואר ב<High Priority Term: מאמרי העזרה של ה-API> patchDeployments.create. לדוגמה,
פריסת תיקון עם השדות המינימליים הנדרשים
(מסנן מופעים ותזמון) נראית כך.
מחליפים את project-id במזהה הפרויקט.
POST https://osconfig.googleapis.com/v1/projects/project-id/patchJobs:execute
{
"instanceFilter": instance-filter
// Add one of the following parameters:
"recurringSchedule": schedule
"oneTimeSchedule": schedule
}
מחליפים את מה שכתוב בשדות הבאים:
-
project-id: מזהה הפרויקט. -
instance-filter: פרמטרי הסינון הרצויים. למידע נוסף על מסננים של מופעים, ראו מסננים של מופעים. -
schedule: צריך לספק את הפרמטרoneTimeScheduleאו את הפרמטרrecurringScheduleעם פרטים על פרמטרי התזמון, כמו תאריך, שעה ותדירות להפעלת עבודת התיקון.
דוגמאות
דוגמה 1: יצירת תזמון חד-פעמי להפעלת עבודת תיקון ב-10 בינואר 2020 בשעה 00:00 UTC בכל המכונות באזורים us-west2-b ו-us-west2-c.
{
"instanceFilter":{
"zones":[
"us-west2-b",
"us-west2-c"
]
},
"oneTimeSchedule": {
"executeTime": "2020-01-10T00:00:00Z"
}
}
דוגמה 2: יצירת לוח זמנים חוזר לכל המכונות באזורים us-west2-b ו-us-west2-c. לוח הזמנים החוזר כולל את המפרטים הבאים:
- תאריך ההתחלה הוא 9 בינואר 2019 בשעה 19:30
- תאריך הסיום הוא 9 בינואר 2020 בשעה 19:30
- אזור הזמן לשימוש הוא America/Los_Angeles
- פועל כל שבוע ביום שלישי
POST https://osconfig.googleapis.com/v1/projects/project-id/patchDeployments
{
"instanceFilter":{
"zones":[
"us-west2-b",
"us-west2-c"
]
},
"recurringSchedule":{
"frequency":"WEEKLY",
"weekly":{
"dayOfWeek":"TUESDAY"
},
"timeOfDay":{
"hours":19,
"minutes":30
},
"timeZone":{
"id":"America/Los_Angeles"
},
"startTime":"2019-09-01T12:00:00Z",
"endTime":"2020-09-01T12:00:00Z"
}
}
הצגת רשימה של פריסות תיקונים
console
- במסוף Cloud de Confiance , עוברים לדף Compute Engine > VM Manager > Patch.
- לוחצים על הכרטיסייה פריסות מתוזמנות.
gcloud
משתמשים בפקודה os-config patch-deployments list כדי להציג רשימה של פריסות תיקונים.
gcloud compute os-config patch-deployments list
הפקודה הזו מחזירה את כל פריסות הטלאים. הפלט אמור להיראות כך:
NAME LAST_RUN NEXT_RUN FREQUENCY first-deployment 2019-12-18T00:07:00.738Z --- Once: Scheduled for 2019-12-18T00:07:00.000Z my-deployment1 2020-01-05T14:00:00.228Z 2020-01-12T14:00:00Z Recurring - Weekly my-deployment2 --- 2020-01-15T05:30:00Z Recurring - Monthly on specific date(s)
אפשר להשתמש בדגלים נוספים כדי להגביל את החיפוש ולעצב אותו.
לדוגמה, כדי להציג את 10 פריסות הטלאים הראשונות בדפים של 2, מריצים את הפקודה הבאה. מחליפים את project-id במזהה הפרויקט.
gcloud compute os-config patch-deployments list --limit 10 --page-size 2
REST
ב-API, יוצרים בקשת GET ל-method patchDeployments.list. מחליפים את project-id במזהה הפרויקט.
GET https://osconfig.googleapis.com/v1/projects/project-id/patchDeployments
תארו פריסת תיקון
console
- במסוף Cloud de Confiance , עוברים לדף Compute Engine > VM Manager > Patch.
- לוחצים על הכרטיסייה פריסות מתוזמנות.
- לוחצים על שם הפריסה שרוצים לבדוק.
gcloud
כדי לתאר פריסת תיקון, משתמשים בפקודה os-config patch-deployments describe. מחליפים את patch-deployment-id בשם של פריסת הטלאי.
gcloud compute os-config patch-deployments describe patch-deployment-id
REST
ב-API, יוצרים בקשת GET אל ה-method patchDeployments.get.
GET https://osconfig.googleapis.com/v1/projects/project-id/patchDeployments/patch-deployment-id
מחליפים את מה שכתוב בשדות הבאים:
-
project-id: מזהה הפרויקט. -
patch-deployment-id: השם של פריסת התיקון.
מחיקה של פריסת תיקון
console
- במסוף Cloud de Confiance , עוברים לדף Compute Engine > VM Manager > Patch.
- לוחצים על הכרטיסייה פריסות מתוזמנות.
- לוחצים על השם של הפריסה שרוצים למחוק.
- לוחצים על מחיקת לוח הזמנים הזה.
gcloud
כדי למחוק פריסת תיקון, משתמשים בפקודה os-config patch-deployments delete. מחליפים את patch-deployment-id בשם של פריסת הטלאי.
gcloud compute os-config patch-deployments delete patch-deployment-id
REST
ב-API, יוצרים בקשת DELETE ל-method patchDeployments.delete.
DELETE https://osconfig.googleapis.com/v1/projects/project-id/patchDeployments/patch-deployment-id
מחליפים את מה שכתוב בשדות הבאים:
-
project-id: מזהה הפרויקט. -
patch-deployment-id: השם של פריסת התיקון.