שאלות שנעסוק בהם:
- שירות ניטור ב – GCP: STACKDRIVER
- מושגים נוספים מתחום ה – DEVOPS
- GIT
- CI/CD
שירות ניטור: STACKDRIVER
ניטור עונה על צרכים מאוד ספציפיים:
- שליטה: היכולת לשלוט על סיטואציות התנהגותיות של משתמשים ומשאבים בסביבות.
- ייעול: היכולת לדעת ולקבל תובנות על התנהגויות בסביבה (כלומר: האם יש דרך טובה יותר לבצע את הקיים?)
- הגנה על רכיבים ומשתמשים: היכולת לדעת ולהתעדכן על התנהגויות חשודות/לא רצויות.
איך יודעים להעריך כלי ניטור?
(איך נדע שכלי ניטור הוא כלי טוב ומספק?)
- היכולת לבצע התאמות אישיות של הלקוח בתוך הכלי: עד כמה כלי הניטור גמיש לצרכים של הלקוח?
- ויזואליזציה: עד כמה כלי הניטור יכול לבצע הצגה של נתונים באופן ויזואלי ונוח למשתמש?
- תובנות: עד כמה הכלי יודע להמליץ על פעולות רלוונטיות לשיפור המצב הקיים?
- ביצוע תיקון: עד כמה הכלי עצמאי לביצוע התיקונים הנדרשים בסביבה הקיימת?
- דיווחים בזמן אמת: עד כמה הכלי יודע לדווח ולהתריע בזמן אמת.
מהו STACKDRIVER?
- כלי ניטור טבעי ש – GCP מציעה לכל סביבה (פר סביבה)
- הכלי הוא מסוג SERVICE – כלומר: לא נדרשת יצירה של המוצר.
- הכלי מציע ניטור בסיסי בחינם ( ON-THE-FLY ) עבור חומרה של מכונות וירטואליות ( CPU , זכרון, דיסק, וכ'ו..) ניטור עבור מערכת ההפעלה – מתבצע בנפרד וכולל תשלום.
- הכלי מציע יכולת לייצר ALERTS ( כלומר התראות בזמן אמת ) עבור התנהגויות מוגדרות שבוחר המשתמש
- הכלי מציע הנפקת דו"חות בתדירות שהמשתמש בוחר וליעדים שהמשתמש בוחר.
- הדו"חות יכולים להציג נתונים על שימוש במשאבים בהיבטים של עלות מול תועלת.
- הדו"חות נותנים גם התייחסות ע"פ תקופות בשנה (רבעונים או שנתיים) עם היכולת להציג השוואה בזמנים נבחרים.
- הכלי יודע לספק המלצות לשימוש עבור משאבים מסויימים בהתייחס למגמות בתקופות שחלפו. המשתמש יכול לאמץ את ההמלצות ( מומלץ שלא לאמץ אוטומטית אלא לבחון כל מקרה לגופו ).
- הכלי מספק יכולת למשתמשים צד שלישי להתחבר ולקבל מידע על הנתונים.
איך GIT עושה את מה שהוא עושה?
- מחליטים איפה יאוחסנו כל קבצי הקוד, כלומר: בחירת ספק של REPOSITORY.
(מרחב וירטואלי לאחסון פשוט של קבצי קוד בלבד כמו GITHUB לדוגמא)
2. מארגנים את ה – REPOSITORY לתיקיות לפי הצורך.
3. ניגשים לסביבה שבה הקוד ייכתב
4. המפתח כותב קוד ובסיום דוחף את הקוד ל – REPOSITORY באמצעות פקודה שנקראת GIT PUSH
5. אם המפתח היה רוצה למשוך את הקוד אליו מקומית – הפקודה הייתה GIT PULL.
6. GIT מבחין בין קוד מקור לכל גרסה שמגיעה אח"כ
7. GIT עובד עם ענפים ( BRANCHES ) ועם גזע ( MAIN )
GIT – מוצר שמורידים למחשב והוא למעשה אוסף פקודות.
CI/CD הוא תהליך שמתאר את הדרך שבה קוד מוכן מתנייד לפלטפורמה שיודעת לקלוט אותו ולפרוש אותו בתוכה כאשר:
CI: מתייחס לחלק שבו הקוד נסגר, נארז ומאוחסן במקום ייעודי.
CD: מתייחס לחלק שבו הקוד הארוז נמשך לפלטפורמה שמארחת אותו.
תהליך ה – CI/CD נכתב ומפורט כקובץ קוד שנכתב בשפה שנקראת XML.
התהליך מתואר ב – XML כדי לפשט את הניהול והתפעול שלו באופן שוטף.
אנשי DEVOPS מתעסקים הרבה בתהליכי CI/CD , כותבים ב – XML ומגדירים תהליכי אוטומציות בהתאם.