כדי לצמצם את הסיכון לעומסי עבודה של ייצור ב-AlloyDB ל-PostgreSQL, אתם יכולים להשתמש באשכול staging כדי לבדוק תכונות חדשות, ביצועים ופונקציונליות לפני שאתם מחילים עדכונים על מערכות הייצור. אשכול staging הוא עותק של אשכול הייצור שמוסיף שכבת בקרה לתהליך עדכון התחזוקה. שימוש באשכול staging כדי לבדוק עדכוני תחזוקה מאפשר לכם לזהות ולטפל בבעיות פוטנציאליות בסביבה שאינה סביבת ייצור. הגישה הזו מפחיתה את הסיכון להשבתה ולפגיעה בביצועים במערכות הייצור.
עדכוני התחזוקה של AlloyDB מתבצעים מעת לעת, לרוב מדי חודש. העדכונים כוללים תכונות חדשות, תיקוני באגים, שדרוגים של תאימות למסדי נתונים ותיקונים שקשורים לאבטחה. הגרסאות של AlloyDB תואמות לגרסאות קודמות, אבל מומלץ לבדוק גרסאות חדשות בסביבת הכנה כדי לוודא שהמסד נתונים יציב וצפוי עבור האפליקציות הקריטיות באשכול הייצור. מידע נוסף מופיע במאמר בנושא סקירה כללית על תחזוקה.
כדי להשתמש באשכול staging, מבצעים את השלבים הבאים:
- הגדרת אשכול staging.
- הגדרת חלון זמן לתחזוקה באשכול בסביבת הייצור.
- ניהול עדכונים של אשכולות לצורכי הכנה.
- ניהול עדכונים של אשכול ייצור.
הגישה הזו של אימות בסביבת פיתוח לתחזוקה של AlloyDB מבטיחה שסביבת הייצור שלכם תישאר יציבה, יעילה ומאובטחת, וגם תיהנו מהתכונות ומהתיקונים האחרונים של AlloyDB.
בתרשים הבא מוצג הקשר בין אשכול ה-staging לאשכול ה-production, וזרימת הפעולות התפעולית של תהליך העדכון:

