4.6. VDO 성능에서 혼합 I/O 부하의 효과 테스트
이 테스트에서는 VDO 구성이 혼합 읽기 및 쓰기 I/O 부하로 작동하는 방식을 확인하고 최적의 임의 대기열 깊이 및 요청 크기 4KB에서 1MB까지의 혼합 읽기 및 쓰기의 효과를 분석합니다.
이 절차에서는 고정된 I/O 깊이, 8KB ~ 256KB 범위의 다양한 블록 크기, 읽기 백분율을 10% 단위로 설정하며 0%부터 시작합니다.
사전 요구 사항
최적의 I/O 깊이 값을 결정했습니다. 자세한 내용은 4.4절. “VDO 성능에서 I/O 깊이의 영향 테스트” 의 내용을 참조하십시오.
다음 절차에서는 최적의 깊이를 최적의 I/O 깊이 값으로 바꿉니다.
절차
새 VDO 볼륨을 만듭니다.
자세한 내용은 4.2절. “성능 테스트를 위한 VDO 볼륨 생성” 의 내용을 참조하십시오.
테스트 볼륨에서 쓰기
fio
작업을 수행하여 테스트에서 액세스할 수 있는 모든 영역을 미리 채웁니다.# fio --rw=write \ --bs=8M \ --name=vdo \ --filename=/dev/mapper/vdo-test \ --ioengine=libaio \ --thread \ --direct=1 \ --scramble_buffers=1
읽기 및 쓰기 입력 stimuls에 대해 보고된 처리량 및 대기 시간을 기록합니다.
# for readmix in 0 10 20 30 40 50 60 70 80 90 100; do for iosize in 4 8 16 32 64 128 256 512 1024; do fio --rw=rw \ --rwmixread=$readmix \ --bs=${iosize}k \ --name=vdo \ --filename=/dev/mapper/vdo-test \ --ioengine=libaio \ --numjobs=1 \ --thread \ --norandommap \ --runtime=300 \ --direct=0 \ --iodepth=optimal-depth \ --scramble_buffers=1 \ --offset=0 \ --size=100g done done
VDO 테스트 볼륨을 제거합니다.
자세한 내용은 4.3절. “VDO 성능 테스트 볼륨 정리” 의 내용을 참조하십시오.
테스트 결과를 그래프로 표시합니다.
예 4.3. 혼합 I/O 로드 분석
다음 이미지는 VDO가 혼합 I/O 로드에 응답하는 방법의 예를 보여줍니다.
그림 4.4. 다양한 읽기 및 쓰기 혼합에 따라 성능이 일관되게 유지됩니다.
집계 성능 및 집계 대기 시간은 읽기 및 쓰기 범위를 혼합하는 범위 전체에 비교적 일관적이며, 낮은 최대 쓰기 처리량에서 더 높은 최대 읽기 처리량으로의 추세입니다.
이 동작은 스토리지마다 다를 수 있지만 중요한 관찰은 성능이 상이한 부하에서 일관되게 유지되었거나 특정 읽기 및 쓰기 혼합을 보여주는 애플리케이션의 성능을 이해할 수 있다는 것입니다.
참고시스템에 비슷한 응답 일관성이 표시되지 않으면 하위 최적화 구성의 신호일 수 있습니다. 이러한 경우 Red Hat 영업 엔지니어에게 문의하십시오.