서버를 장애로부터 보호하기

Jin·2021년 6월 22일
0

네트워크

목록 보기
6/9

서비스가 운영되는 동안, 서버에 장애가 발생 할 수 있다. 장애가 발생해도 정상적으로 서비스 운영을 이어가기 위해서 추가적으로 장애 대책을 세울 필요가 있다.

장애 대책 방법론

장애 대책은 크게 다중화백업으로 나눈다. 다중화란, 같은 역할을 수행하는 장치를 여러개로 구성해서 하나의 장치가 고장났을때, 다른 장치를 사용하도록 하는 것이다. 다중화에도 어떻게 기능을 분배할 것인가에 따라서 다양한 방법론이 존재한다. 두번째는 백업이다. 백업은 데이터 복원에서 말하는 백업과는 다르다. 장애 발생시에 장애가 복구되도록 보충 기능을 수행하는 것을 뜻한다.

스토리지 다중화(RAID)

스토리지 다중화 방법은 다중화 메커니즘에 따라, 미러링, 패리티, 스트라이프 + 미러링 으로 나뉜다.
미러링에서는 하나의 저장소에 저장하는 데이터를 다른 저장소에도 그대로 복제한다. 패리티에서는 미러링과 유사하지만, 데이터를 다른 스토리지에 저장할때, 데이터 원본이 아닌, 데이터를 복구하기 위한 패리티를 저장해서 저장효율을 높인다.

스트라이프 + 미러링 방식에서는 다중화와 함께 데이터 조회 속도 고속화가 이루어진다. 데이터를 저장할때는 미러링 기술을 사용하여 여러개의 스토리지에 함께 저장한다. 특정 데이터를 조회할때는, 스트라이프 기술을 이용하여, 미러링된 스토리지들에 함께 조회함으로써 데이터 조회 속도를 높인다.

티밍

티밍은 하나의 논리적 네트워크 주소(IP) 에 두 개 이상의 물리적 주소(NIC, MAC) 를 대응 시키는 것을 뜻한다. 티밍을 이용하면, 외부에서는 동일한 IP 로 요청하게 되지만, 내부에서는 상황에 따라 다른 장비를 사용할 수 있다.

다중화 된 장비를 사용하는 방식은 여러가지가 있을 수 있다. 폴트 톨러런싱 이라는 방법에서는 하나의 다중화 된 장비 중 하나만 액티브 상태로 두고, 나머지를 스탠바이 상태로 둔다. 액티브 장비에 장애가 발생할 경우, 스탠바이 상태의 장비를 액티브로 바꾸어 사용한다.

로드 밸런싱 이라는 방법에서는 다중화된 장비를 모두 액티브 상태로 두고 요청에 따라 번갈아가면서 장비를 사용하게 된다.

클러스터링과 부하 분산

서버를 다중화하는 방법을 클러스터링 이라고 한다. 클러스터링을 이용하면, 여러대의 서버가 하나의 논리적 서버처럼 기능하게 된다.

클러스터를 구성하면, 클러스터에 있는 서버들에 부하를 분산하는 장치를 설정할 필요가 있다. 부하를 분산하는 방법은 DNS 라운드로빈 방식과 부하분산 어플라이언스 서버를 설정하는 방법 등이 있다.

DNS 라운드 로빈 방식은 DNS 서버에서 클러스터 각각의 IP 를 등록해두고, 번갈아가며 요청을 보낸다.

부하분산 어플라이언스 서버 방식은 부하분산 장치를 따로 설정하는 방식이다. 부하분산 장치에서는 정책에 따라 유연하게 부하 분산을 수행할 수 있다.

0개의 댓글

관련 채용 정보