Amazon Route 53
개발자 안내서 (API 버전 2013-04-01)

Amazon Route 53이 상태 확인이 정상인지 여부를 판단하는 방법

Amazon Route 53에서 상태 확인이 정상인지 결정하는 데 사용하는 방법은 상태 확인의 유형에 따라 다릅니다.

엔드포인트를 모니터링하는 상태 확인

Route 53은 전 세계 곳곳에 상태 확인 프로그램을 두고 있습니다. 엔드포인트를 모니터링하는 상태 확인을 생성하면 상태 확인 프로그램에서는 엔드포인트가 정상인지 확인하기 위해 지정하는 엔드포인트로 요청을 보내기 시작합니다. Route 53이 사용하도록 할 위치를 선택할 수 있고, 확인 사이의 간격을 10초마다 도는 30초마다로 지정할 수 있습니다. 다른 데이터 센터에 있는 Route 53 상태 확인 프로그램은 상호 연계되지 않으므로 선택한 간격에 상관 없이 초당 여러 번의 요청이 표시되는 경우도 있고 몇 초 동안 상태 확인이 없는 경우도 있습니다.

각각의 상태 확인 프로그램은 다음 두 가지 값을 기준으로 엔드포인트의 상태를 평가합니다.

  • 응답 시간. 여러 가지 이유로 리소스의 응답 속도가 느리거나 상태 확인 요청에 응답하지 못할 수 있습니다. 예를 들어 리소스가 유지 관리를 위해 종료되거나, DDoS(Distributed Denial of Service) 공격을 받고 있거나, 네트워크가 다운되었을 수 있습니다.

  • 엔드포인트가 사용자가 지정한 다수의 연속적인 상태 확인(장애 임계값)에 응답하는지 여부

Route 53은 상태 확인 프로그램에서 데이터를 집계하여 엔드포인트가 정상인지 확인합니다.

  • 상태 확인 프로그램의 18% 이상이 엔드포인트가 정상이라고 보고하는 경우 Route 53은 엔드포인트가 정상이라고 간주합니다.

  • 상태 확인 프로그램의 18% 미만이 엔드포인트가 정상이라고 보고하는 경우 Route 53은 엔드포인트가 비정상이라고 간주합니다.

여러 리전에 있는 상태 확인 프로그램이 엔드포인트가 정상이라고 간주하도록 보장하기 위해 18%라는 값을 선택했습니다. 이에 따라 네트워크 상태로 인해 엔드포인트가 일부 상태 확인 중인 위치에서 격리되었다는 이유만으로 엔드포인트가 비정상인 것으로 간주되는 상황이 방지됩니다. 이 값은 향후 릴리스에서는 달라질 수 있습니다.

개별 상태 확인 프로그램이 엔드포인트가 정상인지 확인하는 데 사용하는 응답 시간은 상태 확인의 유형에 따라 다릅니다.

  • HTTP and HTTPS 상태 확인 – Route 53은 반드시 4초 안에 엔드포인트와의 TCP 연결을 설정해야 합니다. 뿐만 아니라 엔드포인트는 연결 후 2초 내에 2xx 또는 3xx의 HTTP 상태 코드와 반응해야 합니다.

  • TCP 상태 확인 – Route 53은 반드시 10초 안에 엔드포인트와의 TCP 연결을 설정해야 합니다.

  • 문자열 매치로 HTTP 및 HTTPS 상태 확인 – HTTP 및 HTTPS 상태 확인과 함께 Route 53는 4초 내에 엔드포인트와의 TCP 연결을 설정해야 하고, 엔드포인트는 연결 후 2초 내에 2xx 또는 3xx의 HTTP 상태 코드와 반응해야 합니다.

    Route 53 상태 확인 프로그램은 HTTP 상태 코드를 수신한 후 2초 내에 엔드포인트로부터 오는 응답의 본문을 수신해야 합니다. Route 53은 지정한 문자열을 찾기 위해 응답의 본문을 검색합니다. 문자열은 응답 본문의 최초 5,120바이트 내에서 모두 나타나야 합니다. 그렇지 않으면 엔드포인트는 상태 확인에 실패합니다. Route 53 콘솔을 사용한다면, [Search String] 필드에서 문자열을 지정합니다. Route 53 API를 사용한다면, 상태 확인을 지정할 때 SearchString 요소에서 문자열을 지정합니다.

엔드포인트를 모니터링하는 상태 확인(TCP 상태 확인 제외)의 경우, 엔드포인트로부터의 응답에 헤더가 포함되어 있으면 헤더가 RFC7230, Hypertext Transfer Protocol(HTTP/1.1): Message Syntax and Routing의 섹션 3.2, "Header Fields"에 정의된 형식을 따라야 합니다.

다른 상태 확인을 모니터링하는 상태 확인

상태 확인은 다른 상태 확인의 상태를 모니터링할 수 있습니다. 이러한 유형의 상태 확인을 계산된 상태 확인이라 합니다. 모니터링을 수행하는 상태 확인을 상위 상태 확인이라 하며, 모니터링 대상인 상태 확인을 하위 상태 확인이라 합니다. 하나의 상위 상태 확인은 최대 255개의 하위 상태 확인을 모니터링할 수 있습니다. 모니터링 작동 방식은 다음과 같습니다.

  • Route 53이 정상으로 간주되는 하위 상태 확인의 수를 합산합니다.

  • Route 53은 정상으로 간주되는 상위 상태 확인의 상태에 대해 정상이어야 하는 하위 상태 확인의 수와 위에서 합산한 수를 비교합니다.

자세한 내용은 상태 확인 생성 또는 업데이트 시 지정하는 값다른 상태 확인 모니터링(계산된 상태 확인)를 참조하십시오.

CloudWatch 경보를 모니터링하는 상태 확인

CloudWatch 경보를 기반으로 상태 확인을 생성하면 Route 53은 경보 상태를 모니터링하는 대신 해당 경보의 데이터 스트림을 모니터링합니다. 데이터 스트림이 가리키는 경보 상태가 확인이면 상태 확인은 정상으로 간주합니다. 데이터 스트림이 가리키는 경보 상태가 경보면 상태 확인은 이상 있음으로 간주합니다. 데이터 스트림이 경보 상태를 판단하기에 충분한 정보를 제공하지 않을 경우, 상태 확인의 상태는 상태 확인의 상태의 설정, 즉 정상, 이상 있음, 마지막으로 알려진 상태 중 하나에 따라 결정됩니다. (Route 53 API에서 이 설정은 InsufficientDataHealthStatus입니다.)

참고

Route 53 상태 확인은 CloudWatch 경보 상태 대신 CloudWatch 데이터 스트림을 모니터링하므로 CloudWatch SetAlarmState API 작업을 사용해서 상태 확인의 상태를 강제로 변경할 수 없습니다.