תיקון מכונת ה-VM של מישור הבקרה של אשכול האדמין

בהטמעה של Google Distributed Cloud, למכונה וירטואלית של מישור הבקרה של אשכול אדמין יש שני דיסקים מצורפים:

  • בדיסק האתחול יש את מערכת ההפעלה של המכונה הווירטואלית.

  • בדיסק הנתונים יש אישורים ומסד נתונים של etcd, שבו מאוחסן המצב של אשכול האדמין. כלומר, בדיסק הנתונים מאוחסנים כל אובייקטי Kubernetes של אשכול האדמין.

בדף הזה מוסבר איך לשחזר מכונה וירטואלית של מישור הבקרה שאבדה או דיסק אתחול שנפרץ. לדוגמה:

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

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

תיקון ה-VM של מישור הבקרה

השלבים לתיקון מכונת ה-VM של מישור הבקרה של אשכול האדמין משתנים מעט בהתאם לסוג אשכול האדמין: אשכול אדמין עם זמינות גבוהה (HA) או אשכול אדמין ללא HA.

HA

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

  1. מריצים את הפקודה הבאה:

    gkectl repair admin-master --config ADMIN_CLUSTER_CONFIG --kubeconfig ADMIN_CLUSTER_KUBECONFIG
    

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

    • ADMIN_CLUSTER_CONFIG בנתיב של קובץ התצורה של אשכול האדמין.

    • ADMIN_CLUSTER_KUBECONFIG עם הנתיב של קובץ ה-kubeconfig של אשכול האדמין.

    הפלט של הפקודה אמור להיראות כך:

    Please select the control plane VM template to be used for re-creating the admin cluster's control plane VM.
    [1] VM template:         /atl-qual-vc07/vm/gke-admin-57f8g-fx9f4c729448z2v8-2-tmpl
        GKE on-prem version: 1.16.0-gke.550
        Creation time:       2023-07-25 01:52:51.815518 +0000 UTC
        CPU:                 4 CPU(s)
        Memory:              16384 MB
        Data disk:           [vsanDatastore] 37a73d64-b823-47cd-2e0c-00620b9189a0/gke-admin-57f8g/default/gke-admin-57f8g-2-data.vmdk
    
    [2] VM template:         /atl-qual-vc07/vm/gke-admin-57f8g-fx9f4c729448z2v8-0-tmpl
        GKE on-prem version: 1.16.0-gke.550
        Creation time:       2023-07-25 01:52:54.228252 +0000 UTC
        CPU:                 4 CPU(s)
        Memory:              16384 MB
        Data disk:           [vsanDatastore] 37a73d64-b823-47cd-2e0c-00620b9189a0/gke-admin-57f8g/default/gke-admin-57f8g-0-data.vmdk
    
    [3] VM template:         /atl-qual-vc07/vm/gke-admin-57f8g-fx9f4c729448z2v8-1-tmpl
        GKE on-prem version: 1.16.0-gke.550
        Creation time:       2023-07-25 01:52:54.210705 +0000 UTC
        CPU:                 4 CPU(s)
        Memory:              16384 MB
        Data disk:           [vsanDatastore] 37a73d64-b823-47cd-2e0c-00620b9189a0/gke-admin-57f8g/default/gke-admin-57f8g-1-data.vmdk
    
    Please enter your numeric choice:
    
  2. מזינים את המספר של המכונה הווירטואלית שרוצים לתקן. אם המכונה הווירטואלית לא מופיעה בפלט, צריך לפנות אל Google Cloud התמיכה.

    אם יש לכם שלושה מכונות וירטואליות שצריך לתקן, הפקודה gkectl repair admin-master מחזירה הודעת שגיאה שדומה לזו אחרי תיקון המכונה הווירטואלית הראשונה:

    If you are repairing admin control plane VM for HA admin cluster,
    it's possible that the API server is still down after repairing one
    of the VMs. Try continue fixing other control plane VMs listed to
    recover the quorum of control plane.
    

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

Non-HA

מריצים את הפקודה הבאה:

gkectl repair admin-master \
  --config ADMIN_CLUSTER_CONFIG \
  --kubeconfig ADMIN_CLUSTER_KUBECONFIG

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

  • ADMIN_CLUSTER_CONFIG בנתיב של קובץ התצורה של אשכול האדמין.
  • ADMIN_CLUSTER_KUBECONFIG עם הנתיב של קובץ kubeconfig של אשכול האדמין.

מכונת ה-VM של מישור הבקרה באשכול האדמין משוכפלת לתבנית של מכונת VM, שמכילה את כל המידע שדרוש ליצירה מחדש של מכונת ה-VM. הפקודה gkectl repair admin-master משתמשת בתבנית של המכונה הווירטואלית כדי ליצור מכונה וירטואלית חדשה. לאחר מכן, המערכת מצרפת דיסק אתחול חדש ואת דיסק הנתונים הקיים.

אם הצמתים של האשכול מקבלים את הכתובות שלהם משרת DHCP, יכול להיות שלמכונה הווירטואלית החדשה תהיה כתובת IP שונה מזו של המכונה הווירטואלית המקורית.

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