본문 바로가기

리눅스

Zabbix로 디스크 I/O 사용자 체감 성능을 확인하는 방법

반응형

Zabbix로 디스크 I/O 사용자 체감 성능을 확인하는 방법

Disk Average Waiting Time (await) 기준 분석

서버 디스크 성능은 단순히 사용률(%util)만으로 판단하기 어렵습니다. 실제 사용자가 느끼는 “느림”, “멈춤”, “버벅임” 은 디스크 요청이 얼마나 오래 대기했는지와 밀접한 관련이 있습니다.

1. await 지표란?

디스크 I/O 요청이 발생한 뒤 처리가 완료될 때까지 평균적으로 걸린 시간(ms) 입니다.

  • Disk read request avg waiting time (r_await) → 디스크 읽기 요청의 평균 응답 시간(ms)
  • Disk write request avg waiting time (w_await) → 디스크 쓰기 요청의 평균 응답 시간(ms)

Zabbix

즉, 수치가 높을수록 디스크가 바쁘거나 병목이 발생하고 있다는 의미입니다.

2. 체감 성능 기준 (실무 판단)

응답 시간(ms) 체감 수준 상태
1ms 이하 매우 빠름 최상
1 ~ 10ms 빠름 양호
10 ~ 20ms 보통 주시 필요
20 ~ 50ms 느림 체감 시작 경고
50ms 이상 확실한 지연 위험
100ms 이상 멈춤처럼 느껴짐 심각
SSD 기준으로는 10ms 이상 지속 시 점검 대상이며 HDD는 환경에 따라 기준이 다소 완화될 수 있습니다.

3. Disk Average Waiting Time 지표

A_Server
B_Server

728x90

A Server 분석 : 평온한 상태

지표 : 읽기(r_await) 평균 약 11.6ms, 쓰기(w_await) 평균 약 0.38ms

상태 : 매우 양호

특징

  • 쓰기 대기 시간이 1ms 미만으로 거의 즉시 처리되고 있습니다.
  • 읽기 대기 시간이 가끔 20ms 위로 튀긴 하지만(최대 23ms) 평균적으로는 10ms 초반대를 유지하고 있어 사용자가 성능 저하를 거의 느끼지 못하는 수준입니다.
  • 그래프의 변동폭이 비교적 일정하여 예측 가능한 성능을 보여줍니다.

B Server 분석: 위험 상태 (쓰기 지연 발생)

지표 : 쓰기(w_await) 평균 약 42.8ms, 최대 206ms

상태 : 경고 수준의 병목 발생

특징

  • 쓰기 지연 시간 폭발 : 쓰기 대기 시간(w_await)이 읽기보다 압도적으로 높습니다. 평균 42ms는 사용자가 "느리다"고 느끼기 충분한 수치이며 최대 200ms까지 튀는 지점에서는 서비스가 순간적으로 멈춘 것처럼 보일 수 있습니다.
  • 패턴 분석 : 특정 주기마다 쓰기 대기 시간이 치솟는 날카로운 스파이크 패턴이 보입니다. 이는 대량의 로그 기록, DB 체크포인트 작업, 혹은 백업 스케줄이 돌아가고 있을 가능성이 큽니다.
  • 읽기 전이 : 쓰기 작업이 디스크를 꽉 잡고 있기 때문에 평소에 거의 0에 가깝던 읽기 성능마저 간헐적으로 함께 영향을 받고 있습니다.

두 서버의 비교 및 조치 제안

비교 항목 A Server B Server
주요 부하 읽기 위주 (Read-heavy) 쓰기 위주 (Write-heavy)
체감 성능 쾌적함 간헐적 끊김(Stuttering) 발생
권장 조치 현재 상태 유지 원인 파악 및 최적화 필요

4. 실무 개선 권고 사항

원인 프로세스 확인 : 현재 쓰기 부하를 일으키는 주범이 무엇인지 확인해야 합니다.

iotop -o
  • 실시간으로 디스크 I/O를 많이 사용하는 프로세스를 확인합니다.
pidstat -d 1
dstat -dny

하드웨어 점검 : A Server과 동일한 하드웨어인데 B Server만 이렇다면 디스크의 물리적 노후화나 RAID 컨트롤러의 캐시 배터리 이상 등을 의심해 볼 수 있습니다.

smartctl -a /dev/sdX

Zabbix 트리거 설정 : B Server의 w_await가 50ms를 넘을 때 Warning 알람이 오도록 설정하여 선제적으로 대응하시길 권장합니다.

  • Warning
w_await > 30ms (5분 지속)
  • High
w_await > 50ms
  • Disaster
w_await > 100ms

5. RAID 컨트롤러 교체

A Server의 RAID 컨트롤러를 Smart HBA H240ar에서 Smart Array P440ar로 교체한 이후 그래프를 보면 디스크 대기시간(Latency) 구조가 전반적으로 크게 개선된 것으로 확인됩니다.

A_Server

캐시 상태

ssacli ctrl slot=0 show detail

확인 항목

  • Cache Status: OK
  • Battery/Capacitor: OK
  • Write Cache Enabled

RAID 컨트롤러 차이가 SSD 교체만큼 체감되기도 합니다.

 

참고URL

- Linux by Zabbix agent : Item prototypes for Block devices discovery

 

728x90
반응형