שדרוג גרסת האשכול ב-AWS

בדף הזה מוסבר איך לשדרג את גרסת Kubernetes של אשכולות GKE on AWS.

דרישות מוקדמות

שדרוג גרסת Kubernetes של האשכול הוא מקרה ספציפי של פעולת עדכון האשכול הכללית יותר. אפשר לקרוא על פעולות עדכון של אשכולות באופן כללי בדף עדכון האשכול. כדי לשדרג את גרסת האשכול:

  • צריך לשדרג דרך כל גרסה משנית בין הגרסה הנוכחית לגרסת היעד. לדוגמה, כדי לשדרג מגרסה 1.20 לגרסה 1.22, צריך קודם לשדרג מגרסה 1.20 לגרסה 1.21, ואז מגרסה 1.21 לגרסה 1.22.
  • צריכה להיות לכם הרשאה לניהול זהויות והרשאות גישה (IAM) gkemulticloud.googleapis.com/awsClusters.update.

איך מתבצעים עדכונים ב-GKE ב-AWS

שדרוג אשכול מחייב הפעלה מחדש של צמתי מישור הבקרה, ולכן GKE on AWS מבצע 'עדכון בהדרגה' לפי השלבים הבאים:

  1. בוחרים מופע אחד של מישור הבקרה לעדכון. ‫GKE ב-AWS מעדכן מקרים לא תקינים, אם יש כאלה, לפני מקרים תקינים.
  2. יוצרים תבנית השקה חדשה למופע.
  3. מעדכנים את תבנית ההפעלה של קבוצת ה-Auto Scaling.
  4. מוחקים את המכונה. ‫AWS יוצר מחדש את המופע והמופע מופעל עם ההגדרה החדשה.
  5. מבצעים בדיקות תקינות במופע החדש.
  6. אם בדיקות התקינות מצליחות, בוחרים מופע אחר ומבצעים בו את אותם השלבים. חוזרים על התהליך הזה עד שכל המופעים יופעלו מחדש או ייצרו מחדש. אם בדיקת תקינות נכשלת, GKE ב-AWS מעביר את האשכול למצב DEGRADED ומפסיק את העדכון. מידע נוסף מפורט בקטע הבא.
  7. מוחקים את תבנית ההפעלה המקורית.

מה קורה כשעדכון נכשל

אחרי עדכון, GKE ב-AWS מבצע בדיקת תקינות באשכול. אם בדיקת תקינות נכשלת, האשכול מסומן בסטטוס DEGRADED. אפשר להציג את הסטטוס של האשכול באמצעות הפקודה הבאה של Google Cloud CLI:

gcloud container aws clusters describe CLUSTER_NAME \
  --location=GOOGLE_CLOUD_LOCATION

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

  • CLUSTER_NAME: השם של האשכול
  • GOOGLE_CLOUD_LOCATION: האזור Google Cloud שמנהל את האשכול

ביצוע השדרוג

בדיקת גרסת האשכול

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

gcloud container aws get-server-config \
    --location=GOOGLE_CLOUD_LOCATION

מחליפים את GOOGLE_CLOUD_LOCATION במיקום שממנו מנהלים את האשכולות. Google Cloud

בחירת שיטת שדרוג

אפשר לשדרג את גרסת האשכול באמצעות Google Cloud המסוף, Google Cloud CLI או GKE Multi-Cloud API. אם רוצים להשתמש במסוף כדי לשדרג אשכול, קודם צריך לבחור ולהגדיר שיטת אימות לכניסה לאשכול. מידע נוסף זמין במאמר התחברות לאשכול ואימות.

המסוף

  1. במסוף Google Cloud , נכנסים לדף Google Kubernetes Engine clusters overview.

    מעבר לאשכולות GKE

  2. בוחרים את הפרויקט Google Cloud שבו נמצא האשכול.

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

  4. בכרטיסייה פרטים, לוחצים על שדרוג.

  5. בתיבת הדו-שיח Upgrade the Kubernetes version for the cluster (שדרוג גרסת Kubernetes עבור האשכול), בוחרים את הגרסה שאליה רוצים לשדרג ולוחצים על Done (סיום). חשוב לזכור: כשמשדרגים את האשכול, צריך לשדרג את כל הגרסאות המשניות.

gcloud

כדי לשדרג את גרסת Kubernetes של האשכול, מריצים את הפקודה הבאה:

gcloud container aws clusters update CLUSTER_NAME \
    --location=GOOGLE_CLOUD_LOCATION \
    --cluster-version=CLUSTER_VERSION

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

API

כדי לעדכן את האשכול באמצעות ה-API, משתמשים בפעולה PATCH ב-GKE Multi-Cloud API.

  1. יוצרים קובץ JSON בשם cluster_update.json עם התוכן הבא:

    {
        "controlPlane": {
           "version": "CLUSTER_VERSION",
        },
    }
    

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

    • CLUSTER_VERSION: גרסת האשכול הנתמכת החדשה. הערה: כשמשדרגים את האשכול, צריך לשדרג את כל הגרסאות המשניות.
  2. מעדכנים את ההגדרות האלה באמצעות GKE Multi-Cloud API עם הפקודה הבאה.

    curl -d @cluster_update.json -X PATCH \
       ENDPOINT/projects/PROJECT_ID/locations/GOOGLE_CLOUD_LOCATION/awsClusters/CLUSTER_ID?update_mask=controlPlane.Version
    

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

מידע נוסף זמין במאמרי העזרה בנושא השיטה projects.locations.awsClusters.patch.

שדרוג של מאגרי הצמתים

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

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