SCSI 이벤트 보고

노드는 실행된 SCSI 명령의 이벤트에 대해 해당 호스트에 알릴 수 있습니다.

SCSI 상태

일부 이벤트는 SCSI 아키텍처의 일부이며, 이벤트를 보고하지 않고 호스트 애플리케이션 또는 장치 드라이버에서 처리됩니다. 일부 이벤트(예: 읽기 및 쓰기 I/O 이벤트와 노드 유실 및 백엔드 장치 액세스 권한 유실과 연관된 이벤트)는 애플리케이션 I/O 실패의 원인이 됩니다. 이러한 이벤트 문제점 해결을 돕기 위해 SCSI 명령이 Check Condition 상태로 리턴되고 32비트 이벤트 ID가 감지 정보에 포함됩니다. ID는 이벤트 로그의 특정 이벤트와 관련됩니다.

호스트 애플리케이션 또는 장치 드라이버가 이 정보를 캡처하고 저장하는 경우, 애플리케이션 장애를 이벤트 로그와 관련시킬 수 있습니다.

표 1는 노드에서 리턴하는 SCSI 상태 및 코드를 설명합니다.

표 1. SCSI 상태
상태 코드 설명
양호 00h 명령이 완료되었습니다.
검사 조건 02h 명령이 실패했고 감지 데이터가 사용 가능합니다.
조건 충족됨 04h 해당사항 없음
사용 중 08h 자동 예비 조약 조건이 있고 명령에서 NACA=0을 지정했습니다.
중간 10h 해당사항 없음
중간 - 조건 충족됨 14h 해당사항 없음
예약 충돌 18h 예약 또는 지속적 예약 조건이 있는 SPC2 및 SAM-2에서 지정된 대로 리턴되었습니다.
태스크 세트 가득참 28h 이 포트에서 해당 LUN에 대해 큐 대기된 하나 이상의 태스크가 이니시에이터에 있습니다.
ACA 활성 30h 이 코드가 SAM-2에서 지정된 대로 보고됩니다.
태스크 중단됨 40h 이 코드는 TAS가 제어 모드 페이지 0Ch에서 설정된 경우 리턴됩니다. 노드는 기본 설정TAS=0을 가지며 변경될 수 없으므로, 노드가 이 상태를 보고하지 않습니다.

SCSI 감지

노드가 SCSI 명령의 이벤트를 호스트에 알립니다. 표 2는 노드에서 리턴하는 SCSI 감지 키, 코드 및 규정자를 정의합니다.

표 2. SCSI 감지 키, 코드 및 규정자
코드 규정자 정의 설명
2h 04h 01h 준비되지 않았습니다. 논리 장치가 준비되는 중입니다. 노드에서 시스템과 연결이 끊어지며 I/O 조작을 수행할 수 없습니다. 추가 감지에 추가 정보가 없습니다.
2h 04h 0Ch 준비되지 않았습니다. 대상 포트가 사용 불가능 상태입니다. 다음 상황이 가능합니다.
  • 노드에서 시스템과 연결이 끊어지며 I/O 조작을 수행할 수 없습니다. 추가 감지에 추가 정보가 없습니다.
  • 노드가 시스템과 연결되어 있지만 백엔드 제어기에 대한 연결이 유실되거나 일부 알고리즘 문제점으로 인해 지정된 논리 장치에 대해 I/O 조작을 수행할 수 없습니다. 이 감지는 오프라인 볼륨에 대해 리턴됩니다.
3h 00h 00h 중간 이벤트 이는 읽기 또는 쓰기 I/O에 대해서만 리턴됩니다. 해당 범위 내 특정 LBA의 I/O에 이벤트가 있습니다. 이벤트의 위치는 감지 데이터 내에 보고됩니다. 추가 감지에는 이벤트를 해당 이벤트 로그 항목과 관련시키는 이유 코드도 포함됩니다. 예를 들면 RAID 제어기 이벤트 또는 마이그레이션된 중간 이벤트입니다.
4h 08h 00h 하드웨어 이벤트. 논리 장치 통신에 대한 명령 실패가 발생했습니다. RAID 제어기가 리턴하는 I/O 이벤트와 연관된 이벤트가 I/O에 있습니다. 추가 감지에는 제어기가 리턴하는 감지 데이터를 가리키는 이유 코드가 포함됩니다. 이것은 I/O 유형 명령에 대해서만 리턴됩니다. 또한 이 이벤트는 준비됨 및 준비 중 상태의 FlashCopy® 대상 볼륨에서도 리턴됩니다.
5h 25h 00h 잘못된 요청. 논리 장치가 지원되지 않습니다. 논리 장치가 존재하지 않거나 명령의 송신자로 맵핑되지 않았습니다.

이유 코드

이유 코드는 감지 데이터의 20-23바이트에 나타납니다. 이유 코드는 노드에 특정 로그 항목을 제공합니다. 해당 필드는 가장 중요한 바이트가 첫 번째로 제공되는 32비트 부호 없는 숫자입니다. 표 3에서는 이유 코드 및 해당 정의를 나열합니다.

이유 코드가 표 3에서 나열되지 않는 경우, 코드는 적절한 이벤트 로그 항목의 순서 번호에 해당하는 이벤트 로그의 특정 이벤트를 가리킵니다.

표 3. 이유 코드
이유 코드(10진수) 설명
40 자원이 중지된 FlashCopy 맵핑의 파트입니다.
50 자원이 메트로 미러 또는 글로벌 미러 관계와 오프라인인 2차 LUN의 파트입니다.
51 자원이 메트로 미러 또는 글로벌 미러의 파트이고, 2차 LUN이 읽기 전용입니다.
60 노드가 오프라인입니다.
71 자원이 도메인에 바인딩되지 않습니다.
72 자원이 다시 작성된 도메인에 바인드됩니다.
73 오프라인이 되는 경로로 인한 것이 아닌 어떤 이유 때문에 거부된 노드를 실행 중입니다.
80 수정이 완료되거나 볼륨을 삭제할 때까지 대기합니다.
81 유효성 검증이 완료되거나 볼륨을 삭제할 때까지 대기합니다.
82 오프라인 씬 프로비전 볼륨으로 인해 데이터가 디렉토리 캐시에 고정되었습니다. 기타 씬 프로비전 볼륨에서는 적절한 성능을 얻을 수 없으므로 오프라인으로 변경되었습니다.
85 쿼럼 디스크에 대한 체크포인팅이 실패했으므로 볼륨이 오프라인으로 변경되었습니다.
86 repairvdiskcopy -medium 명령으로 사본이 다른 가상 중간 오류가 작성되었습니다.
93 오프라인 RAID-5 또는 RAID-6 어레이로 인해 쓰기 실행 중인 데이터가 고정되었습니다. 기타 어레이에서 적절한 성능을 얻을 수 없으므로 오프라인으로 변경되었습니다.
94 쿼럼 디스크에 대한 체크포인팅이 실패했으므로 볼륨의 파트인 어레이 MDisk가 오프라인으로 변경되었습니다.
95 이 이유 코드는 다중 장애로 인한 일부 기타 RAID 알고리즘 이유 또는 스트립을 다시 빌드할 때 패리티를 재동기화해야 하는 경우 발생하는 데이터 유실을 표시하기 위해 MDisk의 불량 블록 덤프 파일에서 사용됩니다.
96 내부 메타데이터 테이블이 가득 찼으므로 볼륨의 파트인 RAID-6 어레이 MDisk가 오프라인으로 변경되었습니다.