
type: NodePort וכותבים איזה פורט לפתוח, בדוגמה 3007.kubectl apply -f . יצר שני פודים ואת payment API service. ב-kubectl get service רואים שפורט 80 ממופה ל-3007 בכל ה-nodes.allow-node-port-site שמתיר TCP 3007 בכיוון ingress, בעזרת gcloud compute firewall-rules create.kubectl get nodes -o wide מציג כתובות IP, ומתוך עמודת ה-external בוחרים כתובת של node כלשהו וגולשים אליה עם :3007.test server אפשר לגלוש לשם ה-service בפורט 80, וגם זה עבד.kubectl describe service מציג type NodePort, פורט 80, את פורט ה-node 3007, את ה-selector ואת ה-endpoints.gcloud compute delete עם שם החוק ואישור Yes).הטקסט המלא של הדקות הראשונות בהרצאה «הגדרת Service מסוג NodePort בתוך Kubernetes» בקורס הווידאו של PracticU – כתוביות בעברית עם זמן התחלה לכל פסקה. כך תוכלו לקרוא ולחפש את הנושאים לפני שמתחילים ללמוד.
שלום לכולם. היום אנחנו נדבר על הסוג השני של הסרוויס שפתוח לעולם החיצון. בהרצאה הקודמת דיברנו על סרוויס שהוא פנים קלסטרי.
רק פודים יכולים לפנות אליו. אבל מה קורה אם הטראפיק שלי הוא לא בתוך הקלסטר? אז אני יכול להשתמש בסוג השני שנקרא Node Port.
פה הסרוויס מקבל תקשורת לא רק מבפנים אלא גם מפורט פתוח בשרת הפיזי. זאת אומרת השרתים הפיזיים שמריצים את הקלסטר, הנודים, נפתח אצלהם פורט ואפשר לשלוח תקשורת מבחוץ ל-IP של השרת הפיזי והוא מעביר את התקשורת פנימה לסרוויס שעובד ברשת הפנימית.
זאת אומרת שעכשיו אנחנו מתחילים להאזין ברמת השרת הפיזי, ברמת הנוד, וזה נקרא Node Port. האמת זה די אותו דבר כמו הקלסטר IP הקודם, רק פשוט התקשורת לסרוויס הזה יכולה גם להגיע מפורט בשרת הפיזי.
איך עושים את זה? קודם כל בהגדרה של הסרוויס מוסיפים את הטייפ שלו, Node Port, והדבר השני פה למטה אני כותב איזה פורט לפתוח בשרת הפיזי. נניח שלושת אלפים ושבע.
אז הלקוחות יפנו לשלושת אלפים ושבע, הוא יעביר את זה לתוך הסרוויס, במקרה הזה פורט שמונים, והסרוויס יעביר את זה לתוך הפוד בפורט שמונים. בואו נעשה פה רייט קליק על הקובץ Open, Open Folder in CMD.
אנחנו בתוך תיקייה שיש בתוכה קבצי YAML שמגדירים לנו את הפודים ואת הסרוויס. לפני שאני אפעיל אותו אני רוצה להדגיש עוד הפעם שהסרוויס בוחר את הפוד לפי הסלקטור, לפי התווית, שזאת בדיוק התווית ששמתי פה על הפוד השני וגם על הפוד הראשון, ולכן הסרוויס הזה ישלח את התקשורת גם לפוד הראשון, גם לפוד השני, ואנחנו כלקוחות מהאינטרנט נצטרך לפנות ל-IP הפיזי של הקוברנטיס של השרת הפיזי, נניח בפורט שלושת אלפים ושבע.
בואו נחזור חזרה ל-CLI ונריץ kubectl apply מינוס F שיבנה לי את כל האובייקטים מתוך קבצי YAML בתיקייה הנוכחית. נקודה זה תיקייה נוכחית. הנה server אחד created, הנה הפוד בשם server שתיים created והנה הסרוויס בשם payment API service created.
בואו נבדוק שהכול באמת נוצר. נעשה get pods. רואים את שני הפודים. get service. נראה שהסרוויס שלנו נוצר.
שימו לב פה בפורט כתוב שפורט שמונים של הסרוויס ממופה לפורט שלושת אלפים ושבע של כל השרתים הפיזיים שקיימים. שימו לב כל הנודים בקלסטר פתחו כרגע פורט שלושת אלפים ושבע, ואם אני מהאינטרנט אפנה אליהם אני אכנס לתוך הסרוויס הזה.
רק צריך לפתוח את ה-Firewall בענן. אני מריץ פקודה gcloud compute firewall