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

בדף הזה מוסבר איך מתבצעת תחזוקה של מכונות ב-Memorystore for Valkey. בנוסף, הוא מספק מידע והמלצות להגדרות אישיות שצריך להכיר באפליקציות הלקוח כדי לנצל את היתרונות של תכנון התחזוקה ללא זמן השבתה של Memorystore for Valkey. ההמלצות האלה רלוונטיות גם למכונות בזמינות גבוהה וגם למכונות ללא רפליקות. עם זאת, בכל תרחישי השימוש בסביבת הייצור, מומלץ מאוד להשתמש בהגדרה של זמינות גבוהה.

ב-Memorystore for Valkey, המכונות מתעדכנות באופן קבוע כדי לוודא שהשירות אמין, יעיל, מאובטח ועדכני. העדכונים האלה נקראים תחזוקה. התחזוקה מנוהלת באופן מלא על ידי השירות, והיא מתוכננת כך שלא תהיה לה השפעה על זמן ההשבתה.

בדרך כלל, פעולות התחזוקה מתחלקות לקטגוריות הבאות:

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

הגדרת אפליקציית הלקוח

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

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

מכונות עם מצב אשכול מושבת

במהלך התחזוקה, במכונות שבהן Cluster Mode Disabled מתבצע מעבר לגיבוי בעת כשל, שמאפס את החיבורים שלהן. מעבר הגיבוי הזה נמשך בדרך כלל 15 שניות. כדי לחבר מחדש את אפליקציות הלקוח למכונה אחרי יתירות הכשל, מומלץ ליצור מנגנון ניסיון חוזר עם השהיה מעריכית לפני ניסיון חוזר (exponential backoff). אחרי שתקבלו אימייל שמודיע על תחזוקה קרובה, תוכלו להריץ תחזוקה מדומה במכונה שאינה בסביבת ייצור כדי לבדוק את ההשפעה של התחזוקה על המכונה. מידע נוסף זמין במאמר הרצת סימולציה של תחזוקה במכונה.

מומלץ גם לשמור על ערך של 50% או פחות במדד /instance/memory/maximum_utilization כשהתחזוקה המתוזמנת מתחילה. ההנחיות למדד הזה מתייחסות לסף של 80% לניהול הזיכרון. עם זאת, מומלץ לשאוף ליחס של 50% או פחות במהלך התחזוקה. למידע נוסף על המדד, קראו את המאמר מדדי Cloud Monitoring.

כדי לוודא שהיחס הזה נשמר, אפשר לבצע אחת מהפעולות הבאות:

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

פעולת תחזוקה שנקבעה מראש

ב-Memorystore for Valkey נעשה שימוש בפריסה הדרגתית ובאסטרטגיית מחזור חיים של יצירה לפני השמדה, כדי למנוע השפעה של זמן השבתה של תחזוקה מתוזמנת של Memorystore על מכונות Valkey. כדי לבצע תחזוקה ללא זמן השבתה, ב-Memorystore for Valkey נעשה שימוש ביכולות של הפניית בקשות מחדש של פרוטוקול המכונה של OSS Valkey, באמצעות המנגנונים הבאים של Memorystore:

  1. מעבר מתואם למצב של יתירות כשל בלי לאבד נתונים.
  2. הסרה הדרגתית של צומת כדי לאפשר ללקוחות להתעדכן בטופולוגיה של הצומת בלי להשפיע על הזמינות.
  3. נקודות הקצה של המכונה מסוג Private Service Connect, שלא מושפעות מעבודות התחזוקה. מידע נוסף על נקודות הקצה האלה זמין במאמר נקודות קצה של מכונות.

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

חלונות זמן לתחזוקה שמוגדרים כברירת מחדל

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

  • בימי חול (שני עד שישי): 22:00 עד 06:00
  • חלון סוף השבוע: שישי, 22:00 עד שני, 06:00

אסטרטגיית פריסה הדרגתית

ב-Memorystore for Valkey, הפריסות מתבצעות בהיקף שהולך וגדל, ובקצב שמאפשר לזהות כשלים בשלב מוקדם מספיק כדי לצמצם את ההשפעה שלהם ולוודא שהמערכת יציבה. זמני ההרצה (הזמן שבו העדכון מיושם ומנוטר לפני שהוא נחשב למוצלח וממשיכים הלאה) משולבים בכל המכונות של Memorystore בקנה מידה של השירות. בנוסף, זמני ההרצה משולבים במכונות באזורים שונים (כמה דומיינים של כשל) כדי לצמצם את היקף ההשפעה, אם יש כזו.

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

