DNS 정책 개요

Cloud DNS에서는 다양한 유형의 정책을 지원합니다. 이 페이지에서는 다양한 정책 유형 및 유형 하나와 다른 유형을 사용할 수 있는 시기를 자세하게 설명합니다.

  • 서버 정책은 Virtual Private Cloud(VPC) 네트워크 (DNS 전달, 로깅)에 비공개 DNS 구성을 적용합니다.
  • 응답 정책은 쿼리 이름을 기준으로 비공개 DNS 응답을 재정의합니다.
  • 라우팅 정책은 쿼리(예: 라운드 로빈, 위치정보)를 기준으로 트래픽을 조정합니다.

필요에 따라 이 세 가지 정책을 동시에 사용할 수 있습니다.

서버 정책

서버 정책을 사용하여 DNS 변환을 위한 하이브리드 배포를 설정합니다. DNS 변환 방향에 따라 인바운드 서버 정책을 설정할 수 있습니다. 워크로드에서 온프레미스 DNS 리졸버를 사용하려는 경우 아웃바운드 서버 정책을 사용하여 DNS 전달 영역을 설정할 수 있습니다. 그렇지 않고 Google Cloud에서 온프레미스 워크로드로 이름을 변환하려는 경우 인바운드 서버 정책을 설정할 수 있습니다.

서버 정책에 대한 자세한 내용은 서버 정책 개요를 참조하세요.

DNS 서버 정책을 구성하고 적용하려면 DNS 서버 정책 적용을 참조하세요.

응답 정책

응답 정책은 레코드 대신 규칙이 포함된 Cloud DNS 비공개 영역 개념입니다. 이러한 규칙을 사용하면 DNS 응답 정책 영역(RPZ) 초안 개념(IETF)과 비슷한 효과를 얻을 수 있습니다. 응답 정책 기능을 사용하면 DNS 리졸버가 조회 중에 확인하는 네트워크의 DNS 서버에 맞춤설정된 규칙을 도입할 수 있습니다. 응답 정책의 규칙이 수신되는 쿼리에 영향을 미치는 경우에 처리됩니다. 그러지 않으면 조회가 정상적으로 진행됩니다. 자세한 내용은 응답 정책 및 규칙 관리를 참조하세요.

응답 정책은 호환되는 리졸버가 특수한 작업을 실행하게 하는 특별하게 포맷된 데이터가 포함된 다른 일반 DNS 영역인 RPZ와 다릅니다. 응답 정책은 DNS 영역이 아니며 API에서 별도로 관리됩니다. Cloud DNS에서 응답 정책을 만들고 수정하려면 ResponsePolicies API를 사용합니다. 응답 정책은 ManagedZones와 구분되며 ManagedZones API 또는RRSet API 중 하나를 사용하여 관리될 수 없습니다.

라우팅 정책

DNS 라우팅 정책을 사용하면 특정 기준에 따라 트래픽을 조정할 수 있습니다. 또한 Cloud DNS는 각 라우팅 정책에 삽입된 상태 점검 및 자동 장애 조치를 지원합니다. 전역 액세스가 사용 설정된 내부 패스 스루 네트워크 부하 분산기와 내부 애플리케이션 부하 분산기 및 리전 간 내부 애플리케이션 부하 분산기에 대해 상태 점검을 사용할 수 있습니다.

Cloud DNS는 다음 라우팅 정책을 지원합니다.

  • 가중치가 적용된 라운드 로빈 라우팅 정책
  • 위치정보 라우팅 정책
  • 지오펜싱 라우팅 정책
  • 장애 조치 라우팅 정책

한 번에 한 가지 유형의 라우팅 정책만 리소스 레코드 모음에 적용할 수 있습니다. 위치정보 라우팅 정책을 백업으로 설정할 수 있는 장애 조치 라우팅 정책을 구성하는 경우를 제외하면 라우팅 정책을 결합할 수는 없습니다.

가중치가 적용된 라운드 로빈 라우팅 정책

