DNS 기반의 Redis HA 구현
DNS 기반의 Redis HA 구현 이번 글에서는 DNS 기반의 Redis HA에 대한 이야기를 해보려고 합니다. DNS TTL이 무엇인지 그리고 그것을 어떻게 이용해서 Redis HA를 구현했는지 살펴보겠습니다. 도메인의 TTL 먼저 도메인의 TTL에 대해 이야기해 보겠습니다. TTL은 Time To Live의 약자로 도메인을 캐싱하고 있는 시간을 의미합니다. 누군가 A라는 도메인에 대해 질의를 했다면 응답을 준 DNS 서버에서 해당 도메인에 대해 TTL 시간 동안 캐싱을 하고 있게 됩니다. 이렇게 동작하는 이유는 같은 도메인을 여러 사람이 질의할 수 있기 때문에 한 번 질의한 내용을 캐싱하고 있는 게 불필요한 동작을 방지할 수 있기 때문입니다. 리눅스에서는 간단하게 dig 명령으로 TTL 시간을 알 수 있습니다. 위 스크린샷은 www.kakao.com에 대한 도메인 질의 결과입니다. 1번 항목은 TTL 시간을 의미합니다. 질의한 도메인에 대해 DNS 서버가 해당 도메인을 캐싱하는 시간입니다. 531초 동안 캐싱하고 있을 거라는 것을 알 수 있습니다. 2번 항목은 www.kakao.com에 대한 도메인 질의 결과를 내려준 서버를 의미합니다. 모든 DNS 서버가 모든 도메인에 대해 [ more… ]