En esta página, se describe la lista de hostPorts reservados en Google Kubernetes Engine (GKE).
HostPorts reservados del sistema de GKE
GKE reserva rangos hostPort específicos para sus procesos y servicios internos del sistema. Estas reservas son fundamentales para mantener la estabilidad y la funcionalidad de los clústeres de GKE. Aunque GKE, por lo general, desaconseja el uso de hostPort para las aplicaciones de los usuarios debido a posibles conflictos y riesgos de seguridad, depende de ellos para las operaciones internas.
Propósito de los hostPorts reservados
- Comunicación del plano de control: Es posible que ciertos componentes de GKE, como kubelet y metrics-server, usen hostPorts específicos para la comunicación con el plano de control o con otros servicios internos.
- Daemons del sistema: Es posible que los daemons y agentes del sistema de GKE requieran acceso a puertos específicos en los nodos para la supervisión, el registro o cualquier otra tarea operativa.
- Servicios internos: Es posible que los servicios internos de GKE, responsables de la administración del clúster y las verificaciones de estado, usen hostPorts reservados.
Información sobre los rangos reservados
Aunque los rangos exactos pueden variar según la versión y la configuración de GKE, GKE reserva una parte del espacio de puerto disponible. Por lo general, estos rangos reservados no se documentan para el uso de usuarios externos, ya que están sujetos a cambios. Es muy importante evitar el uso de puertos con números bajos, ya que los sistemas operativos suelen reservarlos.
Prácticas recomendadas
Recomendaciones:
- Evita el uso de hostPort: Minimiza el uso de hostPort en las implementaciones de tu aplicación para reducir el riesgo de conflictos con los puertos reservados de GKE.
- Abstracciones de servicio: Usa los tipos de servicio de Kubernetes (NodePort, LoadBalancer, Ingress) como alternativas preferidas a hostPort.
- Análisis de seguridad: Si hostPort es inevitable, revisa y aplica cuidadosamente las reglas de firewall para restringir el acceso a los puertos expuestos.
- Consideraciones de Autopilot: Cuando usas GKE Autopilot, ten en cuenta que no puedes especificar hostPorts exactos.
Lista de hostPorts reservados
| Componente | HostPorts reservados |
|---|---|
| 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 (activaciones de NFS locales) | 665 - 986 |
| Filestore | 990 |
| k8s-metadata-proxy / gke-metadata-server | 987, 988, 989 |
| node-local-dns | 53, 8080, 9253, 9353 |
| gcfsd | 11253 |
| Política de red Antrea | 10349, 10350, 10351, 10352 |
| network-metering-agent | 47082, 47083 |
| configconnector | 8888, 48797 |
| gke-spiffe | 9889 |
| workload-identity-webhook | 9910 |
| Agente de métricas de GKE | 8200 - 8227 |
| node-gboc | 8228 - 8231 |
| Complemento para dispositivos GPU | 2112 |
| runsc (gVisor / GKE Sandbox) | 9115 |
| containerd | 1338 |
| Colector de métricas de GKE | 11123 |
| netd | 10231 |
| Controlador de CSI de Cloud Storage FUSE | 9920, 9921 |
Lista de hostPorts reservados que son específicos de Autopilot
| Componente | HostPorts reservados |
|---|---|
| Agente de Splunk de Autopilot | 8006, 14250, 14268, 4317, 9080, 9943, 9411 |
| Agente de supervisión de Datadog de Autopilot | 8125, 8126 |
¿Qué sigue?
- Lee una descripción general de las herramientas de redes en GKE.
- Obtén información sobre los Servicios de Kubernetes.
- Obtén información para exponer aplicaciones.