Reserved hostPorts


This page describes the list of reserved hostPorts within Google Kubernetes Engine (GKE).

GKE System reserved hostPorts

GKE reserves specific hostPort ranges for its internal system processes and services. These reservations are crucial for maintaining the stability and functionality of GKE clusters. Although GKE generally discourages the use of hostPort for user applications due to potential conflicts and security risks, it relies on them for internal operations.

Purpose of reserved hostPorts

  • Control plane communication: certain GKE components, such as the kubelet and metrics-server, might use specific hostPorts for communication with the control plane or other internal services.
  • System daemons: GKE system daemons and agents might require access to specific ports on the nodes for monitoring, logging, or other operational tasks.
  • Internal services: GKE's internal services, responsible for cluster management and health checks, might use reserved hostPorts.

Understanding reserved ranges

Although the exact ranges can vary based on GKE version and configuration, GKE reserves a portion of the available port space. These reserved ranges are typically not documented for external user usage, as they are subject to change. It is very important to avoid using low-numbered ports, as these are commonly reserved by operating systems.

Best practices

Best practices:

  • Avoid hostPort usage: minimize the use of hostPort in your application deployments to reduce the risk of conflicts with GKE's reserved ports.
  • Service abstractions: use Kubernetes service types (NodePort, LoadBalancer, Ingress) as preferred alternatives to hostPort.
  • Security scrutiny: if hostPort is unavoidable, carefully review and implement firewall rules to restrict access to the exposed ports.
  • Autopilot considerations: when you use GKE Autopilot, be aware that you are unable to specify exact hostPorts.

List of reserved hostPorts

ComponentReserved Host Ports
CNI / DPv29990, 6942, 9890, 4244, 9965
kubelet4194, 10248, 10250, 10255
kube-proxy10249, 10256
node-problem-detector20256
fluentbit2020, 2021
stackdriver-metadata-agent8799
sunrpc (local NFS mounts)665 - 986
Filestore990
k8s-metadata-proxy / gke-metadata-server987, 988, 989
node-local-dns53, 8080, 9253, 9353
gcfsd11253
Network policy Antrea10349, 10350, 10351, 10352
network-metering-agent47082, 47083
configconnector8888, 48797
gke-spiffe9889
workload-identity-webhook9910
GKE Metrics Agent8200, 8201, 8202, 8203
GPU Device plugin2112
runsc (gVisor / GKE Sandbox)9115
containerd1338
GKE Metrics Collector11123
netd10231

List of reserved hostPorts that are specific to Autopilot

ComponentReserved HostPorts
Autopilot Splunk Agent8006, 14250, 14268, 4317, 9080, 9943, 9411
Autopilot Datadog Monitoring Agent8125, 8126

What's next