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