
com.docker.lb.hosts עם שם המארח, ו-com.docker.lb.port עם הפורט. שירות Interlock קורא את התוויות ובונה לבד את הגדרות ה-NGINX.docker service update --label-add com.docker.lb.hosts=client1.com --label-add com.docker.lb.port=80, docker network inspect, docker service inspect. בהגדרות UCP מסמנים את ניתוב ה-Layer 7 ובוחרים את הפורטים שלו.הטקסט המלא של הדקות הראשונות בהרצאה «Swarm - Layer 7 Routing - HTTP Host Header» בקורס הווידאו של PracticU – כתוביות בעברית עם זמן התחלה לכל פסקה. כך תוכלו לקרוא ולחפש את הנושאים לפני שמתחילים ללמוד.
שלום לכולם בהרצאה הקודמת התקנו ucp שזה קונטרול פאנל ממשק גרפי לניהול קונטיינרים וסוורם וכל הקלאסטר שלי ועשינו את זה על ידי פקודה אחת שהריצה לנו את האימג' של ucp 321 שזאת הגרסה הנוכחית עם תוכנת אינסטול בפנים והרצנו את האינסטול עם כל הפרמטרים האלו לקחנו את זה מאתר האינטרנט והקונטיינר היחיד הזה שהרצנו התקין לנו
את כל הסרוויסים של UCP שזה למעשה קונטיינרים קטנים שרצים על הקלאסטר שלנו והם יוצרים לנו אתר וב ואנחנו יכולים דרכו לנהל את כל הקלאסטר שלנו.
ועכשיו אנחנו רוצים לפרסם שני אתרי וב על אותו פורט על ידי הממשק גרפי לעשות את זה. על ידי זה שהקונטרול פאנל הזה הכלי הזה שעלה לנו אלפי דולרים יעשה לנו את זה אוטומט ואנחנו הולכים לאדמין settings ועושים layer 7 ראוטינג זה אומר שאנחנו נקבל פניות בפורט 80 ונפנה אותם פעם לאתר אחד פעם לאתר שני זה נקרא layer 7 שזה שכבת האפליקציה שבודקת את
פקודת הגט וזה שונה מל-R3 ראוטינג שמסתכל על IP ופורט ל-R4 ראוטינג שמסתכל על הפורט ולא בודק מה קורה שם בפנים רואה פורט 80 מפנה אותו לקונטיינר אחד רואה פורט 443 מפנה אותו לסרוויס אחר אם אנחנו רוצים ששני סרוויסים ישבו על אותו פורט צריך משהו חכם שיסתכל על ההדר של הפאקט ויראה שפנו ברמת האפליקציה בגט לאתר אחד או השני.
וזה עשינו בהרצאה הקודמת. אנג'ין X, עכשיו אנחנו עושים את זה אותו דבר באוטומט רק על ידי הכלי הגרפי. מאחורי הקלעים הוא יעשה לנו את אותו אנג'ין X, אנג'ין X יפעיל לנו.
אנחנו יכולים לעשות 8443, עכשיו 443 תפוס, אז אם אני רוצה אני יכול להחליף את ה-cluster קונפיגוריישן פה לפנות את ה-HTTPs מתוך הקלאסטר קונפיגוריישן ואז לכלי ניהול להתחבר בפורט אחר בואו נעשה את זה 443 ואז אחרי שאני עושה את זה 443 בראוטינג פה אני יכול להשתמש ב-443 אז ב-443 וב-80
אני אשתמש בשביל ל-R7 ובשביל הניהול שלי אני אשתמש ב-443 וזהו ואז אני עושה סייב וזהו. עכשיו, אם אנחנו ננסה לגשת לדשבורד, אנחנו רואים שהוא לא עובד, אנחנו צריכים לעשות נקודתיים 443, להוסיף עוד ארבע נניח, ועכשיו הוא אמור לעבוד עוד פעם.
הנה, אנחנו מקבלים פה את ההתראה ב-443, אתם רואים, הוספתי עוד ארבע כדי לפנות את ה-SSL הרגיל, אותה הודעת אזהרה, ואנחנו חזרה בממשק ניהול, רק שהפעם פינינו פה את 443 הרגיל לטובת ה-Routing ל-R7, שזה מה שרצינו או אדמין סליחה טוב אז אנחנו
חזרנו לממשק ניהול אנחנו רואים פה באדמין settings שהקלאסטר שלי הניהול שלו יש פה גם הסבר the port used by ucp web ui משתמש ב-443 ואז routing 7 יכול להשתמש ב-80 ו-443 מה שזה עושה מאחורי הקלעים זה עושה interlock ש-interlock זה למעשה ה-engine x כמו שעשינו אותו ידנית רק שעושה אותו אוטומט יופי עכשיו נשאר לנו לפרוס את הסרוויסים שלנו.
איפה הסרוויסים? אז נתחיל בסטאק כמו שעשינו לפני כן. אין לנו כרגע שום סטאק, אנחנו עושים קריאט סטאק שזה כמה סרוויסים. נקרא לו קליינט אחד, מתוך ה-compose פייל, warm service, נקסט.
עכשיו הוא שואל אותי איפה הדוקר קומפוז, אני יכול לכתוב איתו ידנית, אני יכול לעשות אפלואוד, לוחץ קונטרול L, סלאש MNT, סלאש קלאסטר סטינגס.
יש לנו פה בקלאסטר סטינגס קליינט אחד ימל יופי והנה זה כל הקובץ שלנו שכתבנו לבד מי ששם לב אין לו פה אף פורט החוצה הוא לא מפרסם אף פורט שניהם יהיו ברשת נטוורק נפרד נטוורק משלהם בלי אף פורט החוצה מי שיחבר אותם מבחוץ זה engine x שהUCP ייצור לבד ניתן לו לעבוד שימו לב הוא עושה קליינט אחד דיפולט
שזה הנטוורק הרשת הפנימית בין שני הסרוויסים שיש לנו ואף פורט לא מפורסם החוצה created successfully done יופי יש לנו סרוויס אחד בואו נראה אותו docker service ls אנחנו רואים את הסרוויסים של הקליינט אחד יפה מאוד אנחנו דרך אגב רואים את הפורט 80 זה היה interlock proxy מה זה interlock proxy זה למעשה האנג'ין x שהוא יוצר לבד מאחורי הקלעים בלי שנצטרך לעשות משהו.
טוב, גם דוקר נטוורקלס אנחנו רואים שהכלי הגרפי יצר לנו את הרשת הפנימית בין הרכיבים של אינטרלוק זה לא היה לפני כן ויצר לנו קליינט אחד ברידג'.
רשת אז רשת של ucp אינטרלוק זה רכיבים פנימיים של אינטרלוק של האנג'ין x ביניהם מדברים על מורכב מכמה רכיבים אם אתם תסתכלו יש לו אחד שתיים ושלוש שלושה רכיבים שלושה סרוויסים כאשר הפרוקסי זה זה שתכלס מאזין ומה שמחבר ביניהם זה רשת פנימית שלהם.
נעשה docker network ls inspect client1-default ונראה של-client1-default כרגע מחובר רק הקונטיינרים של ה-wordpress ו-database פשוט לא עלו את הרשת אז אתם לא רואים.
בינתיים הכל תקין מה עוד אני רוצה להראות לכם שהפקודות הקודמות גם עובדות אני יכול גם בקומנדליין לרשום docker stack deploy ולעשות deploy רגיל רגע אני לא בתיקייה נכונה אני יכול לעשות docker stack deploy רגיל זאת אומרת הממשק גרפי בא לעזור הוא לא בא להחליף והנה אני פורס את ה-client2 וברגע שפרסתי אותו אתם יכולים לראות פה ש-client2
נפרס הנה אין לו עדיין קונטיינרים הנה הופיעו לו שני קונטיינרים אני יכול להיכנס פנימה ושימו לב אני רואה את ה-stack client2 stack אני רואה סרוויסים שיש לו כן זה docker stack ls אני רואה את התוצאות שלו לאיזה רשתות הוא מחובר איזה ווליומים איזה סיקריטים כל מיני הגדרות שלו עכשיו
אם אני נכנס לתוך הסרוויס פנימה אני קופץ פה לסוורם סרוויסס אתם רואים סוורם סרוויסס אני רואה את כל הסרוויס עם כל ההגדרות שלו כולל איזה פורטים מפורסמים החוצה כרגע לא מפורסם שום פורט והוא מחובר רק לרשת קליינשטיים דיפולט עם אוברליי יש יש בנטוורקס אני רואה את כל הרשתות נניח client2 default אני נכנס פנימה ואני רואה כל הנתונים על הרשת
לדוגמה שיהיה overlay שטובות IP אוטומטיות איזה לייבלים יש לו באיזה קונטיינרים מחוברים אתם רואים רק wordpress וdb2 זה מה שמחובר אליו טוב אז כרגע פרסנו שני סרוויסים אנחנו יכולים לראות אותם כאן שני סרוויסים שני סטייקים וזה כל הסרוויסים שיש לי אבל אין שום דרך להגיע אליהם מבחוץ.
אני בא לסרוויס, לוורטפרס נניח אחד, הולך לאדיט שלו, שימו לב כרגע אין לו, הוא מחובר רק לקליינט אחד דיפולט ואין לו שום פורט החוצה, אני הולך לאדיט שלו ואומר לו באדיט בנטוורקס, אדיט של סרוויס,
אתם רואים זה נקרא Update Service, שלא אד פורט, זה לפרסם פורט החוצה, כן? אני לא רוצה, אני רוצה להשתמש ב-Layer 7 ראוטינג, ואני אומר לו תפסר לי פורט 80 תעשה אותו ב-HTTP שימו לב הוא גם יודע HTTPS פסט טרו זה אומר הוא נותן ל-SSL מוצפן לעבור עד לקונטיינר וטרמינשן הוא עוצר את ה-SSL אצלו והולך לבד מביא את
התוכן ההצפנה נגמרת ונפתחת ברוורס פרוקסי רוורס פרוקסי עוצר את ה-SSL אני אומר כרגע ב-HTTP רגיל עבור מי? עבור client1.com יש client1.com בפורט 80 שימו לב זה ל-R7 רגיל ראוטינג והוא מחובר רק לנטוורק אחד.
אני עושה קונפורם ובזה נגמר כל הסיפור. אתם רואים, עושה סייבינג וזהו. ריסטארטינג סקספולי. ועכשיו אני אראה לכם מה קורה פה מאחורי הקלעים.
כשעשינו את זה לתוך הנטוורק, כשעשינו את זה לתוך הסרוויס של WP1 שכרגע אדום כי הוא עושה ריסטארט, הוא עשה משהו מעניין, הוא הוסיף לו לייבלים, תגיות לסרוויס, שימו לב לסרוויס, הוא הוסיף כל מיני תגיות, לדוגמה, הוסט-הדר, בוקר קום לואוט בלנסר הוסט-הדר, שזה קליינט אחד,
פורט 80, קום דוקר לואוט בלנסר פורט 80, טאק אימג' היה לפני כן, ניים ספייס קליינט אחד, הכי מעניין זה זה, שני אלו הוא הוסיף אותם, יש, יפה מאוד.
זה הקונסטרנטים שהגדרנו, וזה הטאסקים שיש לו. אבל זה מה שרציתי להראות לכם, לייבלים. שימו לב, לפני שאנחנו עושים על השני, אני רוצה להראות לכם על השני, השני לפני שאנחנו עושים את זה אנחנו רואים שיש לנו רק שני לייבלים של סטאק אימג' וניימספייס רק שני אלו ברגע שאני עושה אדיט על הסרוויס והולך לנטוורק ומוסיף לו פה ל-R7 ראוטינג
אומר לו בפורט 80 אני רוצה לפרסם אותך חוצה אבל עם הוסט האדר של קליינט 2 זה הכל זה כולה להוסיף זה כל מה שאני עושה סייב תראו מה קרה קליינט פליינט 2 קיבל לייבלים חדשים ברמת סרוויס, הנה כל אלו, הוסט, אתם רואים, לורד בלנסר הוסט, LB הוסט,
פליינט 2 LB port 80.