אסטרטגיית מחזור חיים של יצירה לפני השמדה

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

  1. ‫Memorystore for Valkey מוסיף למקטע רפליקה חדשה עם עדכון התוכנה האחרון. כדי לוודא שהקיבולת שהוקצתה נשמרת במקרה של כשל בלתי צפוי באתחול, המערכת של Memorystore יוצרת צומת חדש במקום לעדכן צומת קיים.
  2. אם צומת בתוך המאגר לעדכון הוא צומת ראשי, הצומת הראשי מומר קודם לרפליקה לפני הסרת הצומת באמצעות יתירות כשל מתואמת.
  3. ‫Memorystore מסיר את הרפליקה שמשתמשת בתוכנה הקודמת.
  4. ‫Memorystore חוזר על התהליך הזה בכל צומת במכונה.

האסטרטגיה של יצירה לפני השמדה עוזרת לשמור על הקיבולת שהוקצתה למכונה, בהשוואה לפריסה הדרגתית רגילה שמתעדכנת במקום, אבל גורמת להפסקה בזמינות (ולפעמים לאובדן נתונים) של אפליקציית הלקוח. במקטעים בלי רפליקות, Memorystore for Valkey עדיין מקצה קודם רפליקה חדשה, מתאם את יתירות הכשל ולבסוף מחליף את הצומת הראשי הקיים של המקטע.

שלב 1: מוסיפים רפליקה

השלב הראשון במנגנון create-before-destroy הוא להוסיף צומת רפליקה עם התוכנה העדכנית ביותר, באמצעות מנגנון הסנכרון המלא של OSS Valkey, כדי להעתיק את הנתונים מהצומת הראשי לצומת הרפליקה. כדי לעשות את זה, יוצרים תהליך צאצא וממנפים שכפול ללא דיסק כדי לאתחל את הרפליקה. ‫Memorystore for Valkey תומך ברפליקציה ללא דיסק. אם לא מפעילים שמירת נתונים, Memorystore for Valkey לא משתמש בדיסקים במהלך הרפליקציה.

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

שלב 2: הפעלת יתירות כשל ראשית מתואמת

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

  1. בקשות נכנסות של לקוחות נחסמות באופן זמני בצומת הראשי, כדי לאפשר חלון זמן שבו אפשר לוודא שהרפליקה הקיימת מסונכרנת ב-100% עם הצומת הראשי.
  2. הרפליקה משלימה את תהליך הבחירה כדי לקבל את התפקיד הראשי.
  3. הצומת הראשי הקודם, שהוא עכשיו צומת רפליקה, מבטל את החסימה של הבקשות הקיימות ומפנה אותן לצומת הראשי החדש באמצעות פרוטוקול המכונה של OSS Valkey. כל הבקשות החדשות שנשלחות לצומת הרפליקה הקודם ממשיכות להיות מופנות לצומת הראשי החדש.
  4. הלקוח שתואם ל-Valkey מרענן את הטופולוגיה בזיכרון. הוא לומד את הכתובת של נקודת הקצה הראשית החדשה, ולא צריך יותר הפניות אוטומטיות.

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

שלב 3: מסירים את הרפליקה

השלב האחרון במנגנון "יצירה לפני השמדה" הוא להסיר את צומת הרפליקה בתוכנה הקודמת. הסרת הצומת משפיעה על אפליקציות הלקוח כי Memorystore for Valkey מנתק את הלקוחות. מכיוון שרענון הטופולוגיה לא רלוונטי למכונות שבהן Cluster Mode מושבת, מומלץ להשתמש במנגנון ניסיון חוזר עם השהיה מעריכית לפני ניסיון חוזר (exponential backoff) כדי לחבר מחדש את האפליקציה לנקודות הקצה החדשות של הרפליקה אחרי שהן יהיו זמינות.

במכונות שבהן מופעל Cluster Mode, ב-Memorystore for Valkey הסרת רפליקה של Valkey מתבצעת בצורה חלקה, כדי לאפשר לאפליקציות הלקוח לרענן את הטופולוגיה שלהן לפני שהצומת מושבת. הטופולוגיה מותאמת אישית כדי לאפשר ללקוחות ללמוד על הרפליקה החדשה, אבל גם לשכוח מראש את הרפליקה שצריך להסיר.

‫Memorystore for Valkey משאיר את צומת הרפליקה שמריץ את הגרסה הקודמת של התוכנה למשך תקופת ניקוז מסוימת, בדרך כלל כמה דקות, שבמהלכה הוא מתחיל להפנות את בקשות הקריאה הנכנסות לצומת הראשי של ה-shard שלו. התהליך הזה מאפשר ללקוח של הצד השלישי לרענן את הטופולוגיה של הצומת וללמוד על נקודות הקצה החדשות של הרפליקה. אם הלקוח ינסה להגיע לצומת שהוסר אחרי תקופת הניקוז, הניסיון ייכשל. הכשל הזה מפעיל רענון של טופולוגיית הצמתים בלקוח המתחבר, כדי שהוא יקבל מידע על השינוי ברפליקה. רענונים חדשים של טופולוגיית הצומת לא רואים את צומת הרפליקה שצריך להסיר.

הגדרות תחזוקה

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

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

  • היום בשבוע: היום שבו מתבצעת התחזוקה
  • שעת התחלה: השעה שבה מתחילה התחזוקה

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

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

