בדף הזה מפורטת רשימת יציאות hostPort שמורות ב-Google Kubernetes Engine (GKE).
GKE System reserved hostPorts
GKE שומר טווחי כתובות ספציפיים של hostPort לתהליכים ולשירותים פנימיים של המערכת. ההזמנות האלה חיוניות לשמירה על היציבות והפונקציונליות של אשכולות GKE. למרות שב-GKE בדרך כלל לא מומלץ להשתמש ב-hostPort לאפליקציות של משתמשים בגלל סיכונים פוטנציאליים של קונפליקטים ובעיות אבטחה, המערכת מסתמכת עליהם לפעולות פנימיות.
המטרה של hostPorts שמורים
- תקשורת במישור הבקרה: רכיבים מסוימים של GKE, כמו kubelet ו-metrics-server, עשויים להשתמש ב-hostPorts ספציפיים לתקשורת עם מישור הבקרה או עם שירותים פנימיים אחרים.
- שדים של המערכת: יכול להיות ששדים וסוכנים של מערכת GKE יצטרכו גישה ליציאות ספציפיות בצמתים לצורך מעקב, רישום ביומן או משימות תפעוליות אחרות.
- שירותים פנימיים: יכול להיות שהשירותים הפנימיים של GKE, שאחראים על ניהול האשכולות ועל בדיקות תקינות, ישתמשו ב-hostPorts שמורים.
הסבר על טווחי כתובות שמורות
אף על פי שהטווחים המדויקים יכולים להשתנות בהתאם לגרסה ולהגדרה של GKE, GKE שומר חלק מהמרחב הזמין של הפורטים. בדרך כלל, טווחי הכתובות השמורים האלה לא מתועדים לשימוש של משתמשים חיצוניים, כי הם נתונים לשינויים. חשוב מאוד להימנע משימוש ביציאות עם מספרים נמוכים, כי מערכות הפעלה בדרך כלל שומרות אותן.
שיטות מומלצות
שיטות מומלצות:
- הימנעות משימוש ב-hostPort: מומלץ לצמצם את השימוש ב-hostPort בפריסות של האפליקציות כדי להפחית את הסיכון להתנגשויות עם יציאות שמורות ב-GKE.
- הפשטות של שירותים: מומלץ להשתמש בסוגי שירותים של Kubernetes (NodePort, LoadBalancer, Ingress) כחלופות מועדפות ל-hostPort.
- בדיקה מדוקדקת של האבטחה: אם אי אפשר להימנע משימוש ב-hostPort, צריך לבדוק בקפידה את כללי חומת האש ולהטמיע אותם כדי להגביל את הגישה ליציאות החשופות.
- שיקולים לגבי Autopilot: כשמשתמשים ב-GKE Autopilot, אי אפשר לציין hostPorts מדויקים.
רשימה של hostPorts שמורים
| רכיב | יציאות מארח שמורות |
|---|---|
| CNI / DPv2 | 9990, 6942, 9890, 4244, 9965 |
| kubelet | 4194, 10248, 10250, 10255 |
| kube-proxy | 10249, 10256 |
| node-problem-detector | 20256 |
| fluentbit | 2020, 2021, 2022 |
| stackdriver-metadata-agent | 8799 |
| sunrpc (local NFS mounts) | 665 - 986 |
| Filestore | 990 |
| k8s-metadata-proxy / gke-metadata-server | 987, 988, 989 |
| node-local-dns | 53, 8080, 9253, 9353 |
| gcfsd | 11253 |
| מדיניות הרשת Antrea | 10349, 10350, 10351, 10352 |
| network-metering-agent | 47082, 47083 |
| configconnector | 8888, 48797 |
| gke-spiffe | 9889 |
| workload-identity-webhook | 9910 |
| GKE Metrics Agent | 8200 - 8227 |
| node-gboc | 8228 - 8231 |
| תוסף GPU Device | 2112 |
| runsc (gVisor / GKE Sandbox) | 9115 |
| containerd | 1338 |
| GKE Metrics Collector | 11123 |
| netd | 10231 |
| מנהל התקן ה-CSI של Cloud Storage FUSE | 9920, 9921 |
רשימה של יציאות מארח שמורות שספציפיות ל-Autopilot
| רכיב | יציאות מארח שמורות |
|---|---|
| Autopilot Splunk Agent | 8006, 14250, 14268, 4317, 9080, 9943, 9411 |
| Autopilot Datadog Monitoring Agent | 8125, 8126 |
המאמרים הבאים
- מומלץ לקרוא את הסקירה הכללית על רשתות ב-GKE.
- מידע נוסף על שירותי Kubernetes
- מידע על חשיפת אפליקציות