הסרת ההתקנה של סנכרון תצורות

בדף הזה מוסבר איך להסיר את סנכרון תצורות מהאשכול, להשבית את התכונה Config Management fleet בצי ולהסיר את ConfigManagement Operator.

הדף הזה מיועד לאדמינים ולמפעילים בתחום ה-IT שמנהלים את מחזור החיים של תשתית טכנולוגית בסיסית. מידע נוסף על תפקידים נפוצים ומשימות לדוגמה שאנחנו מתייחסים אליהם בתוכן זמין במאמר תפקידים נפוצים של משתמשי GKE ומשימות. Cloud de Confiance by S3NS

התכונה Config Management fleet מנהלת את סנכרון תצורות באמצעות ConfigManagement Operator. בגלל הארכיטקטורה הזו, צריך להשלים את שלבי ההסרה בסדר הבא:

  1. הסרת סנכרון תצורות מהאשכול
  2. השבתת התכונה 'ניהול הגדרות' בצי המכשירים
  3. הסרת ConfigManagement Operator מהאשכול

הסרת סנכרון תצורות מהאשכול

המסוף

אי אפשר להסיר את סנכרון תצורות רק באמצעות מסוף Cloud de Confiance . במקום זאת, משתמשים ב-Google Cloud CLI.

gcloud

  1. פותחים את מניפסט applySpec שיצרתם במהלך ההתקנה באמצעות Google Cloud CLI.

  2. במניפסט applySpec, מגדירים את spec.configSync.enabled ל-false:

    applySpecVersion: 1
    spec:
      configSync:
        enabled: false
    ...
    
  3. מחילים את השינויים:

      gcloud beta container fleet config-management apply \
          --membership=MEMBERSHIP_NAME \
          --config=CONFIG_YAML \
          --project=PROJECT_ID
    

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

    • MEMBERSHIP_NAME: מוסיפים את האשכול הרשום שרוצים להחיל עליו את ההגדרה הזו. אם רשמתם את האשכול במסוףCloud de Confiance , שם החברות זהה לשם האשכול.

    • CONFIG_YAML: מוסיפים את הנתיב לקובץ apply-spec.yaml.

    • PROJECT_ID: מוסיפים את מזהה הפרויקט.

Terraform

אם השתמשתם ב-Terraform כדי להתקין את סנכרון תצורות באמצעות משאב gke_hub_feature_membership מתוך Google Cloud Platform Provider, תצטרכו לעדכן את המשאב הזה כדי להסיר את סנכרון תצורות. לא משתמשים בפקודה terraform destroy. הפקודה terraform destroy לא מסירה את סנכרון תצורות באופן מלא. חלק מהרכיבים נשארים.

  1. מאתרים את המשאב gke_hub_feature_membership בקובצי ההגדרות של Terraform שמאוכלס בארגומנט configmanagement.

  2. מעדכנים את המשאב gke_hub_feature_membership כדי להסיר את הארגומנט config_sync מה-configmanagement.

    לדוגמה:

    resource "google_gke_hub_feature_membership" "feature_member" {
      location = "global"
      feature = google_gke_hub_feature.feature.name
      membership = google_gke_hub_membership.membership.membership_id
      membership_location = google_gke_hub_membership.membership.location
      configmanagement {
        version = "1.21.0"
      }
    }
    
  3. מחילים את ההגדרות של Terraform:

    terraform apply
    

    כדי לאשר שרוצים להחיל את הפעולות שמתוארות, מזינים yes.

Config Connector

אם השתמשתם ב-Config Connector כדי להתקין את סנכרון תצורות באמצעות משאב GKEHubFeatureMembership, צריך לעדכן את המשאב הזה כדי להסיר את סנכרון תצורות.

  1. מזהים את אובייקט המשאב GKEHubFeatureMembership באשכול שמאוכלס בשדה .spec.configmanagement.configSync.

  2. מבצעים תיקון (patch) של אובייקט המשאב GKEHubFeatureMembership כדי להסיר את השדה .spec.configmanagement.configSync על ידי הגדרתו כ-null:

    kubectl patch GKEHubFeatureMembership FEATURE_MEMBERSHIP_OBJECT_NAME \
        --namespace FEATURE_MEMBERSHIP_OBJECT_NAMESPACE \
        -p '{"spec":{"configmanagement":{"configSync": null}}}'
    

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

    • FEATURE_MEMBERSHIP_OBJECT_NAME: מוסיפים את השם של אובייקט המשאב GKEHubFeatureMembership שיצרתם קודם.

    • FEATURE_MEMBERSHIP_OBJECT_NAMESPACE: מוסיפים את מרחב השמות שמכיל את GKEHubFeatureMembership אובייקט המשאב שיצרתם קודם.

השבתה של ניהול ההגדרות בצי

המסוף

  1. נכנסים לדף Feature Manager במסוף Cloud de Confiance .

    מעבר אל Feature Manager

  2. בשורה Config Management בטבלה Features, לוחצים על Details. יופיע הדף סיכום הסטטוס.

  3. לוחצים על השבתת ניהול ההגדרות. יופיע דף אישור.

  4. בדף האישור, לוחצים על השבתת ניהול ההגדרות.

