העברת עומסי עבודה של Redis ו-Valkey אל Memorystore for Valkey

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

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

  • מצמצמים את התקורה התפעולית: מעבירים ל- Google Cloudמשימות ידניות שגוזלות זמן רב, כמו תיקון מערכת הפעלה, מעקב אחרי תשתית, סקריפטים לגיבוי וניהול שכפול. כתוצאה מכך, אתם יכולים להתמקד בפיתוח אפליקציות במקום בתחזוקת מסד הנתונים.
  • זמינות גבוהה ברמת הארגון: נהנים מהסכם רמת שירות (SLA) של 99.99% שמנוהל באופן מלא. ‫Memorystore for Valkey מספק יתירות כשל אוטומטית ויכולות גיבוי ושחזור מובנות. כך תוכלו להגן על האפליקציות שלכם מפני כשלים לא צפויים בצמתים, ולהבטיח תוכנית התאוששות מהירה מאסון (DR).
  • התאמת קנה מידה עם זמן השבתה כמעט אפסי: התאמת קנה מידה של המופעים בהתאם לעליות פתאומיות בלתי צפויות בתעבורה באופן דינמי. אתם יכולים להרחיב את המערכת למאות צמתים (עד 250 רסיסים) בצורה חלקה בלי להעביר את האפליקציות למצב אופליין.
  • שיפור האבטחה: החלפת כללי רשת מורכבים שמוגדרים באופן ידני בקישוריות VPC מאובטחת ומוטמעת, ובאמצעי בקרה מפורטים של גישה שמבוססים על ניהול זהויות והרשאות גישה (IAM). כך אפשר לוודא שהגבולות המחמירים של אבטחתGoogle Cloudמגנים על הנתונים שלכם.
  • איחוד ושדרוג של המופעים: אפשר למזג את המופעים המפוזרים, המבודדים והמנוהלים עצמית לפריסה יחידה עם ביצועים גבוהים ב-Memorystore for Valkey בקלות. כחלק מההעברה, תוכלו גם לשדרג באופן אוטומטי את הגרסאות המיושנות של Redis או Valkey לגרסאות הנתמכות העדכניות ביותר.
  • גישה לניתוח מתקדם בזמן אמת ול-GenAI: מעבר לסביבה אופטימלית עם השהיות של מיקרו-שניות לשמירת נתונים במטמון ולניהול סשנים. כדי להפעיל את האפליקציות שלכם מבוססות-AI גנרטיבי (GenAI), אתם מקבלים גישה מיידית ומנוהלת לתכונות מתקדמות כמו חיפוש וקטורי.

תמיכה בגרסה

בטבלה שבקטע הזה מפורט המידע הבא על מופעי Redis ו-Valkey בניהול עצמי שלכם, ועל מופעי היעד ב-Memorystore for Valkey:

  • הסוגים והגרסאות של מופעי המקור שההעברה תומכת בהם
  • הגרסאות של מכונות היעד של Memorystore for Valkey שאליהן אפשר להעביר את עומסי העבודה
סוג מופע המקור גרסת מופע המקור Target instance version
Redis ‫3.2.x - 7.2.x ‫Valkey 7.2,‏ 8.0 ו-9.0
Valkey ‫‎7.x,‏ 8.x ו-9.x ‫Valkey 7.2,‏ 8.0 ו-9.0

לפני שמתחילים

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

שימוש במסוף Google Cloud , ב-Google Cloud CLI ובממשקי API

כדי להשתמש במסוף Google Cloud , ב-CLI של gcloud ובממשקי API, מבצעים את הפעולות הבאות:

  1. בדף לבחירת הפרויקט במסוף Google Cloud , בוחרים פרויקט ב- Google Cloud או יוצרים אותו.

    כניסה לדף לבחירת הפרויקט

  2. מוודאים שהחיוב מופעל בפרויקט. כך בודקים אם החיוב מופעל בפרויקט
  3. מתקינים ומפעילים את Google Cloud CLI.

    הערה: אם התקנתם את ה-CLI של gcloud, השתמשו בפקודה gcloud components update כדי לוודא שמותקנת אצלכם הגרסה העדכנית. כדי לגשת לפקודות של Memorystore for Valkey ב-CLI של gcloud, אתם צריכים לפחות את גרסה 489.0.0 של ה-CLI של gcloud.

  4. מפעילים את Memorystore for Valkey API. ‫
    Memorystore for Valkey API
  5. מפעילים את Network Connectivity API.
    Network Connectivity API
  6. מפעילים את Service Consumer Management API. ‫
    Service Consumer Management API
  7. מפעילים את Compute Engine API. ‫
    Compute Engine API

הקצאת תפקידים והרשאות

כדי לבצע את כל הפעולות להעברת עומסי העבודה של מופעי Redis ו-Valkey בניהול עצמי אל Memorystore for Valkey, צריך לבקש מהאדמין להקצות לכם את תפקיד ה-IAM‏ Memorystore Admin ‏(roles/memorystore.admin) בפרויקטGoogle Cloud .