가중치 적용 라운드 로빈(WRR) 라우팅 정책을 사용하면 DNS 대상별로 서로 다른 가중치를 지정할 수 있으며 Cloud DNS는 가중치에 따라 트래픽을 분산시킵니다. 이 정책을 사용하여 수동 active-active 또는 active-passive 구성을 지원할 수 있습니다. 또한 소프트웨어의 프로덕션 버전과 실험용 버전 간에 트래픽을 분할할 수 있습니다.

대상이 내부 패스 스루 네트워크 부하 분산기인 경우 기본적으로 상태 점검을 사용할 수 있습니다. 이를 통해 엔드포인트가 상태 점검에 실패할 때 자동 장애 조치가 가능합니다. 장애 조치가 수행되면 나머지 정상 엔드포인트 간에 트래픽 분할이 자동으로 조정됩니다. 자세한 내용은 상태 점검을 참조하세요.

위치정보 라우팅 정책

위치정보(GEO) 라우팅 정책을 사용하면 소스 지역(Google Cloud 리전)에서 발생한 트래픽을 특정 DNS 대상에 매핑할 수 있습니다. 이 정책을 사용하여 트래픽의 출처를 기준으로 서로 다른 서비스 인스턴스에 수신 요청을 분산할 수 있습니다. 이 기능을 인터넷에 사용하거나, 외부 트래픽에 사용하거나, Google Cloud 내에서 발생하여 내부 패스 스루 네트워크 부하 분산기로 향하는 트래픽에 사용할 수 있습니다. Cloud DNS는 쿼리가 Google Cloud에 입력되는 리전을 소스 지역으로 사용합니다.

대상이 내부 패스 스루 네트워크 부하 분산기, 내부 애플리케이션 부하 분산기 또는 리전 간 내부 애플리케이션 부하 분산기인 경우 기본적으로 상태 점검을 사용할 수 있습니다. 이를 통해 엔드포인트가 상태 점검에 실패할 때 자동 장애 조치가 가능합니다. 위치정보의 경우 소스 트래픽에 다음으로 가까운 위치정보로 트래픽이 장애 조치됩니다.

지오펜싱 라우팅 정책

상태 점검은 해당 위치정보의 모든 엔드포인트가 비정상인 경우에도 트래픽을 특정 위치정보로 제한할 수 있는 지오펜싱 라우팅 정책 유형을 지원합니다. 위치정보 정책에서는 특정 지역 버킷에서 상태 점검 실패가 관찰되면 다음으로 가까운 위치정보로 트래픽이 자동 장애 조치됩니다. 지오펜싱이 사용 설정되면 자동 장애 조치가 발생하지 않습니다. 권한 서버로서 Cloud DNS는 값을 반환해야 하며, 이 시나리오에서 Cloud DNS는 상태 점검에 실패할 때 모든 IP 주소를 변경 없이 그대로 반환합니다.

장애 조치 라우팅 정책

장애 조치 라우팅 정책을 사용하면 VPC 내의 내부 리소스에 고가용성을 제공하도록 활성 백업 구성을 설정할 수 있습니다. 비공개 영역에 대해서만 장애 조치 라우팅 정책을 구성할 수 있습니다.

정상 작동 시에는 active 세트에서 프로비저닝된 IP 주소가 항상 반환됩니다. 활성 세트의 모든 IP 주소가 실패하면(상태가 비정상으로 변경됨) Cloud DNS가 백업 세트에서 IP 주소를 제공하기 시작합니다. 백업 세트를 위치정보 정책으로 구성할 수 있으며, 동작은 위치정보 정책 섹션에 설명된 것과 같습니다. 내부 패스 스루 네트워크 부하 분산기, 내부 애플리케이션 부하 분산기 또는 리전 간 내부 애플리케이션 부하 분산기로 구성된 경우 모든 백업 가상 IP(VIP) 주소도 상태 점검이 수행됩니다.

