הגרסה הקודמת של GKE Attached Clusters נקראת GKE Attached Clusters (דור קודם). מעבר מהגרסה הקודמת של אשכולות GKE מצורפים לדור הנוכחי מאפשר לכם גישה לפונקציונליות הזו, כולל ניהול מחזור החיים ורישום Fleet. ההעברה היא פעולה חד-כיוונית: אחרי שתעברו לדור הנוכחי של אשכולות GKE מצורפים, לא תהיה אפשרות לחזור לאשכולות GKE מצורפים (דור קודם).
מדיניות מספור הגרסאות
במסמכים האלה, הגרסה של אשכולות מצורפים ב-GKE נקראת גרסת הפלטפורמה, כדי להבדיל אותה מגרסת Kubernetes. באשכולות GKE מצורפים משתמשים באותה שיטה למספור גרסאות כמו ב-GKE – לדוגמה, 1.21.5-gke.1. כשמצרפים או מעדכנים את האשכול, צריך לבחור גרסת פלטפורמה שגרסת המשנה שלה זהה לגרסת Kubernetes של האשכול או נמוכה ממנה ברמה אחת. לדוגמה, אתם יכולים לצרף אשכול שמריץ Kubernetes בגרסה 1.22.* עם פלטפורמת אשכולות מצורפים של GKE בגרסה 1.21.* או 1.22.*.
כך תוכלו לשדרג את האשכול לגרסה המשנית הבאה לפני שתשדרגו את אשכולות GKE המצורפים.
מוודאים ש-Workload Identity מופעל
באשכולות קיימים מ-GKE attached clusters (דור קודם), צריך להפעיל את Workload Identity לפני שמבצעים העברה לדור הנוכחי של GKE attached clusters.
כדי לבדוק אם WI מופעל, מריצים את הפקודה הבאה ומחפשים בשדה הפלט Workload Identity:
gcloud container hub memberships describe MEMBERSHIP_NAMEאם Workload Identity לא מופעל, צריך לעדכן את החברות כדי להפעיל אותו.
מאחזרים את כתובת ה-URL של מנפיק OIDC של האשכול באמצעות הפקודה הבאה:
aws eks describe-cluster \ --region AWS_REGION \ --name CLUSTER_NAME \ --query "cluster.identity.oidc.issuer" \ --output textהפלט של הפקודה הזו יהיה כתובת ה-URL של מנפיק OIDC. שומרים את הערך הזה לשימוש מאוחר יותר.
מעדכנים את המינוי:
gcloud container fleet memberships register MEMBERSHIP_NAME \ --context=KUBECONFIG_CONTEXT \ --kubeconfig=KUBECONFIG_PATH \ --enable-workload-identity \ --public-issuer-url=OIDC_URLמחליפים את:
- MEMBERSHIP_NAME: שם החברות באשכול
- KUBECONFIG_CONTEXT: ההקשר בקובץ kubeconfig לגישה לאשכול EKS
- KUBECONFIG_PATH: הנתיב לקובץ kubeconfig
- OIDC_URL: כתובת ה-URL של OIDC שאוחזרה קודם
העברת האשכול
כדי להעביר את האשכול מ-GKE Attached Clusters (דור קודם) ל-GKE Attached Clusters:
מחלקים את ההקשר של kubeconfig באשכול ומאחסנים אותו במשתנה הסביבה KUBECONFIG_CONTEXT:
KUBECONFIG_CONTEXT=$(kubectl config current-context)מריצים את הפקודה הבאה כדי להעביר את האשכול לדור הנוכחי של אשכולות GKE מצורפים. הפקודה הזו מחלצת את הפרטים הרלוונטיים של ההגדרה של האשכול, רושמת את האשכול ב-Google Fleet Management ומתקינה או משדרגת תוכנות נדרשות, כמו סוכן מחזור החיים, באשכול.
gcloud container attached clusters import \ --location=GOOGLE_CLOUD_REGION \ --fleet-membership=FLEET_MEMBERSHIP \ --platform-version=PLATFORM_VERSION \ --distribution=CLUSTER_DISTRIBUTION \ --context=KUBECONFIG_CONTEXT \ [--kubeconfig=KUBECONFIG_PATH]מחליפים את:
- GOOGLE_CLOUD_REGION: Google Cloud המיקום שממנו מתבצע הניהול של האשכול
- FLEET_MEMBERSHIP: המזהה המוגדר במלואו של החברות באשכול הרשום (ראו בהמשך)
- PLATFORM_VERSION: הגרסה של GKE Attached Clusters שאליה רוצים לבצע מיגרציה (לדוגמה: v1.22.0-gke.1)
- CLUSTER_DISTRIBUTION: סוג האשכול –
eksל-Elastic Kubernetes Service של AWS,aksל-Azure Kubernetes Service אוgenericלכל הפצה אחרת - KUBECONFIG_CONTEXT: השם של ההקשר ב-
kubeconfigשלכם להתחברות לאשכול - KUBECONFIG_PATH: המיקום של קובץ
kubeconfig. אם לא מציינים ערך, ברירת המחדל היא~/.kube/config
מזהה החברות הוא מחרוזת שמזהה באופן ייחודי את האשכול המצורף, והפורמט שלו הוא
projects/PROJECT_NUMBER/locations/global/memberships/MEMBERSHIP_ID, כאשרPROJECT_NUMBER הוא מספר פרויקט המארח של ה-Fleet. צריך לציין את אותו מספר פרויקט שהאשכול שייך לו כרגע
MEMBERSHIP_ID: המזהה הזה חייב להיות מזהה החברות ב-Fleet של האשכול הקיים. באשכולות GKE מצורפים, הערך הזה ישמש כשם האשכול.