hostPorts reservados

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

hostPorts reservados del sistema de GKE

GKE reserva intervalos hostPort específicos para sus procesos y servicios del sistema interno. Estas reservas son cruciales para mantener la estabilidad y la funcionalidad de los clústeres de GKE. Aunque, por lo general, GKE desaconseja el uso de hostPort para las aplicaciones de usuario debido a los posibles conflictos y riesgos de seguridad, depende de ellas para las operaciones internas.

Finalidad de los hostPorts reservados

  • Comunicación del plano de control: es posible que algunos componentes de GKE, como kubelet y metrics-server, usen hostPorts específicos para comunicarse con el plano de control u otros servicios internos.
  • Daemons del sistema: es posible que los daemons y agentes del sistema de GKE necesiten acceder a puertos específicos de los nodos para monitorizar, registrar o realizar otras tareas operativas.
  • Servicios internos: los servicios internos de GKE, responsables de la gestión de clústeres y de las comprobaciones de estado, pueden usar hostPorts reservados.

Información sobre los intervalos reservados

Aunque los intervalos exactos pueden variar en función de la versión y la configuración de GKE, GKE reserva una parte del espacio de puertos disponible. Estos intervalos reservados no suelen documentarse 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

Prácticas recomendadas:

  • 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 e Ingress) como alternativas preferidas a hostPort.
  • Análisis de seguridad: si no se puede evitar el uso de hostPort, revisa e implementa cuidadosamente las reglas de cortafuegos para restringir el acceso a los puertos expuestos.
  • Consideraciones sobre Autopilot: cuando usas Autopilot de GKE, 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, 2021 y 2022
stackdriver-metadata-agent 8799
sunrpc (montajes 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, 47083
configconnector 8888, 48797
gke-spiffe 9889
workload-identity-webhook 9910
Agente de métricas de GKE 8200 - 8227
Complemento de dispositivo de GPU 2112
runsc (gVisor o GKE Sandbox) 9115
containerd 1338
GKE Metrics Collector 11123
netd 10231

Lista de hostPorts reservados específicos de Autopilot

Componente HostPorts reservados
Agente de Splunk Autopilot 8006, 14250, 14268, 4317, 9080, 9943, 9411
Agente de monitorización de Autopilot Datadog 8125, 8126

Siguientes pasos