שיפור השירותים ב-GKE בעזרת Gemini

בדף הזה מוסבר איך אפשר לכוונן את הפריסות של Google Kubernetes Engine‏ (GKE) כדי לשפר את הביצועים והאמינות באמצעות Gemini Cloud Assist, כלי מבוסס-AI ל Google Cloud. העזרה של Gemini יכולה לכלול המלצות, יצירת קוד ופתרון בעיות.

בין היתרונות הרבים של Gemini Cloud Assist, הוא יכול לעזור לכם:

  • צמצום עלויות: זיהוי משאבים לא פעילים, התאמת גודל הפריסות ואופטימיזציה של הגדרות שינוי הגודל האוטומטי כדי לצמצם הוצאות מיותרות.
  • שיפור האמינות והיציבות: זיהוי יזום של בעיות פוטנציאליות, כמו הטיה בגרסה או תקציבים חסרים להפרעות ב-Pod, כדי למנוע זמן השבתה ולהבטיח את עמידות האפליקציה.
  • אופטימיזציה של עומסי עבודה של AI/ML: קבלת עזרה בפריסה, בניהול ובאופטימיזציה של עומסי עבודה של AI/ML ב-GKE.
  • לפשט את פתרון הבעיות: לנתח במהירות את היומנים ולזהות את שורש הבעיה של השגיאות, וכך לחסוך זמן ומאמץ.

הדף הזה מיועד למשתמשי GKE קיימים, למפעילים ולמפתחים שמקצים ומגדירים משאבי ענן ופורסים אפליקציות ושירותים. מידע נוסף על תפקידים נפוצים ומשימות לדוגמה שמוזכרים ב Google Cloud תוכן זמין במאמר תפקידים נפוצים של משתמשים ומשימות ב-GKE.

איך Gemini for Google Cloud ‎ משתמש בנתונים שלכם, ובאילו מקרים.

עלויות

  • ‫Gemini: במהלך תקופת התצוגה המקדימה, השימוש ב-Gemini Cloud Assist לא כרוך בעלות.

  • ‫GKE: אין עלויות נוספות לשימוש ב-Gemini Cloud Assist ב-GKE.

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

כדי להתחיל להשתמש ב-Gemini עם GKE, צריך לוודא שמתקיימות הדרישות המוקדמות הבאות.

במדריך הזה אנחנו יוצאים מנקודת הנחה שיש לכם אשכול GKE, ועדיף גם כמה פריסות שפועלות.

שאלות ל-Gemini Cloud Assist

אפשר להפעיל את Gemini Cloud Assist דרך מסוף Google Cloud . עם Gemini Cloud Assist, אתם יכולים להשתמש בהנחיות בשפה טבעית כדי לקבל עזרה במשימות במהירות וביעילות.

כדי לפתוח את Cloud Assist מדף GKE, פועלים לפי השלבים הבאים:

  1. בדף לבחירת הפרויקט במסוף Google Cloud , בוחריםGoogle Cloud פרויקט שבו הפעלתם את Gemini Cloud Assist.

    כניסה לדף לבחירת הפרויקט

  2. במסוף Google Cloud , עוברים לדף ספציפי במסוף Kubernetes Engine.

    לדוגמה, עוברים לדף Kubernetes Engine Overview.

    לסקירה הכללית של Kubernetes Engine

    אם יש לכם שאלה לגבי משאב ספציפי, קודם צריך לנווט לדף הרלוונטי. לדוגמה, בדף Clusters,‏ Gemini Cloud Assist יכול לתת לכם עצות לגבי ניהול האשכולות, מעקב אחרי תקינות האשכולות ופתרון בעיות באשכולות. שימוש ב-Gemini בדף מסוים Google Cloud במסוף עוזר לספק הקשר לשאלות שלכם. ‫Gemini יכול להשתמש בהקשר הזה, יחד עם הפרויקט הכללי שבו אתם נמצאים, כדי ליצור עזרה מותאמת ומדויקת יותר.

  3. כדי לפתוח את החלונית של Gemini Cloud Assist, לוחצים על סמל הנצנוץ Open or close Gemini AI chat בסרגל הכלים.

  4. אם מתבקשים לעשות זאת ומסכימים לתנאים, לוחצים על אישור.

  5. כותבים פרומפט בחלונית Gemini. בקטע הבא מופיעה דוגמה לתהליך עבודה של שימוש ב-Gemini לפתרון בעיות.

מידע נוסף על השימוש ב-Gemini במסוף Google Cloud זמין במאמר שימוש ב-Gemini Cloud Assist.

