내부 서비스 호출 방식

a. 개념

쿠버네티스는 가상의 DNS 시스템을 내부에 가지고 있어

<svc-name>.<namespace>.svc.cluster.local:<port>

이러한 형식으로 호출하면 같은 클러스터 내의 서비스를 lookup해서 찾아준다.

예를 들어 dev 네임스페이스의 8080 포트의 resource 서비스를 호출하려면 REST호출 시 아래와 같은 형식으로 호출한다.

http://resource.dev.svc.cluster.local:8080

b. 테스트

테스트는 account pod 내부에서 curl을 이용해 resource 서비스의 api를 호출하였다.

아래와 같은 순서로 진행

  1. 컨테이너 내부 접속
  2. curl 패키지 다운로드
  3. resource 서비스를 curl로 호출
  4. 포트 변경 후 테스트