בדף הזה מפורטת רשימת hostPorts שמורים ב-Google Kubernetes Engine (GKE).
GKE System reserved hostPorts
GKE שומר טווחים ספציפיים של hostPort לתהליכים ולשירותים של המערכת הפנימית שלו. ההזמנות האלה חיוניות לשמירה על היציבות והפונקציונליות של אשכולות GKE. למרות שבדרך כלל לא מומלץ להשתמש ב-GKE ב-hostPort לאפליקציות של משתמשים בגלל סיכונים פוטנציאליים של קונפליקטים ובעיות אבטחה, המערכת מסתמכת עליהם לפעולות פנימיות.
המטרה של יציאות מארח שמורות
- תקשורת במישור הבקרה: רכיבים מסוימים של 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 |
| תוסף GPU Device | 2112 |
| runsc (gVisor / GKE Sandbox) | 9115 |
| containerd | 1338 |
| GKE Metrics Collector | 11123 |
| netd | 10231 |
רשימה של יציאות מארח שמורות שספציפיות ל-Autopilot
| רכיב | יציאות מארח שמורות |
|---|---|
| Autopilot Splunk Agent | 8006, 14250, 14268, 4317, 9080, 9943, 9411 |
| סוכן מעקב של Datadog ב-Autopilot | 8125, 8126 |
המאמרים הבאים
- מומלץ לקרוא את הסקירה הכללית על רשתות ב-GKE.
- מידע נוסף על שירותי Kubernetes
- מידע על חשיפת אפליקציות