במאמר סקירה כללית על תחזוקה מוסבר איך עדכוני תחזוקה פועלים עם קלאסטרים של AlloyDB. למידע נוסף על ניהול חלונות תחזוקה, אפשר לעיין במאמר בנושא ניהול חלונות תחזוקה של אשכולות AlloyDB ל-PostgreSQL.
לפני שמתחילים
Google Cloud צריך להפעיל את הגישה ל-AlloyDB בפרויקט שבו משתמשים.
כדי להגדיר אשכול staging, צריך ליצור אשכול ייצור של AlloyDB או שיהיה לכם אשכול כזה. למידע נוסף, קראו את המאמר בנושא יצירה של אשכול ושל המופע הראשי שלו.
צריך להיות לכם אחד מתפקידי ה-IAM הבאים ב Google Cloudפרויקט שבו אתם משתמשים:
-
roles/alloydb.admin: תפקיד IAM מוגדר מראש של AlloyDB Admin -
roles/owner: תפקיד הבעלים הבסיסי ב-IAM -
roles/editor: תפקיד בסיסי ב-IAM עם הרשאת עריכה
אם לא הוקצו לכם התפקידים האלה, פנו לאדמין הארגוני כדי לבקש הרשאת גישה.
הגדרת אשכול לצורך הכנה להשקה
כדי להצליח באסטרטגיה של בדיקה בסביבת פיתוח לפני העברה לסביבת ייצור, חשוב לוודא שסביבת הפיתוח דומה לסביבת הייצור, ושהיא מקבלת עדכונים לפני סביבת הייצור. אתם מגדירים אסטרטגיה של העלאה לסביבת פיתוח קודם אם לא הגדרתם חלון זמן לתחזוקה באשכול של סביבת הפיתוח. AlloyDB מעדכן קודם את האשכולות בלי חלונות זמן לתחזוקה.
יצירת אשכול לצורכי הכנה מגיבוי של סביבת הייצור
פורסים אשכול staging שמשקף את סביבת הייצור, ומוודאים שלאשכול ה-staging יש את אותה גרסה, הגדרה ונתונים של AlloyDB כמו לאשכול הייצור.
כדי לוודא שקלאסטר ההכנה זהה לסביבת הייצור, משתמשים בפקודה restore כדי לשכפל את מסד הנתונים של הייצור לקלאסטר ההכנה, וכדי לוודא שהנתונים דומים וההגדרות זהות. מומלץ גם להפריד בין סביבות ה-Staging והייצור בפרויקטים שונים.
יש שתי שיטות ליצירת גיבוי של סביבת הייצור:
- יוצרים אשכול חדש של סביבת פיתוח על ידי ביצוע שחזור מלא של גיבוי של אשכול קיים בסביבת ייצור. השיטה הזו לא כוללת שחזור של מסד נתונים. עם זאת, בהתאם ללוח הזמנים של הגיבוי, הנתונים יכולים להיות בני עד 24 שעות. כדי להשתמש בשיטה הזו, אפשר לעיין במאמר בנושא שחזור אשכול מגיבוי מאוחסן.
- יוצרים אשכול חדש של סביבת Staging על ידי ביצוע שחזור לנקודת זמן מסוימת (PITR) של גיבוי קיים של מסד נתונים בסביבת הייצור, כולל לזמן האחרון. האפשרות הזו מאפשרת לכם לקבל את הנתונים העדכניים ביותר, והשיטה פשוטה יותר. עם זאת, בהתאם לזמן הגיבוי האחרון של PITR, יכול להיות שייקח יותר זמן לשחזר או לשחזר את הנתונים לזמן שציינתם. כדי להשתמש בשיטה הזו, אפשר לעיין במאמר בנושא שימוש בשחזור מנקודה מסוימת בזמן (PITR).
מוודאים שלא הוגדר חלון זמן לתחזוקה באשכול הסביבה הזמנית
אל תגדירו חלון זמן לתחזוקה לאשכול של סביבת הבדיקה. כברירת מחדל, לא מוגדר חלון זמן לתחזוקה באשכולות AlloyDB חדשים שנוצרו, גם באלה ששוחזרו מגיבוי. זה המצב הנכון של סביבת הבדיקה שלך. מערכת AlloyDB מעדכנת אשכולות שלא הוגדרו להם חלונות זמן מתוזמנים לתחזוקה לפני שהיא מעדכנת אשכולות שהוגדרו להם חלונות זמן מתוזמנים לתחזוקה.
כדי לוודא שלא הוגדר חלון זמן לתחזוקה:
המסוף
עוברים לדף Clusters.
לוחצים על אשכול בעמודה שם המשאב. הוא ייפתח בדף Overview.
בדף סקירה כללית, בקטע תחזוקה, אפשר לראות את פרטי חלון זמן לתחזוקה של האשכול.
אופציונלי: בדף תובנות לגבי המערכות אפשר לראות את פרטי הסטטוס של פעולת התחזוקה, כמו ציר הזמן של האירועים.
כדי לראות את הניהול של Unified Maintenance (תחזוקה מאוחדת), מקלידים 'Cloud Hub maintenance' (תחזוקה של Cloud Hub) בסרגל החיפוש ובוחרים באפשרות Maintenance (תחזוקה). בדף הזה אפשר לראות סיכום של התחזוקה, תחזוקה בניהול Google ופרטים על תחזוקה מתוכננת.
gcloud
כדי להשתמש ב-CLI של gcloud, אפשר להתקין ולהפעיל את Google Cloud CLI, או להשתמש ב-Cloud Shell.
gcloud alloydb clusters describe STAGING_CLUSTER_ID \ --region=LOCATION_ID \ --project=PROJECT_IDחפשו את השדה
maintenanceScheduleבפלט. אם לא מוגדר חלון זמן לתחזוקה, השדה הזה לא מופיע או שהוא ריק. אם מסיבה כלשהי הוגדר חלון זמן לתחזוקה, צריך לבטל אותו.gcloud alloydb clusters update STAGING_CLUSTER_ID \ --region=LOCATION_ID \ --clear-maintenance-window \ --project=PROJECT_ID
ניהול של כמה ערוצי הפצה לכמה סביבות שאינן סביבות ייצור
אם לארגון שלכם יש קצב פרסום מוגדר היטב ויציב, ויש לכם כמה סביבות שאינן סביבות ייצור, כדאי להחיל את הגרסאות החדשות שלב אחר שלב. לדוגמה, יכול להיות שתרצו להחיל גרסה ברצף הבא:
- סביבת פיתוח
- סביבת בקרת איכות
- סביבת Staging
כדי לקבל שליטה מפורטת יותר בלוח הזמנים של העדכונים ב-AlloyDB, אפשר להשתמש בתחזוקה בשירות עצמי. תחזוקה בשירות עצמי מאפשרת להחיל באופן ידני גרסה חדשה על כל סביבה בכל שלב.
כדי להטמיע את סוג מחזור הפרסום הזה, פועלים לפי השלבים הבאים:
- החלת דחיית תחזוקה על כל הסביבות שאינן סביבות ייצור כדי לוודא שהן לא יקבלו עדכונים באופן אוטומטי.
- אפשר להשתמש בתחזוקה בשירות עצמי כדי להחיל עדכונים על הסביבות ללא ייצור על סמך לוח הזמנים שצוין.
הגדרת חלון זמן לתחזוקה באשכול בסביבת הייצור
חשוב לתזמן חלון זמן לתחזוקה לאשכול הייצור. כך אתם יכולים לשלוט בתזמון של העדכונים ולתאם אותם לתקופות של תנועה נמוכה בעסק.
הגדרת חלון זמן לתחזוקה באשכול הייצור
מתזמנים חלון זמן לתחזוקה לאשכול הייצור. בוחרים יום ושעה שבהם העומס במערכת הייצור הוא הנמוך ביותר. הזמן הכולל שנדרש לאירוע תחזוקה יחיד יכול להשתנות.
AlloyDB מעכב אוטומטית את העדכונים באשכול הייצור למשך שבוע לפחות אחרי העדכון באשכול הבדיקה. אם אתם מזהים בעיות אחרי העדכון של אשכול הבדיקה, אתם יכולים לדחות את העדכונים של תחזוקת הסביבה הפרודקטיבית למשך עד 30 יום, ולעבוד עם Google Cloud התמיכה כדי לפתור את הבעיות.
מגדירים חלון זמן לתחזוקה באשכול הייצור באופן הבא:
המסוף
עוברים לדף Clusters.
לוחצים על אשכול בעמודה שם המשאב.
בדף סקירה כללית, בקטע תחזוקה, לוחצים על עריכה. ייפתח חלון הגדרה.
בקטע חלון תחזוקה מועדף, בוחרים את היום בשבוע שבו יתבצע חלון התחזוקה הזה. אפשרות ברירת המחדל היא 'כל חלון'.
כשיוצרים אשכול, מערכת AlloyDB מקצה לו את חלון זמן לתחזוקה הזה כברירת מחדל.
אם בוחרים יום לעדכוני תחזוקה, צריך לבחור את השעה ביום שבה יתבצע חלון הזמן לתחזוקה.
לוחצים על עדכון כדי לשמור את השינויים.
gcloud
כדי להשתמש ב-CLI של gcloud, אפשר להתקין ולהפעיל את Google Cloud CLI, או להשתמש ב-Cloud Shell.
כדי לאחזר את פרטי ההגדרה של אשכול AlloyDB, מריצים את הפקודה הבאה באמצעות gcloud alloydb clusters update.
gcloud alloydb clusters update PRODUCTION_CLUSTER_ID \
--region=LOCATION_ID \
--maintenance-window-day=DAY_OF_WEEK \
--maintenance-window-hour=HOUR_OF_DAY \
--project=PROJECT_IDמחליפים את הפרטים הבאים:
-
PRODUCTION_CLUSTER_ID: המזהה של אשכול הייצור. -
LOCATION_ID: Google Cloud האזור. DAY_OF_WEEK: היום המועדף לביצוע תחזוקה, כמוSUNDAY.
HOUR_OF_DAY: השעה המועדפת לתחזוקה ב-UTC (0-23).בדוגמה הבאה אפשר לראות איך מגדירים את חלון הזמן לתחזוקה ליום ראשון בשעה 2:00 UTC:
gcloud alloydb clusters update my-prod-cluster \ --region=us-central1 \ --maintenance-window-day=SUNDAY \ --maintenance-window-hour=2 \ --project=my-production-project
אימות חלון זמן לתחזוקה באשכול הייצור
כדי לוודא שחלון זמן לתחזוקה מוגדר לאשכול הייצור, מריצים את הפקודה gcloud alloydb clusters describe:
gcloud alloydb clusters describe PRODUCTION_CLUSTER_ID \
--region=LOCATION_ID \
--project=PROJECT_IDהפלט מחזיר את השדה maintenanceSchedule עם היום והשעה שצוינו לתחזוקה.
הסכמה לקבלת התראות לגבי פעולות תחזוקה
מומלץ להירשם לקבלת התראות על אירועי תחזוקה מתוזמנים של אשכול הייצור. ההתראות עוזרות לכם לתכנן מתי להתחיל את הבדיקה.
כדי להביע הסכמה לקבלת התראות על תחזוקה, פועלים לפי השלבים הבאים:
עוברים לדף Clusters.
לוחצים על אשכול בעמודה שם המשאב. הוא ייפתח בדף Overview.
בדף סקירה כללית, בקטע תחזוקה, לוחצים על הצגת פרטים כדי להרחיב את הקטע. לאחר מכן לוחצים על עריכה בשורה התראות. ייפתח הדף תקשורת.
בדף תקשורת, לוחצים על הכרטיסייה תקשורת בנושא מוצרים.
בשורה של AlloyDB, בעמודה אימייל, מעבירים את לחצן ההתראה למצב מופעל.
אחרי שמגדירים את חלון הזמן לתחזוקה באשכול הייצור, AlloyDB מעדכן אותו לא לפני שבעה ימים אחרי העדכון של אשכול הבדיקה. אם בוחרים לקבל התראות, מקבלים התראה באימייל על כך שעדכון תחזוקה מתוזמן לאשכול הייצור.
עדכונים באשכולות של סביבת פיתוח
משתמשים בסביבת הבדיקה כדי לאמת את העדכון הקרוב בסביבת הייצור.
בדיקת הסטטוס לפני העדכון
מכיוון שלא הוגדר חלון זמן לתחזוקה באשכול הבדיקה, הוא נכלל בין האשכולות הראשונים שיקבלו את העדכון. עם זאת, מערכת AlloyDB לא שולחת התראות לגבי אשכולות שלא הוגדר להם חלון זמן לתחזוקה. אבל אתם יכולים לעקוב אחרי עדכוני תחזוקה באמצעות Logs Explorer במסוף Google Cloud .
נכנסים לדף Logs Explorer במסוף Google Cloud :
אם משתמשים בסרגל החיפוש כדי למצוא את הדף הזה, בוחרים בתוצאה עם כותרת המשנה Logging.
בוחרים באפשרות All Resources (כל המשאבים), בוחרים את אשכול הביניים ולוחצים על Apply (החלה).
בוחרים באפשרות All lognames (כל שמות היומנים), בוחרים באפשרות maintenance_events (אירועי תחזוקה) ולוחצים על Apply (אישור).
בחלונית Timeline, בוחרים את טווח הזמן שבו יתקבלו עדכונים באשכול ההכנה.
ביצוע אימות פונקציונלי אחרי העדכון
אחרי ש-AlloyDB מעדכן את אשכול הבדיקה, מבצעים בדיקות פונקציונליות כדי לוודא שהעדכונים בטוחים ומתאימים להחלה בסביבת הייצור.
ביצוע אימות של הביצועים אחרי העדכון
אחרי שעדכון התחזוקה מסתיים, צריך לאמת את אשכול הביניים. כדאי להעריך את ההשפעות על הביצועים במסד הנתונים אחרי עדכונים של אשכולות בהעברה לבמה. מבצעים בדיקות מקיפות של הפונקציונליות והביצועים כדי לוודא שהאפליקציות פועלות כמצופה ושהן עומדות בהסכמי רמת השירות (SLA) בנוגע לביצועים.
כדי להבטיח יציבות ופעולה אופטימלית, צריך לבצע את הפעולות הבאות:
- השוואה בין נתוני הבסיס לפני העדכון לבין מדדים מרכזיים.
- להריץ בדיקות עומס כדי לזהות רגרסיות.
- ניתוח הביצועים של השאילתות.
- מעקב אחרי ניצול משאבים.
טיפול באירועים על סמך תוצאות האימות
בודקים את תוצאות האימות ומבצעים את הפעולות הבאות בהתאם לתוצאות:
- האימות הצליח: אם הבדיקות הפונקציונליות ובדיקות הביצועים באשכול ההכנה הצליחו, המשמעות היא שסביבת ההכנה נקייה משגיאות ושאפשר להמשיך בתחזוקה של סביבת הייצור לפי התזמון שנקבע. מתכוננים לעדכון בסביבת הייצור ומעדכנים את בעלי העניין הרלוונטיים.
- האימות נכשל: אם הבדיקות הפונקציונליות ובדיקות הביצועים באשכול ההכנה לשדרוג נכשלות, ואתם נתקלים בשגיאות פונקציונליות, בירידה בביצועים או בהתנהגות לא צפויה בסביבת ההכנה לשדרוג אחרי עדכון התחזוקה, אתם צריכים לדחות את התחזוקה בסביבת הייצור.
דחייה של אירוע תחזוקה מתוזמן
כדי לדחות אירוע מתוזמן של תחזוקה באשכול הייצור, צריך להגדיר את תאריך ההתחלה, תאריך הסיום ואת השעה ביום שבה מתחיל ומסתיים המרווח.
תאריכי ההתחלה והסיום צריכים להיות בפורמט הבא: YYYY-MM-DD. תאריך ההתחלה, תאריך הסיום והשעה הם כולם לפי אזור הזמן UTC.
כדי להשתמש ב-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-DDUTC. -
END_DATE: סוף התקופה ללא תחזוקה בפורמטYYYY-MM-DDUTC. -
TIME: השעה של התקופה ללא תחזוקה בפורמטHH:MMUTC. השעות מיוצגות בפורמט של 24 שעות, והערכים נעים בין00:00ל-23:59– לדוגמה,16:45.
-
חשוב לתעד את כל הבעיות, כולל הודעות שגיאה, מדדי ביצועים ושלבים לשחזור הבעיות.
פותחים בקשת תמיכה עם עדיפות גבוהה ב- Google Cloud ומספקים את כל הבעיות המתועדות. Google Cloud יעבוד איתכם כדי לנתח את הבעיות ולפתור אותן.
עדכונים באשכולות של סביבת ייצור
אם האימות בסביבת הבדיקה יצליח ותאשרו את המשך התחזוקה בסביבת הייצור, העדכונים יתבצעו במהלך חלון הזמן המתוזמן לתחזוקה.
אימות חלון הזמן לתחזוקה
כדי לעקוב אחרי אירועי תחזוקה עתידיים באשכול הייצור, פועלים לפי השלבים הבאים:
המסוף
עוברים לדף Clusters.
לוחצים על אשכול בעמודה שם המשאב. הוא ייפתח בדף Overview.
בדף סקירה כללית, בקטע תחזוקה, אפשר לראות את פרטי חלון זמן לתחזוקה של האשכול.
אופציונלי: בדף תובנות לגבי המערכות אפשר לראות את פרטי הסטטוס של פעולת התחזוקה, כמו ציר הזמן של האירועים.
כדי לראות את הניהול של Unified Maintenance (תחזוקה מאוחדת), מקלידים 'Cloud Hub maintenance' (תחזוקה של Cloud Hub) בסרגל החיפוש ובוחרים באפשרות Maintenance (תחזוקה). בדף הזה אפשר לראות סיכום של התחזוקה, תחזוקה בניהול Google ופרטים על תחזוקה מתוכננת.
gcloud
כדי להשתמש ב-CLI של gcloud, אפשר להתקין ולהפעיל את Google Cloud CLI, או להשתמש ב-Cloud Shell.
מריצים את הפקודה הבאה באמצעות gcloud alloydb clusters describe:
gcloud alloydb clusters describe PRODUCTION_CLUSTER_ID \
--region=LOCATION_ID \
--project=PROJECT_IDאם מתוכנן אירוע תחזוקה, הפלט כולל את maintenanceSchedule ואת startTime. אם בחרתם לקבל התראות, תקבלו גם התראות באימייל.
מעקב אחר הייצור במהלך חלון זמן לתחזוקה
למרות ש- Google Cloud מבצעת את תהליך התחזוקה באופן אוטומטי, אנחנו ממליצים לעקוב אחרי סביבת הייצור בזמן חלון זמן לתחזוקה המתוזמן כדי לוודא שמתרחשים הדברים הבאים:
- תקינות האפליקציה: מעקב אחרי יומני האפליקציה ובדיקות התקינות כדי לזהות סימנים לשיבוש.
- קישוריות למסד הנתונים: מוודאים שהאפליקציות יכולות להתחבר מחדש למסד הנתונים אחרי ההפרעה.
- מדדי AlloyDB: אפשר להשתמש ב-Google Cloud Monitoring כדי לעקוב אחרי מדדי AlloyDB – CPU, זיכרון, חיבורים וזמן השהיה של השכפול – ולוודא שהם חוזרים לרמות הצפויות אחרי העדכון.
אימות עדכון אחרי תחזוקה
אחרי שעדכון התחזוקה יסתיים, צריך לאמת את סביבת הייצור כדי לוודא שהפונקציונליות הקריטית ומדדי הביצועים פועלים.
- פונקציונליות מרכזית של האפליקציה: מריצים בדיקת עשן של התכונות הקריטיות ביותר באפליקציה.
- בדיקות בסיסיות של הביצועים: בדיקת לוחות הבקרה כדי לזהות עליות חדות בחביון או בצריכת המשאבים.