- 쿠버네티스는 거의 모든 서버용 소프트웨어를 실행할 수 있다.
- 하지만, 데이터베이스 같은 스토리지 컴포넌트는 쿠버네티스 외부에서 동작하는 대표적인 소프트웨어이다.
- 클러스터 외부를 가리키는 도메인 네임 해소에도 쿠버네티스 서비스 리소스를 활용할 수 있다.
ExternalName 서비스
- 도메인 네임에 대한 별명이다.
- 파드에서는 로컬 네임을 사용하고, 쿠버네티스 DNS 서버에 이 로컬 네임을 조회하면 외부 도메인으로 해소해 준다.
- 애플리케이션 설정에 포함하기 어려운 환경 간 차이를 반영할 때 유용하다.
- 개발 환경에서는 로컬 도메인 네임을 파드에서 동작하는 테스트용 데이터베이스 서버에 연결하고,
- 운영 환경에서는 실제 도메인에 연결된 운영 데이터베이스 서버에 연결하도록 유연하게 설정할 수 있다.
익스터널네임 서비스의 정의 예시
apiVersion: v1
kind: Service
metadata:
name: numbers-api
spec:
type: ExternalName
externalName: raw.githubusercontent.com
- 클러스터 안에서만 유효한 로컬 도메인 네임을 외부 시스템으로 연결할 수 있는 방법이 익스터널네임 서비스 말고 하나 더 있다.
- 헤드리스 서비스(headless service) 이다.
댓글