여기서 간단하고 멋진 솔루션은 ELB를 CloudFront 뒤에 배치하는 것입니다.
오리진 서버 (이 경우 ELB)에서 5XX 오류 (또는 원하는 경우 4XX)가 발생하는 경우 CloudFront는 사용자 지정 오류 페이지를 반환 할 수 있습니다.이 오류 페이지 는 CloudFront를 가리키는 두 번째 오리진을 생성하여 S3 버킷에서 가져 오도록 구성 할 수 있습니다. 버킷에 캐시 동작 라우팅 (예 : 캐시) /errors/static/*
을 생성합니다.
이것은 중요한 이유로 인해 Route 53 장애 조치보다 더 효과적입니다. 치명적인 결함입니다. DNS TTL은 관련이 없습니다.
기본적으로 브라우저에 DNS 항목이 있으면 일반적으로 모든 브라우저 창이 닫힐 때까지 계속 사용하려고합니다.
따라서 사이트에 이미 방문한 방문자를 위해 사이트가 중단되면 대체 사이트를 보지 못할 것입니다.
더군다나, 방문자가 다운 된 상태에서 처음으로 사이트를 방문하면 모든 브라우저 창을 닫을 때까지 유지 보수 페이지에 "고착"됩니다.
장애 조치 DNS를 사용하는 경우 장애 조치 대상이 여전히 응용 프로그램 인 경우에만 가능합니다.
필요하지 않은 경우 CloudFront의 캐싱을 해제 할 수 있습니다.
다운 된 상태에서 복구하려는 사이트 망치질을 종료하려면 CloudFront의 오류 캐싱 TTL을 0이 아닌 값으로 구성 할 수도 있습니다. 오류가 발생하는 특정 페이지의 경우 오류 페이지가 계속 표시되며 오류 CachingTTL이 만료 될 때까지 해당 페이지에 대한 추가 요청으로 서버를 방해하지 않습니다.