k8s 集群端口定义区别

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了k8s 集群端口定义区别相关的知识,希望对你有一定的参考价值。

1. nodePort

 外部机器可访问的端口。 
比如一个Web应用需要被其他用户访问,那么需要配置type=NodePort,而且配置nodePort=30001,那么其他机器就可以通过浏览器访问scheme://node:30001访问到该服务,例如http://node:30001。 
 例如mysql数据库可能不需要被外界访问,只需被内部服务访问,那么不必设置NodePort

2. targetPort

 容器的端口(最根本的端口入口),与制作容器时暴露的端口一致(DockerFile中EXPOSE),例如docker.io官方的nginx暴露的是80端口。 


3. port

 kubernetes中的服务之间访问的端口,尽管mysql容器暴露了3306端口(参考https://github.com/docker-library/mysql/的DockerFile),但是集群内其他容器需要通过33306端口访问该服务,外部机器不能访问mysql服务,因为他没有配置NodePort类型


以上是关于k8s 集群端口定义区别的主要内容,如果未能解决你的问题,请参考以下文章

K8S学习笔记Part1:使用端口转发访问集群内的应用

这些 K8S 日常故障处理集锦,运维请收藏~

k8s中的端口(port)

基于Rancher在K8S中部署Nacos集群

Kubernetes 集群所需的端口

K8S 之 将服务暴露给外部客户端