HostPorts reservados


En esta página, se describe la lista de hostPorts reservados en Google Kubernetes Engine (GKE).

hostPorts reservados por el 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. Si bien GKE generalmente desaconseja el uso de hostPort para las aplicaciones del usuario debido a posibles conflictos y riesgos de seguridad, las usa 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 comunicarse 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: Los servicios internos de GKE, responsables de la administración del clúster y las verificaciones de estado, pueden usar hostPorts reservados.

Información sobre los rangos reservados

Si bien los rangos exactos pueden variar según la versión y la configuración de GKE, GKE reserva una parte del espacio de puertos 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 Service: 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 sobre Autopilot: Cuando usas GKE Autopilot, ten en cuenta que no puedes especificar hostPorts exactos.

Lista de hostPorts reservados

Componente Puertos de host reservados
CNI / DPv2 9990, 6942, 9890, 4244, 9965
kubelet 4194, 10248, 10250, 10255
kube-proxy 10249, 10256
node-problem-detector 20256
fluentbit 2020 y 2021
stackdriver-metadata-agent 8799
sunrpc (activaciones de NFS locales) 665 - 986
Filestore 990
k8s-metadata-proxy o gke-metadata-server 987, 988 y 989
node-local-dns 53, 8080, 9253, 9353
gcfsd 11253
Política de red de Antrea 10349, 10350, 10351, 10352
network-metering-agent 47082 y 47083
configconnector 8888, 48797
gke-spiffe 9889
workload-identity-webhook 9910
Agente de métricas de GKE 8200, 8201, 8202, 8203
Complemento GPU Device 2112
runsc (gVisor / GKE Sandbox) 9115
containerd 1338
Recopilador de métricas de GKE 11123
netd 10231

Lista de hostPorts reservados que son específicos de Autopilot

Componente HostPorts reservados
Agente de Splunk Autopilot 8006, 14250, 14268, 4317, 9080, 9943, 9411
Agente de Monitoring de Datadog de Autopilot 8125 y 8126

¿Qué sigue?