Software Defined Storage

볼륨 성능 테스트 방법

DaehanCNI 2021. 9. 27. 12:46

본 장에서는 볼륨 성능 테스트 방법에대해서 이야기 해보고자 합니다. 

여러가지 볼륨 성능 테스트 방법이 있겠으나 저희는 다음과 같은 3가지 방법을 사용하고 있습니다.

 

 - dd

 - FIO

 - IOZONE

 

1. dd

 dd 는 블록 단위로 파일을 복사하거나 파일 변환을 할 때 사용하는 명령어이며,  테스트 방식은 순차 방식과 랜덤 방식으로 구분하여 테스트를 진행합니다. 

 

 - 순차 방식

# time dd if=/dev/zeor of=1G.bin bs=1M count=1024

 

 - 랜덤 방식

# time dd if=/dev/urandom of=1G.bin bs=1M count=1024

 

2. fio

 fio 는 디스크 읽기, 쓰기, IOPS 를 측정하는 하는 프로그램입입니다. 테스트 방식은 순차 방식, 랜덤방식, Direct I/O 방식, Buffered I/O 방식으로 구분하여 테스트를 진행합니다. 

 

 - 순차 + 읽기 + Buffered I/O

# fio --randrepeat=1 --ioengine=libaio --gtod_reduce=1 --name=test --filename=fio.bin --bs=1M --iodepth=64 --size=1G --readwrite=read

 

- 순차 + 쓰기 + Buffered I/O

# fio --randrepeat=1 --ioengine=libaio --gtod_reduce=1 --name=test --filename=fio.bin --bs=1M --iodepth=64 --size=1G --readwrite=write

 

- 랜덤 + 읽기 + Bufffered I/O

# fio --randrepeat=1 --ioengine=libaio --gtod_reduce=1 --name=test --filename=fio.bin --bs=1M --iodepth=64 --size=1G --readwrite=randread

 

- 랜덤 + 쓰기 + Bufffered I/O

# fio --randrepeat=1 --ioengine=libaio --gtod_reduce=1 --name=test --filename=fio.bin --bs=1M --iodepth=64 --size=1G --readwrite=randwrite

 

 - 순차 + 읽기 + Direct I/O

# fio --randrepeat=1 --ioengine=libaio --direct=1 --gtod_reduce=1 --name=test --filename=fio.bin --bs=1M --iodepth=64 --size=1G --readwrite=read

 

 - 순차 + 쓰기 + Direct I/O

# fio --randrepeat=1 --ioengine=libaio --direct=1 --gtod_reduce=1 --name=test --filename=fio.bin --bs=1M --iodepth=64 --size=1G --readwrite=write

 

- 랜덤 + 읽기 + Direct I/O

# fio --randrepeat=1 --ioengine=libaio --direct=1 --gtod_reduce=1 --name=test --filename=fio.bin --bs=1M --iodepth=64 --size=1G --readwrite=randread

 

- 랜덤 + 쓰기 + Direct I/O

# fio --randrepeat=1 --ioengine=libaio --direct=1 --gtod_reduce=1 --name=test --filename=fio.bin --bs=1M --iodepth=64 --size=1G --readwrite=randwrite

 

3. IOZONE

 iozone 은 파일시스템 성능 측정에 많이 사용하는 벤치마크 방식이다. 프로세스/쓰레드 제한을 걸어 테스트 가능하며 엑셀 파일로 출력이 가능하여 결과 도출에 있어서 편리함이 있다. 

 

 - 전체 성능 테스트

# ./iozone -R -a -b /root/iozone/nas-a-opt.xls -f /mnt/test/test

 

 - 원하는 파트만 성능 테스트

# ./iozone -e -I -a -s 100M -r 4k -r 16384k -i 0 -i 1 -i 2

 

 다양한 기능에 대해서는 help을 활용하세요.

 

계속적으로 다양한 정보로 찾아 뵙도록 하겠습니다. 

잘못된 정보가 있으면 언제든지 피드백 부탁드리겠습니다.