בדף הזה מוסבר איך לעדכן עומסי עבודה קיימים עם שמירת מצב שפועלים באשכול Kubernetes של מכשיר Google Distributed Cloud (GDC) עם בידוד פיזי. ככל שהאפליקציה מתפתחת על סמך השימוש במשאבים והאופטימיזציות של ההגדרות, צריך לעדכן את מפרט ה-Pod הבסיסי באשכול Kubernetes כדי לשקף את השינויים בעומס העבודה. מידע נוסף על תכנון עדכונים לעומסי עבודה עם שמירת מצב זמין במסמכי Kubernetes בנושא אסטרטגיות עדכון.
הדף הזה מיועד למפתחים בקבוצת מפעילים של אפליקציות, שאחראים לעדכון של עומסי עבודה של אפליקציות בארגון שלהם.
לפני שמתחילים
כדי להשלים את המשימות שמתוארות במאמר הזה, צריך לבקש את ההרשאות הנדרשות ולהכין את הסביבה.
שליחת בקשה לתפקידי IAM
כדי ליצור, למחוק, לערוך או להציג עומסי עבודה עם שמירת מצב באשכול Kubernetes, צריך לבקש מאדמין ה-IAM בארגון להקצות לכם את התפקיד אדמין במרחב שמות (namespace-admin). התפקיד הזה משויך למרחב השמות של הפרויקט.
הכנת הסביבה
כדי להריץ פקודות באשכול Kubernetes בשרת פיזי שהוגדר מראש, צריך לוודא שיש לכם את המשאבים הבאים:
מאתרים את שם אשכול Kubernetes או שואלים את מנהל הפלטפורמה מה שם האשכול.
אם אין לכם קובץ kubeconfig, אתם צריכים להיכנס וליצור אותו עבור אשכול Kubernetes.
משתמשים בנתיב kubeconfig של אשכול Kubernetes כדי להחליף את הערך
CLUSTER_KUBECONFIGבהוראות האלה.
עדכון משאב StatefulSet
כדי לעדכן את StatefulSet, צריך להחיל קובץ מניפסט חדש או מעודכן. האפשרות הזו שימושית כשרוצים לבצע שינויים שונים ב-StatefulSet כשמגדילים את קנה המידה או כשמציינים גרסה חדשה של האפליקציה.
כדי לעדכן אובייקט StatefulSet, מריצים את הפקודה:
kubectl --kubeconfig CLUSTER_KUBECONFIG -n NAMESPACE \
apply -f STATEFULSET_FILE
מחליפים את מה שכתוב בשדות הבאים:
CLUSTER_KUBECONFIG: קובץ ה-kubeconfig של אשכול Kubernetes שמריץ את עומסי העבודה עם שמירת מצב.
NAMESPACE: מרחב השמות של הפרויקט.
STATEFULSET_FILE: השם של קובץ המניפסט המעודכןStatefulSet.
הפקודה kubectl apply מחילה קובץ מניפסט על משאב. אם המשאב שצוין לא קיים, הפקודה יוצרת אותו.
בדיקת פריסת עדכון של משאב StatefulSet
אפשר לראות מידע מפורט על סטטוס ההשקה של העדכון ועל ההיסטוריה של אובייקט StatefulSet. אפשר גם לבטל את ההשקה של אובייקט StatefulSet.
בדיקת ההשקה
כדי לבדוק את ההשקה של משאב StatefulSet, מריצים את הפקודה:
kubectl --kubeconfig CLUSTER_KUBECONFIG -n NAMESPACE \
rollout status statefulset STATEFULSET_NAME
CLUSTER_KUBECONFIG: קובץ ה-kubeconfig של אשכול Kubernetes שמריץ את עומסי העבודה עם שמירת מצב.
NAMESPACE: מרחב השמות של הפרויקט.
STATEFULSET_NAME: השם של אובייקטStatefulSetהמעודכן.
הצגת היסטוריית ההשקה
כדי לראות את היסטוריית ההשקה של משאב StatefulSet, מריצים את הפקודה:
kubectl --kubeconfig CLUSTER_KUBECONFIG -n NAMESPACE \
rollout history statefulset STATEFULSET_NAME
CLUSTER_KUBECONFIG: קובץ ה-kubeconfig של אשכול Kubernetes שמריץ את עומסי העבודה עם שמירת מצב.
NAMESPACE: מרחב השמות של הפרויקט.
STATEFULSET_NAME: השם של אובייקטStatefulSetהמעודכן.
ביטול השקה
כדי לבטל השקה, מריצים את הפקודה:
kubectl --kubeconfig CLUSTER_KUBECONFIG -n NAMESPACE \
rollout undo statefulset STATEFULSET_NAME
מחליפים את מה שכתוב בשדות הבאים:
CLUSTER_KUBECONFIG: קובץ ה-kubeconfig של אשכול Kubernetes שמריץ את עומסי העבודה עם שמירת מצב.
NAMESPACE: מרחב השמות של הפרויקט.
STATEFULSET_NAME: השם של אובייקטStatefulSet.