Cloud DNS를 사용하면 백업 VIP 주소가 작동하는지 확인할 수 있도록 백업 VIP 주소로 트래픽을 점진적으로 트리클할 수 있습니다. 백업으로 전송되는 트래픽 비율을 0에서 1 사이의 비율로 구성할 수 있습니다. Cloud DNS를 사용하면 백업 VIP 주소로 트래픽의 100% 를 전송하여 장애 조치를 수동으로 트리거할 수 있지만 일반적인 값은 0.1이어야 합니다. 상태 점검은 내부 부하 분산기에만 적용될 수 있습니다. 따라서 구성된 모든 VIP 주소는 내부 패스 스루 네트워크 부하 분산기, 내부 애플리케이션 부하 분산기 또는 리전 간 내부 애플리케이션 부하 분산기여야 합니다.

상태 점검

Cloud DNS는 전역 액세스가 사용 설정된 내부 패스 스루 네트워크 부하 분산기와 내부 애플리케이션 부하 분산기 및 리전 간 내부 애플리케이션 부하 분산기의 상태 점검을 지원합니다.

비공개 부하 분산기의 상태 점검은 비공개 관리형 영역에서만 사용할 수 있습니다. 전달, 피어링, 관리형 역방향 조회 영역에는 상태 점검을 사용할 수 없습니다.

부하 분산기의 상태 점검에 대한 자세한 내용은 상태 점검 개요를 참조하세요.

내부 패스 스루 네트워크 부하 분산기 상태 점검

Cloud DNS는 부하 분산기의 기본 제공 상태 점검 구성을 사용하여 내부 패스 스루 네트워크 부하 분산기의 상태를 확인합니다. Cloud DNS는 내부 패스 스루 네트워크 부하 분산기가 정상 상태이고 상태 점검이 최소 20% 이상 성공할 때 트래픽을 수신할 수 있다고 간주합니다.

내부 패스 스루 네트워크 부하 분산기의 경우 Cloud DNS는 개별 백엔드 인스턴스에서 직접 상태 신호를 가져오고 임곗값 알고리즘이 적용되어 엔드포인트가 정상인지 확인합니다.

단일 내부 패스 스루 네트워크 부하 분산기 가상 IP 주소에서는 여러 서비스가 실행될 수 있습니다. Cloud DNS는 부하 분산기의 상태 점검 구성에 지정된 프로토콜과 포트에서 상태 신호를 찾습니다. 상태 점검에 대한 자세한 내용은 상태 점검 개요를 참조하세요.

내부 애플리케이션 부하 분산기 및 리전 간 내부 애플리케이션 부하 분산기의 경우 Cloud DNS는 라우팅 결정 중에 부하 분산기 자체의 상태를 고려합니다. 부하 분산기는 쿼리를 수신하면 정상적인 백엔드 서비스에만 트래픽을 배포합니다. 정상 백엔드가 존재하도록 하려면 관리형 인스턴스 그룹(MIG)과 같은 서비스를 사용하여 백엔드의 수명 주기를 관리하면 됩니다. Cloud DNS는 개별 백엔드의 상태를 인식할 필요가 없으며 부하 분산기가 이 작업을 처리합니다.

가중치가 적용된 라운드 로빈 정책 및 상태 점검

