
winget install Helm.Helm. הפקודה helm version הציגה גרסה 4.2.0.templates ומעבירים אליה את קבצי ה-YAML (deployment ו-service). אלה קבצי Kubernetes רגילים. ה-cluster לא יודע שמשתמשים ב-Helm, כי הכלי מותקן רק בתחנת העבודה.apiVersion שתיים), שם החבילה (Practicu Frontend Chart), תיאור, version של קבצי ה-YAML (0.0.1, ומעלים אותה כשהם משתנים) ו-appVersion שהוא גרסת ה-image (בדוגמה 1.21.0).appVersion של ה-chart. Helm מחליף את הביטוי בערך לפני שליחה ל-cluster, כך שמספר הגרסה מתעדכן במקום אחד.Chart.yaml נשאר במחשב ולא נשלח ל-cluster.Chart.yaml ולהפנות גרסת image משדה אחד.הטקסט המלא של הדקות הראשונות בהרצאה «הסבר על Chart Helm» בקורס הווידאו של PracticU – כתוביות בעברית עם זמן התחלה לכל פסקה. כך תוכלו לקרוא ולחפש את הנושאים לפני שמתחילים ללמוד.
שלום לכולם. היום אנחנו נהפוך את קבצי YAML האלו לחבילה אחת, לתוכנה אחת לפי תקן של Helm, כדי שנוכל לפרוס אותם כיחידה אחת, למחוק אותם כיחידה אחת, לשדרג או לגלגל אחורה.
הכול ילך כחבילה אחת ולא ככל קובץ בנפרד. זאת המטרה של Helm. קודם כל בואו נתקין את ה-Helm. נעשה CMD, Run as administrator, ואני עושה Wingit Install Helm נקודה Helm.
בואו נבדוק ש-Helm עובד. Helm מינוס מינוס help לא נתן שגיאה. Helm version נותן לנו גרסה נוכחית ארבע שתיים אפס. עכשיו כשיש לנו את ה-Helm מותקן, אנחנו צריכים לבנות חבילה שהוא יבין אותה.
כדי ש-Helm יבין את קבצי ה-YAML שלנו, אנחנו צריכים ליצור תת-תיקייה בשם templates, שבלונות, שלמעשה השבלונות האלו זה קבצי YAML שלנו. אנחנו שמים בפנים את ה-YAML של האפליקציה שלנו, וה-Helm ישלח את הקבצים האלו לקובירנטיס.
למעשה זה קבצי YAML רגילים של קובירנטיס. מבחינת הקלסטר שום דבר לא השתנה. שימו לב שהקלסטר בכלל לא מודע לזה שאני משתמש ב-Helm. מבחינתו של הקלסטר הוא מקבל קבצי YAML רגילים והוא לא יודע כלום על Helm.
Helm מותקן אצלי בתחנת העבודה או אצלי בשרת. הקלסטר של קובירנטיס לא יודע כלום על הכלי הזה. הכלי הזה בא לעזור לי לארגן אצלי את כל קבצי YAML לחבילות שאני אתייחס אליהם כקבוצה אחת, כיחידה אחת.
התוספת הזאת מותקנת אך ורק אצלי במחשב ועושה לי אוטומציה בניהול קבצי YAML. הקלסטר מקבל קבצי YAML רגילים ומבצע אותם. אז עד עכשיו רק יצרתי תיקייה והעברתי לתוכה שני קבצים, אבל אני צריך לתת גם שם לאפליקציה וגרסה ומידע כללי על החבילה הזאת.
אז Helm מחייב קובץ טקסט בשם Chart נקודה YAML. יצרתי פה קובץ ריק. אני נכנס לתוך ה-Notepad ושם פה כמה שורות. בשורה הראשונה אני מציין שזה Helm מגרסה שלוש ומעלה.
התקן שלו נקרא version שתיים. נותן שם לחבילה הזאת. במקרה שלנו זה Practicu Frontend Chart. Chart זה תרשים, חבילה. יש פה Description, תיאור.
הגרסה של קבצי YAML שלי נניח תהיה אפס אפס אחד. כל פעם שאני אשנה קובץ YAML בפנים, נניח אני עושה Edit עם Notepad ומשנה פה משהו בפנים בתוך קובץ YAML, אז את ה-version הזה אני אמור לשנות לאפס נקודה אפס שתיים.
זה לנוחות שלי. מבחינתו של Helm אתה יכול לא לשנות פה כלום, אז ה-version הזה נועד לעזור לי לדעת שקובץ YAML השתנה. ואם קובץ YAML לא משתנה אבל הגרסה של Image משתנה, זאת אומרת התוכנה התעדכנה, המתכנתים הוציאו גרסה חדשה לאפליקציה שלי.
נניח היה לי V1 ונהיה V2 או V3. כשמשתנה רק ה-image וכל השאר נשאר אותו דבר, אז את הגרסה הזאת של ה-image אני כותב אותה פה. לדוגמה גרסה אחד עשרים ואחד נקודה אפס.