保留的 hostPorts

本頁面說明 Google Kubernetes Engine (GKE) 內保留的 hostPort 清單。

GKE 系統保留的 hostPort

GKE 會保留特定 hostPort 範圍,供內部系統程序和服務使用。這些預留空間對於維持 GKE 叢集的穩定性和功能至關重要。雖然 GKE 通常不建議使用者應用程式使用 hostPort,以免發生潛在衝突和安全風險,但 GKE 內部作業仍會使用這些項目。

預留 hostPort 的用途

  • 控制層通訊:某些 GKE 元件 (例如 kubelet 和指標伺服器) 可能會使用特定 hostPort 與控制層或其他內部服務通訊。
  • 系統精靈:GKE 系統精靈和代理程式可能需要存取節點上的特定連接埠,才能執行監控、記錄或其他作業工作。
  • 內部服務:GKE 的內部服務負責叢集管理和健康狀態檢查,可能會使用保留的 hostPort。

瞭解保留範圍

雖然確切範圍可能會因 GKE 版本和設定而異,但 GKE 會保留部分可用連接埠空間。這些保留範圍通常不會記錄供外部使用者使用,因為這些範圍可能會變更。請務必避免使用低編號的通訊埠,因為作業系統通常會保留這些通訊埠。

最佳做法

最佳做法

  • 避免使用 hostPort:盡量減少在應用程式部署中使用 hostPort,降低與 GKE 保留通訊埠發生衝突的風險。
  • 服務抽象化:使用 Kubernetes 服務類型 (NodePort、LoadBalancer、Ingress) 做為 hostPort 的偏好替代方案。
  • 安全審查:如果 hostPort 無可避免,請仔細檢查並實作防火牆規則,限制對公開通訊埠的存取權。
  • Autopilot 注意事項:使用 GKE Autopilot 時,請注意您無法指定確切的 hostPort。

預留的 hostPort 清單

元件 保留的主機通訊埠
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 (本機 NFS 掛接) 665 - 986
Filestore 990
k8s-metadata-proxy / gke-metadata-server 987、988、989
node-local-dns 53、8080、9253、9353
gcfsd 11253
網路政策 Antrea 10349、10350、10351、10352
network-metering-agent 47082、47083
configconnector 8888、48797
gke-spiffe 9889
workload-identity-webhook 9910
GKE 指標代理程式 8200 - 8227
node-gboc 8228 - 8231
GPU 裝置外掛程式 2112
runsc (gVisor / GKE Sandbox) 9115
containerd 1338
GKE 指標收集器 11123
netd 10231
Cloud Storage FUSE CSI 驅動程式 9920、9921

Autopilot 專用的保留 hostPort 清單

元件 保留的 HostPort
Autopilot Splunk Agent 8006、14250、14268、4317、9080、9943、9411
Autopilot Datadog Monitoring 代理程式 8125、8126

後續步驟