네트워크 장애 후 ESXI 호스트에 iSCSI 데이터스토어 다시 마운트

네트워크 장애 후 ESXI 호스트에 iSCSI 데이터스토어 다시 마운트

ESXI 5.1을 실행하고 있으며 모든 가상 머신이 iSCI 데이터 저장소로 매핑된 NAS에 있습니다.

내 라우터가 고장 났고 분명히 모든 VM이 디스크에서 잘려나갔습니다.

내가 이해하는 것은 이러한 이벤트가 발생하면 esxi가 ​​vm의 모든 I/O를 중지하고 데이터 저장소에 다시 연결을 시도한다는 것입니다. 일정 시간이 지나도 할 수 없는 경우 데이터 저장소가 영원히 사라졌을 수 있으므로 마운트 해제합니다.

새 스위치를 연결한 다음 esxi를 다시 시작했습니다. 데이터 저장소가 vCenter의 데이터 센터 보기에 온라인으로 나타나는 것을 볼 수 있으며(그러나 찾아보면 아무것도 나타나지 않고 새 폴더를 만들 수도 없습니다...) 호스트의 저장소 보기에는 데이터 저장소가 나타나지 않습니다. . 호스트에 새 데이터 저장소를 추가하려고 할 때 iSCSI/LUN을 선택해도 아무 것도 나타나지 않습니다.

게다가 NAS(Synology)에서 내 LUN에 활성 연결이 없는 것을 볼 수 있습니다...

그래서 가장 큰 질문은: 내 데이터 저장소와 모든 VM을 다시 가져오는 방법은 무엇입니까?

답변1

SSH/로컬 콘솔을 사용하여 ESX에 연결하고 다음을 시도하십시오.

esxcfg-volume -l
esxcfg-volume -m <datastorename>

첫 번째 항목은 데이터 저장소와 해당 상태를 나열하고, 두 번째 항목은 이를 마운트합니다.

답변2

이러한 상황을 초래한 네트워크 구성에도 불구하고 이는 여전히 타당한 질문으로 남아 있습니다. 재부팅하지 않고도 ESXi 호스트가 iSCSI 스토리지를 다시 볼 수 있게 하는 가장 좋은 방법은 무엇입니까?

참고: 내 전체 네트워크 스택이 FUBAR이고 어떻게든 다시 가져오려면 ESXi를 재부팅해야 했기 때문에 실제로 이 기능을 작동시킬 수 없었습니다. 내가 찾은 내용이 나중에 이 질문을 찾는 사람들에게 유용할 수 있기 때문에 답변으로 게시하고 있습니다.

가장 유용한 링크는 다음 VMware KB 문서입니다.계획되지 않은 PDL(영구 디바이스 손실) 이후 데이터스토어를 다시 마운트할 수 없음(2014155)

"돌아오지 않는다"는 데이터 보호를 위한 기능인 것 같습니다. 사라진 스토리지를 사용하고 있던 모든 VM은 완료되었지만 일시적인 "영구적인" 장치 손실이 있었을 수도 있습니다.사라진 스토리지를 사용하고 있던 모든 VM은 종료(가능한 경우)하거나 전원을 꺼야 합니다(가능성이 더 높음)..

ESXi 서버에서 스토리지를 다시 확인하기 전에 VMware KB 문서의 프로세스를 통해 스토리지가 실제로 있는지 확인하세요.ESX/ESXi 호스트의 iSCSI LUN 연결 문제 해결(1003681)프로세스에서 전체 네트워크 스택이 FUBAR 처리되었음을 발견할 수도 있습니다. 나도 그랬다는 걸 알아요...

첫 번째 VMware KB 기사에서:

(참고: iSCSI의 경우 장치는 "naa" ID가 아닐 수 있으며 대신 "t10.IET_"처럼 보입니다. 이러한 괴물을 손으로 입력하는 대신 잘라내어 붙여넣는 것이 좋습니다.)

ID를 찾는 명령은 원본 기사 중간에 도움이 되지 않게 묻혀 있었습니다. 다음 옵션에 대한 적절한 인수를 찾는 데 의심할 여지 없이 필요하므로 편의를 위한 것 -d입니다 esxcli storage core device world list -d <ID>.

#esxcfg-scsidevs --uids

다음과 같이 "t10" ID가 표시됩니다.

기본 UID 기타 UID
mpx.vmhba45:C0:T0:L0 vml.0005000000766d68626135353a313a31
naa.60022190becbe0003b3e818108cdf2d5 vml.0200000000600221c0becce0001b3b918108cdf2c550455e4320c6
t10.IET____00010000000000000000000000000000000000000000000vml.010c0000002020202020202020202020202020202020202020202020202020 20202020626561663e30436e6e7f726f
t10.IET____000100010000000000000000000000000000000000000000vml.01000100002020202020202020202020202020202020202020202020202020 20202020626561693131464952545541

LUN에 대해 장치가 열려 있는 환경을 보려면 다음 명령을 실행하십시오.

#esxcli storage core device world list -d <t10_id>

예를 들어:

#esxcli storage core device world list -d t10.IET_____000100010000000000000000000000000000000000000000

다음과 유사한 출력이 표시됩니다.

장치 월드 ID 오픈 카운트 월드 이름
------------------------------------- ---------- -------- ---------- ----------
t10.IET____000100010000000000000000000000000000000000000000 2060 1 유휴0

VMFS 볼륨이 디바이스를 간접적으로 사용하는 경우 전체 이름에 IDLE0 문자열이 포함됩니다. 가상 머신이 해당 장치를 RDM으로 사용하는 경우 가상 머신 World ID가 표시됩니다. 다른 프로세스가 원시 장치를 사용하고 있는 경우 해당 정보가 표시됩니다.

노트:

호스트가 응답하지 않으면 명령을 실행하여 esxcfg-scsidevs –-list해당 데이터 저장소 이름을 가져옵니다. PDL 상태의 볼륨에 등록된 모든 가상 머신에 추가 단계가 필요하지 않은지 확인하세요. 해당 상태의 가상 머신이 있는 경우 작업을 다시 시도하거나 취소하려고 하면 가상 머신 월드 ID가 반환되지 않습니다. 볼륨을 다시 마운트하지 않으면 재시도 작업이 성공할 수 없으므로 취소를 클릭하십시오.

ESXi 5.x 호스트에서 실행 중인 모든 가상 머신을 나열하고 해당 LUN에 등록된 가상 머신을 식별하려면 다음 명령을 실행하십시오.

#esxcli vm process list

가상 머신 World ID를 종료하려면 다음 명령을 실행하세요.

#esxcli vm process kill --type=force --world-id=World ID

예를 들어:

#esxcli vm process kill --type=force --world-id=12131

다음 명령을 사용하여 스토리지를 다시 검색합니다.

#esxcfg-rescan -u vmhba#

장치 상태를 보려면 다음 명령을 실행하십시오.

#esxcli storage core device list -d <t10-id>

문제가 지속되면 가상 머신이 등록된 ESXi 5.x 호스트를 재부팅하십시오.

관련 정보