שירותים (Services) ב-Kubernetes ממלאים תפקיד קריטי באפשרות התקשורת בין רכיבים שונים של אפליקציה – הן בתוך הקלסטר והן מחוצה לו.
🚀 מהו Service ב-Kubernetes?
Service הוא אובייקט המאפשר חשיפת אפליקציה שפועלת על קבוצת פודים (Pods) כ"שירות רשת" (Network Service).
מכיוון שפודים הם זמניים ועלולים להשתנות, ה-Service מספק כתובת קבועה ויציבה לגישה אליהם.
🔑 מטרות עיקריות:
- חיבור בין פודים פנימיים (למשל: Frontend ל-Backend).
- חשיפה של אפליקציות למשתמשים חיצוניים.
- איזון עומסים (Load Balancing) בין פודים.
- תומך ב-Loose Coupling בין מיקרו-שירותים (Microservices).
📡 סוגי שירותים ב-Kubernetes
ב-Kubernetes קיימים שלושה סוגים עיקריים של שירותים:
1. NodePort
- חושף את השירות על פורט קבוע בכל Node בקלסטר.
- המשתמשים ניגשים דרך
NodeIP:NodePort.
- מתאים לגישה חיצונית פשוטה.
2. ClusterIP (ברירת מחדל)
- יוצר כתובת IP פנימית (וירטואלית) לשימוש בתוך הקלסטר.
- משמש לתקשורת פנימית בלבד.
- לא נגיש מחוץ לקלסטר.