
docker run -d -p 8080 עם image של nginx, ואז בדפדפן ב-localhost מופיע "It works". ב-Docker Desktop יש גם Kubernetes מובנה, ובאתר של Docker יש אלפי images מוכנים לשימוש חינם.הטקסט המלא של הדקות הראשונות בהרצאה «הסבר על Containers» בקורס הווידאו של PracticU – כתוביות בעברית עם זמן התחלה לכל פסקה. כך תוכלו לקרוא ולחפש את הנושאים לפני שמתחילים ללמוד.
קונטנדרים בקוברנטיס המהפכה כדי להבין זה עוד קצת לעומק אני חייב לקחת אתכם למסע לתוך עולם הפיתוח להבין איך זה עבד עד היום אפליקציות קלאסיות נכתבו מיליוני שורות קוד קיבלו עדכונים פעם בהרבה זמן ראינו פעם בשנה בערך תלוי מה היה וכשהרבה אנשים עובדים יחד על פיסת קול גדולה זה משבית את כולם מיקרו
סרוויסס לעומת זאת כל אחד אחראי כמו שראינו על פונקציה נפרדת אבל הם מצריכים כלים מתקדמים כמו קוברנטיס שתכף נבין מה הם עושים לניהול ואוטומציה. מיקרו שירותים מאפשרים פיתוח מהיר מאוד, זה עד כדי שניות, עכשיו אנחנו מספרים קצת.
החלוקה של הפיתוח בין צוותים שונים בלי להיות תלוי בצוותים גדולים, דברים חדשים יכולים להיות משוחררים מאוד מאוד מהר, בעוד שדברים יציבים יכולים לקבל עדכון אחת לחודש.
זה לא מצריך תזמון בין החלקים השונים למעט שחרור מסודר של כמות גדולה של שינויים שיצריך מה שנקרא Container Scheduler, אנחנו נגיע לזה. כל הכללות שאתם רואים פה, Docker Compose File או Kubernetes Configation File, אנחנו ניגע בזה בהמשך.
איך מגיעים למיקרו סרוויסס? בראש ובראשונה, פורסים הכל. ואז כל השכבות האלה, שהיו שכבות גדולות, מונוליטיות, מסורבלות ותלויות אחת בשנייה, הופכות להיות מיקרו שירותים.
השורה התחתונה זה שבעצם אנחנו רוצים להפריד את הכל, אוקיי? אנחנו לא רוצים לשתף שום דבר ביניהם, אנחנו רוצים בכל מקום שיהיה לוד בלנסר, אולי נחזיר את זה שנייה אחורה, טיפה קפצנו מהר.
מה שהיה בעבר, אתה רואה עם 3-Tier-App, 3-Tier-Application, מה שקרא מונוליטי, היה לנו לוד בלנסר, דיברנו על לוד בלנסר אם אתם זוכרים, עם Web Layer, כל שרתי ה-Web, עוד לוד בלנסר ל-Business Layer ועוד לוד בלנסר ל-Database Services.
מי רוצה לעבוד ככה? נורא מסורבל. אני לוקח, זה על שמונה שרתים אגב, אני לוקח שישה שרתים, שזה כבר פחות משמונה שרתים, וכל אחד מהם אני מחלק בצורה מאוד סיסטמטית את השירותים, לא את השרתים, שישבו על אותו שרת.
ואז מישהו הולך לנהל את זה. מי? תכף נראה, אבל קודם כל להבין את העיקרון, חלוקה של הכל. בואו ניקח דוגמה, אתר אמזון, אתר נחמד, זה אולי העיצוב הקודם שלו, אבל זה ממחיש את הדוגמה באותו עניין.
מנגנון החיפוש, למעלה, זה המיקרו סרוויס בפני עצמו, אין שום קשר לשאר האתר. מנגנון הביקורות ה-reviews מיקרו סרוויס עצמאי.
נושא של תמונות, אימג'ים של המוצרים מיקרו סרוויס עצמאי. העגלה שלנו, שופינג קארט ואמזון. המשלוחים, התיאור של המוצר, כל דבר הוא מיקרו סרוויס בפני עצמו.
לנו זה נראה כמו אתר אחד, אתר נורמלי, רגיל. אם אנחנו נסתכל על זה באתר אמזון עכשיו, בחי מה שנקרא, אנחנו נראה שוב, כל האתר נראה אתר אחד למעשה, אוקיי?
אבל שוב, תמונות בנפרד, תיאור המוצר בנפרד, העגלה שלנו בנפרד, הסרט בנפרד, המשלוחים בנפרד, הכל הכל הכל הכל בנפרד, ה-reviews בנפרד.
נכון, הכל נראה אינטגרטיבי, יורדים לרייטינגס, הוא בעצם חלק מהאתר, אבל לא, הוא לוקח את זה למקום אחר לגמרי, התמונות במקום אחר לגמרי, כמובן הפרסומות היא מקום אחר לגמרי, אבל לא רק ברמה של שירותי ווב במקומות שונים, אלא ממש שירות נפרד לחלוטין, שמתוחזק אחרת, מעודכן אחרת וכו' וכו'.
כדי טיפה להמחיש לכם את ההפצה במספרים, נכון לסוף 2019, אז אמזון בימי עבודה רגילים עושים עדכונים כל 11 משהו שניות.
בנוסף, אם תסתכלו על חברות נוספות, חלק מהן יותר ידועות בארץ כמו שעונים של גארמין, חברת ספורט מדהימה, היא גם כן עושה מעל 1,000 דיפלוימנטים לפרודקשן בחודש.
סקוטיה בנק, אנחנו לא כל כך עובדים איתו בישראל, אבל עושים 3,000 דיפלוימנטים בחודש. Allstate, חברת בריאות, עושה מעל 11,500 דיפלוימנטים בשנה.
ו-The Home Depot, שאין לנו שום גם, לדעתי גם זה לא קיים בארץ, עושה גם אלפי אלפי אלפי דיפלוימנטים. אז מה זה קונטיינר? כדי להבין מה זה קונטיינר, אנחנו צריכים להיזכר קודם כל מה זו מכונה וירטואלית.
מכונה וירטואלית, דיברנו עליה הרבה. יש שם לימדת תשתית, התשתית מורכבת מחומרה, נטוורק, שרתים, storage, אולי גם קצת ענן, מה שנרצה, אבל בסוף זו חומרה.
עליו יש Hypervisor, Virtual Machine Monitor, VMware, Hyper-V, Nutanix, ועליו יש מכונות וירטואליות. מה שאני רוצה, לינוקס, וינדוס, מה שבא לי אני מתקין, ועליו רצות האפליקציות.
קונטיינרים מורידים שכבה אחת באמצע. איזו שכבה? השכבה הזו פשוט מושמדת. היא אין לה, לא נשאר לה זכר. למה?
כי לא צריך אותה בעולם הקונטיינרים.