Table of Contents |
---|
...
DRX의 최적화는 DRX가 제공하는 버퍼링과 압축 기능이 최적의 성능을 낼 수 있도록 DRX 내부 파라미터를 조절하거나 또는 시스템의 설정을 변경하는 것으로 수행합니다.
DRX가 낼 수 있는 버퍼링의 버퍼링 성능은 10Gbps 네트워크에서 최대 6~7 Gbps 수준이며 압축 수행 시 이 수치에 수치의 최소 1.5배 이상의 처리량을 보일 때 적절한 성능을 낸다고 볼 수 있습니다. 그러나 이러한 고성능의 고성능 수치는 TX 측면의 네트워크 대역이 충분하다는 전제하의 수치이며, 보통 WAN 구간 상에선 충분할 때 측정 가능하며 보통의 WAN 구간에선 TX 네트워크 대역이 상당히 낮기 때문에 I/O 부하가 커지는 즉시 DRX 버퍼가 채워지면서 결국 혼잡상태에 이르게 되어 최적화를 수행하기 위한 여건을 만들기 어렵습니다즉시 혼잡에 이르게 됩니다. 실제 운영 I/O 를 통해 최적화를 수행하기는 쉽지 않은 것 입니다. 이러한 상황을 감안하여 DRX에선 복제 I/O에 대한 적정한 수준의 시뮬레이션을 수행하는 drxsim(구 drbdsim)을 drxsim을 별도 도구로 제공하고 있으며 drxsim 을 통해 DRX 운영환경의 여건들을 복제 대역 상황을 미리 파악할 수 있습니다있게 합니다.
일반적으로 네트워크 대역은 iperf 와 같은 도구로 확인할 측정할 수 있으며 iperf 는 네트워크가 낼 수 있는 최대 대역을 산출합니다. drxsim은 로컬 drxsim에서 DRX로 I/O 부하를 주입시키고 WAN 구간으로 릴레이된 데이터를 원격 drxsim에서 수신하여 DRX가 네트워크에서 처리할 수 있는 순수한 처리량을 산출 합니다. 따라서 drxsim에서 산출한 처리량이 iperf 의 수치와 비슷하거나 또는 drxsim 수치가 그 이상일 때(압축을 할 경우) DRX가 적절한 성능을 발휘한다고 할 수 있습니다. 반대로 drxsim의 수치가 iperf 수치에 비해 상당히 낮다면 DRX 설정에 일부 조정이 필요하다고 판단할 수 있습니다.
이런 방식으로 WAN 구간의 대역 상황을 미리 파악함과 더불어 DRX의 기본 버퍼링 성능을 점검하고 그에 따라 DRX 버퍼의 적정한 크기를 산정하거나 압축 기능 도입 여부를 판단할 수 있습니다. drxsim의 자세한 사용방법은 drxsim usage guide사용 가이드 의 내용을 참고하세요.
이상의 내용을 토대로 했을 때 최적화의 요소는 다음으로 요약됩니다.
- 복제 I/O 부하
- 네트워크 대역
- DRX 버퍼링
- 압축
Info |
---|
로컬 I/O 측면의 지연(latency), 처리량(throughput) 최적화는 복제 측면의 최적화로 다루어져야 합니다. 이에 대해선 다음의 내용을 참고하십시요 BSR 최적화 (https://mantech.jira.com/wiki/spaces/BSRUG/pages/1366164136)BSR 최적화의 내용을 참고하십시요 |
성능지표
DRX의 성능지표는 DRX에서 제공하는 CLI 명령들을 통해 확인 할 수 있습니다.
버퍼링 성능: memusage
...
- 버퍼의 사용량과 지연을 통해 성능을 확인합니다.
2.4 물리 메모리 사양 항목에서 계산으로 설정한 버퍼 사용량을 확인할 수 있습니다.
- 지연(Latency)값의 변동을 통해서 병목이 발생하는 상태를 확인할 수 있습니다.
출력 예시
- Capacity: 리소스에 설정한 버퍼의 크기이며 단위는 KB 입니다.
- Use (Size): 버퍼 사용량과 (크기)입니다. Size의 단위는 KB 입니다.
- BAB Latency는 TX, RX, Compress, Decompress 항목에 대한 현재(cur), 평균(avg), 최대(max), 최소(min)값을 microseconds 단위로 출력합니다.
Code Block theme DJango title memusage collapse true < 일반 모드 > [root@c73-p1 drx]# drx-ctl mem all -------------------------------------------------------------------------------------- Name Capacity Use (Size) Full Counts -------------------------------------------------------------------------------------- DR-1-3-c73-p2-c73-p1 716800 [>>>>>>>.....................] 23% (163277) 0 10240 [............................] 0% (0) - -------------------------------------------------------------------------------------- DR-2-3-c73-p2-c73-p1 512000 [............................] 0% (0) 0 10240 [............................] 0% (0) - -------------------------------------------------------------------------------------- Active bab counts : 2 <상세 모드> [root@c73-p1 drx]# drx-ctl mem all -v ---------------------------------------------------------------------------------------------------------- Name Capacity Begin End Use (Size) Full Counts ---------------------------------------------------------------------------------------------------------- DR-1-3-c73-p2-c73-p1 716800 340236152 504137496 [>>>>>>>.....................] 22% (160060) 0 10240 0 0 [............................] 0% (0) - ---------------------------------------------------------------------------------------------------------- DR-2-3-c73-p2-c73-p1 512000 64273922 64273922 [............................] 0% (0) 0 10240 0 0 [............................] 0% (0) - ---------------------------------------------------------------------------------------------------------- Active bab counts : 2 ---------------------------------------------------------------------------------------------------------- name Latency cur avg max min ---------------------------------------------------------------------------------------------------------- DR-1-3-c73-p2-c73-p1 TX BAB 00:00:00.000000 00:00:00.443516 00:00:06.765142 00:00:00.000101 RX BAB 00:00:00.000000 00:00:00.000000 00:00:00.000000 00:00:00.000000 Compress 00:00:00.000088 00:00:00.000087 00:00:00.001439 00:00:00.000001 Decompress 00:00:00.000000 00:00:00.000000 00:00:00.000000 00:00:00.000000 ---------------------------------------------------------------------------------------------------------- DR-2-3-c73-p2-c73-p1 TX BAB 00:00:00.000000 00:00:00.001627 00:00:00.004173 00:00:00.000261 RX BAB 00:00:00.000000 00:00:00.000000 00:00:00.000000 00:00:00.000000 Compress 00:00:00.000000 00:00:00.000113 00:00:00.001440 00:00:00.000001 Decompress 00:00:00.000000 00:00:00.000000 00:00:00.000000 00:00:00.000000 ---------------------------------------------------------------------------------------------------------- Active bab counts : 2 [root@c73-p1 drx]#
압축 성능
...
: statistics
DRX의 통계 정보를 확인하는 명령어입니다.
...
압축 플러그인을 설정하는 명령어는 아래와 같습니다.
압축 타입 | 명령 | 출력 예시 | |||||||||
---|---|---|---|---|---|---|---|---|---|---|---|
ZLIB | drx-ctl set compress zlib [level] [connect name] |
| |||||||||
LZ4 | drx-ctl set compress lz4 [level] [connect name] |
| |||||||||
NONE | drx-ctl set compress none 0 [connect name] |
|
...