דוגמה לשימוש ב-Gemini לפתרון בעיות

‫Gemini יכול לעזור לכם לפתור בעיות בשירותי GKE.

  1. נכנסים לדף Workloads במסוף Google Cloud .

    כניסה לדף Workloads

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

  3. לוחצים על הכרטיסייה Logs (יומנים).

  4. בסרגל הכלים, לוחצים על סמל הנצנוץ Open or close Gemini AI chat.

  5. כותבים פרומפט שמתאר את הבעיה שנתקלתם בה. לדוגמה, 'יש השהיה גבוהה באפליקציית מסד הנתונים accounts-db שלי'. יכול להיות ש-Gemini יבקש עוד הקשר, כמו סוג מסד הנתונים, היקף ההשפעה, כמו הפעולות והמשתמשים שההשהיה משפיעה עליהם.

  6. ‫Gemini יכול לספק הנחיות לניתוח היומנים בעצמכם, ולהציע הצעות לפתרון בעיות.

  7. בודקים את ההצעות ופועלים לפיהן כדי לפתור את הבעיה.

פרומפטים לדוגמה ל-Gemini Cloud Assist

בקטע הזה מוצגים כמה תרחישים לדוגמה מהעולם האמיתי, ומוצעות הנחיות שאפשר לנסות לשאול את Gemini. יכול להיות שהתשובות שתקבלו יהיו גנריות, או שהן יהיו מותאמות אישית ויוכלו לעזור לכם לפעול בהתאם למצב הייחודי של סביבתGoogle Cloud העבודה שלכם. התשובות יכולות לכלול Google Cloud קישורים למסוף לצורך בדיקה וניהול של משאבי Cloud, וקישורים למסמכי העזר הרלוונטיים לקבלת מידע נוסף.

הפחתת עלויות

בטבלה הבאה מתוארות ההנחיות שבהן אפשר להשתמש כדי לצמצם את העלויות.

פרומפט סוג התגובה
‫"How can I save costs on my GKE clusters without sacrificing performance?" (איך אפשר לחסוך בעלויות של אשכולות GKE בלי לפגוע בביצועים?)
  • המלצות שמזהות משאבים שלא נעשה בהם שימוש מספיק ומציעות להסיר אותם, כמו אשכולות לא פעילים.
  • המלצות לגבי הפעלה או שינוי של מנגנוני שינוי גודל אוטומטי.
  • הצעות שמדגישות את החיסכון הפוטנציאלי באמצעות בדיקות של הגדרות, כמו מדיניות שמירת נתונים של יומנים.
"אני רוצה לשדרג את אשכול GKE מספר my-docker-cluster. יש לך המלצות?" הצעות ליישום הגדרות ספציפיות של Kubernetes ושיטות מומלצות, למשל:
  • הגדרת בקשות וגבולות של משאבים לקבוצות Pod כדי להבטיח הקצאת משאבים צפויה.
  • שימוש במרחבי שמות ייעודיים כדי לבודד עומסי עבודה.
  • הטמעה של תקציבים להפרעות ב-Pod כדי לוודא שמספר מינימלי של רפליקות של Pod זמין במהלך הפרעות רצוניות, כמו תחזוקה או שדרוגים של צמתים.
  • תזמון חלונות זמן לתחזוקה כדי לנהל שיבושים מתוכננים ולצמצם את זמן ההשבתה הבלתי צפוי.
  • רישום אשכולות לערוצי הפצה כדי לנהל שדרוגים של גרסאות GKE.
"I have a large traffic spike coming in a couple of weeks on the my-docker-cluster cluster. יש לך המלצות?"
  • שיטות להגדלת מספר ה-Pod של האפליקציה באמצעות Horizontal Pod Autoscaler (HPA).
  • אסטרטגיות להגדלת המשאבים (CPU, זיכרון) לכל Pod באמצעות Vertical Pod Autoscaler.
‫"Which of my GKE workloads don't have HPA enabled?‎" (אילו מעומסי העבודה שלי ב-GKE לא מופעלים עם HPA?) רשימת עומסי העבודה שלא מופעל בהם Horizontal Pod Autoscaler (HPA).

שיפור האמינות והיציבות

בטבלה הבאה מתוארות ההנחיות שבהן אפשר להשתמש כדי לשפר את המהימנות והיציבות של עומסי העבודה ב-GKE.

