...
DRX 전용 어플라이언스의 경우 DRBD와 연동되는 로컬 복제 I/O 수신 구간에 대해 최적화를 수행할 수 있습니다. DRX는 기본적으로 응용주소 공간에서 버퍼링을 수행하도록 되어 있어서 DRBD와 직접적으로 연동되는 어플라이언스의 OS 커널의 수신성능에 따라 버퍼링 성능 차이가 있을 수 있습니다. 따라서 이 OS 커널 소켓의 수신버퍼를 조절하여 RX 수신 성능이 더욱 향상되도록 조절할 수 있습니다. OS 커널의 수신버퍼를 충분히 확보할 수 있도록 다음과 같은 내용을 OS 커널에 적용할 필요가 있습니다.
Info |
---|
4. 성능 최적화
원격지로 복제 데이터를 전송할 때 DRX가 사용하는 버퍼링(이하 BAB) 사용률로 성능을 가늠할 수 있습니다.
4.1. BAB 최적화
복제가 진행중일 때도 BAB의 Full Counts값은 0이 유지되야하며 사용률(Use)은 지속적으로 증가하지 않고 균일한 사용량를 유지해야 합니다.
4.1.1 BAB 사이즈
운영 머신에서 측정한 I/O로 BAB 사이즈를 결정했으나 실운영에서 사용률(Use)이 높다면 BAB 사이즈를 조정해야 합니다.
- BAB 사이즈
- DRX Operation Guide의 "4. 버퍼 운영 정책"을 참조
BAB 사용률 확인 명령어
명령어
Code Block [root@c73-p1 logs]# drx-ctl show memusage
출력 결과
Code Block title print memusage collapse true [root@c73-p1 logs]# drx-ctl show memusage Command id (2) : show memusage ================================================================================================================================================ Name Capacity Begin End Size Full Counts Use ================================================================================================================================================ DR-4-6-c73-p2-c73-p1 524288000 (500.00 MB) 997 997 0 (0.00 B) 0 0 % 10485760 (10.00 MB) 0 0 0 (0.00 B) - 0 % ------------------------------------------------------------------------------------------------------------------------------------------------ Active bab counts : 1 ------------------------------------------------------------------------------------------------------------- name Latency cur avg max min ============================================================================================================= DR-4-6-c73-p2-c73-p1 TX BAB 00:00:00.001359 00:00:00.001136 00:00:00.001730 00:00:00.000206 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.000000 00:00:00.000000 00:00:00.000000 Decompress 00:00:00.000000 00:00:00.000000 00:00:00.000000 00:00:00.000000 ------------------------------------------------------------------------------------------------------------- [root@c73-p1 logs]#
- 결과 확인
- 사용률 : 총 500MB를 BAB로 설정했으며 Full Counts 는 0이며 사용률(Use)도 0%입니다.
- 지연 시간 : TX BAB의 지연 시간 평균(avg)은 0.001136초(1.136 ms) 입니다.
4.1.2 BAB 사용률
대역폭보다 평균 I/O가 크면 압축 플러그인을 적용해서 원격지로 전송되는 데이터를 줄여서 BAB의 사용률(Use)을 줄일 수 있습니다.
- 플러그인 설정 방법
- 리소스 설정의 Proxy항목에 플러그인 항목을 추가합니다.
플러그인 항목
Code Block proxy { plugin { compressor iqa level 1; } }
- DRX를 재시작 합니다. (DRX 1.1 기준)
- 플러그인 사용 전
- 환경
- drbdsim을 이용해서 1Gbps의 대역폭으로 전송
- BAB 사용률(Use)
- 지속적으로 증가해서 Full Counts가 발생하고 있으며 TX BAB의 평균 Latency도 계속 증가하고 있습니다.
Code Block Command id (2) : show memusage ================================================================================================================================================ Name Capacity Begin End Size Full Counts Use ================================================================================================================================================ r0-74qat-p2-74qat-p1 524288000 (500.00 MB) 129088 482456776 482327688 (459.98 MB) 7690 91 % 10485760 (10.00 MB) 0 0 0 (0.00 B) - 0 % ------------------------------------------------------------------------------------------------------------------------------------------------ Active bab counts : 1 ------------------------------------------------------------------------------------------------------------- name Latency cur avg max min ============================================================================================================= r0-74qat-p2-74qat-p1 TX BAB 00:00:03.578904 00:00:03.069622 00:00:04.859810 00:00:00.000200 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.000000 00:00:00.000000 00:00:00.000000 Decompress 00:00:00.000000 00:00:00.000000 00:00:00.000000 00:00:00.000000
- 지속적으로 증가해서 Full Counts가 발생하고 있으며 TX BAB의 평균 Latency도 계속 증가하고 있습니다.
- 환경
- 플러그인 사용 후
- 환경
- drbdsim을 이용해서 1Gbps의 대역폭으로 전송
- 압축 플러그인 QAT Level 1으로 설정
- BAB 사용률(Use)
사용률(Use)의 증가는 미미한 수준을 유지하고 있습니다.
TX BAB의 평균 Latency는 0.33초로써 비압축보다 약 10배의 빠른 속도를 보이고 있습니다.
Code Block Command id (2) : show memusage ================================================================================================================================================ Name Capacity Begin End Size Full Counts Use ================================================================================================================================================ r0-74qat-p2-74qat-p1 524288000 (500.00 MB) 53524805 53524805 0 (0.00 B) 0 0 % 10485760 (10.00 MB) 0 0 0 (0.00 B) - 0 % ------------------------------------------------------------------------------------------------------------------------------------------------ Active bab counts : 1 ------------------------------------------------------------------------------------------------------------- name Latency cur avg max min ============================================================================================================= r0-74qat-p2-74qat-p1 TX BAB 00:00:00.685379 00:00:00.333085 00:00:00.703398 00:00:00.000978 RX BAB 00:00:00.000000 00:00:00.000000 00:00:00.000000 00:00:00.000000 Compress 00:00:00.000364 00:00:00.000365 00:00:00.011063 00:00:00.000039 Decompress 00:00:00.000000 00:00:00.000000 00:00:00.000000 00:00:00.000000 -------------------------------------------------------------------------------------------------------------
- 환경
4.2 압축 쓰레드 개수 조정 (작성중)
압축 쓰레드의 개수를 조정해서