1.1. DRX
DRX(Data Replication Xcelerator)는 데이터 복제 가속 솔루션 입니다. DRX는 블록복제 솔루션으로써 전세계적으로 많이 사용되는 DRBD와 연동하여 원거리(DR) 복제 시 WAN 최적화를 통해 복제성능을 극대화 합니다. DRBD에서 제공하는 복제는 구성 환경과 목적에 따라 동기 또는 비동기 방식으로 운영합니다. 동기방식은 타겟노드에 복제 데이터를 먼저 쓴 이후 소스에 데이터를 기록하는 방식으로 실시간 복제 정합성을 유지하는데 적합한 반면 로컬 I/O 응답 성능이 떨어져 운영머신 I/O 성능에 영향도가 있습니다. 비동기 복제는 복제 데이터를 로컬에 쓰고 원격으로 데이터를 전송함으로써 복제가 완료된 것으로 간주하는 방식으로 실시간 RPO가 다소 떨어지지만 복제 처리성능과 로컬 I/O 응답성능(Latency)이 좋아서 운영머신의 I/O 성능에 영향을 주지 않습니다. 따라서 원거리 복제는 RPO 가 다소 떨어지더라도 비동기 방식의 복제가 필수적입니다. 이와 같은 비동기 복제 아키텍처에도 불구하고 WAN 환경에서는 다음과 같은 환경적인 문제들로 인해 복제 성능 저하가 필연적으로 따르게 됩니다.
- WAN 구간 전송 대역폭은 로컬 I/O 복제 대역에 비해 상당히 낮기 때문에 복제 데이터 전송 throughput이 저하되어 복제지연이 발생합니다.
- 복제 전송 프로토콜(TCP/IP)은 통상 WAN 구간에서의 전송 지연, 패킷 손실이 발생될 수 있기 때문에 데이터 재전송에 따른 지연이 심화될 수 있습니다.
이러한 문제들이 해소되지 못한 채 비동기 복제가 운영될 경우, 복제가 목표로 하는 RPO 최소화를 근본적으로 달성하기 어렵게 되며 결과적으로 복제 타깃의 데이터 정합성을 담보할 수 없게 됩니다. DRX는 DRBD와 직접적으로 연동하여 버퍼링과 압축 기능의 제공을 통해 원거리 복제의 문제점들에 대한 효과적인 솔루션을 제공합니다.
DRX는 낮은 전송대역에서 복제를 수행하기 위한 충분한 수준의 데이터 버퍼링을 구현하여 복제 I/O 부하를 완충하는 기능을 제공합니다. 또한 데이터 압축을 통한 실시간 데이터 중복제거를 구현하여 TCP 프로토콜이 물리적으로 처리해야 할 데이터 전송 비용을 최소화 시켜서 DRBD의 복제 전송시간을 단축 시킵니다. 압축은 부하 수준에 따라 압축 지연이 있을 수 있으나 물리적인 데이터 전송시간에 대한 단축 개선효과를 크게 얻을 수 있기 때문에 이러한 지연의 비용은 상쇄됩니다. 이는 전통적인 WAN 최적화의 접근방식이며 DRX 는 고수준의 압축기능을 통해 다채널 동시 복제 가속을 구현합니다.
DRX 는 이러한 압축과 더불어 실시간 데이터 암호화를 동시 제공하여 기업의 중요 데이터가 WAN 구간을 경유 하면서 발생할 수 있는 데이터 유출 등의 문제에 대해서도 솔루션을 제공하고 있습니다.
DRX는 기본적으로 로컬 DRX와 원격 DRX의 2 프록시 구조로 구축합니다. 그리고 복제환경과 TCP/IP로 연동하여 로컬의 복제 데이터를 로컬 DRX 버퍼로 수용 후 원격으로 릴레이 하도록 기능 합니다. 이러한 버퍼링, 압축, 암호화는 로컬/원격 DRX 구간(WAN 구간)에서 구현되어 복제 환경에 투명하게 제공됩니다. 이러한 투명성은 복제 환경과의 연동 시 유연하고 확장성있는 구성을 가능하게 합니다.
다음 그림은 DRX와 DRBD 간 연동 모습입니다.
1.2. 네트워크 구성
DRX는 다음과 같은 다양한 구성이 가능합니다.
- 한 시스템에서 DRBD와 DRX를 모두 설치하여 운영합니다.
- DRX 전용머신을 통해 운영합니다.
- 하나의 DRX 전용서버를 경유하여 여러 DRBD 리소스를 운영합니다.
1.3. 사양
DRX 는 기 구축된 운영머신 환경에 로컬로 설치할 경우 DRX 의 버퍼링 기능에 필요한 물리 메모리의 충분한 여유 공간을 필요로 합니다. 만약 물리 메모리 공간이 여유가 없을 경우 운영 환경의 물리메모리 증설에 대해서도 고려해야 합니다.
또한 복제 가속을 위한 압축기능을 사용해야 할 경우 압축에 따른 CPU 부하가 운영노드 상에서 발생할 수 있음을 감안해야 합니다. 압축을 할 경우 로컬 I/O 유형에 따라 차이는 있으나 로컬 I/O 부하에 약 20~30%의 추가적인 압축부하가 발생할 수 있으며 이러한 부하는 시스템 전반의 성능에 영향을 줄 수 있으므로 압축 기능을 사용하려면 압축 부하를 분산할 수 있도록 전용 DRX 어플라이언스를 구성하는 것에 대해서도 검토해야 합니다. 로컬 I/O 의 부하가 크지 않고 압축에 따른 운영노드의 성능저하가 미미할 경우 로컬 구성방식에서의 압축 사용도 무방하나 이는 운영환경의 로컬 I/O 에 대한 전반적인 사전조사가 필수적입니다. 이에 대한 자세한 내용은 2. 환경. 의 내용을 참고하세요.
다음은 전용 어플라이언스 구성에 대한 최소 사양으로 어플라이언스의 성능을 극대화 하고자 한다면 CPU 사양은 되도록 제온 서버급의 고사양으로 구성하도록 권장합니다.
항목 | 설명 | 비고 | |
---|---|---|---|
버전 | 1.0 이상 | ||
시스템 요구사항 | CPU |
|
|
메모리 |
| ||
디스크 |
| ||
네트워크 |
| ||
운영체제 |
| ||
기타 | |||
주요기능 | 복제 연동 |
| |
세션 릴레이 관리 |
|
| |
송신 버퍼 관리 |
|
| |
WAN 대역폭 제한 |
| ||
데몬 서비스 |
| ||
압축, 암호화 |
|
| |
로그 관리 |
|