...
BSR(Block Sync & Replication)은 DRBD(http://www.drbd.org)를 fork 한 WDRBD(https://github.com/mantechnology/wdrbd) 를 기반으로 하며, Windows 와 Linux 플랫폼을 모두 지원하도록 공통 엔진으로 구현한 오픈소스 프로젝트 입니다. BSR은 WDRBD의 기본적인 개념과 기능들을 모두 계승하였으며, 원본 DRBD의 문제점들을 보완하고 기능적으로 강화하여 보다 안정적이고 유연한 복제 환경을 구축할 수 있는 솔루션을 제공합니다.
BSR은 오픈소스이며 GPL v2 라이선스를 준수하여 배포합니다. BSR은 WDRBD 1.5.x 배포 버전을 기준으로 작업하여 윈도우즈와 리눅스를 공통으로 지원하는 크로스플랫폼 지원 엔진 체계를 갖추었으며, 1.6.x 을 초기버전으로 배포합니다.
기본
BSR은 호스트 상의 블록장치들(하드디스크, 파티션, 논리 볼륨 등)을 네트워크를 통해 소프트웨어적으로 실시간 복제하는 솔루션입니다.
...
응용 프로그램이 블록장치에 데이터를 쓰는 동시에 실시간 복제합니다.
실시간 복제를 수행 하더라도 다른 응용 서비스나 시스템 요소에 영향을 주지 않습니다.
동기 또는 비동기적으로 복제합니다
동기 방식은 복제 데이터를 로컬디스크와 타겟 호스트의 디스크에 쓰기 완료했을 때 복제를 완료한 것으로 처리합니다.
비동기 방식은 복제 데이터를 로컬디스크에 쓰고 타겟 호스트로 데이터 전송을 했을 때 복제를 완료한 것으로 처리합니다.
...
.
커널 드라이버
BSR의 핵심 엔진은 커널 드라이버로 개발되었습니다.
커널 드라이버는 디스크 볼륨 매니저의 상위 또는 하부에 계층에 위치하여 파일시스템으로 부터 발생하는 쓰기 I/O에 대해 블럭(block) 단위로 통제할 수 있습니다. 파일시스템의 통제하고 파일시스템의 하부 계층에서 복제를 수행함에 따라 파일시스템과 응용프로그램에 관계없이 투명한 복제 환경을 제공하여 고가용성을 구현하기에 적합합니다. 그러나 BSR은 파일 시스템의 하위 계층에 위치하기 때문에 파일과 관련한 일반적인 연산에 대해선 통제할 수 없습니다. 예를 들어, BSR은 파일시스템의 손상을 감지할 수 없으며, 파일의 순수한 데이터와 파일 시스템의 메타 데이터를 구분할 수 없습니다.
...
BSR은 리소스를 구성하고 관리하기 위한 용도의 관리 도구를 제공합니다. 다음의 다음에서 설명하는 bsradm, bsrsetup, bsrmeta, bsrcon 입니다으로 구성됩니다. (Windows 에선 관리 명령어를 사용하기 위해 관리자 권한으로 실행한 명령줄이 필요합니다.)
bsradm
bsr의 세부 기능들에 대해 추상화한 상위 수준 명령어를 제공하는 유틸리티입니다. bsradm 에서 제공하는 명령만으로 BSR의 대부분 동작을 제어할 수 있습니다.
bsradm은 구성파일 etc\bsr.conf로부터 모든 구성 파라미터를 얻으며, bsrsetup 및 bsrmeta에 적절한 옵션을 주어 명령을 수행시킵니다.
bsradm은 –d 옵션을 통해 dry-run모드로 실행시킬 수 있습니다. 이는 bsradm이 bsrsetup 및 bsrmeta 명령을 실제 호출하지 않고, 어떤 옵션 조합으로 실행되는지 미리 확인할 수 있는 방법을 제공합니다.
bsradm 명령 옵션에 대한 자세한 사항은 Appendix B. 시스템 매뉴얼의 bsradm을 참고하십시요.
...