![Illumos 기반 시스템의 디스크 컨트롤러 문제를 해결하려면 어떻게 해야 합니까?](https://linux55.com/image/66220/Illumos%20%EA%B8%B0%EB%B0%98%20%EC%8B%9C%EC%8A%A4%ED%85%9C%EC%9D%98%20%EB%94%94%EC%8A%A4%ED%81%AC%20%EC%BB%A8%ED%8A%B8%EB%A1%A4%EB%9F%AC%20%EB%AC%B8%EC%A0%9C%EB%A5%BC%20%ED%95%B4%EA%B2%B0%ED%95%98%EB%A0%A4%EB%A9%B4%20%EC%96%B4%EB%96%BB%EA%B2%8C%20%ED%95%B4%EC%95%BC%20%ED%95%A9%EB%8B%88%EA%B9%8C%3F.png)
Illumos 기반의 OmniOS를 사용하고 있습니다.
두 개의 미러링된 SSD가 있는 ZFS 풀이 있습니다. 이 풀은 다음 과 같이 100으로 data
보고됩니다 .%b
iostat -xn
r/s w/s kr/s kw/s wait actv wsvc_t asvc_t %w %b device
0.0 8.0 0.0 61.5 8.7 4.5 1092.6 556.8 39 100 data
iotop
불행하게도 초당 처리량은 그리 많지 않습니다 .23552
나도 그것을 실행했고 iostat -E
많은 보고를 받았습니다 Transport Errors
. 우리가 포트를 변경했는데 그것들이 사라졌습니다.
드라이브에 문제가 있을 수 있다고 생각했는데 SMART에서 문제가 없다고 여러 번 실행했는데 smartctl -t short
아무런 smartctl -t long
문제도 보고되지 않았습니다.
나는 그것을 실행했고 fmadm faulty
다음과 같이보고했습니다.
--------------- ------------------------------------ -------------- ---------
TIME EVENT-ID MSG-ID SEVERITY
--------------- ------------------------------------ -------------- ---------
Jun 01 18:34:01 5fdf0c4c-5627-ccaa-d41e-fc5b2d282ab2 ZFS-8000-D3 Major
Host : sys1
Platform : xxxx-xxxx Chassis_id : xxxxxxx
Product_sn :
Fault class : fault.fs.zfs.device
Affects : zfs://pool=data/vdev=cad34c3e3be42919
faulted but still in service
Problem in : zfs://pool=data/vdev=cad34c3e3be42919
faulted but still in service
Description : A ZFS device failed. Refer to http://illumos.org/msg/ZFS-8000-D3
for more information.
Response : No automated response will occur.
Impact : Fault tolerance of the pool may be compromised.
Action : Run 'zpool status -x' and replace the bad device.
표시된 것처럼 나는 달렸고 zpool status -x
그것을 보고했습니다 all pools are healthy
.
DTrace를 실행한 결과 모든 IO 활동이 <none>
(파일의 경우)에서 발생한다는 사실을 발견했습니다. 이는 메타데이터이므로 실제로 파일 IO가 발생하지 않았습니다.
실행하면 kstat -p zone_vfs
다음과 같이 보고됩니다.
zone_vfs:0:global:100ms_ops 21412
zone_vfs:0:global:10ms_ops 95554
zone_vfs:0:global:10s_ops 1639
zone_vfs:0:global:1s_ops 20752
zone_vfs:0:global:class zone_vfs
zone_vfs:0:global:crtime 0
zone_vfs:0:global:delay_cnt 0
zone_vfs:0:global:delay_time 0
zone_vfs:0:global:nread 69700628762
zone_vfs:0:global:nwritten 42450222087
zone_vfs:0:global:reads 14837387
zone_vfs:0:global:rlentime 229340224122
zone_vfs:0:global:rtime 202749379182
zone_vfs:0:global:snaptime 168018.106250637
zone_vfs:0:global:wlentime 153502283827640
zone_vfs:0:global:writes 2599025
zone_vfs:0:global:wtime 113171882481275
zone_vfs:0:global:zonename global
숫자는 매우 걱정스럽 1s_ops
습니다 10s_ops
.
컨트롤러 문제인 것 같은데, 잘 모르겠습니다. 아니면 어디서 더 많은 정보를 얻을 수 있나요?
답변1
풀 은 암호화된 ZFS 컨테이너 data
입니다 lofi
. 이것이 문제입니다.
다음과 같은 이유로 이것이 lofi의 "가상" 컨트롤러의 성능 문제임을 확인할 수 있습니다.
- lofi + zfs + 암호화 처리량은 약 10-25MB/s입니다.
- lofi + zfs + 암호화 없음 처리량은 약 30MB/s입니다.
- 기존 ZFS가 없는 Lofi의 처리량은 ~250MB/s입니다.
- 컨트롤러는
data
100% 활용도를 보고하지만 실제 컨트롤러는 거의 활용도가 없습니다. - 동일한 설정으로 여러 컴퓨터에서 테스트한 결과 결과는 기본적으로 동일했습니다.
여기서 문제는 lofi
디스크 컨트롤러가 아닙니다.