系列目錄html
在編排kubernetes時,Deployment的Pod項有containerPort,Service文件裏的port,targetPort, nodePort,這些pod概念有些時候可能會讓人感到很是困惑,這裏經過示例來簡單介紹各類port的含義node
apiVersion: extensions/v1beta1 kind: Deployment metadata: name: tomcat-deployment spec: replicas: 3 template: metadata: labels: app: tomcat tier: frontend spec: containers: name: tomcat image: docker.cinyi.com:443/tomcat ports: containerPort: 80 #這裏containerPort是容器內部的port
apiVersion: v1 kind: Service metadata: name: tomcat-server spec: type: NodePort ports: port: 11111 #service暴露在cluster ip上的端口,經過<cluster ip>:port訪問服務,經過此端口集羣內的服務能夠相互訪問 targetPort: 8080 #Pod的外部訪問端口,port和nodePort的數據經過這個端口進入到Pod內部,Pod裏面的containers的端口映射到這個端口,提供服務 nodePort: 30001 #Node節點的端口,<nodeIP>:nodePort 是提供給集羣外部客戶訪問service的入口 selector: tier: frontend