더북(TheBook)

노드포트 서비스는 서비스에서 설정된 포트가 모든 노드에서 개방되어 있어야 하기 때문에 로드밸런서 서비스만큼 유연하지는 않다. 또한 다중 노드 클러스터에서 로드밸런싱 효과를 얻을 수 없다는 것도 단점이다. 노드포트 서비스는 지원하는 분산 수준도 로드밸런서 서비스와 차이가 있다. 이 때문에 K3s나 도커 데스크톱에서는 잘 동작하지만, Kind에서는 그렇지 못하다. 예제 3-4는 노드포트에 대한 정의다.

예제 3-4 web-service-nodePort.yaml, 노드포트 서비스의 정의 예

apiVersion: v1
kind: Service

metadata:
  name: numbers-web-node

spec:
  ports:
    - port: 8080         # 다른 파드가 서비스에 접근하기 위해 사용하는 포트
      targetPort: 80     # 대상 파드에 트래픽을 전달하는 포트
      nodePort: 30080    # 서비스가 외부에 공개되는 포트
  selector:
    app: numbers-web
  type: NodePort         # 노드의 IP 주소를 통해 접근 가능한 서비스
신간 소식 구독하기
뉴스레터에 가입하시고 이메일로 신간 소식을 받아 보세요.