XenServer

장비 오류 처리

이 섹션에서는 다양한 오류 시나리오에서 복구하는 방법에 대한 세부 정보를 제공합니다. 모든 오류 복구 시나리오에는 백업에 나열된 백업 유형 중 하나 이상을 사용해야 합니다.

멤버 오류

HA가 없는 경우, 풀 코디네이터 노드는 정기적인 하트비트 메시지를 수신하여 멤버의 오류를 감지합니다. 600초 동안 하트비트가 수신되지 않으면 풀 코디네이터는 해당 멤버가 죽었다고 가정합니다. 이 문제에서 복구하는 방법은 두 가지가 있습니다.

  • 죽은 호스트를 복구합니다(예: 물리적으로 재부팅). 멤버에 대한 연결이 복원되면 풀 코디네이터는 해당 멤버를 다시 활성 상태로 표시합니다.

  • 호스트를 종료하고 xe host-forget CLI 명령을 사용하여 풀 코디네이터에게 멤버 노드를 잊도록 지시합니다. 멤버가 잊혀지면 해당 노드에서 실행 중이던 모든 VM이 오프라인으로 표시되고 다른 XenServer 호스트에서 다시 시작할 수 있습니다.

    XenServer® 호스트가 실제로 오프라인 상태인지 확인하는 것이 중요합니다. 그렇지 않으면 VM 데이터 손상이 발생할 수 있습니다.

    xe host-forget을 사용하여 풀을 단일 호스트의 여러 풀로 분할하지 마십시오. 이 작업은 모든 풀이 동일한 공유 스토리지를 매핑하고 VM 데이터를 손상시킬 수 있습니다.

경고:

  • 잊혀진 호스트를 다시 활성 호스트로 사용할 경우, XenServer 소프트웨어를 새로 설치하십시오.
  • 풀에서 HA가 활성화된 경우 xe host-forget 명령을 사용하지 마십시오. 먼저 HA를 비활성화한 다음 호스트를 잊고 HA를 다시 활성화하십시오.

멤버 XenServer 호스트가 실패하면 실행 중 상태로 등록된 VM이 여전히 있을 수 있습니다. 멤버 XenServer 호스트가 확실히 다운되었다고 확신하는 경우, xe vm-reset-powerstate CLI 명령을 사용하여 VM의 전원 상태를 halted로 설정하십시오. 자세한 내용은 vm-reset-powerstate를 참조하십시오.

경고:

이 명령을 잘못 사용하면 데이터 손상이 발생할 수 있습니다. 필요한 경우에만 이 명령을 사용하십시오.

다른 XenServer 호스트에서 VM을 시작하려면 VM 스토리지의 잠금을 해제해야 합니다. 한 번에 하나의 호스트만 SR의 각 디스크를 사용할 수 있습니다. 호스트가 실패하면 다른 XenServer 호스트가 디스크에 액세스할 수 있도록 하는 것이 중요합니다. 이렇게 하려면 영향을 받는 VM의 디스크가 포함된 각 SR에 대해 풀 코디네이터에서 다음 스크립트를 실행하십시오. /opt/xensource/sm/resetvdis.py host_UUID SR_UUID master

실패한 호스트가 충돌 당시 SR 풀 코디네이터였을 경우에만 세 번째 문자열(“master”)을 제공하면 됩니다. (SR 풀 코디네이터는 풀 코디네이터 또는 로컬 스토리지를 사용하는 XenServer 호스트입니다.)

경고:

이 명령을 실행하기 전에 호스트가 다운되었는지 확인하십시오. 이 명령을 잘못 사용하면 데이터 손상이 발생할 수 있습니다.

resetvdis.py 스크립트를 실행하기 전에 다른 XenServer 호스트에서 VM을 시작하려고 하면 다음 오류 메시지가 나타납니다: VDI <UUID> already attached RW.

풀 코디네이터 오류

리소스 풀의 모든 멤버는 필요한 경우 풀 코디네이터 역할을 인계받는 데 필요한 모든 정보를 포함합니다. 풀 코디네이터 노드가 실패하면 다음 일련의 이벤트가 발생합니다.

  1. HA가 활성화된 경우, 다른 풀 코디네이터가 자동으로 선출됩니다.

  2. HA가 활성화되지 않은 경우, 각 멤버는 풀 코디네이터가 돌아오기를 기다립니다.

이 시점에서 풀 코디네이터가 다시 시작되면 멤버들과 통신을 재설정하고 작업은 정상으로 돌아갑니다.

풀 코디네이터가 작동하지 않으면 멤버 중 하나를 선택하여 xe pool-emergency-transition-to-master 명령을 실행합니다. 해당 멤버가 풀 코디네이터가 되면 xe pool-recover-slaves 명령을 실행하고 멤버들은 이제 새 풀 코디네이터를 가리킵니다.