כדי ליצור ולצפות בקבצים מצורפים לרשת, צריך לבקש מהאדמין להקצות לכם את תפקיד ה-IAM‏ Compute Network Admin (roles/compute.networkAdmin) בפרויקט.

תהליך העבודה להעברת עומסי העבודה

כדי להעביר את עומסי העבודה של מכונות Redis ו-Valkey בניהול עצמי אל Memorystore for Valkey, מבצעים את הפעולות הבאות:

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

הכנת מופע המקור

צריך להכין את מכונת Redis או Valkey בניהול עצמי כדי שתוכלו להעביר את עומסי העבודה למכונת יעד של Memorystore for Valkey.

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

  • אם protected-mode מופעל בצמתי המקור, צריך להשבית אותו.
  • אם הגדרתם את צמתי המקור באמצעות הנחיה מפורשת של bind, צריך לעדכן את הצמתים כדי לאפשר חיבורים נכנסים מצמתי היעד. צמתי היעד יוזמים חיבורים מכתובות ה-IP בתת-הרשת של קובץ הצירוף לרשת.
  • מעדכנים את כל כללי חומת האש שעלולים לחסום חיבורים נכנסים מהצמתים של היעד.
  • אם האימות ו-Transport Layer Security ‏ (TLS) מופעלים בצמתי המקור, צריך להשבית אותם.

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

  • אל תשנו את השם של אף פקודה ב-Valkey או ב-Redis שמבצעת שינוי נתונים או שמשמשת לשכפול (לדוגמה, PING,‏ PSYNC ו-HSET).
  • אם אתם משתמשים ברשימות של בקרת גישה (ACL) עבור המכונה, אתם צריכים לאפשר את הפקודות הבאות למשתמש default כדי שמכונת היעד תוכל ליצור שכפול:
    • REPLCONF
    • SYNC
    • PSYNC
    • PING
    • INFO
    • CLUSTER|NODES
  • מוודאים שלמופע המקור יש מספיק זיכרון וקיבולת מעבד כדי לנהל את עומס השכפול הנוסף שמקורו בצמתים של מופע היעד.

הכנת מופע היעד

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

כדי להכין את מופע היעד, פועלים לפי ההנחיות הבאות:

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

יצירת מופע היעד

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

אפשר ליצור את המופע הזה באמצעות מסוף Google Cloud או CLI של gcloud.

המסוף

הוראות ליצירת מכונת היעד מפורטות במאמר יצירת מכונות.

gcloud

הוראות ליצירת מכונת היעד מפורטות במאמר יצירת מכונות.

הגדרת חיבור לרשת

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

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

אפשר להשתמש בקובץ מצורף לרשת שעומד בדרישות הבאות:

  • היא צריכה להיות באותו פרויקט ובאותו אזור כמו מופע היעד.
  • רשת המשנה שלה צריכה להיות ממוקמת באותה רשת VPC כמו מופע המקור.
  • לרשת המשנה במכונת המקור צריכה להיות כתובת IP בטווח CIDR מתאים, שתומכת במינימום N+1 כתובות IP שניתנות לשימוש (כאשר N הוא מספר הצמתים במכונת היעד). לדוגמה, אם למכונת יעד יש שלושה שארדים ועותק אחד, אז יש לה שישה צמתים: שלושה צמתים למכונה הראשית ושלושה צמתים לעותק. לכן, צריך לפחות שבע כתובות IP.
  • הטווח של רשת המשנה לא יכול לחפוף לטווח 10.0.0.0/23 כי הטווח הזה שמור ל-Memorystore for Valkey.

אם קובץ ה-NetworkAttachment לא עומד בדרישות האלה או שאין לכם קובץ כזה, אתם צריכים ליצור קובץ.

התחלת ההעברה

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

אפשר להתחיל את ההעברה באמצעות מסוף Google Cloud או ה-CLI של gcloud.

המסוף

  1. נכנסים לדף Memorystore for Valkey במסוף Google Cloud .

    Memorystore for Valkey

  2. לוחצים על המזהה של מכונת היעד.

  3. בדף Instance at a glance (סקירה מהירה של המכונה), לוחצים על Start migration (התחלת ההעברה).

  4. בחלון Migrate Self Managed Redis and Valkey Instances (העברת מופעים של Redis ו-Valkey בניהול עצמי), מבצעים את הפעולות הבאות:

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

  6. בכרטיסייה Connect (קישור), מבצעים את הפעולות הבאות:

    1. מזינים את כתובת ה-IP והיציאה של מכונת המקור. הפרטים האלה מופיעים בשלב הכנת מכונת המקור.
    2. בוחרים את קובץ הרשת שרוצים להשתמש בו להעברת נתונים.
    3. לוחצים על Continue.
  7. בכרטיסייה בדיקה, בודקים את המידע שמשויך לתהליך ההעברה. המידע הזה כולל את המזהה של מופע היעד, את כתובת ה-IP והיציאה של מופע המקור ואת השם של קובץ הרשת המצורף. אחרי שבודקים את המידע הזה, לוחצים על התחלת ההעברה.

  8. בדף Instance at a glance (סקירה מהירה של המכונה), מוודאים שהסטטוס Migrating (העברה) מופיע.

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

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

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

