ערוצי הפצה מנוהלים של Cloud Service Mesh
צוות Cloud Service Mesh מפרסם עדכונים לעיתים קרובות, כדי לספק עדכוני אבטחה, לפתור בעיות ידועות ולהציג תכונות חדשות. ערוצי ההפצה מאזנים בין יציבות לבין מערך התכונות של גרסת Cloud Service Mesh. ערוצי ההפצה של Cloud Service Mesh קשורים לערוצי ההפצה של Google Kubernetes Engine (GKE). Google מנהלת באופן אוטומטי את הגרסה ואת קצב השדרוג של כל ערוץ הפצה.
במאמר הזה מוסבר על ההבדלים בין ערוצי הפצה ואיך מעדכנים שרתי proxy לא מנוהלים.
ערוצי הפצה זמינים
אלה ערוצי ההפצה שזמינים: כל ערוץ מציע איזון בין זמינות התכונות לבין קצב העדכונים. לכל ערוץ יש תכונות ברמת בשלות שונה. תיקוני אבטחה קריטיים מועברים לכל ערוצי ההפצה כדי להגן על האשכולות ועל התשתית של Google.
| Channel | זמינות חדשה של Cloud Service Mesh מנוהל | נכסים |
|---|---|---|
| חדשנות | אחרי כל מהדורה של Cloud Service Mesh | לקבל את הגרסה האחרונה של Cloud Service Mesh מוקדם ככל האפשר, ולהשתמש בתכונות חדשות ברגע שהן נכללות בגרסה. רמת הבקרה מתעדכנת לעיתים קרובות כדי להישאר בגרסה העדכנית ביותר עם התיקון, וכדי לספק יכולות חדשות יותר. הכי טוב להשתמש בערוץ Rapid כדי לבדוק גרסאות חדשות יותר של Cloud Service Mesh וממשקי API בסביבות טרום-ייצור. |
| Regular | מהיר מקודם לרגיל* | לקבל גישה לתכונות של Cloud Service Mesh ו-Istio זמן קצר יחסית אחרי שהן מושקות, אבל בגרסה שעברה הסמכה לאורך תקופה ארוכה יותר. הגרסה הזו מציעה איזון בין זמינות התכונות ליציבות הגרסה, והיא מומלצת לרוב המשתמשים. |
| יציב | גרסת Regular מקודמת לגרסת Stable* | היציבות חשובה יותר מהפונקציונליות החדשה. השינויים והגרסאות החדשות בערוץ הזה מושקים אחרונים, אחרי שהם עוברים אימות בערוצים 'מהיר' ו'רגיל'. כך יש יותר זמן לאימות. |
*לוח הזמנים לקידום לערוץ הבא תלוי בכמה גורמים, כולל מהדורת הקוד הפתוח של Istio, מהדורת Anthos ולוח הזמנים של תיקוני האבטחה, ולכן הוא כפוף לשינויים. כדי להתעדכן במידע העדכני ביותר, מוסיפים את כתובת ה-URL של הערות הגרסה של Cloud Service Mesh לקורא הפידים או מוסיפים את כתובת ה-URL של הפיד ישירות:
https://cloud.google.com/feeds/servicemesh-release-notes.xml
|
||
כשגרסה משנית של Cloud Service Mesh מנוהל מגיעה לשימוש מספיק ומוכיחה יציבות בערוץ המהיר, היא עוברת לערוץ הרגיל. בסופו של דבר, הגרסה המשנית מקודמת לערוץ היציב, שבו מתקבלים רק עדכונים ותיקוני אבטחה בעדיפות גבוהה. כל קידום מציין רמה גבוהה יותר של יציבות ומוכנות לייצור, על סמך הביצועים שנצפו במישור הבקרה שמריץ את הגרסה הזו.
כל הערוצים מבוססים על גרסה שזמינה לכלל המשתמשים (GA) (אבל יכול להיות שחלק מהתכונות לא יהיו זמינות לכלל המשתמשים, כפי שמצוין). גרסאות חדשות של Cloud Service Mesh מופצות קודם בערוץ מהיר, ולאחר מכן בערוצים Regular ו-Stable. כך תוכלו לבחור ערוץ שמתאים לצרכים העסקיים, ליציבות ולפונקציונליות שלכם.
הערוץ של Cloud Service Mesh באשכול נקבע לפי הערוץ של אשכול GKE.
| ערוץ GKE | Cloud Service Mesh Channel |
|---|---|
| חדשנות | חדשנות |
| Regular | Regular |
| יציב | יציב |
| (no channel) | Regular |
גרסאות של Cloud Service Mesh לכל ערוץ
הערוץ של Cloud Service Mesh נקבע לפי הערוץ של אשכול GKE בזמן הקצאת Cloud Service Mesh מנוהל. אם תשנו את הערוץ של אשכול GKE בהמשך, הערוץ המקורי של Cloud Service Mesh יישאר.
בטבלה הבאה מפורט המיפוי הנוכחי בין הערוץ לגרסה של Cloud Service Mesh:
| ערוץ | גרסת Cloud Service Mesh |
|---|---|
| חדשנות | 1.21 |
| Regular | 1.20 |
| יציב | 1.19 |
ערוץ ברירת המחדל
ב-Cloud Service Mesh שהותקן לאחרונה, אם יש ערוץ מנוהל יחיד שהותקן באשכול, הערוץ הזה יהיה ערוץ ברירת המחדל של האשכול.
אם באשכולות עם התקנה קיימת של Istio או Cloud Service Mesh מוגדר תג ברירת המחדל, הוא צריך להצביע על הגרסה המנוהלת. אחרת, לא נדרשת כל פעולה.
תוכלו להשתמש בתווית istio-injection=enabled ככינוי שמפנה את ההזרקה לתוויות האחרות שבהן אתם משתמשים בערוץ, כמו הגרסה שמוגדרת כברירת מחדל. בכל מקום שבו במסמכים שלנו מצוין שצריך להשתמש בתווית istio.io/rev
namespace להזרקה, אפשר להשתמש בתווית istio-injection=enabled במקום זאת.
תוויות הזרקה
כדי לאפשר ל-Cloud Service Mesh לנהל את עומסי העבודה במרחב שמות מסוים, צריך להוסיף למרחב השמות תווית שמתאימה לערוץ המותקן. שירות Cloud Service Mesh מנוהל תומך בשני סוגים של תוויות:
- תוויות תיקון רגילות, כלומר
asm-managed-stable,asm-managed,asm-managed-rapid, שמתאימות לערוציםstable,regularו-rapid. - תווית ברירת מחדל להוספה (לדוגמה,
istio-injection=enabled), שמתאימה לערוץ ברירת המחדל של האשכול הזה. שימוש בתווית ברירת המחדל להוספה מקל על ההעברה בין גרסאות. לדוגמה, כשעוברים מ-Istio OSS או מ-Cloud Service Mesh לא מנוהל ל-Cloud Service Mesh מנוהל, אין צורך להוסיף תווית מחדש לכל מרחב שמות בנפרד. בכל מקום שבו במסמכי Cloud Service Mesh מוצג שימוש בתווית מרחב השמותistio.io/revלהזרקה, אפשר להשתמש במקום זאת בתוויתistio-injection=enabled.
דוגמאות נוספות לתוויות הזרקה כוללות תיוג של עומסי עבודה באמצעות sidecar.istio.io/inject (בדרך כלל משמש לשערי גישה) ו-istio.io/rev, שמתאים גם למרחבי שמות וגם לעומסי עבודה.
תוויות ברירת מחדל להוספה
כדי להחיל את תווית ההזרקה שמוגדרת כברירת מחדל על מרחב שמות:
kubectl label namespace NAMESPACE istio-injection=enabled istio.io/rev- --overwrite
תוויות של גרסאות
בדומה לתוויות אחרות של Kubernetes, תווית של עדכון היא צמד מפתח/ערך.
המפתח בתווית של גרסה הוא תמיד istio.io/rev, אבל הערך משתנה.
כדי לבחור ערוץ הפצה, צריך להחיל על מרחבי השמות את אחד משמות הגרסאות הבאים:
| שם הגרסה | ערוץ |
|---|---|
asm-managed |
Regular |
asm-managed-rapid |
חדשנות |
asm-managed-stable |
יציב |
לדוגמה, כדי להחיל את ערוץ ההפצה הרגיל על מרחב שמות:
kubectl label namespace NAMESPACE istio.io/rev=asm-managed --overwrite
מומלץ להשתמש באותו ערוץ הפצה שבו נעשה שימוש באשכול.
כדי לראות באיזה ערוץ הפצה נעשה שימוש במרחב שמות:
kubectl get namespace NAMESPACE -o jsonpath='{.metadata.labels.istio\.io/rev}{"\n"}'
עדכון שרתי proxy לא מנוהלים
אחרי כל מהדורה של Cloud Service Mesh, מפעילים מחדש את ה-proxies הלא מנוהלים של השירותים והשערים. למרות שרשת שירותים פועלת גם אם מישור הבקרה והפרוקסי נמצאים בגרסאות שונות, מומלץ לעדכן את הפרוקסי כך שיוגדרו עם הגרסה החדשה של Cloud Service Mesh.
בודקים את מישור הבקרה ואת גרסת ה-proxy.
אם גרסת מישור הבקרה חדשה יותר מגרסת ה-proxy, צריך להפעיל מחדש את ה-proxies הלא מנוהלים של השירותים והשערים.
kubectl rollout restart deployment -n NAMESPACE