• DRBD

DRBD

DRBD(Distributed Replicated Block Device) 두대의 서버간에 네트워크를 통해 실시간으로 데이터를 동기화하는 기법입니다.
별도의 추가장비 없이 DRBD솔루션만을 바탕으로 고가용성 시스템을 구축할 수 있습니다.

공개된 오픈소스
강력한 성능 및 안정성
지속적인 업데이트

등의 장점으로 사용자층을 넓혀가고 있으며 보편적인 데이터 동기화 기법 이용 사례가 되고 있습니다.

특징

네트워크 기반의 RAID/1 구성
데이터 미러링을 위한 고가의 전용장비 필요하지 않음
단지 비슷한 용량의 서버 2대로 구현 가능 => 비용절감 효과
블럭디바이스 형태로 작동
파일단위가 아닌 저수준의 블럭디바이스 기반의 복제
대량파일로 구성된 데이터의 경우 파일단위의 복제시 완료시간이 길어지는 문제 보완
=> 실시간으로 데이터 복제환경 구현
이중화 구성
Primary - Secondary 간 실시간 장애감지 구성
일상 서비스 상태에서 Primary 서버가 주 서비스로 운영
Primary 서버의 데이터를 실시간으로 Secondary 서버로 복제
운영중 Primary 서버의 장애 발생시에 즉시 Secondary서버가 주 서비스로 운영
=> 실시간 장애감지 및 처리에 의해 Primary 서버의 장애 발생시에도 서비스 지속가능

왜 DRBD가 필요한가?

A업체는 다중웹서버를 이용한 부하분산으로
많은 동시접속자를 수용하는 업체입니다.
업체는 다음과 같은 이유로 NAS형태의 공유스토리지를
사용하고 있습니다.

- 모든 웹서버는 동일한 데이터를 출력해야함
- 수시로 데이터파일은 변경되며 사용자의 업로드도 발생함
- 하나의 데이터를 업로드하면 동기화하는 설정이 필요함
- 파일이 많기때문에 서버별 동기화 과정에서 시간차 발생

하지만 공유스토리지서버가 단독으로 운영되고 있기 때문에
스토리지 서버의 장애 발생시 전체 서비스가 불가능한
위험을 안고 있습니다.

공유스토리지 이중화 구성

공유스토리지 이중화를 위한 기법
- 파일/디렉토리 단위 동기화 : rsync
- 블록디바이스 기반의 저수준 동기화 : DRBD

DRBD 도입 이유
- 하나의 데이터를 업로드하면 동기화하는 설정이 필요함
- 파일이 많기때문에 서버간 동기화 과정에서 시간차 발생
- 파일동기화 작업에 따른 시스템 부하상승 보완

2대의 공유스토리지를 DRBD 구성 : Primary - Secondary 형태 Primary의 장애시에도 Secondary서버가 즉시 서비스를
지속할 수 있도록 이중화