k8s 集群中的 port
本文介绍 k8s 集群外访问集群内部服务不同方式下的 port。
hostPort
出现在 Deployment、Pod 等资源对象描述文件中的容器部分,类似于 docker run -p <containerPort>:<hostPort>
。containerPort 为容器暴露的端口;hostPort 为容器暴露的端口直接映射到的主机端口。例如:
1 | apiVersion: apps/v1 |
集群外访问方式:node1的IP:30080
。
nodePort
出现在 Service 描述文件中,Service 为 NodePort 类型时。port 为在k8s集群内服务访问端口;targetPort 为关联 pod 对外开放端口,与上述 containerPort 保持一致;nodePort 为集群外访问端口,端口范围为 30000-32767。例如:
1 | apiVersion: v1 |
集群外访问方式:节点IP:30080
。
k8s 集群中的 port