관리 메뉴

holssi 님의 블로그

클라우드 환경에서 EBS 같은 네트워크 스토리지 성능 이슈는 어떻게 진단할 수 있는지? 본문

카테고리 없음

클라우드 환경에서 EBS 같은 네트워크 스토리지 성능 이슈는 어떻게 진단할 수 있는지?

holssi 2026. 6. 7. 21:03

CSP별 네트워크 기반 블록 스토리지

CSP 서비스명 비고
AWS EBS(elastic block store) gp3, io2, st1
Azure Azure Managed Disks Premium SSD, Ultra Disk
GCP Persistent Disk pd-ssd, pd-balanced
NCP Block Storage HDD/SSD

vm과 독립적으로 존재하고 네트워크를 통해 굥유하므로 로컬 디스크 대비 레이턴시가 존재

 

GCP - pd-ssd, pd-balanced, NCP - HDD/SSD  성능 테스트

1. phoronix 벤치마크

1) 설치

GitHub - phoronix-test-suite/phoronix-test-suite: The Phoronix Test Suite open-source, cross-platform automated testing/benchmarking software. · GitHub 으로 설치할것이기 때문에 git 설치

PTS 버전은 10.8.6

* 하드웨어 벤치마크: cpu, ram대역폭, disk i/o 성능 등을 측정

* 소프트웨어 벤치마크: GCC 컴파일러, Kernel 성능 측정

sudo dnf install git -y
cd ~
git clone https://github.com/phoronix-test-suite/phoronix-test-suite.git
cd phoronix-test-suite
sudo ./install-sh
phoronix-test-suite version

 

2) 개발 도구 세트 및 필요한 라이브러리 설치

sudo dnf groupinstall "Development Tools" -y
sudo dnf install epel-release -y

# rocky 8
sudo dnf config-manager --set-enabled powertools

# rocky 9
sudo dnf config-manager --set-enabled crb

sudo dnf install nasm yasm p7zip p7zip-plugins unzip php-pecl-zip -y

 

rocky8,9의 crb 이름이 다름 -> rocky8은 powertools이고, rocky9는 crb이다

 

3) 벤치마크 실행이 오래걸릴 수 있으니 tmux 먼저 실행 (터미널 멀티플렉서)

sudo dnf install tmux -y
tmux

 

4) php 설치

sudo dnf install php-cli php-xml php-json

 

5) 도구 설치

phoronix-test-suite run pts/sqlite
phoronix-test-suite install pts/openssl

 

6) 벤치마크 실행 - gcp

 fio로 순차/랜덤, 읽기/쓰기 옵션을 세부적으로 테스트 (SSD/HDD 나눠서 테스트)

5번 선택

I/O엔진 선택 -> 4번 선택

Direct를 선택해야 메모리 캐시를 거치지 않고 디스크 순수 성능 측정함, 캐시를 거치면 메모리 속도가 측정되어서 결과가 왜곡됨 -> 2번 선택

동시에 몇개의 작업을 띄울지, vCPU와 개수가 같아야함 -> 3번 선택

 

- SSD: 균형 있는 디스크, pd-balanced 타입 100GB

1) random read -> 12.9MB/s, 3296IOPS

 

2) Random Write -> 12.9MB/s, 3291 IOPS

 

3) Sequential Read -> 12.9MB/s, 3296 IOPS

 

4) Sequential Write -> 12.9MB/s, 3296 IOPS

 

- HDD: 표준 영구 디스크, pd-standard 타입 50GB

1) Random Read -> 12.9MB/s, 3296 IOPS

 

2) Random Write -> 12.9MB/s, 3291 IOPS

3. Sequential Read -> 12.9MB/s, 3296 IOPS

 

4. Sequential Write -> 12.9MB/s, 3296 IOPS

 

sqlite로 애플리케이션에서 데이터 읽고 쓰는 작업 성능

phoronix-test-suite run sqlite

 

 

- SSD

1) copies1 (스레드1) -> 9.053초

 

2) copies2 (스레드2) -> 9.151초

 

3) copies4 (스레드4) -> 15.016초

 

- hdd

1) copies1 (스레드1) -> 11.000초

2) copies2 (스레드2) -> 11.255초

3) copies4 (스레드4) -> 14.954초