VPLEX: storage-array의 SCSI 검사 조건 3/11/0으로 인해 디스크에서 하드웨어가 작동하지 않는 것으로 표시되었습니다.
Summary: 기본 스토리지 어레이의 SCSI 감지 코드 3/11/0으로 인해 VPLEX가 디스크를 작동하지 않는 상태로 표시합니다.
Symptoms
이 이벤트는 VPLEX가 기본 스토리지 어레이 LUN에 대한 읽기 요청을 수행할 때 어레이가 LUN의 해당 블록에서 I/O를 처리할 수 없어 3/11/0 검사 조건(어레이의 불량 블록)이 트리거되는 경우에 트리거됩니다.이는 일반적으로 다음과 같이 읽기 I/O가 많은 경우에 발생합니다.
- VPLEX 익스텐트/디바이스 마이그레이션
- 백업 작업
- 데이터베이스 무결성 검사
VPLEX 스토리지 볼륨이 "하드웨어 비활성"으로 표시되지만 스토리지 어레이 인터페이스에서 정상으로 표시됩니다.
cli 명령의 샘플 출력 ll /clusters/cluster-2/storage-elements/storage-volumes/storage-volume name>
VPlexcli:/> ll /clusters/cluster-2/storage-elements/storage-volumes/VNX_LUN_25
/clusters/cluster-2/storage-elements/storage-volumes/VNX_LUN_25:
Name Value
----------------------------- ------------------------------------------------
application-consistent false
block-count 1073741824
block-size 4K
capacity 4T
description -
free-chunks []
health-indications [hardware dead] <<
health-state critical-failure <<
io-status dead <<
itls 0x50001442a03c0810/0x5006016b08603879/9,
0x50001442a03c0811/0x5006016308603879/9,
largest-free-chunk 0B
locality -
operational-status error <<
provision-type legacy
storage-array-name EMC-CLARiiON-123456789
storage-volumetype normal
system-id VPD83T3:xxxxxxxxxxxxxxxxxxxxx
thin-capable false
thin-rebuild true
total-free-space 0B
underlying-storage-block-size 512
use unusable <<
used-by [extent_VNX_LUN_25]
vendor-specific-name DGC
VPLEX 디바이스/익스텐트 마이그레이션(이동 작업)이 특정 비율에서 멈춥니다.
cli 명령의 샘플 출력 ll data-migrations/device-migrations/<device_migration_name>
VPlexcli:/> ll data-migrations/device-migrations/D__Migrate_LUN_1
/data-migrations/device-migrations/D__Migrate_LUN_1:
Name Value
--------------- ----------------------------
from-cluster cluster-1
percentage-done 7
source device_VNX_LUN25_1
source-exported -
start-time -
status error <<
target device_SYMM_DEV1234_1
target-exported -
to-cluster cluster-2
transfer-size 2M
type full
호스트에서 VPLEX 스토리지가 오프라인 상태가 되거나 비활성으로 표시되고 VPLEX 스토리지 볼륨도 심각한 장애 또는 하드웨어 비활성으로 표시됩니다.
펌웨어 로그에 기록된 샘플 데이터,amf/45 disk VPD83T3:xxxxxxxxxxxxxxx: read failure: marking this in-use disk dead
VPLEX 펌웨어 로그에 스트리밍 또는 간헐적 SCSI/27(조건 확인)과 함께 3/11/0에 대한 SCSI 감지 코드 항목이 표시되며, 이는 "Medium Error - unrecovered read error"
인시던트 중 펌웨어 로그에 기록된 샘플 출력,2016/06/09 02:46:23.67: scsi/27 tgt VPD83T3:6006016011663200b058c25a984de511 cmd 0x28 status 0x2 valid 0 resp 0x70 seg 0x0 bits 0x0 key 0x3 info 0x0 alen 10 csi 0x0 asc 0x11 ascq 0x0 fru 0x0 sks 0x0
2016/06/09 02:46:23.68: scsi/27 tgt VPD83T3:6006016011663200b058c25a984de511 cmd 0x28 status 0x2 valid 0 resp 0x70 seg 0x0 bits 0x0 key 0x3 info 0x0 alen 10 csi 0x0 asc 0x11 ascq 0x0 fru 0x0 sks 0x0
2016/06/09 02:46:23.69: scsi/27 tgt VPD83T3:6006016011663200b058c25a984de511 cmd 0x28 status 0x2 valid 0 resp 0x70 seg 0x0 bits 0x0 key 0x3 info 0x0 alen 10 csi 0x0 asc 0x11 ascq 0x0 fru 0x0 sks 0x0
이 문제를 확인하기 위해 다음 사항이 항상 적용됩니다.key = 0x3asc = 0x11ascq = 0x0
Cause
VPLEX가 I/O 읽기 요청(0x28)을 스토리지 어레이로 보내면 해당 어레이가 I/O 요청을 성공적으로 처리할 수 없으며 check-condition 3/11/0으로 "복구되지 않은 읽기 오류"로 응답합니다.
VPLEX가 스토리지 어레이의 불량 블록에서 읽기를 시도하지만 스토리지 어레이가 이 I/O를 처리할 수 없으므로 VPLEX는 스토리지를 작동하지 않는 것으로 표시합니다.
이는 배열 또는 배열 코드에 국한되지 않습니다.
이 문제는 VPLEX 외부에 있으며 LUN이 있는 스토리지 어레이의 문제입니다.
Resolution
해당 어레이 공급업체에서 SCSI 검사 조건인 3/11/0을 VPLEX로 보내는 스토리지 어레이를 조사해야 합니다. 이 문제는 스토리지 어레이의 "복구되지 않은 읽기" 문제로 인해 어레이가 읽기 I/O 요청을 처리할 수 없기 때문에 발생합니다.
VNX 지원 팀에 문의 해야 합니다 .
VPLEX Management-Server에서 다음 cli 명령을 실행하여 3/11/0 검사 조건의 영향을 받는 상위 50개 논리 유닛의 목록을 가져올 수 있습니다.grep "key 0x3 " /var/log/VPlex/cli/firmware.log_* | awk '{print $3,$5,$18,$19,$26,$27,$28,$29}' | sort | uniq -c | sort -nr | head -50
예:
service@ManagementServer:~> grep "key 0x3 " /var/log/VPlex/cli/firmware.log_* | awk '{print $3,$5,$18,$19,$26,$27,$28,$29}' | sort | uniq -c | sort -nr | head -50
388408 scsi/27 VPD83T3:60060160116632000000000000000001 key 0x3 asc 0x11 ascq 0x0
45135 scsi/27 VPD83T3:60060160116632000000000000000002 key 0x3 asc 0x11 ascq 0x0
44451 scsi/27 VPD83T3:60060160116632000000000000000003 key 0x3 asc 0x11 ascq 0x0
35412 scsi/27 VPD83T3:60060160116632000000000000000004 key 0x3 asc 0x11 ascq 0x0
30158 scsi/27 VPD83T3:60060160116632000000000000000005 key 0x3 asc 0x11 ascq 0x0
24589 scsi/27 VPD83T3:60060160116632000000000000000006 key 0x3 asc 0x11 ascq 0x0
21579 scsi/27 VPD83T3:60060160116632000000000000000007 key 0x3 asc 0x11 ascq 0x0
타사 어레이인 경우 해당 어레이 공급업체에 문의하여 스토리지 어레이에 존재하는 문제를 해결하십시오.
Additional Information
이는 스토리지 어레이의 블록 계층 문제이며 스토리지 어레이 자체에서 조치를 취해야 해결할 수 있습니다.
이는 VPLEX 문제가 아니라 VPLEX가 백엔드 어레이에서 나타난 증상을 보고하는 것입니다.
여기서는 "storage-volume resurrect --force"를 사용할 수 없습니다.
이 명령은 기본 스토리지 어레이의 현재 IO 상태 또는 문제에 관계없이 작동하지 않는 스토리지 볼륨이 VPLEX에서 "활성"으로 나타나도록 강제합니다.
이 명령은 기본 스토리지 어레이에 대한 다음 IO가 실패할 때까지 스토리지 볼륨을 강제로 온라인 상태로 되돌립니다.
호스트가 기본 스토리지 어레이에서 3/11/0 문제가 있는 동일한 데이터 블록을 요청하면 스토리지 볼륨이 다시 작동 중지 상태로 표시됩니다.
이는 예상된 동작이며 VPLEX 문제를 나타내지 않습니다.
문제가 있는 스토리지 볼륨을 스토리지 어레이에서 호스트로 직접 제공하면(VPLEX를 우회하여) 호스트에서 일부 데이터를 사용할 수 있습니다. 그러나 이 작업은 호스트에 데이터 손상 가능성을 직접 제공합니다. 호스트가 3/11/0 검사 조건 문제가 있는 특정 블록에서 읽는 데 계속 문제가 있습니다.