gcloud

כדי להתחיל את ההעברה, משתמשים בפקודה gcloud beta memorystore instances start-migration.

gcloud beta memorystore instances start-migration INSTANCE_ID \
--project=PROJECT_ID \
--location=REGION \
--source-ip=SOURCE_IP_ADDRESS \
--source-port=SOURCE_PORT \
--network-attachment=projects/NETWORK_ATTACHMENT_PROJECT_ID/locations/NETWORK_ATTACHMENT_REGION/networkAttachments/NETWORK_ATTACHMENT_ID

מחליפים את הפרטים הבאים:

  • INSTANCE_ID: המזהה של מכונת היעד.
  • PROJECT_ID: המזהה או מספר הפרויקט של פרויקט Google Cloud שמכיל את מופע היעד.
  • REGION: האזור שבו נמצאת מכונת היעד.
  • SOURCE_IP_ADDRESS: כתובת ה-IP של מופע המקור. הערתם את כתובת ה-IP הזו בהכנת מופע המקור.
  • SOURCE_PORT: מספר היציאה של מופע המקור. הערתם את היציאה הזו בהכנת מופע המקור.
  • NETWORK_ATTACHMENT_PROJECT_ID: המזהה או מספר הפרויקט שלGoogle Cloud הפרויקט שמכיל את רשת ה-VPC שרוצים להשתמש בה להעברת נתונים.
  • NETWORK_ATTACHMENT_REGION: האזור שבו נמצאת ההצמדה לרשת.
  • NETWORK_ATTACHMENT_ID: המזהה של הקובץ המצורף לרשת.

כדי לוודא שההעברה התחילה בהצלחה, משתמשים בפקודה gcloud memorystore instances describe.

gcloud memorystore instances describe INSTANCE_ID \
--project=PROJECT_ID \
--location=REGION_ID

מוודאים שהסטטוס MIGRATING מופיע לצד הפרמטר state.

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

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

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

מעקב אחרי ההעברה

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

מעקב אחרי מופע המקור

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

מעקב אחרי מופע היעד

לכל צומת ראשי במופע היעד, מוודאים שהסטטוס של המדד Node migration status הוא HEALTHY. הסטטוס הזה מציין שקישורי השכפול בין הרסיסים של מופעי המקור והיעד תקינים ופעילים.

אפשר לעקוב אחרי ההעברה של מכונת היעד באמצעות מסוףGoogle Cloud . כדי לבדוק את הערך של המדד Node migration status לכל צומת ראשי במופע היעד:

  1. נכנסים לדף Metrics explorer במסוף Google Cloud .

    Metrics Explorer

  2. בתפריט מדד, בוחרים במדד סטטוס העברת הצמתים. כדי לעשות את זה, בוחרים באפשרות Memorystore Instance Node >‏ Instance ‏ > Node migration status ולוחצים על Apply.

  3. בשדה Filter, מוסיפים את המסננים הבאים:

    • instance_id = (equals) INSTANCE_ID
    • role = (equals) primary
    • status != (does not equal) HEALTHY

    מחליפים את INSTANCE_ID במזהה של מכונת היעד.

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

סיום ההעברה

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

אפשר להשלים את ההעברה באמצעות מסוף Google Cloud או ה-CLI של gcloud.

המסוף

  1. נכנסים לדף Memorystore for Valkey במסוף Google Cloud .

    Memorystore for Valkey

  2. לוחצים על המזהה של מכונת היעד.

  3. בדף Instance at a glance (סקירה מהירה של המופע), לוחצים על Finish migration (סיום ההעברה).

  4. בתיבת הדו-שיח Finish migration (סיום ההעברה):

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

    2. בשדה הטקסט Instance ID (מזהה המופע), מזינים את המזהה של מופע היעד.

    3. לוחצים על סיום ההעברה.

  5. בדף Instance at a glance, מוודאים שהסטטוס Migrated מופיע.

gcloud

כדי לסיים את ההעברה, משתמשים בפקודה gcloud beta memorystore instances finish-migration.

gcloud beta memorystore instances finish-migration INSTANCE_ID \
--project=PROJECT_ID \
--location=REGION

מחליפים את הפרטים הבאים:

  • INSTANCE_ID: המזהה של מכונת היעד
  • PROJECT_ID: המזהה או מספר הפרויקט של פרויקט Google Cloud שמכיל את מופע היעד
  • REGION: האזור שבו נמצאת מכונת היעד

כדי לוודא שההעברה הסתיימה בהצלחה, משתמשים בפקודה gcloud memorystore instances describe.

gcloud memorystore instances describe INSTANCE_ID \
--project=PROJECT_ID \
--location=REGION_ID

מוודאים שהסטטוס MIGRATED מופיע לצד הפרמטר state.