Kubernetes & Docker/궁금한 것
쿠버네티스 서비스(service)의 노드포트(NodePort)의 포트가 겹쳤을 때 어떻게 될까?
정현수
2020. 7. 17. 08:41
반응형
※주의
이 글은 제가 혼자 공부하면서 여기저기 찾아보고 정리하는 곳이라서
글의 퀄리티나 내용상 맞지 않는 부분들이 있습니다.
공식문서가 더욱 더 큰 도움이 될 수 있습니다!
궁금점
NodePort로 연결해줄 때 포트가 곂치게 되면 어떻게 될까?
행동
apiVersion: v1
kind: Service
metadata:
name: service
spec:
type: NodePort
ports:
- name: jenkins
protocol: TCP #기본 프로토콜 : TCP
port: 8080 #Service 자신의 포트
targetPort: jenkins #Pod 내 컨테이너 포트 (deployment의 port name과 연결)
nodePort: 30001
- name: nexus
protocol: TCP
port: 8081
targetPort: nexus
nodePort: 30001
- name: tomcat
protocol: TCP
port: 8082
targetPort: tomcat
nodePort: 30003
- name: mariadb
protocol: TCP
port: 3306
targetPort: mariadb
nodePort: 30004
selector:
app: MyApp
일부러 jenkins와 nexus의 nodePort를 동일하게 해서 어떻게 되는지 보았다.
결과
30001번 포트가 중복되었다고 문구가 뜨고, service는 실행되지 않는다.
실행이 되지 않은 모습
반응형