פרומפט סוג התגובה
"איך אפשר לשפר את המהימנות של אשכולות GKE ולמנוע השבתה?"
  • מזהה את ההבדלים בין הגרסאות באשכולות ומציע פעולות לשמירה על תאימות לגרסת Kubernetes.
  • מספק המלצות להטמעה של בידוד משאבים.
  • ההמלצות האלה עוזרות להגדיר תקציבים להפרעות ב-Pod כדי לשמור על מספר מינימלי של עותקים של Pod שפועלים במהלך תחזוקה מתוכננת או שדרוגים.
‫"Show me how I can move my workloads from the namespace on ."‏ (הצגת הוראות להעברת עומסי עבודה ממרחב השמות Default ב-my-cluster). כדי לעשות את זה, מבצעים את השלבים הבאים:
  • מכינים את אשכול היעד.
  • מעבירים את האפליקציות והנתונים אל אשכול היעד.
  • המעבר בין השירותים מתבצע עם זמן השבתה מינימלי.
‫"How do I ensure high availability for my running pods?‎" (איך אפשר להבטיח זמינות גבוהה של הפודים הפעילים?)
  • הליך מפורט שמציין פריסה שמשתמשת ב-podAntiAffinity, וכמה עותקים משוכפלים ליתירות.
  • הצעות להגדרת בקשות ומגבלות של משאבים ולשימוש בהתאמה אופקית של קבוצות Pod לעומס.

אופטימיזציה של GKE לעומסי עבודה של AI/ML

בטבלה הבאה מפורטות ההנחיות שבהן אפשר להשתמש כדי לקבל עזרה בפריסה, בניהול ובאופטימיזציה של עומסי עבודה של AI/ML ב-GKE.

פרומפט סוג התגובה
"מהן ההגדרות המומלצות של מאגר הצמתים להרצת אימון TensorFlow מבוזר בקנה מידה גדול ב-GKE עם מעבדי GPU?" המלצות לאופטימיזציה של אימון מבוזר של למידת מכונה ב-TensorFlow ב-GKE יכולות לכלול את ההמלצות הבאות:
  • בחירת סוגי ה-GPU והמכונות המתאימים.
  • הפעלת שינוי גודל אוטומטי.
  • מתבצעת אופטימיזציה לחיבור לרשת.
  • שימוש במסגרות עבודה של אימון מבוזר.
  • הטמעת אמצעים לחיסכון בעלויות.
‫"How do I use GPUs on GKE for training?" סקירה כללית של השלבים והשיקולים להגדרת אשכול ועומסי עבודה לשימוש במעבדי GPU.
"תן לי דוגמה לפריסה של קונטיינר להצגת מודל ב-GKE". דוגמה עם קוד לדוגמה לפריסת קונטיינר לפרסום המודל ב-GKE. יכול להיות שהדוגמה תכלול שיטות מומלצות ותעזור להבטיח יכולת הרחבה.
"באילו מדדים כדאי לעקוב כדי להעריך את האפקטיביות של הגדרת איזון העומסים שלי להסקת מסקנות?" רשימת המדדים – כמו התפלגות התנועה, זמן האחזור, שיעורי השגיאות, המעבד וניצול הזיכרון – כדי לקבל תובנות לגבי הביצועים והתקינות של הגדרת איזון העומסים.

לפתור בעיות בקלות רבה יותר

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

פרומפט סוג התגובה
‫"What's this error about?
Readiness probe failed: Get "https://10…./abcd": context deadline exceeded (Client.Timeout exceeded while awaiting headers)" (מה השגיאה הזו?)
ההסבר הוא ש-kubelet לא הצליח להפעיל את בדיקת המוכנות של הקונטיינר בתוך פרק הזמן שהוגדר, ומוצעות סיבות אפשריות ופעולות לפתרון בעיות.
‫"Why is my deployment crashing with error ?‎" (למה הפריסה nettools קורסת עם השגיאה ping: socket: Operation not permitted?) ההסבר כולל את העובדה שהפקודה ping דורשת את היכולת של הקשר האבטחתי CAP_NET_RAW, ושכברירת מחדל, קונטיינרים ב-Kubernetes פועלים עם קבוצה מוגבלת של יכולות מטעמי אבטחה.
"What does it mean when my pod is unschedulable due to the error Cannot schedule pods: No preemption victims found for incoming pod." הסבר על האופן שבו מתבצע תזמון של Pod ועל האופן שבו מתבצעת קדימות ב-Kubernetes. רשימת השלבים לפתרון הבעיה של אי-מציאת קורבן להקדמה.

המאמרים הבאים