k8s 集羣端口定義區別

1. nodePort

 外部機器可訪問的端口。 
好比一個Web應用須要被其餘用戶訪問,那麼須要配置type=NodePort,並且配置nodePort=30001,那麼其餘機器就能夠經過瀏覽器訪問scheme://node:30001訪問到該服務,例如http://node:30001。 
 例如MySQL數據庫可能不須要被外界訪問,只需被內部服務訪問,那麼沒必要設置NodePortnode

2. targetPort

 容器的端口(最根本的端口入口),與製做容器時暴露的端口一致(DockerFile中EXPOSE),例如docker.io官方的nginx暴露的是80端口。 mysql


3. port

 kubernetes中的服務之間訪問的端口,儘管mysql容器暴露了3306端口(參考https://github.com/docker-library/mysql/的DockerFile),可是集羣內其餘容器須要經過33306端口訪問該服務,外部機器不能訪問mysql服務,由於他沒有配置NodePort類型nginx

相關文章
相關標籤/搜索