העיקרון הזה, שמופיע ב-Google Cloud Well-Architected Framework בקטע בנושא מצוינות תפעולית, עוזר לכם לוודא שהעומסים בענן מוכנים לפעולה ושהביצועים שלהם טובים. הוא מדגיש את החשיבות של הגדרת ציפיות והתחייבויות ברורות לגבי ביצועי השירות, הטמעה של מערכות חזקות למעקב ולהתראות, ביצוע בדיקות ביצועים ותכנון מראש של צורכי הקיבולת.
סקירה כללית של העקרונות
ארגונים שונים עשויים לפרש את המוכנות התפעולית בצורה שונה. מוכנות תפעולית היא הדרך שבה ארגון שלכם מתכונן להפעיל עומסי עבודה ב- Google Cloudבצורה מוצלחת. הכנה להפעלה של עומס עבודה מורכב בענן, עם שכבות רבות, מחייבת תכנון קפדני גם לקראת ההשקה וגם לקראת פעולות day-2. הפעולות האלה נקראות לעיתים קרובות CloudOps.
תחומי המיקוד של מוכנות תפעולית
המוכנות התפעולית כוללת ארבעה תחומים מרכזיים. כל תחום התמקדות מורכב מסדרה של פעילויות ורכיבים שנדרשים כדי להתכונן להפעלה של אפליקציה או סביבה מורכבת ב- Google Cloud. בטבלה הבאה מפורטים הרכיבים והפעילויות של כל תחום התמקדות:
| תחום המיקוד של מוכנות תפעולית | פעילויות ורכיבים |
|---|---|
| כוח אדם |
|
| תהליכים |
|
| כלים | כלים שנדרשים לתמיכה בתהליכי CloudOps. |
| פיקוח |
|
המלצות
כדי להבטיח מוכנות תפעולית וביצועים באמצעות CloudOps, כדאי לעיין בהמלצות שבקטעים הבאים. כל המלצה במסמך הזה רלוונטית לאחד או יותר מתחומי המיקוד של מוכנות תפעולית.
הגדרת SLO ו-SLA
אחת מהאחריות העיקריות של צוות תפעול הענן היא להגדיר יעדים למדידת רמת השירות (SLOs) והסכמי רמת שירות (SLAs) לכל עומסי העבודה הקריטיים. ההמלצה הזו רלוונטית לתחום ההתמקדות של מוכנות תפעולית בנושא ניהול.
הסכמי רמת שירות (SLO) צריכים להיות ספציפיים, ניתנים למדידה, ניתנים להשגה, רלוונטיים ומוגבלים בזמן (SMART), והם צריכים לשקף את רמת השירות והביצועים שאתם רוצים.
- ספציפי: מנוסח בצורה ברורה לגבי רמת השירות והביצועים הנדרשים.
- ניתן למדידה: ניתן לכימות ולמעקב.
- ניתן להשגה: אפשר להשיג את המטרה במסגרת היכולות והמשאבים של הארגון.
- רלוונטיות: תואם ליעדים ולסדרי העדיפויות העסקיים.
- מוגבל בזמן: יש מסגרת זמן מוגדרת למדידה ולהערכה.
לדוגמה, יעד רמת שירות לאפליקציית אינטרנט יכול להיות "זמינות של 99.9%" או "זמן תגובה ממוצע של פחות מ-200 אלפיות השנייה". הסכמי SLO כאלה מגדירים בבירור את רמת השירות והביצועים הנדרשת לאפליקציית האינטרנט, ואפשר למדוד ולעקוב אחרי הסכמי ה-SLO לאורך זמן.
הסכמי SLA מפרטים את ההתחייבויות ללקוחות בנוגע לזמינות השירות, הביצועים והתמיכה, כולל סנקציות או סעדים במקרה של אי-עמידה בהסכם. הסכמי SLA צריכים לכלול פרטים ספציפיים על השירותים שניתנים, על רמת השירות שאפשר לצפות לה, על האחריות של ספק השירות ושל הלקוח ועל סנקציות או סעדים במקרה של אי-עמידה בתנאים. הסכמי SLA משמשים כהסכם חוזי בין שני הצדדים, כדי להבטיח שלשני הצדדים יש הבנה ברורה של הציפיות והמחויבויות שקשורות לשירות הענן.
Google Cloud מספק כלים כמו Cloud Monitoring ואינדיקטורים ברמת השירות (SLIs) שיעזרו לכם להגדיר ולעקוב אחרי יעדים למדידת רמת השירות (SLOs). Cloud Monitoring מספק יכולות מקיפות של ניטור ותצפית, שמאפשרות לארגון שלכם לאסוף ולנתח מדדים שקשורים לזמינות, לביצועים ולזמן האחזור של אפליקציות ושירותים מבוססי-ענן. SLI הם מדדים ספציפיים שאפשר להשתמש בהם כדי למדוד ולעקוב אחרי SLO לאורך זמן. השימוש בכלים האלה מאפשר לכם לעקוב אחרי שירותי הענן ולנהל אותם בצורה יעילה, ולוודא שהם עומדים ביעדי רמת השירות (SLO) ובהסכמי רמת השירות (SLA).
הגדרת SLO ו-SLA ברורים לכל שירותי הענן הקריטיים שלכם, והעברת המידע הזה לכל מי שצריך לדעת, עוזרת להבטיח את האמינות והביצועים של האפליקציות והשירותים שפרסתם.
הטמעה של ניראות מקיפה
כדי לקבל נראות בזמן אמת של המצב והביצועים של סביבת הענן, מומלץ להשתמש בשילוב של כלים של Google Cloud Observability ופתרונות של צד שלישי. ההמלצה הזו רלוונטית לתחומי המיקוד הבאים של מוכנות תפעולית: תהליכים וכלים.
הטמעה של שילוב של פתרונות observability מספקת לכם אסטרטגיית observability מקיפה שמכסה היבטים שונים של תשתית הענן והאפליקציות שלכם. Google Cloud Observability היא פלטפורמה מאוחדת לאיסוף, לניתוח ולהצגה חזותית של מדדים, יומנים ויומני מעקב ממגווןGoogle Cloud שירותים, אפליקציות ומקורות חיצוניים. בעזרת Cloud Monitoring אפשר לקבל תובנות לגבי ניצול המשאבים, מאפייני הביצועים והמצב הכללי של המשאבים.
כדי להבטיח מעקב מקיף, כדאי לעקוב אחרי מדדים חשובים שתואמים לאינדיקטורים של בריאות המערכת, כמו ניצול המעבד (CPU), שימוש בזיכרון, תנועה ברשת, קלט/פלט (I/O) בדיסק וזמני תגובה של אפליקציות. כדאי גם להתייחס למדדים ספציפיים לעסק. מעקב אחרי המדדים האלה מאפשר לזהות צווארי בקבוק פוטנציאליים, בעיות בביצועים ומגבלות של משאבים. אפשר גם להגדיר התראות כדי להודיע לצוותים הרלוונטיים באופן יזום על בעיות או אנומליות פוטנציאליות.
כדי לשפר עוד יותר את יכולות המעקב, אפשר לשלב פתרונות של צד שלישי עם Google Cloud Observability. הפתרונות האלה יכולים לספק פונקציות נוספות, כמו ניתוח מתקדם, זיהוי אנומליות שמבוסס על למידת מכונה ויכולות ניהול אירועים. השילוב הזה של כלים מ-Google Cloud Observability ופתרונות של צד שלישי מאפשר לכם ליצור מערכת אקולוגית חזקה וניתנת להתאמה אישית של ניטור, שמותאמת לצרכים הספציפיים שלכם. השימוש בשילוב הזה מאפשר לכם לזהות בעיות ולטפל בהן באופן יזום, לייעל את ניצול המשאבים ולהבטיח את המהימנות והזמינות הכוללות של האפליקציות והשירותים שלכם בענן.
הטמעה של בדיקות ביצועים ועומס
ביצוע בדיקות ביצועים באופן קבוע עוזר לוודא שהאפליקציות והתשתית מבוססות הענן יכולות להתמודד עם עומסים גבוהים ולשמור על ביצועים אופטימליים. בדיקות עומס מדמות דפוסי תנועה ריאליסטיים. בדיקות עומס קיצוניות בודקות את המערכת עד לקצה גבול היכולת שלה, כדי לזהות צווארי בקבוק פוטנציאליים ומגבלות בביצועים. ההמלצה הזו רלוונטית לתחומי המיקוד הבאים של מוכנות תפעולית: תהליכים וכלים.
כלים כמו Cloud Load Balancing ושירותי בדיקת עומס יכולים לעזור לכם לדמות דפוסי תנועה בעולם האמיתי ולבצע בדיקות עומס על האפליקציות שלכם. הכלים האלה מספקים תובנות חשובות לגבי התנהגות המערכת בתנאי עומס שונים, ויכולים לעזור לכם לזהות תחומים שנדרש בהם אופטימיזציה.
על סמך תוצאות בדיקות הביצועים, תוכלו לקבל החלטות לאופטימיזציה של התשתית והאפליקציות בענן, כדי להשיג ביצועים אופטימליים וגמישות. האופטימיזציה הזו עשויה לכלול שינוי בהקצאת המשאבים, שינוי ההגדרות או הטמעה של מנגנוני שמירת נתונים במטמון.
לדוגמה, אם תגלו שהאפליקציה שלכם חווה האטה בתקופות של נפח תנועה גבוה, יכול להיות שתצטרכו להגדיל את מספר המכונות הווירטואליות או הקונטיינרים שהוקצו לאפליקציה. לחלופין, יכול להיות שתצטרכו לשנות את ההגדרות של שרת האינטרנט או של מסד הנתונים כדי לשפר את הביצועים.
אם תערכו בדיקות ביצועים באופן קבוע ותיישמו את האופטימיזציות הנדרשות, תוכלו לוודא שהאפליקציות והתשתית שלכם מבוססות הענן תמיד יפעלו בביצועים אופטימליים ויספקו למשתמשים חוויה חלקה ומגיבה. כך תוכלו לשמור על יתרון תחרותי ולבנות אמון עם הלקוחות.
תכנון וניהול של הקיבולת
תכנון מראש של צורכי הקיבולת העתידיים – אורגניים או לא אורגניים – עוזר לכם לוודא שהמערכות שלכם מבוססות הענן יפעלו בצורה חלקה ויהיו ניתנות להרחבה. ההמלצה הזו רלוונטית לתהליכים של תחום ההתמקדות של מוכנות תפעולית.
תכנון הקיבולת העתידית כולל הבנה וניהול של מכסות למשאבים שונים כמו מכונות וירטואליות, אחסון ובקשות API. ניתוח של דפוסי שימוש היסטוריים, תחזיות צמיחה ודרישות עסקיות מאפשר לכם לחזות בצורה מדויקת את דרישות הקיבולת העתידיות. אתם יכולים להשתמש בכלים כמו Cloud Monitoring ו-BigQuery כדי לאסוף ולנתח נתוני שימוש, לזהות מגמות ולחזות את הביקוש העתידי.
דפוסי שימוש היסטוריים מספקים תובנות חשובות לגבי ניצול המשאבים לאורך זמן. בדיקת מדדים כמו ניצול המעבד (CPU), שימוש בזיכרון ותעבורת נתונים ברשת יכולה לעזור לכם לזהות תקופות של ביקוש גבוה וצווארי בקבוק פוטנציאליים. בנוסף, תוכלו להעריך את צורכי הקיבולת העתידיים על ידי יצירת תחזיות צמיחה על סמך גורמים כמו צמיחה בבסיס המשתמשים, מוצרים ותכונות חדשים וקמפיינים שיווקיים. כשמעריכים את צורכי הקיבולת, צריך לקחת בחשבון גם דרישות עסקיות כמו הסכמי רמת שירות (SLA) ויעדי ביצועים.
כשקובעים את גודל המשאבים לעומס עבודה, צריך להתחשב בגורמים שיכולים להשפיע על ניצול המשאבים. שינויים עונתיים כמו תקופות קניות לחגים או מכירות בסוף רבעון יכולים להוביל לעליות זמניות בביקוש. אירועים מתוכננים כמו השקות של מוצרים או קמפיינים שיווקיים יכולים גם הם להגדיל משמעותית את נפח התנועה. כדי לוודא שהמערכת הראשית ומערכת ההתאוששות מאסון (DR) יכולות להתמודד עם עליות בלתי צפויות בביקוש, כדאי לתכנן קיבולת שיכולה לתמוך במעבר חלק לגיבוי במהלך שיבושים כמו אסונות טבע ומתקפות סייבר.
שינוי גודל אוטומטי הוא אסטרטגיה חשובה להתאמה דינמית של משאבי הענן על סמך תנודות בעומס העבודה. באמצעות מדיניות של התאמה אוטומטית לעומס, אתם יכולים לשנות באופן אוטומטי את גודל המכונות הווירטואליות, נפח האחסון ומשאבים אחרים בתגובה לשינויים בביקוש. כך אפשר להבטיח ביצועים אופטימליים בתקופות השיא ולצמצם את העלויות בתקופות שבהן השימוש במשאבים נמוך. אלגוריתמים של שינוי גודל אוטומטי משתמשים במדדים כמו ניצול המעבד (CPU), שימוש בזיכרון ועומק התור כדי לקבוע מתי לשנות את גודל המשאבים.
מעקב ואופטימיזציה מתמשכים
כדי לנהל ולשפר את עומסי העבודה בענן, צריך ליצור תהליך של מעקב מתמשך אחרי מדדי הביצועים וניתוח שלהם. ההמלצה הזו רלוונטית לתחומי המיקוד הבאים של מוכנות תפעולית: תהליכים וכלים.
כדי ליצור תהליך של ניטור וניתוח מתמשכים, צריך לעקוב אחרי נתונים שקשורים להיבטים שונים של סביבת הענן, לאסוף אותם ולהעריך אותם. הנתונים האלה מאפשרים לכם לזהות מראש תחומים לשיפור, לבצע אופטימיזציה של ניצול המשאבים ולוודא שהתשתית שלכם בענן עומדת באופן עקבי בציפיות הביצועים שלכם או עולה עליהן.
אחד ההיבטים החשובים של מעקב אחרי הביצועים הוא בדיקה קבועה של יומנים ועקבות. יומנים מספקים תובנות חשובות לגבי אירועי מערכת, שגיאות ואזהרות. הנתונים של מעקב הבקשות מספקים מידע מפורט על זרימת הבקשות באפליקציה. ניתוח של יומנים ועקבות מאפשר לכם לזהות בעיות פוטנציאליות, לגלות את הסיבות העיקריות לבעיות ולהבין טוב יותר את ההתנהגות של האפליקציות שלכם בתנאים שונים. מדדים כמו זמן הלוך ושוב בין שירותים יכולים לעזור לכם לזהות צווארי בקבוק בעומסי העבודה ולהבין אותם.
בנוסף, אפשר להשתמש בטכניקות לשיפור הביצועים כדי לשפר משמעותית את זמני התגובה של האפליקציה ואת היעילות הכוללת שלה. דוגמאות לטכניקות שאפשר להשתמש בהן:
- שמירת נתונים במטמון: שמירת נתונים שמתבצעת אליהם גישה לעיתים קרובות בזיכרון כדי לצמצם את הצורך בשאילתות חוזרות במסד הנתונים או בקריאות חוזרות ל-API.
- אופטימיזציה של מסד הנתונים: שימוש בטכניקות כמו יצירת אינדקסים ואופטימיזציה של שאילתות כדי לשפר את הביצועים של פעולות במסד הנתונים.
- פרופיל קוד: זיהוי אזורים בקוד שצורכים משאבים מוגזמים או גורמים לבעיות בביצועים.
הטכניקות האלה יעזרו לכם לבצע אופטימיזציה של האפליקציות ולוודא שהן פועלות ביעילות בענן.