
kubelet, kubeadm ו-kubectl. הרכיבים נעולים בגרסה כדי שלא יתעדכנו אוטומטית.kubeadm init מקים את המנהל הראשון, כולל מסד הנתונים שלו (etcd) ורכיבי הבקרה. ההרצאה הזכירה לציין טווח לרשת הפודים (--pod-network-cidr) כדי שלא יתנגש עם רשתות אחרות.swapoff -a ועריכת /etc/fstab), apt-get install kubelet kubeadm kubectl, apt-mark hold, kubeadm init, kubeadm join.הטקסט המלא של הדקות הראשונות בהרצאה «התקנה על Kubernetes - Ubuntu» בקורס הווידאו של PracticU – כתוביות בעברית עם זמן התחלה לכל פסקה. כך תוכלו לקרוא ולחפש את הנושאים לפני שמתחילים ללמוד.
טוב חברים בהרצאה הזאת אני רוצה להראות לכם איך להתקין קוברנטיס שזה המתחרה של סוורם שמנהל את הקלאסטר של דוקרים כן אתם יודעים כן יש לנו כמה שרתים כמה נודים פיזיים שעליהם מותקנים דוקרים ויכולים להריץ קונטיינרים מישהו צריך לנהל אותם להגיד
להו להריץ את זה ולזה להריץ את הזה ואם משהו נופל נניח איזשהו מחשב שרת פיזי נפל אז את מה שהיה עליו את הקונטיינרים שהיו עליו להפעיל על נודים אחרים על שרתים אחרים שעדיין לא נפלו האדמיניסטרציה הזאת מי יריץ מה וכמה קונטיינרים יש באוויר ואם חסר משהו להריץ זה נקרא אורכיסטרציה
וזה עשה לנו סוורם ואנחנו עכשיו רוצים לדבר על קוברנציס שיודע לעשות בדיוק אותו דבר אנחנו רוצים להתקין אותו מאפס על איזשהו מחשב שיש עליו רק דוקר אני רוצה להדגיש שהוא אצלנו האמת כבר מותקן כי יש לנו ucp מותקן אז הוא התקין לנו את הקוברנטיס אני רוצה עכשיו
להתקין את זה על סתם שרת להראות לכם איך להתקין דברים מאפס טוב בואו נתקין אותו אנחנו צריכים כדי להתקין אותו מתוך האתר של קוברנטיס אז יש לנו פה הוראות מה לעשות ביפור יו ביגין וכל מיני דברים שצריך לבדוק בוא נראה ביפור יו ביגין אנחנו צריכים לוודא שיש לנו אובנטו 16 ומעלה ובוא נראה לדוגמה איזה אובנטו יש לנו נעשה אבאוט
ואנחנו רואים שהאובונטו שלנו זה גרסה 18, אז זה בסדר, זה מעל 16. אז אובונטו שלנו מעל 16, שימו לב, אני לא רואה פה Windows, זה מערכות שהוא תומך, 2 ג'יגה ראם, שני מעבדים צריך להיות, זה בסטינג של מכונה וירטואלית, בוא נעשה, יש לי פה 2 מעבדים ו-4 ג'יגה ראם, אז הכל צריך להיות בסדר.
טוב, הלאה, מה אנחנו עוד רואים? שסוואפ חייב להיות מבוטל, חייב להיות מבוטל. נניח שאני שכחתי ולא שמתי לב, תכף נראה איזו הודעת שגיאה תהיה לנו ואז נעשה ביטול של הסוואפ.
כאילו לא שמנו לב, הוא לא יתקין לנו, כן? יש פה עוד כל מיני דברים שצריך לבדוק, שיש לנו כרטיס רשת, שאין לנו בעיות עם הפיירוול, שיש לנו פורטים פתוחים, לדוגמה לקוברנטיס ה-API סרבר כדי לשלוח הוראות לשרת, למאסטר, איזה פורטים צריכים להיות פתוחים, איזה פורטים צריכים להיות פתוחים לדאטאבייס,
ETCD זה דאטאבייס שלו, מיני פורטים, אצלנו אין בעיה של פורטים, וזה פורטים שצריכים להיות פתוחים במאסטר קונטרול פלאן זה המאסטר ווורקר זה סתם שרת שהוא שייך לקלאסטר ורק מריץ קונטיינרים, הוא לא יודע מה המצב של הקלאסטר הוא מקבל הוראה להריץ מה שהוא מריץ אותו
יש לו רק קיובלט קיובלט זה רכיב תוכנה שמריץ קונטיינרים, פודים לפי ההוראה מהמאסטר הראשי, וזה הפורטים שצריכים להיות במאסטר הראשי שנקרא Control Plan.
יופי. זה לגבי ככה פורטים, זה לא מעניין אותנו כי אין לנו בית של Firewall. Run time, מה זה Run time? שימו לב, קוברנטיס לא חייב דוקר, הוא יכול להיות גם מערכת קונטיינרים אחרת.
קונטיינר D של לינוקס או המתחרה שלו, ה-CRI הזה, עובד מצוין גם והוא מותאם לקוברנטיס. זאת אומרת, קוברנטיס יודע לנהל קונטיינרים לא רק שמורצים עם ה-Run time של דוקר, אלא גם עם מערכות אחרות זה כזה ארכיסטרייטור כללי בניגוד לסוורם שהיה מקובע מאוד רק לדוקר פה זה ארכיסטרציה כללית ולכן הוא גם טיפה יותר מורכב כי הוא כללי יותר אז יש לו יותר
שכבות יותר כללי משהו כללי על השלב הבא אנחנו צריכים להתקין QBDM, QBDM זאת תוכנה שמתקינה את הקלאסטר Qבלט זאת התוכנה שמריצה קונטיינרים בכל אחד מהשרתים שיהיו בקלאסטר זה למעשה התוכנה שמייצרת את הקונטיינרים וקיוב CTL זה הקליינט קיוב קונטרולר קיוב קליינט זה הקליינט ששולח למאסטר מה לבצע אנחנו נשתמש בקיוב CTL ונתקין אותו כבר בהרצאה הבאה אבל
בגדול זה קליינט ששולח הוראות והשרת מבצע אותם דרך ה-API נכון ה-API של המאסטר מקבל את ההוראות מהקליינט ומבצע אותם ומעביר את ההוראות מתוך המאסטר ל-Q-בלט בכל אחד מהנודים.
אז זה מה שעובד, קליינט מעביר הוראה למאסטר, מאסטר מעביר את זה ל-Q-בלט בכל אחד מהשרתים מה לבצע, ו-Q-בלט זה משהו חד פעמי שעושה, הנה יש לנו פה הסבר אפילו, שעושה בוטסטראפ לקלאסטר, כאילו מתקינה את הקלאסטר, מריצה את הקלאסטר, מפעילה את הקלאסטר, תוכנה שבעצם מתקינה את הקלאסטר.
הנה יש לנו פה הסבר קיוב זה קיוב אדי אם זה קיוב לט the component that runs on all the machines על כל המכונות in your cluster and does things like starting pods and containers זה למעשה רכיב שמפעיל קונטיינרים וקיוב קליינד זה command line util to talk to your cluster זה למעשה קליינד שימו לב קיוב אדי
אם הוא לא יתקין ללא את הקיוב לט ולא קיוב ctl צריך להתקין כל אחד בנפרד זה הרכיבים, טוב בואו נעשה את ההתקנה אנחנו פה בוחרים לאיזה מערכת אנחנו רוצים להתקין יש לנו פה הוראות כמובן שמתחילים מהאפדייט, אחרי זה מוסיפים את הפאבליקי בואו נעשה, אחרי זה מוסיפים את הריפוזיטורי שלהם ואחרי זה עושים אינסטול לרכיבים בואו נעשה את זה אחד אחד, פקודה ראשונה
דרך אגב יש לי פה דוקר מותקן, כן? התקנתי דוקר 1903 אז עד עכשיו לא עשיתי כלום, רק קראתי ואני מתחיל להתקנה אז אנחנו עושים פקודה ראשונה שמה שהיא עושה היא עושה update ומתקינה את האפ טרנספורט את הרכיב הזה שהוא גם ככה מותקן.
הפקודה השנייה מה שהיא עושה הפקודה השנייה היא מוסיפה את הpublic של הרפוזיטורי שלהם של גוגל לתוך רשימת public keys שאני סומך עליהם יופי הוספנו את הpublic שלהם אם אתם ממש מתעקשים אתם יכולים לקחת את הלינק הזה.
הרי מה עושה קורל הוא רק מוריד משהו מהאינטרנט הוא מוריד משהו מהאינטרנט ומריץ פקודה בפייפ מעביר את התוצאה לאפט קי אד פקודת אפט קי אד מוסיפה פאבליקי לרשימת האלו שמותר להם מי שמעניין אותו איך נראה הפאבליקי בוא נעשה אופן לקובץ שהורדנו זה לא ממש יפה UTF UTF זה לא אמור להיות UTF זה אמור להיות קובץ טקסט פשוט יחד סייפ פייל זה קובץ אתם יודעים מה? אני
רוצה לעשות עליו cut רגיל. זה אמור להיות ה-public key, לא יודע למה הוא בצורה כזאת, אבל זה אמור להיות public key רגיל. יכול להיות שזה בפורמט אחר ובגלל זה לא צריך לפתוח אותו, בגדול זה public key שלו, ואני מוסיף אותו לרשימה של ה-public keys שלי, אוקיי? של אלו שאני סומך עליהם.
על הפקודה הבאה, קראנו פה עם הממשק, כן, הנה, השתחרר לנו.
הפקודה הבאה, אנחנו מוסיפים את הריפוזיטורי שלהם לרשימה של ריפוזיטורי שלנו. מה זה ריפוזיטורי? זה למעשה מאיפה מותר להוריד תוכנות חדשות, מאגר לתוכנות חדשות.
אז יש לנו פה Source List של ריפוזיטורי ומוסיפים את שלהם לרשימה שלנו. יופי, בוא נעשה עכשיו Update, Update. עכשיו מתקינים את הרשימה הזאת.
פה נוספנו רשימה חדשה, עכשיו מתקינים רשימת כל המוצרים שאנחנו יודעים להתקין אותם. התקנו את זה, עשינו update, ועכשיו עושים update install. סוף סוף, upgrade install, ומה מתקינים? את ה-קיובלט, אני מזכיר לכם, זה רכיב שבכל נוד מריץ קונטיינרים, פודים, על השרתים בפועל, קיוב אדמין שחד פעמי מריץ לנו את ההתקנה של הקלאסטר, וקיוב CTL שזה
הקליינט. יופי. מתקינים אותם, והוא לא מוכן להתקין אותם. הוא כותב שמשהו פה נעול כשהוא כותב לי unable to acquire lock אתם רואים משהו פה נעול עושים ריבוט בוא נעשה ריבוט וננסה את הפקודה הזאת עוד פעם טוב אני נותן לו לעשות ריבוט הנה הוא עושה לי ריבוט חזרנו אחרי הפעלה מחדש נפתח טרמינל
ונפתח בראוזר נלך עוד פעם לעמוד של install qbdm באתר של קוברנטיס והיינו כבר בפקודה האחרונה כאן שמתקינה לנו את הארכיב, נכון?
נכון. הנה הוא שואל אותי פספורט. הנה הוא מתקין לי את ה-קיובלט ואת ה-קיוב-איי-די-אם ו-קיוב-סי-טי-אל.
אז זהו, אז למעשה יש לנו את כל התוכנות מותקנות עכשיו. דרך אגב, מה זה hold? זה אומר לא לעדכן לגרסה הבאה, שלא יעשה לנו עדכונים אוטומטיים של התוכנות, שזה לא יהיה לנו חלק מהעדכונים האוטומטיים.
מי שרוצה יכול גם להריץ את זה, כדי שהסביבה תהיה יותר מנוהלת, ידנית, יותר מבוקרת. הנה, הוא שם אותם on hold, אסור לעדכן אותם אוטומטית.
רואים הוא אומר קיובלט כל הזמן עולה ויורד, כי קיוב האדמין לא אמר לו מה לעשות. כאילו, הוא לא יודע איפה הקלאסטר שלו נמצא, כי הקלאסטר לא קיים. טוב, יש פה עוד כל מיני דברים שאפשר לעשות, כל מיני טראבל שוט.
מה עכשיו? עכשיו אנחנו יכולים לעשות קריאיטה קלאסטר. קריאטה קלאסטר אתם רואים עשינו אינסטול טראבל שוט לא מעניין קריאטה סינגל קונטרול פלאן להתקין מאסטר אחד קונטרול פלאן זה מאסטר וויב קיוב אדמין להריץ התקנה אנחנו באים לקיוד אדמין שעוזר לי לעשות בוטסטראפ זה אומר התקנה
ראשונית של המינימום הנדרש בשביל קוברנטיס קלאסטר אתם יכולים פה לקרוא את כל מה שזה עושה יש פה הרבה הסברים איזה גרסאות יש לקוברנטיס ומתי יוצאת כל גרסה, עד מתי היא נתמכת.
פה הם מבקשים לבדוק שיש לנו שתי ג'יגה ראם, שני מעבדים, עשינו את כל זה. ופה הם מבקשים לעדכן את הכל לגרסה האחרונה. עכשיו, הוא אומר שיש לי אופציות נוספות שאני יכול להריץ.
אני יכול להריץ נקודת חיבור לכל המאסטרים, נניח יהיו לי כמה מאסטרים, אני יכול לקבוע איזשהו שם, שיהיה שם dnsי שיוביל לכל המאסטרים, כמו round robin בין המאסטרים, זה אם אני רוצה כמה מאסטרים לעשות.
אני יכול פה לציין פוד נטוורק, רשת לכל הפודים. מבחינתכם פודים זה קונטיינרים, כל הקונטיינרים יהיו מחוברים לרשת הזאת.
ואם אתם זוכרים כשהתקנו את ה-UCP, ה-Control Panel ה-Enterprise, הוא ביקש לציין איזה פוד נטוורק אנחנו רוצים לציין. פוד נטוורק זאת רשת פנימית בתוך קוברנטיס שאליה מתחברים כל הקונטיינרים שלו.
קונטיינרים ופודים בינתיים זה אותו דבר. על האופשיונל אני יכול גם לציין לו לדוגמה איזה run time, איזה סביבת run time אני רוצה ו-QBDM ינסה לעשות