חלונות זמן לתחזוקה שמוגדרים כברירת מחדל

אם לא הגדרתם בעצמכם חלון זמן לתחזוקה, העדכון של המכונה ב-Memorystore for Valkey יתבצע באחד מחלונות הזמן הבאים, בהתאם לאזור הזמן של המכונה:

  • חלון בימי חול (שני עד שישי): 22:00 עד 06:00
  • חלון סוף השבוע: שישי, 22:00 עד שני, 06:00

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

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

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

  • היום בשבוע: ראשון
  • שעת התחלה: 01:00

התראות על עבודות תחזוקה מתוכננות

כדי לקבל עדכונים על אירועי תחזוקה במכונה, הגדירו התראות באימייל על תחזוקה קרובה לפחות שבוע לפני מועד התחזוקה המתוכנן. שורת הנושא של ההתראות האלה היא "Upcoming maintenance for your Cloud Memorystore instance [your-instance-name]".

בנוסף, תקבלו התראה מ-Memorystore for Valkey כשיתחילו עבודות התחזוקה במכונה. שורת הנושא של האימייל היא "Maintenance is undergoing for your Cloud Memorystore instance [your-instance-name]".

אחרי ש-Memorystore for Valkey מסיים את פעולות התחזוקה, הוא שולח התראה על סיום הפעולה. שורת הנושא של האימייל היא "Completed Maintenance for your Cloud Memorystore instance [your-instance-name]".

אם ב-Memorystore for Valkey מתזמנים מחדש את התחזוקה, תקבלו אימייל על ביטול התחזוקה. שורת הנושא של האימייל הזה היא "Canceled maintenance for your Cloud Memorystore instance [your-instance-name]".

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

  1. הגדרת חלון זמן לתחזוקה.
  2. הסכמה לקבלת התראות בנוגע לתחזוקה

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

‫Memorystore for Valkey שולח התראות לכתובת האימייל שמשויכת לחשבון Google שלכם. אי אפשר להגדיר כתובת אימייל חלופית בהתאמה אישית (לדוגמה, כתובת אימייל חלופית של צוות). בנוסף, אנחנו לא תומכים בשליחת התראות לכתובת אימייל אחרת.

אם תירשמו לקבלת התראות על תחזוקה, תקבלו התראות על כל המכונות של Memorystore for Valkey שנקבעה להן תחזוקה בפרויקט ב- Google Cloud . תקבלו התראה נפרדת על כל מקרה.

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

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

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

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

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

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

  • אם נותרה פחות משעה עד למועד שנקבע לעבודות התחזוקה, אי אפשר לשנות את המועד.
  • אחרי שתזמנתם מחדש את התחזוקה, תקבלו אימייל מ-Memorystore for Valkey שמאשר את ביטול התחזוקה הקודמת. בנוסף, תקבלו התראה חדשה על תחזוקה עם לוח הזמנים המעודכן.

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

שאלות נפוצות

בקטע הזה מופיעות שאלות נפוצות לגבי תחזוקה של Memorystore for Valkey.

איך אפשר לדעת מתי מתוכננות עבודות תחזוקה במכונה?

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

מתי מקבלים התראה מ-Memorystore for Valkey על עבודות תחזוקה קרובות?

אם נרשמתם לקבלת התראות על תחזוקה והגדרתם חלון זמן לתחזוקה, תקבלו מ-Memorystore for Valkey התראה באימייל לפחות שבוע לפני אירוע התחזוקה.

לכמה זמן אפשר לדחות את התחזוקה?

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

לדוגמה, אם קבעתם תחזוקה ל-11 באוקטובר בשעה 23:15, תוכלו לדחות אותה עד 25 באוקטובר בשעה 23:15. אם לא תבצעו שום פעולה, התחזוקה תתבצע בתאריך ובשעה שנקבעו.

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

אילו שיטות מומלצות מאפשרות חוויה חלקה של עדכוני תחזוקה?

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

  1. פועלים לפי ההוראות להגדרת אפליקציית הלקוח.
  2. הגדירו את חלון הזמן לתחזוקה ליום ולשעה שבהם יש הכי פחות תנועה במכונה (למשל, ימי ראשון בחצות).
  3. הפעלת התראות על תחזוקה. לכן, תקבלו התראה באימייל מ-Memorystore for Valkey לפחות שבעה ימים לפני שעדכון התחזוקה יתוזמן למכונה שלכם.
  4. אם אין לכם שעה שבה השימוש באפליקציה הוא נמוך או אפסי, השתמשו בהשקות הדרגתיות כברירת מחדל של השירות. ברירת המחדל הזו כוללת שיטות מומלצות לעדכוני תחזוקה. מידע נוסף זמין במאמר תחזוקה מתוזמנת.

מתי מומלץ להחיל עדכון תחזוקה באופן מיידי?

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

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

האם עדכוני התחזוקה תמיד מסתיימים בתוך חלון הזמן לתחזוקה?

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

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

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

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