Cette page décrit la liste des hostPorts réservés dans Google Kubernetes Engine (GKE).
HostPorts réservés par le système GKE
GKE réserve des plages hostPort spécifiques pour ses processus et services système internes. Ces réservations sont essentielles pour maintenir la stabilité et la fonctionnalité des clusters GKE. Bien que GKE déconseille généralement l'utilisation de hostPort pour les applications utilisateur en raison de conflits potentiels et de risques de sécurité, il s'appuie sur eux pour les opérations internes.
Objectif des hostPorts réservés
- Communication du plan de contrôle : certains composants GKE, tels que kubelet et metrics-server, peuvent utiliser des hostPorts spécifiques pour communiquer avec le plan de contrôle ou d'autres services internes.
- Démons système : les démons et agents système GKE peuvent avoir besoin d'accéder à des ports spécifiques sur les nœuds pour la surveillance, la journalisation ou d'autres tâches opérationnelles.
- Services internes : les services internes de GKE, responsables de la gestion des clusters et des vérifications de l'état, peuvent utiliser des hostPorts réservés.
Comprendre les plages réservées
Bien que les plages exactes puissent varier en fonction de la version et de la configuration de GKE, GKE réserve une partie de l'espace de port disponible. Ces plages réservées ne sont généralement pas documentées pour une utilisation par des utilisateurs externes, car elles sont susceptibles d'être modifiées. Il est très important d'éviter d'utiliser des ports à faible numéro, car ils sont généralement réservés par les systèmes d'exploitation.
Bonnes pratiques
Bonnes pratiques :
- Éviter l'utilisation de hostPort : réduisez l'utilisation de hostPort dans les déploiements de votre application afin de limiter le risque de conflits avec les ports réservés de GKE.
- Abstractions de service : utilisez les types de service Kubernetes (NodePort, LoadBalancer, Ingress) comme alternatives préférées à hostPort.
- Examen de sécurité : si hostPort est inévitable, examinez et implémentez soigneusement les règles de pare-feu pour limiter l'accès aux ports exposés.
- Considérations relatives à Autopilot : lorsque vous utilisez GKE Autopilot, sachez que vous ne pouvez pas spécifier de hostPorts exacts.
Liste des hostPorts réservés
| Composant | HostPorts réservés |
|---|---|
| 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 (installations NFS locales) | 665 - 986 |
| Filestore | 990 |
| k8s-metadata-proxy / gke-metadata-server | 987, 988, 989 |
| node-local-dns | 53, 8080, 9253, 9353 |
| gcfsd | 11253 |
| Règle de réseau Antrea | 10349, 10350, 10351, 10352 |
| network-metering-agent | 47082, 47083 |
| configconnector | 8888, 48797 |
| gke-spiffe | 9889 |
| workload-identity-webhook | 9910 |
| Agent de métriques GKE | 8200 - 8227 |
| node-gboc | 8228 - 8231 |
| Plug-in d'appareil GPU | 2112 |
| runsc (gVisor / GKE Sandbox) | 9115 |
| containerd | 1338 |
| Collecteur de métriques GKE | 11123 |
| netd | 10231 |
| Pilote CSI Cloud Storage FUSE | 9920, 9921 |
Liste des hostPorts réservés spécifiques à Autopilot
| Composant | HostPorts réservés |
|---|---|
| Agent Splunk Autopilot | 8006, 14250, 14268, 4317, 9080, 9943, 9411 |
| Agent de surveillance Datadog Autopilot | 8125, 8126 |
Étape suivante
- Lisez une présentation de la mise en réseau dans GKE.
- En savoir plus sur les services Kubernetes.
- En savoir plus sur l'exposition d'applications.