Cloud DNS는 두 값을 포함하여 0에서 1,000 사이의 가중치를 지원합니다. 상태 점검이 포함되면 다음 작업이 수행됩니다.

  • 가중치가 모두 0인 여러 대상을 구성하면 트래픽이 대상 간에 균등하게 분산됩니다.
  • 0이 아닌 새로운 가중치를 구성하면 기본 대상이 되고 모든 트래픽이 해당 대상으로 이동합니다.
  • 0이 아닌 가중치로 대상을 계속 추가하면 Cloud DNS는 각 요청에서 대상 간에 트래픽 분할을 동적으로 계산하여 트래픽을 적절히 분산합니다. 예를 들어 가중치가 0, 25, 75인 대상 3개를 구성한 경우 가중치가 0인 대상은 트래픽을 분담하지 않고, 가중치가 25인 대상은 트래픽의 1/4을 분담하고, 나머지 대상은 수신 트래픽의 3/4을 분담합니다.
  • 상태 점검이 가중치가 0이 아닌 대상과 연결되고 가중치가 없는 대상과 연결되지 않은 경우 가중치가 없는 대상은 항상 정상으로 간주됩니다. 0이 아닌 모든 레코드가 비정상이면 Cloud DNS는 가중치가 없는 레코드를 반환합니다.
  • 상태 점검이 0이 아닌 가중치가 있는 레코드 및 가중치가 0인 레코드와 모두 연결되어 있는 경우 모든 레코드가 상태 점검에 실패하면 Cloud DNS가 가중치가 0이 아닌 모든 대상을 반환하고 가중치가 0인 대상을 완전히 방지합니다.
  • Cloud DNS가 요청자에게 반환할 가중치 버킷(단일 정책 항목)을 선택하면 해당 가중치 버킷의 IP 주소만 반환됩니다. 가중치 버킷에 하나의 IP 주소만 지정하면 해당 IP 주소만 응답에 포함됩니다. 가중치 버킷에 IP 주소가 2개 이상 있으면 Cloud DNS가 무작위 순서로 모든 IP 주소를 반환합니다.

상태 점검이 포함된 위치정보 정책

상태 점검이 사용 설정된 위치정보 정책에 대해서는 다음과 같은 결과가 발생합니다.

  • 지역 버킷에 여러 IP 주소가 구성되어 있고 모든 IP 주소에 상태 점검이 있으면 정상 IP 주소만 반환됩니다.
  • 상태 점검과 상태 점검 없음이 혼재되어 있고 모든 상태 점검 IP 주소가 실패하면 Cloud DNS는 상태 점검이 구성되지 않은 모든 IP 주소를 반환합니다. 이 시나리오에서는 다음으로 가장 가까운 지역으로의 자동 장애 조치가 수행되지 않습니다.
  • 이 정책은 다음과 같은 경우에 다음으로 가장 가까운 지역 버킷으로 트래픽을 자동으로 라우팅합니다.
    • 지역 버킷의 모든 IP 주소에는 상태 점검이 사용 설정되었습니다.
    • 정책이 펜싱을 사용 중지했습니다.
    • 모든 IP 주소가 상태 점검에 실패합니다. 따라서 다음으로 가까운 지역 대상으로 자동 장애 조치를 수행할 수 있습니다.

상태 확인 로깅

Cloud DNS는 상태 점검 로깅을 지원하고 백엔드 변경사항의 상태 점검 상태를 로깅합니다. 이를 통해 다음을 수행할 수 있습니다.

  • 라우팅 정책이 예상대로 작동하는지 확인합니다. 예를 들면 다음과 같습니다.
    • GEO 정책의 경우 정책이 올바른 지역을 감지하고 올바른 RR 데이터 세트를 반환하는지 확인할 수 있습니다.
    • WRR 정책의 경우 정책이 올바른 가중치의 IP 주소를 반환하는지 확인할 수 있습니다.
  • 실패한 특정 백엔드 및 IP 주소의 인프라 문제를 식별합니다.
  • 특정 백엔드가 포함되지 않거나 특정 백엔드만 반환되는 문제를 해결합니다.

DNS 라우팅 정책을 생성, 편집, 삭제하려면 DNS 라우팅 정책 및 상태 점검 관리를 참조하세요.

DNS 라우팅 정책에 지원되는 레코드 유형

DNS 라우팅 정책은 Cloud DNS에서 지원하는 레코드 유형을 모두 지원하지 않습니다. DNS 라우팅 정책에서는 다음 레코드 유형을 지원합니다.

레코드 유형 설명
A IPv4 주소
AAAA IPv6 주소
CNAME 표준 이름
MX 메일 교환 레코드
SRV 호스트/포트(RFC 2782)
TXT 텍스트 데이터