Route53을 이용한 장애 시 DNS 자동 전환

2639 단어 route53AWS
서버 장애시 DNS를 전환하여 예비 시스템에 흘리거나 유지 보수 중 표시를 내는데 자동으로 DNS를 전환할 수 없을까...라고 생각해 보았습니다.

사용하는 것


  • AWS Route53

  • 비용



    AWS 엔드포인트에 대해서는 50건까지는 무료이어야 합니다. AWS 외부의 경우 $0.75/월과 같습니다.

    트래픽 플로우의 경우는 $50/월이므로 페일오버만의 목적이면, 월 약 100엔으로 안심을 살 수 있습니다.
  • 신규 고객 및 기존 고객은 AWS 계정 내에 있거나 AWS 계정에 연결된 최대 50개의 AWS 엔드포인트에 대한 상태 확인을 무료로 사용할 수 있습니다(오퍼).



  • 설정 방법



    헬스 체크



    DNS 전환을 위한 사활 감시를 위해, 우선은 Route53의 헬스 체크의 설정을 합니다.
  • 상태 확인 만들기를 선택합니다.
  • 환경 설정에서 이름을 입력하고 모니터링 대상으로 끝점을 선택합니다.


  • 엔드포인트의 모니터링 부분에 검사할 IP 주소를 설정합니다.



  • DNS 설정



    1차측


  • TTL은 전환을 고려하여 60sec가 권장하는 것 같습니다. 1m를 누르면 60이 들어갑니다.
  • Routing Policy에 Failover를 설정하고 기본 Failover Rocord Type에 Primary를 설정합니다. Seit-ID는 자동으로 생성됩니다 (특히 변경할 필요가없는 것 같습니다)
  • Associate With Health Check 에 "Yes"를 설정하고, 이전에 헬스 체크로 설정한 명칭을 넣습니다.



  • 2차측


  • 보조 측도 동일한 하위 도메인에서 설정합니다.
  • TTL은 전환을 고려하여 60sec가 권장하는 것 같습니다. 1m를 누르면 60이 들어갑니다.
  • Routing Policy에 Failover를 설정하고 기본 Failover Rocord Type에 Secondary를 설정합니다.


  • 보조는 살아있는 전제이므로 Associate With Health Check는 "No"로 좋을 것이라고 생각합니다 (절약)

  • 테스트 방법



    서버를 떨어뜨리는 방법도 있습니다만, 헬스 체크의 「고급 설정」에서 「헬스 체크 스테이터를 반전」에 체크를 넣는 것으로 DNS의 전환을 확인할 수 있다고 생각합니다.



    미안해



    헬스 체크는 ICMP Ping을 사용할 수 없기 때문에, 라우터 등의 경우는 어딘가 감시용 TCP 포트를 열어 둘 필요가 있습니다. 또, HTTP의 경우 200이 돌아오는 것이 조건이므로, 적당하게 설정해 404등이 되어 있으면 헬스 체크 실패가 되기 때문에 주의해 주세요(몰랐다.

    다만, 이것을 잘 이용하면, 특정 HTML 파일이 없을 때는 DNS의 방향이 바뀌는 것 같은 설정을 할 수 있으므로 보수시 등에도 사용할 수 있는 것 같은 생각이 듭니다.

    참고

    좋은 웹페이지 즐겨찾기