שימוש גבוה במסד הנתונים etcd עלול לגרום לחוסר יציבות באשכולות ולמחסור במשאבים, שימנעו את ההרחבה של אשכולות Google Kubernetes Engine (GKE) בצורה יעילה.
במאמר הזה מוסבר איך לזהות אשכולות שבהם השימוש ב-etcd מתקרב למגבלה, ואיך למצוא המלצות לפינוי מקום כדי לוודא שהאשכול יישאר יציב.
המידע הזה חשוב לאדמינים ולמפעילים של פלטפורמות שאחראים על התקינות והמדרגיות של אשכולות GKE. מידע נוסף על התפקידים הנפוצים ומשימות לדוגמה שאנחנו מתייחסים אליהם בתוכן של Google Cloud זמין במאמר תפקידי משתמשים נפוצים ומשימות ב-GKE.
במסמך הזה מוסבר איך לפתור בעיות ביציבות של אשכול שקשורות לשימוש גבוה ב-etcd. אם נתקלתם בבעיה אחרת שקשורה להרחבת היקף הפעילות, יכול להיות שאחד מהמסמכים הבאים יעזור לכם:
בעיות במידרוג אוטומטי של אשכול:
- לפתרון בעיות שקשורות לאי-הוספה של צמתים חדשים, תוכלו לעיין במאמר בנושא פתרון בעיות שקשורות לאי-התאמה אוטומטית לעומס של מידרוג אוטומטי של אשכולות.
- כדי לפתור בעיות שקשורות לצמתים שלא מנוצלים מספיק ולא מוסרים, אפשר לעיין במאמר פתרון בעיות שקשורות למידרוג אוטומטי של אשכולות שלא מצטמצמים.
בעיות ב-Horizontal Pod Autoscaler (HPA): כדי לפתור בעיות שקשורות ל-HPA, אפשר לעיין במאמר פתרון בעיות בהתאמה אופקית של קבוצות Pod לעומס.
בעיות שקשורות לשינוי גודל ב-Autopilot: מידע נוסף על בעיות ספציפיות ל-Autopilot, כולל בעיות שקשורות לשינוי גודל, זמין במאמר פתרון בעיות באשכולות Autopilot.
זיהוי אשכולות שבהם השימוש ב-etcd מתקרב למגבלה
GKE מספק תובנות והמלצות לתרחיש שבו השימוש ב-etcd מתקרב למגבלה. אפשר למצוא את התובנות וההמלצות האלה בדרכים הבאות:
- משתמשים במסוף Google Cloud . עוברים לדף Kubernetes clusters. בעמודה Notifications של אשכולות ספציפיים, מחפשים את ההמלצה Free up space to reduce risk of cluster instability (פינוי מקום כדי להפחית את הסיכון לחוסר יציבות של האשכול).
כדי להשתמש ב-CLI של gcloud או ב-Recommender API, צריך לציין את
ETCD_DB_USAGE_APPROACHING_LIMITrecommender subtype.כדי להריץ שאילתה לגבי ההמלצה הזו, מריצים את הפקודה הבאה:
gcloud recommender recommendations list \ --recommender=google.container.DiagnosisRecommender \ --location=LOCATION \ --project=PROJECT_ID \ --format=yaml \ --filter="recommenderSubtype:ETCD_DB_USAGE_APPROACHING_LIMIT"
כדי ליישם את ההמלצה הזו, צריך להסיר מ-etcd נתונים מיותרים כדי לפנות מקום. יכול להיות שתצטרכו למחוק משאבים ישנים או להעביר אובייקטים גדולים מ-etcd. מידע נוסף זמין במאמר תכנון של אשכולות GKE גדולים.
זיהוי אשכולות שבהם נפח אחסון נדרש לפי סוג אובייקט מתקרב למגבלה
GKE מספק תובנות והמלצות לתרחיש שבו הגודל הכולל של אובייקטים מסוג etcd מתקרב למגבלה. אפשר למצוא את התובנות וההמלצות האלה בדרכים הבאות:
- משתמשים במסוף Google Cloud . עוברים לדף Kubernetes clusters. בעמודה Notifications של אשכולים ספציפיים, מחפשים את ההמלצה Reduce the size of resource type(s).
כדי להשתמש ב-CLI של gcloud או ב-Recommender API, צריך לציין את
APISERVER_RESOURCE_TYPE_SIZE_EXCEEDS_LIMITrecommender subtype.כדי להריץ שאילתה לגבי ההמלצה הזו, מריצים את הפקודה הבאה:
gcloud recommender recommendations list \ --recommender=google.container.DiagnosisRecommender \ --location=LOCATION \ --project=PROJECT_ID \ --format=yaml \ --filter="recommenderSubtype:APISERVER_RESOURCE_TYPE_SIZE_EXCEEDS_LIMIT"כדי להחליט אילו אובייקטים להסיר, אפשר להשתמש ב-kubectl כדי להציג אותם ברשימה. לדוגמה, אם נפח האחסון של ConfigMaps מתקרב למגבלה, הפקודה הבאה תציג את כל ה-ConfigMaps בכל מרחבי השמות, ותעזור לכם לזהות מועמדים למחיקה:
kubectl get configmaps --all-namespaces > new_file.txt
כדי ליישם את ההמלצה הזו ולפנות מקום, צריך להסיר מהאחסון אובייקטים מיותרים מהסוגים שצוינו. התהליך הזה עשוי לכלול מחיקה של משאבים ישנים או העברה של אובייקטים גדולים מהאחסון. מידע נוסף זמין במאמר תכנון של אשכולות GKE גדולים.
המאמרים הבאים
אם לא מצאתם פתרון לבעיה שלכם במסמכים, תוכלו להיעזר בקבלת תמיכה, כולל עצות בנושאים הבאים:
- פתיחת בקשת תמיכה באמצעות פנייה אל Cloud Customer Care.
- קבלת תמיכה מהקהילה על ידי פרסום שאלות ב-StackOverflow ושימוש בתג
google-kubernetes-engineכדי לחפש בעיות דומות. אפשר גם להצטרף לערוץ Slack#kubernetes-engineכדי לקבל תמיכה נוספת מהקהילה. - פתיחת באגים או בקשות להוספת תכונות באמצעות הכלי הציבורי למעקב אחר בעיות.