다중화란?
다중화(Redundancy)란, 장애가 발생하더라도 예비 운용장비로 시스템의 기능을 계속할 수 있도록 하는 것을 말한다.
다중화의 본질
시스템의 다중화란 다음의 단계들을 실천하는 것이다.
-
장애를 상정한다.
가령 다음 그림과 같은 시스템이 있다고 하자.
이러한 시스템에서 발생할 수 있는 장애는 다음을 가정해 볼 수 있다.
∙ 라우터 장애로 서비스가 정지한다.
∙ 서버 장애로 서비스가 정지한다.
-
장애에 대비해서 예비 운용장비를 준비한다.
위의 그림에 예비 운용장비를 추가한 것이 다음의 그림이다.
- 장애가 발생했을 때 예비 운용장비로 교체할 수 있는 운용체제를 정비한다.
라우터 장애 시 대응
Cold Standby
예비 운용장비를 평소에는 사용하지 않고, 현재 운용장비에 장애가 발생하면 그 때 예비 운용장비에 연결하는 운용체제를 말한다.
다중화 된 시스템에서는, 현재 운용장비와 예비 운용장비의 설정은 동일하게 해 두는 것이 정석이다.
라우터와 같은 네트워크 장비라면 운용 중에 설정을 자주 변경할 일도 없고, 저장해두어야 할 데이터도 그리 많지 않기 때문에 Cold Standby로 운용하는 것은 현실적인 선택 중 하나다.
웹 서버 장애 시 대응
웹 서버 장애 시에도 위에서 본 것과 같은 방법으로 대응할 수 있겠지만, 문제점이 있다.
Hot Standby
다중화 된 시스템에서는 현재 운용장비와 예비 운용장비의 구성을 항상 같은 상태로 해두는 것이 정석이다.
그런데 웹 서버의 경우, 사이트의 내용이 매일 업데이트 되는 경우가 대부분이고 앱이나 운영체제의 버전업도 고려해야 한다. 그러니 중지되어 있는 예비 운용장비에서 작업을 이어나간다는 것은 상상할 수도 없는 일이다.
따라서, 웹 서버의 예비 운용장비는 항상 전원을 켜두고 네트워크에 연결해 두는 것이 좋을 것이다. 즉 현재 운용장비의 내용을 갱신할 때 예비 운용장비도 동일하게 갱신할 수 있도록 운용하는 것이다.
이와 같이, 두 대의 서버를 항상 가동시켜 두고 늘 같은 상태로 유지해두는 운용 형태를 Hot Standby라고 한다.
Cold Standby의 경우 물리적으로 회선연결을 변경하거나 전원을 투입해야 하기 때문에 장애 시 downtime이 길어지기 쉽지만, Hot Standby라면 즉시 교체하는 것이 가능하다.
댓글