원래 풀 코디네이터였던 호스트를 수리하거나 교체하는 경우, 단순히 호스트를 시작하고 XenServer 소프트웨어를 설치한 다음 풀에 추가할 수 있습니다. 풀의 XenServer 호스트는 동질성을 유지하도록 강제되므로, 교체된 호스트를 풀 코디네이터로 만들 필요는 없습니다.

멤버 XenServer 호스트가 풀 코디네이터로 전환될 때, 기본 풀 스토리지 리포지토리가 적절한 값으로 설정되어 있는지 확인하십시오. 이 확인은 xe pool-param-list 명령을 사용하고 default-SR 매개변수가 유효한 스토리지 리포지토리를 가리키는지 확인함으로써 수행할 수 있습니다.

풀 오류

전체 리소스 풀이 실패하는 불행한 경우, 풀 데이터베이스를 처음부터 다시 생성해야 합니다. xe pool-dump-database CLI 명령을 사용하여 풀 메타데이터를 정기적으로 백업해야 합니다 (pool-dump-database(/ko-kr/xenserver/8/command-line-interface.html#pool-dump-database) 참조).

완전히 실패한 풀을 복원하려면:

  1. 새 호스트 세트를 설치합니다. 이 단계에서는 풀에 추가하지 마십시오.

  2. 풀 코디네이터로 지정된 호스트의 경우, xe pool-restore-database 명령을 사용하여 백업에서 풀 데이터베이스를 복원합니다 ((/ko-kr/xenserver/8/command-line-interface.html#pool-restore-database)의 [pool-restore-database] 참조).

  3. XenCenter®를 사용하여 풀 코디네이터에 연결하고 모든 공유 스토리지와 VM을 다시 사용할 수 있는지 확인합니다.

  4. 나머지 새로 설치된 멤버 호스트에서 풀 조인 작업을 수행하고 적절한 호스트에서 VM을 시작합니다.

구성 오류로 인한 장애 처리

물리적 호스트 머신은 작동하지만 소프트웨어 또는 호스트 구성이 손상된 경우:

  1. 호스트 소프트웨어 및 구성을 복원하려면 다음 명령을 실행합니다.

    xe host-restore host=host file-name=hostbackup
    <!--NeedCopy-->
    
  2. 호스트 설치 CD로 재부팅하고 백업에서 복원을 선택합니다.

물리적 머신 장애

물리적 호스트 머신에 장애가 발생한 경우, 다음 목록에서 적절한 절차를 사용하여 복구하십시오.

경고:

이전 멤버(또는 이전 호스트)에서 실행 중이었던 VM 중 장애가 발생한 VM은 데이터베이스에서 여전히 Running으로 표시됩니다. 이 동작은 안전을 위한 것입니다. 두 개의 다른 호스트에서 동시에 VM을 시작하면 심각한 디스크 손상이 발생할 수 있습니다. 머신(및 VM)이 오프라인 상태임을 확신하는 경우 VM 전원 상태를 Halted로 재설정할 수 있습니다.

xe vm-reset-powerstate vm=vm_uuid --force

그런 다음 XenCenter 또는 CLI를 사용하여 VM을 다시 시작할 수 있습니다.

실패한 풀 코디네이터를 여전히 실행 중인 멤버로 교체하려면:

  1. 다음 명령을 실행합니다.

    xe pool-emergency-transition-to-master
    xe pool-recover-slaves
    <!--NeedCopy-->
    
  2. 명령이 성공하면 VM을 다시 시작합니다.

모든 호스트가 실패한 풀을 복원하려면:

  1. 다음 명령을 실행합니다.

    xe pool-restore-database file-name=backup
    <!--NeedCopy-->
    

    경고:

    이 명령은 대상 시스템에 적절한 수의 적절한 이름의 NIC가 있는 경우에만 성공합니다.

  2. 대상 시스템의 스토리지 보기가 원래 시스템과 다른 경우, pbd-destroy 명령을 사용하여 스토리지 구성을 수정합니다. 다음으로 pbd-create 명령을 사용하여 스토리지 구성을 다시 만듭니다. 이러한 명령에 대한 설명서는 pbd commands를 참조하십시오.

  3. 스토리지 구성을 생성한 경우, 새 구성을 사용하려면 XenCenter에서 pbd-plug 또는 Storage > Repair Storage Repository 메뉴 항목을 사용하십시오.

  4. 모든 VM을 다시 시작합니다.

VM 스토리지를 사용할 수 없을 때 VM을 복원하려면:

  1. 다음 명령을 실행합니다.

    xe vm-import filename=backup metadata=true
    <!--NeedCopy-->
    
  2. 메타데이터 가져오기가 실패하면 다음 명령을 실행합니다.

    xe vm-import filename=backup metadata=true --force
    <!--NeedCopy-->
    

    이 명령은 ‘최선의 노력’을 기반으로 VM 메타데이터를 복원하려고 시도합니다.

  3. 모든 VM을 다시 시작합니다.

장비 오류 처리