[CKA] 마이크로서비스를 쿠버네티스에 배포할 때의 연결
여러 기술 스택으로 구성된 애플리케이션을 Deployment와 Service로 연결할 때 확인할 점을 정리합니다.
예제 애플리케이션은 Python 투표 앱, Redis, .NET 작업자, PostgreSQL, Node.js 결과 앱으로 구성됩니다. 배포할 때는 컨테이너를 올리는 것만큼 각 구성 요소의 연결 관계를 정확히 표현하는 일이 중요합니다.
- 각 구성 요소를 컨테이너로 배포합니다.
- 서로 연결되어야 하는 구성 요소와 포트를 확인합니다.
- 파드 교체와 확장을 고려해 내부 연결에는 ClusterIP Service와 서비스 이름을 사용합니다.
- 사용자가 접근할 구성 요소만 외부에 노출합니다.
파드를 직접 관리하면 업데이트와 확장 과정이 불편합니다. Deployment가 파드 복제본과 업데이트를 관리하도록 하고, Service의 selector가 Deployment 파드 템플릿의 라벨과 일치하는지 확인합니다.