הרחבת פריסת VM

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

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

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

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

הוספת שרתי בסיס

כדי להוסיף שרת Root חדש לפריסת מכונה וירטואלית:

  1. מתחילים שרת חדש במכונה וירטואלית חדשה באזור קיים. מאחלים את השרת באמצעות הפקודה spanner start. בדוגמה הבאה מופעל שרת root:

    spanner start \
      --root \
      --server-address=HOSTNAME \
      --zone=ZONE \
      --base-dir=BASE_DIR
    

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

    • HOSTNAME: שם הדומיין המוגדר במלואו (FQDN) או שם המארח של המכונה הווירטואלית החדשה שאפשר לפתור את הבעיה שלהם. לדוגמה, new-root-server.example.com.
    • ZONE: אזור היעד, לדוגמה us-central1-a.
    • BASE_DIR: נתיב הספרייה שבה מאוחסנים הנתונים, לדוגמה /spanner.
  2. מוסיפים את השרת לפריסה הקיימת. רושמים את שרת הבסיס החדש בפריסה הראשית. מוודאים שהארגומנטים של שם המארח והיציאה (port) תואמים לפרמטרים שבהם נעשה שימוש בפקודה spanner start, ומציינים את האזור להקצאה לשרת הבסיסי.

    spanner deployment servers create SERVER_ENDPOINT \
      --zone=ZONE \
      --deployment-endpoint=ENDPOINT
    

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

    • SERVER_ENDPOINT: הכתובת של שרת הבסיס החדש, לדוגמה new-root-server.example.com:15000.
    • ZONE: אזור היעד, לדוגמה us-central1-a.
    • ENDPOINT: נקודת הקצה של הפריסה הראשית, לדוגמה my-spanner-deployment:15000.

    הפקודה spanner deployment servers create מפעילה פעולה ארוכת טווח כדי להוסיף את השרת לפריסה. יכול להיות שיידרש זמן רב כדי להשלים פעולות ממושכות. מידע נוסף זמין במאמר בנושא ניהול פעולות ממושכות ומעקב אחריהן במסמכי Spanner.

  3. מוודאים שהשרת הצטרף לפריסה. מפרטים את השרתים כדי לוודא שהשרת נרשם ועבר למצב Ready:

    spanner deployment servers list \
      --zone=ZONE \
      --deployment-endpoint=ENDPOINT
    

הוספת שרתים שאינם שרתי הבסיס

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

בדוגמה הזו מופעל שרת שאינו שרת הבסיס והוא מתווסף לפריסה:

spanner start \
  --server-address=HOSTNAME \
  --join-servers=JOIN_SERVERS \
  --zone=ZONE \
  --base-dir=BASE_DIR

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

  • HOSTNAME: שם המארח של המכונה הווירטואלית החדשה, לדוגמה new-non-root-server.example.com.
  • JOIN_SERVERS: רשימה מופרדת בפסיקים של נקודות קצה קיימות של שרתים ראשיים – לדוגמה, root-server1.example.com:15000.
  • ZONE: שם האזור, לדוגמה us-central1-a.
  • BASE_DIR: נתיב הספרייה שבה מאוחסנים הנתונים, לדוגמה /spanner.

הסרת שרתים

כדי להסיר שרת בסיס או שרת שאינו שרת בסיס, פועלים לפי אותם השלבים. אם מסירים שרת בסיס, צריך לוודא שמספר שרתי הבסיס הכולל בפריסה הוא אי-זוגי (בין 1 ל-9).

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

  1. מוחקים את השרת מהפריסה:

    spanner deployment servers delete SERVER_ENDPOINT \
      --zone=ZONE \
      --deployment-endpoint=ENDPOINT
    

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

    • SERVER_ENDPOINT: כתובת השרת להסרה – לדוגמה, server-to-remove:15000.
    • ZONE: האזור שבו נמצא השרת, לדוגמה us-central1-a.
    • ENDPOINT: נקודת הקצה של הפריסה הראשית, לדוגמה my-spanner-deployment:15000.
  2. ממתינים עד להשלמת העברת הנתונים. הזמן שנדרש להעברת המחיצה תלוי בגודל של מאגר הנתונים שמארח השרת. עוקבים אחרי סטטוס השרת עד שהשרת לא מופיע יותר בפלט:

    spanner deployment servers list \
      --zone=ZONE \
      --deployment-endpoint=ENDPOINT
    
  3. משביתים את תהליך השרת. נכנסים למכונה הווירטואלית ומפסיקים את התהליך spanner.

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

השלבים הבאים