Cloud and DNS (가안)
온프레미스 환경과 클라우드 환경에서 DNS 관리
Public zone DNS
클라우드 환경에서는 DNS와 각종 서비스가 연관이 있어서 해당 클라우드 벤더사의 DNS 를 사용하는 것이 자동화를 하는데 편리함.
AWS의 경우 Route53을 이용하는 경우 AWS의 리소스를 만들면서 자동으로 DNS 레코드를 관리할 수 있음. SSL 인증서의 경우도 ACM을 통해서 무료로 발급을 받고 로드밸런서 등에 자동으로 연결하고 자동으로 업데이트를 할 수 있어서 관리면에서는 편리함
ACM을 통해서 인증서를 발급을 받을 때 DNS 검증 또는 이메일 검증을 이용함. 그런데 자동으로 발급받으려면 DNS 검증을 이용하여 해당 도메인을 관리하는 DNS 서버에 특정 레코드를 넣어두어야 함. 꼭 Route53에서 관리를 하지 않아도 사용하는 DNS 서버에 해당 레코드를 넣어둘 수는 있음. AWS Certificate Manager DNS 검증 - AWS 인증서 관리자
그렇지만 Router53을 이용하여 DNS를 관리하면 로드밸런서를 만들 때 AWS가 자동으로 DNS 네임을 할당하고 자동으로 할당한 DNS네임과 자동으로 연결을 할 수 있음.
GCP의 경우 SSL 인증서 확인 필요.
또한 어느 환경에서 관리를 하는지에 따라 구분을 할 수도 있음.
Private zone DNS
클라우드 환경에서 VPC에 비공개 zone을 만들어서 연동을 할 수 있음. 그러면 VPC 내부에서는 IP 대신 DNS 이용하여 서비스를 연동함.
네이밍 규칙
온프레미스 서버와 Cloud의 도메인 이름을 분리하여 관리합니다. 각기 다른 환경에 별도의 도메인을 사용합니다. 다른 퍼블릭 클라우드 환경을 사용하는 경우 각각 별도의 하위 도메인을 가질 수 있습니다. 환경 간에 요청을 전달하기 쉽기 때문에 권장되는 패턴입니다.
example.co.kr : 기존 온프레미스 및 공개도메인
gcp.example.co.kr : GCP Cloud DNS에서 관리
private dns : VPC 내부에서만 사용
dev 환경 : dev.private.gcp.example.co.kr
prod 환경 : prod.private.gcp.example.co.kr
public dns
gw.gcp.example.co.kr 형태로 관리. 서비스별로
aws.example.co.kr : AWS Route53에서 관리
예) new-gw.example.co.kr 의 CNAME → GCP에서 관리하는 www.gcp.example.co.kr
참고자료 : https://cloud.google.com/dns/docs/best-practices#create_a_simple_consistent_naming_standard