서비스의 입장이 되어 생각해 보면, 서비스의 레이블 셀렉터와 일치하는 파드가 많으면 파드보다 먼저 노드를 선택해야 하니 까다로운 문제처럼 보인다. 그러나 이런 문제는 쿠버네티스가 다 맡아 해결해 준다. 괜히 전 세계에서 쓰이는 오케스트레이션 도구가 된 것이 아니다. 우리는 그냥 로드밸런서 서비스를 클러스터에 배치하면 그만이다. 예제 3-3은 웹 애플리케이션에 트래픽을 전달하는 서비스의 정의다.

    예제 3-3 web-service.yaml, 외부 트래픽을 전달하는 로드밸런서 서비스의 정의

    apiVersion: v1
    kind: Service
    
    metadata:
       name: numbers-web
    
    spec:
      ports:
        - port: 8080         # 서비스가 주시하는 포트
         targetPort: 80      # 트래픽이 전달될 파드의 포트
      selector:
        app: numbers-web
      type: LoadBalancer     # 외부 트래픽도 전달할 수 있는 서비스
    신간 소식 구독하기
    뉴스레터에 가입하시고 이메일로 신간 소식을 받아 보세요.