התאמת עומסי עבודה בלי שמירת מצב

אפשר להרחיב את עומסי העבודה חסרי המצב בהתאם לדרישות המתפתחות של עומסי העבודה שלכם ב-Containers.

לפני שמתחילים

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

שליחת בקשה לתפקידי IAM

כדי ליצור, למחוק, לערוך או להציג עומסי עבודה חסרי סטטוס באשכול Kubernetes, צריך לבקש מאדמין ה-IAM בארגון להקצות לכם את התפקיד אדמין של מרחב שמות (namespace-admin). התפקיד הזה משויך למרחב השמות של הפרויקט.

הכנת הסביבה

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

  1. מאתרים את שם אשכול Kubernetes או שואלים את מנהל הפלטפורמה מה שם האשכול.

  2. אם אין לכם קובץ kubeconfig, אתם צריכים להיכנס וליצור אותו עבור אשכול Kubernetes.

  3. משתמשים בנתיב kubeconfig של אשכול Kubernetes כדי להחליף את הערך CLUSTER_KUBECONFIG בהוראות האלה.

שינוי קנה מידה של פריסה

כדאי להשתמש בפונקציית ההתאמה של Kubernetes כדי להתאים את מספר ה-Pods שפועלים בפריסה.

שינוי אוטומטי של מספר העותקים של הפודים בפריסה

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

kubectl --kubeconfig CLUSTER_KUBECONFIG \
    -n NAMESPACE \
    autoscale deployment DEPLOYMENT_NAME \
    --cpu-percent=CPU_PERCENT \
    --min=MIN_NUMBER_REPLICAS \
    --max=MAX_NUMBER_REPLICAS

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

  • CLUSTER_KUBECONFIG: קובץ ה-kubeconfig של אשכול Kubernetes.

  • NAMESPACE: מרחב השמות של הפרויקט.

  • DEPLOYMENT_NAME: השם של הפריסה שבה רוצים להגדיר שינוי גודל אוטומטי.

  • CPU_PERCENT: יעד ממוצע ניצול המעבד לבקשה, שמיוצג באחוזים, בכל הפודים.

  • MIN_NUMBER_REPLICAS: הגבול התחתון של מספר הפודים שהכלי לשינוי גודל אוטומטי יכול להקצות.

  • MAX_NUMBER_REPLICAS: המגבלה העליונה למספר הפודים שאפשר להקצות באמצעות קנה מידה אוטומטי.

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

kubectl get hpa

הפלט אמור להיראות כך:

NAME              REFERENCE                          TARGET    MINPODS   MAXPODS   REPLICAS   AGE
DEPLOYMENT_NAME   Deployment/DEPLOYMENT_NAME/scale   0% / 50%  1         10        1          18s

שינוי קנה המידה של הפודים בפריסה באופן ידני

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

kubectl --kubeconfig CLUSTER_KUBECONFIG \
    -n NAMESPACE \
    scale deployment DEPLOYMENT_NAME \
    --replicas NUMBER_OF_REPLICAS

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

  • CLUSTER_KUBECONFIG: קובץ ה-kubeconfig של אשכול Kubernetes.

  • NAMESPACE: מרחב השמות של הפרויקט.

  • DEPLOYMENT_NAME: השם של הפריסה שבה רוצים להגדיר שינוי גודל אוטומטי.

  • DEPLOYMENT_NAME: מספר האובייקטים המשוכפלים שנבחרו בפריסה.Pod