במאמר הזה מוסבר איך למחוק עומסי עבודה קיימים עם שמירת מצב (stateful) שפועלים באשכול Kubernetes עם פער אוויר ב-Google Distributed Cloud (GDC). כדי לשמור על התקינות והביצועים של אשכול Kubernetes, חשוב להסיר עומסי עבודה שלא נמצאים יותר בשימוש.
המסמך הזה מיועד למפתחים בקבוצת מפעילי האפליקציות, שאחראים על ניהול עומסי העבודה של האפליקציות בארגון. מידע נוסף זמין במאמר קהלי היעד של GDC עם air gap.
לפני שמתחילים
כדי להשלים את המשימות שבמסמך הזה, צריך לבקש את ההרשאות הנדרשות ולהכין את הסביבה.
בקשת תפקידים ב-IAM
כדי לקבל את ההרשאות שנדרשות למחיקת עומסי עבודה עם שמירת מצב, צריך תפקידים ספציפיים. התפקידים שאתם צריכים תלויים בשאלה אם אתם עובדים באשכול משותף ברמת הארגון או באשכול רגיל ברמת הפרויקט. למידע נוסף, קראו את המאמר הגדרות של אשכולות Kubernetes.
תפקידים משותפים באשכול
כדי ליצור, למחוק, לערוך או להציג עומסי עבודה עם שמירת מצב באשכול משותף, בקשו מהאדמין של הפרויקט ב-IAM להקצות לכם את התפקיד אדמין של מרחב שמות (namespace-admin). התפקיד הזה קשור למרחב השמות של הפרויקט.
תפקידים רגילים באשכול
כדי ליצור, למחוק, לערוך או להציג עומסי עבודה עם שמירת מצב באשכול רגיל, בקשו מהאדמין של הפרויקט ב-IAM להקצות לכם את התפקיד מפתח אשכולות (cluster-developer). התפקיד הזה קשור למרחב השמות של הפרויקט.
הכנת הסביבה
כדי להריץ פקודות באשכול Kubernetes באמצעות ה-API, צריך לוודא שיש לכם את המשאבים הבאים:
מאתרים את שם האשכול של Kubernetes, או שואלים חבר בקבוצת האדמינים של הפלטפורמה מה שם האשכול.
נכנסים לחשבון ויוצרים את קובץ kubeconfig לאשכול Kubernetes.
בהוראות הבאות, מחליפים את
KUBERNETES_CLUSTER_KUBECONFIGבנתיב kubeconfig של אשכול Kubernetes.
מחיקת משאב ב-StatefulSet
אם אתם לא צריכים יותר את עומסי העבודה של הקונטיינרים עם שמירת המצב שמשויכים למשאב StatefulSet, אתם יכולים למחוק אותו.
כדי למחוק משאב של
StatefulSet, מריצים את הפקודה:kubectl --kubeconfig KUBERNETES_CLUSTER_KUBECONFIG \ -n NAMESPACE \ delete statefulset STATEFULSET_NAMEמחליפים את מה שכתוב בשדות הבאים:
KUBERNETES_CLUSTER_KUBECONFIG: קובץ ה-kubeconfig של האשכול.
NAMESPACE: מרחב השמות של עומס העבודה בקונטיינר. באשכולות משותפים, צריך להשתמש במרחב שמות של פרויקט. באשכולות רגילים, זה יכול להיות כל מרחב שמות.
STATEFULSET_NAME: השם של האובייקט מסוגStatefulSetשרוצים למחוק.
כשמוחקים משאב
StatefulSet, כל הפודים שלו נמחקים גם כן. אם רוצים למחוק רק את המשאבStatefulSetולא את הפודים שלו, צריך לכלול את הפרמטר--cascade=orphan.מוחקים את השירות המשויך:
kubectl --kubeconfig KUBERNETES_CLUSTER_KUBECONFIG \ delete service SERVICE_NAMEמחליפים את המשתנים הבאים:
KUBERNETES_CLUSTER_KUBECONFIG: קובץ ה-kubeconfig של האשכול.
SERVICE_NAME: השם של האובייקטServiceשרוצים למחוק.