הרחבת פריסת 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. מוסיפים את השרת לפריסה הקיימת. רושמים את שרת ה-root החדש בפריסה הראשית. מוודאים שארגומנטי שם המארח והיציאה תואמים לפרמטרים שבהם נעשה שימוש בפקודה 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 בלי לנקות קודם את תיקיות הנתונים הישנות.

השלבים הבאים