Dell Unity/VNX: 버전 5.5 u2 이상 ESXi 호스트에서 임의로 일시적인 연결 끊김 및/또는 성능 저하(사용자 수정 가능)
Summary: 과도하게 로드된 어레이나 네트워크 또는 패브릭으로 인해 ATS 명령이 느려져서 어레이가 ESXi에서 예상하지 못한 ATS 명령에 대한 비교 오류 검사 조건을 반환할 수 있습니다. VMFS HeartBeat 슬롯에서의 이러한 ATS 비교 오류로 인해 ESXi 호스트가 디바이스를 다시 제어하려고 시도합니다. 이를 위해 호스트는 VMFS가 있는 LUN에서 SCSI 디바이스 재설정을 실행합니다. 이 LUN의 모든 활성 I/O가 중단되고 SCSI 디바이스가 재설정됩니다. 일시적인 연결 끊김이 VMkernel 로그에 표시됩니다. ...
Symptoms
시나리오:
- ESXi 5.5 업데이트 2 또는 ESXi 6.0으로 호스트 업그레이드
- 하나 이상의 ESXi 호스트와 VMFS 데이터 저장소의 연결이 잠시 끊어집니다. 데이터 저장소의 모든 VM이 충돌하거나 I/O 오류가 발생할 수 있습니다.
- VMFS HeartBeat 슬롯의 ATS(Atomic Test and Set) 비교 오류로 인해 ESXi 호스트는 VMFS가 있는 LUN에서 SCSI 디바이스 재설정을 실행하여 디바이스에 대한 제어 권한을 다시 가져오려고 시도합니다.
- 이 LUN의 모든 활성 I/O가 중단되고 SCSI 디바이스가 재설정됩니다.
- 일시적인 연결 끊김이 VMkernel 로그에 표시됩니다.
ATS 불일치는 NMP와 PowerPath에서 모두 발생할 수 있습니다.
다음과 유사한 ATS 불일치를 나타내는 오류 메시지가 /var/log/vmkernel.log에 나타납니다.
2015-11-20T22:12:47.194Z cpu13:33467)ScsiDeviceIO: 2645: Cmd(0x439dd0d7c400) 0x89, CmdSN 0x2f3dd6 from world 3937473 to dev "naa.50002ac0049412fa" failed H:0x0 D:0x2 P:0x0 Valid sense data: 0xe 0x1d 0x0.
발생할 수 있는 다른 문제:
- vSphere vCenter에서 호스트 연결 해제 중
- I/O 작업 시 중단되는 가상 머신
Cause
이 문제는 호스트가 I/O 요청을 취소할 정도로 과부하된 어레이, 네트워크 또는 패브릭에서 발생했습니다.
여러 어레이 공급업체(Dell 포함)에서 ESXi 5.5u2에 도입된 ATS 하트비트 기능에 문제가 있습니다.
참고: Broadcom(VMware) KB 326437 (외부 링크) 에 따라 이 문제는 ESXi 버전 VMware ESXi 5.5.x 및 VMware ESXi 6.0.x에 영향을 미치며 모든 특정 버전을 제공하지는 않습니다. 따라서 이 KB는 버전 5.5u2 이상의 모든 ESXi 호스트와 모든 ESXi 6.0 버전이 영향을 받는다고 가정합니다.
호스트는 지정된 볼륨의 하트비트에 대한 I/O를 주기적으로 수행하여 활성 상태를 나타냅니다. 따라서 호스트의 하트비트 슬롯에 일정 기간 동안 활동이 표시되지 않으면 호스트와 볼륨의 연결이 끊어졌다는 결론을 내릴 수 있습니다.
ATS 하트비트 I/O는 시간 초과 값이 매우 낮아 호스트 연결 끊김 및 애플리케이션 운영 중단으로 이어질 수 있으며, 이로 인해 디스크에 대한 연결 손실이 발생하거나 호스트의 성능이 저하될 수 있습니다.
그런 다음 호스트는 하트비트 슬롯에 불일치를 등록하고 재설정을 실행할 때 LUN의 모든 활성 IO를 중단합니다. 이 LUN에서 보류 중인 모든 IO가 호스트 감지 8(H:0x8 SCSI 재설정)과 함께 실패합니다.
Resolution
이 상태가 관찰될 경우 VAAI ATS 하트비트 메커니즘을 비활성화하는 것이 권장되는 임시 해결 방법입니다. 자세한 내용은 Broadcom(VMware) KB 326437 (외부 링크) 를 참조하십시오. ATS 하트비트 메커니즘을 비활성화하면 호스트가 레거시 모드로 되돌아갑니다. 로드 문제가 해결되면 ATS 하트비트 메커니즘을 다시 활성화합니다.
VMware에 문의하여 문제를 확인하거나 ESXi emcgrab과 vmsupport를 제공하여 확인합니다. ESX Server에서 VAAI ATS 하트비트 기능을 비활성화하는 것은 로드 문제가 해결될 때까지 영향을 받는 고객에게만 권장됩니다.
Additional Information
Unity 로그를 사용하여 이 특정 유형의 중단을 식별할 수 있습니다(감지 키 = 0e, ASC = 1d, ASCQ = 00).
추출된 로그의 로그 위치는 다음과 같습니다.
로그를 확인하려면 위의 위치에서 모든 c4_safe_ktrace.log* 로그를 추출한 다음 "SK = 0x0e, ASC/Q = 0x1d00"를 찾습니다.
Linux 시스템 또는 이와 유사한 예:
grep -i "SK = 0x0e, ASC/Q = 0x1d00" spa/EMC/C4Core/log/c4_safe_ktrace.* | wc -l 15744 <<<< count of aborts on SPA in this example.
ktrace 로그가 추가되지 않은 경우 zgrep을 사용하면 됩니다.
zgrep -i "SK = 0x0e, ASC/Q = 0x1d00" spa/EMC/C4Core/log/c4_safe_ktrace.* | wc -l 15744 <<<< count of aborts on SPA in this example.