gcloud

  1. כדי להשבית את ניהול התצורה בכל האשכולות בצי, מריצים את הפקודה הבאה:

    gcloud beta container fleet config-management disable
    

Terraform

אם השתמשתם ב-Terraform כדי להפעיל את התכונה 'ניהול תצורות' בצי באמצעות משאב google_gke_hub_feature מה-Google Cloud Platform Provider, אתם צריכים לעדכן את המשאב הזה כדי להשבית את התכונה 'ניהול תצורות' בכל האשכולות בצי.

  1. מעדכנים את קובץ ה-HCL שמכיל את המשאב google_gke_hub_feature כדי להסיר את המשאב google_gke_hub_feature.

  2. אם עדיין מוגדר משאב gke_hub_feature_membership עם שדה feature שמפנה אל google_gke_hub_feature שהוסר, צריך להסיר גם את משאב gke_hub_feature_membership הזה.

  3. מחילים את ההגדרות של Terraform:

    terraform apply
    

    כדי לאשר שרוצים להחיל את הפעולות שמתוארות, מזינים yes.

Config Connector

אם השתמשתם ב-Config Connector כדי להפעיל את התכונה 'ניהול תצורה' בצי באמצעות משאב GKEHubFeature, אתם צריכים לעדכן את המשאב הזה כדי להשבית את ניהול התצורה בכל האשכולות בצי.

  1. מזהים את אובייקט המשאב GKEHubFeature באשכול עם הערך .spec.resourceID של configmanagement.

  2. אם עדיין מוגדר אובייקט משאב GKEHubFeatureMembership עם שדה .spec.featureRef שמפנה לאובייקט המשאב GKEHubFeature, צריך למחוק אותו:

    kubectl delete GKEHubFeatureMembership FEATURE_MEMBERSHIP_OBJECT_NAME \
        --namespace FEATURE_MEMBERSHIP_OBJECT_NAMESPACE
    

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

    • FEATURE_MEMBERSHIP_OBJECT_NAME: מוסיפים את השם של אובייקט המשאב GKEHubFeatureMembership שיצרתם קודם.

    • FEATURE_MEMBERSHIP_OBJECT_NAMESPACE: מוסיפים את מרחב השמות שמכיל את GKEHubFeatureMembership אובייקט המשאב שיצרתם קודם.

  3. מוחקים את המשאב GKEHubFeature מהאשכול:

    kubectl delete GKEHubFeature FEATURE_OBJECT_NAME \
        --namespace FEATURE_OBJECT_NAMESPACE
    

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

    • FEATURE_OBJECT_NAME: מוסיפים את השם של GKEHubFeature אובייקט המשאב שיצרתם קודם.

    • FEATURE_OBJECT_NAMESPACE: מוסיפים את מרחב השמות שמכיל את GKEHubFeature אובייקט המשאב שיצרתם קודם.

הסרת האופרטור ConfigManagement

אפשר להשתמש ב-kubectl כדי למחוק את ConfigManagement Operator אחרי שמשביתים את התכונה Config Management בצי או מבטלים את הרישום של האשכול בצי.

כדי להסיר את ConfigManagement Operator, מריצים את הפקודות הבאות:

  1. מוחקים את אובייקט ConfigManagement מהאשכול:

    kubectl delete configmanagement --all
    

    אחרי שמריצים את הפקודה הזו, קורים הדברים הבאים:

    • כל ClusterRoles ו-ClusterRoleBindings שנוצרו באשכול על ידי ConfigManagement Operator נמחקים מהאשכול.
    • כל ההגדרות של בקרת הכניסה שהותקנו על ידי ConfigManagement Operator נמחקות.
    • התוכן של מרחב השמות config-management-system נמחק, למעט git-creds Secret, ובגרסאות של סנכרון תצורות החל מ-1.9.0,‏ config-management-operator Deployment ו-config-management-operator Pod. המפעיל ConfigManagement לא יכול לפעול בלי config-management-system namespace. כל CustomResourceDefinitions‏ (CRD) שנוצרו או שונו על ידי בקר ConfigManagement Operator מוסרים מהאשכולות שבהם הם נוצרו או שונו. ה-CRD שנדרש להפעלת ConfigManagement Operator עדיין קיים, כי מנקודת המבט של Kubernetes, הוא נוסף על ידי המשתמש שהתקין את ConfigManagement Operator. הסבר על הסרת הרכיבים האלה מופיע בשלב הבא.
  2. אם אתם צריכים לשמור את git-creds הסוד, עליכם לעשות זאת עכשיו:

    kubectl -n config-management-system get secret git-creds -o yaml
    
  3. מוחקים את מרחב השמות config-management-system:

    kubectl delete ns config-management-system
    
  4. מוחקים את מרחב השמות config-management-monitoring:

    kubectl delete ns config-management-monitoring
    
  5. מחיקת ה-CustomResourceDefinition של ConfigManagement:

    kubectl delete crd configmanagements.configmanagement.gke.io