Red Hat Training

A Red Hat training course is available for Red Hat Virtualization

7.6. 호스트 복원

7.6.1. 호스트 고가용성

Red Hat Virtualization Manager는 펜싱을 사용하여 클러스터에 있는 호스트를 응답 가능한 상태로 둡니다. 응답하지 않음 호스트는 작동하지 않음 호스트와 다릅니다. Manager는 작동하지 않음 호스트와 통신할 수 있지만 논리 네트워크의 누락과 같은 잘못된 설정이 있을 수 있습니다. Manager는 응답하지 않음 호스트와 통신할 수 없습니다.
전원 관리 장치를 사용하는 호스트가 Manager와 통신할 수 없을 경우 관리 포털에서 펜싱 (재부팅)할 수 있습니다. 호스트에서 실행되는 모든 가상 머신이 중지되고 고가용성 가상 머신이 다른 호스트에서 시작됩니다.
모든 전원 관리 작업은 Red Hat Virtualization Manager에 의해 직접 실행되는 것이 아닌 프록시 호스트를 사용하여 실행됩니다. 전원 관리 작업에는 최소 2 개의 호스트가 필요합니다.
펜싱을 통해 클러스터는 예기치 않은 호스트 오류, 절전, 부하 분산, 가상 머신 가용성 정책에 대응할 수 있습니다. 호스트의 전원 관리 장치에 따라 펜싱 매개 변수를 설정하고 수시로 설정이 올바른지 테스트합니다.
전원 관리 매개 변수를 사용하여 호스트를 자동으로 펜싱하거나 호스트를 오른쪽 클릭하여 나타나는 메뉴의 옵션을 사용하여 수동으로 펜싱합니다. 펜싱 작업에서 응답 없음 상태의 호스트가 재부팅되고 지정된 시간 내에 호스트가 활성 상태로 반환되지 않을 경우 수동으로 문제해결을 하지 않는 한 응답 없음 상태가 유지됩니다.
호스트가 고가용성 가상 머신을 실행해야 할 경우 전원 관리를 활성화 및 설정해야 합니다.

7.6.2. Red Hat Virtualization에서 프록시를 통해 전원 관리

Red Hat Virtualization Manager는 펜스 에이전트와 직접 통신하지 않습니다. 대신 Manager는 프록시를 사용하여 호스트 전원 관리 장치에 전원 관리 명령을 전송합니다. Manager는 VDSM을 사용하여 전원 관리 장치 작업을 실행하고 환경에 있는 다른 호스트는 펜싱 프록시로 사용됩니다.
다음 중 하나를 선택할 수 있습니다:
  • 펜싱이 필요한 호스트와 동일한 클러스터에 있는 호스트입니다.
  • 펜싱이 필요한 호스트와 동일한 데이터 센터에 있는 호스트입니다.
사용 가능한 펜싱 프록시 호스트는 UP 또는 유지 관리 상태입니다.

7.6.3. 호스트에서 펜싱 매개 변수 설정

호스트 펜싱용 매개 변수는 새 호스트 또는 호스트 편집 창의 전원 관리 필드에서 설정합니다. 전원 관리에서 시스템은 RAC (Remote Access Card)와 같은 추가 인터페이스를 사용하여 호스트 문제를 펜싱합니다.
모든 전원 관리 작업은 Red Hat Virtualization Manager에 의해 직접 실행되는 것이 아닌 프록시 호스트를 사용하여 실행됩니다. 전원 관리 작업에는 최소 2 개의 호스트가 필요합니다.

절차 7.16. 호스트에서 펜싱 매개 변수 설정

  1. 호스트 리소스 탭, 트리 모드 또는 검색 기능을 사용하여 검색 결과 목록에서 호스트를 검색 및 선택합니다.
  2. 편집을 클릭하여 호스트 편집 창을 엽니다.
  3. 전원 관리 탭을 클릭합니다.
    전원 관리 설정

    그림 7.2. 전원 관리 설정

  4. 필드를 활성화하려면 전원 관리 활성 확인란을 선택합니다.
  5. Kdump 통합 확인란을 선택하여 커널 크래시 덤프 실행 시 호스트가 차단되지 않게 합니다.

    중요

    기존 호스트에서 Kdump 통합을 활성화할 때 kdump를 설정하기 위해 호스트를 다시 설치해야 합니다. 7.5.11절. “호스트 다시 설치”에서 참조하십시오.
  6. 옵션으로 호스트의 전원 관리가 호스트 클러스터의 스케줄링 정책에 의해 제어되지 않게 하려면 전원 관리 정책 제어를 비활성화 확인란을 선택합니다.
  7. 플러스 (+) 버튼을 클릭하여 새 전원 관리 장치를 추가합니다. 펜스 에이전트 편집 창이 열립니다.
    펜스 에이전트 편집

    그림 7.3. 펜스 에이전트 편집

  8. 전원 관리 장치의 주소, 사용자 이름, 암호를 입력합니다.
  9. 드롭 다운 목록에서 전원 관리 장치 유형을 선택합니다.

    참고

    사용자 정의 전원 관리 장치 설정 방법에 대한 자세한 내용은 https://access.redhat.com/articles/1238743에서 참조하십시오.
  10. 전원 관리 장치가 사용하는 SSH 포트 번호를 입력하여 호스트와 통신합니다.
  11. 전원 관리 장치의 블레이드를 구별하기 위해 사용하는 슬롯 번호를 입력합니다.
  12. 전원 관리 장치의 옵션을 입력합니다. 콤마로 구분된 'key=value' 항목을 사용합니다.
  13. 보안 확인란을 선택하여 호스트에 안전하게 연결하는 전원 관리 장치를 활성화합니다.
  14. 테스트 버튼을 클릭하여 설정이 올바른지 확인합니다. 작업 완료 후 Test Succeeded, Host Status is: on이 표시됩니다.

    주의

    전원 관리 매개 변수 (사용자 ID, 암호, 옵션 등)는 설정 시 Red Hat Virtualization Manager에 의해 테스트되며 그 후에는 수동으로 실행합니다. 잘못된 매개 변수에 대한 경고를 무시하거나 매개 변수가 전원 관리 하드웨어에서 변경되었지만 Red Hat Virtualization Manager에서는 변경되지 않은 경우 펜싱 실행을 실패할 수 있습니다.
  15. OK를 클릭하여 펜스 에이전트 편집 창을 닫습니다.
  16. 전원 관리 탭에서 옵션으로 고급 매개변수를 확장하고 위, 아래 버튼을 사용하여 Manager가 펜싱 프록시 용으로 호스트의 클러스터dc (datacenter)를 검색할 순서를 지정합니다.
  17. OK를 클릭합니다.
호스트 목록으로 돌아갑니다. 전원관리가 올바르게 설정 완료되었음을 나타내는 호스트 이름 옆의 느낌표는 더이상 표시되지 않음에 유의합니다.

7.6.4. fence_kdump 고급 설정

kdump

상세 정보 창의 일반 탭에서 kdump 서비스 상태를 확인하기 위해 호스트를 선택합니다.

  • 활성화됨: kdump가 올바르게 설정되어 kdump 서비스가 실행되고 있습니다.
  • 비활성화됨: kdump 서비스가 실행되고 있지 않습니다 (이 경우 kdump 통합이 올바르게 작동하지 않게 됩니다).
  • 알 수 없음: kdump 상태를 보고하지 않는 이전 VDSM 버전을 사용하는 호스트의 경우에만 발생합니다.
kdump 설치 및 사용에 대한 보다 자세한 내용은 Red Hat Enterprise Linux 7 Kernel Crash Dump Guide에서 참조하십시오.
fence_kdump

새 호스트 또는 호스트 수정 창의 전원 관리 탭에서 Kdump 통합을 활성화하여 표준 fence_kdump 설정을 구성합니다. 환경의 네트워크 설정이 간단하고 Manager의 FQDN이 모든 호스트에서 확인 가능한 경우 기본 fence_kdump 설정이면 충분합니다.

하지만 일부 경우 fence_kdump 고급 설정이 필요할 수 있습니다. 보다 복잡한 네트워크로 구성된 환경의 경우 Manager, fence_kdump 수신기 또는 두 가지 모두를 설정하기 위해 수동으로 구성을 변경해야 할 수 도 있습니다. 예를 들어 Manager의 FQDN을 Kdump 통합이 활성화된 모든 호스트에서 사용 불가능할 경우 engine-config를 사용하여 적절한 호스트 이름이나 IP 주소를 설정할 수 있습니다:
engine-config -s FenceKdumpDestinationAddress=A.B.C.D
다음 예에서는 설정 사항을 변경해야 할 수 있습니다:
  • Manager에는 두 개의 NIC가 있습니다. 여기서 하나는 public-facing에 용이고 다른 하나는 fence_kdump 메세지의 지정 대상이 됩니다.
  • 다른 IP 또는 포트에서 fence_kdump 수신기를 실행해야 합니다.
  • fence_kdump 통지 메세지에 대해 사용자 정의 간격을 설정하여 가능한 패킷 손실을 방지합니다.
사용자 정의된 fence_kdump 검색 설정은 고급 사용자의 경우에만 권장됩니다. 이는 기본 설정으로의 변경이 보다 복잡한 네트워킹 설정에만 필요하기 때문입니다. fence_kdump 수신기의 설정 옵션은 7.6.4.1절. “fence_kdump 수신기 설정”에서 참조하십시오. Manager에서 kdump 설정에 대한 내용은 7.6.4.2절. “Manager에서 fence_kdump 설정”에서 참조하십시오.

7.6.4.1. fence_kdump 수신기 설정

fence_kdump 수신기 설정을 편집합니다. 이는 기본 설정으로 충분하지 않은 경우에만 편집합니다.

절차 7.17. 수동으로 fence_kdump 수신기 설정

  1. /etc/ovirt-engine/ovirt-fence-kdump-listener.conf.d/에 새로운 파일을 (예: my-fence-kdump.conf) 생성합니다.
  2. OPTION=value 구문으로 사용자 설정 항목을 입력하고 파일을 저장합니다.

    중요

    편집된 값은 7.6.4.2절. “Manager에서 fence_kdump 설정”에있는 fence_kdump 수신기 설정 옵션 표에서 설명되어 있듯이 engine-config도 변경해야 합니다.
  3. fence_kdump 수신기를 다시 시작합니다:
    # systemctl restart ovirt-fence-kdump-listener.service
필요한 경우 다음과 같은 옵션을 사용자 설정합니다:

표 7.9. fence_kdump 수신기 설정 옵션

변수 설명기본값 알림
LISTENER_ADDRESSfence_kdump 메세지를 수신하기 위해 IP 주소를 정의합니다.0.0.0.0이 매개 변수 값을 변경할 경우 engine-config에 있는 FenceKdumpDestinationAddress 값과 일치해야 합니다.
LISTENER_PORTfence_kdump 메세지를 수신하기 위해 포트를 정의합니다.7410이 매개 변수 값을 변경할 경우 engine-config에 있는 FenceKdumpDestinationPort 값과 일치해야 합니다.
HEARTBEAT_INTERVAL수신기의 하트비트 업데이트 간격을 초 단위로 정의합니다.30매개 변수 값을 변경할 경우 engine-config에 있는 FenceKdumpListenerTimeout 값 보다 작은 절반 이하의 크기여야 합니다.
SESSION_SYNC_INTERVAL수신기의 호스트 메모리에서 kdumping 세션을 데이터베이스로 동기화하는 간격을 초 단위로 정의합니다.5매개 변수 값을 변경할 경우 engine-config에 있는 KdumpStartedTimeout 값 보다 작은 절반 이하의 크기여야 합니다.
REOPEN_DB_CONNECTION_INTERVAL이전에 사용 불가능했던 데이터 베이스 연결을 다시 열기 위한 간격을 초 단위로 정의합니다.30-
KDUMP_FINISHED_TIMEOUT호스트의 kdump 흐름이 FINISHED로 표시된 후 kdump 실행 호스트에서 마지막으로 메세지를 수신할 때 까지 최대 시간 제한을 초 단위로 정의합니다.60매개 변수 값을 변경할 경우 engine-config에 있는 FenceKdumpMessageInterval 값 보다 2 배 이상으로 큰 크기여야 합니다.

7.6.4.2. Manager에서 fence_kdump 설정

Manager의 kdump 설정을 편집합니다. 이는 기본 설정으로 충분하지 않을 경우에만 필요합니다. 현재 설정 값은 다음을 사용하여 확인할 수 있습니다:
# engine-config -g OPTION

절차 7.18. engine-config를 사용하여 수동으로 Kdump 설정

  1. engine-config 명령을 사용하여 kdump 설정을 편집합니다:
    # engine-config -s OPTION=value

    중요

    편집된 값은 Kdump 설정 옵션 표에 설명되어 있듯이 fence_kdump 수신기 설정 파일에도 변경해야 합니다. 자세한 내용은 7.6.4.1절. “fence_kdump 수신기 설정”에서 참조하십시오.
  2. ovirt-engine 서비스를 다시 시작합니다:
    # systemctl restart ovirt-engine.service
  3. 필요한 경우 Kdump 통합 활성으로 모든 호스트를 다시 설치합니다 (아래 표 참조).
다음 옵션은 engine-config 명령을 사용하여 설정할 수 있습니다:

표 7.10. Kdump 설정 옵션

변수 설명기본값 알림
FenceKdumpDestinationAddressfence_kdump 메세지를 전송할 호스트 이름 또는 IP 주소를 정의합니다. 값이 비어 있을 경우 Manager의 FQDN이 사용됩니다.빈 문자열 (Manager의 FQDN이 사용됨)이 매개 변수 값을 변경할 경우 fence_kdump 수신기 설정 파일에 있는 LISTENER_ADDRESS 값과 일치해야 하며 Kdump 통합 활성화된 모든 호스트를 다시 설치해야 합니다.
FenceKdumpDestinationPortfence_kdump 메세지를 전송하기 위한 포트를 정의합니다.7410이 매개 변수 값을 변경할 경우 fence_kdump 수신기 설정 파일에 있는 LISTENER_PORT 값과 일치해야 하며 Kdump 통합 활성화된 모든 호스트를 다시 설치해야 합니다.
FenceKdumpMessageIntervalfence_kdump에서의 메세지 전송 간격을 초 단위로 정의합니다.5이 매개 변수 값을 변경할 경우 fence_kdump 수신기 설정 파일에 있는 KDUMP_FINISHED_TIMEOUT 값보다 작거나 절반 이하로 해야 하며 Kdump 통합 활성화된 모든 호스트를 다시 설치해야 합니다.
FenceKdumpListenerTimeout마지막 하트비트 후 fence_kdump 수신기가 실행될 것으로 예상되는 최대 시간 제한을 초 단위로 정의합니다.90이 매개 변수 값을 변경할 경우 fence_kdump 수신기 설정 파일에 있는 HEARTBEAT_INTERVAL 값 보다 두 배 이상으로 커야 합니다.
KdumpStartedTimeout kdump를 실행하는 호스트에서 첫 번째 메세지를 수신할 때 까지 (호스트 kdump 흐름을 감지할 때 까지) 최대 대기 시간 시간 제한을 초 단위로 정의합니다.30이 매개 변수 값을 변경할 경우 fence_kdump 수신기 설정 파일에 있는 SESSION_SYNC_INTERVALFenceKdumpMessageInterval 값 보다 두 배 이상으로 커야 합니다.

7.6.5. 호스트 소프트 펜싱

경우에 따라 호스트는 예상치 못한 문제가 발생하여 응답 없음 (non-responsive) 상태가 될 수 있으며 VDSM은 요청에 응답할 수 없지만 VDSM에 의존하는 가상 머신은 가동 및 액세스 가능한 상태가 됩니다. 이러한 경우 VDSM을 다시 시작하면 VDSM 은 응답 가능한 상태가 되어 이러한 문제가 해결됩니다.
"SSH 소프트 펜싱"은 Manager가 응답 없음 상태의 호스트에서 SSH를 통해 VDSM을 다시 시작하는 절차입니다. Manager가 SSH를 통해 VDSM을 다시 시작할 수 없는 경우 외부 펜싱 에이전트가 설정되어 있을 때 펜싱은 외부 펜싱 에이전트의 책임이 됩니다.
SSH를 통한 소프트 펜싱은 다음과 같은 경우에 작동합니다. 호스트에서 펜싱이 설정되어 활성화되어 있어야 하며 유효한 프록시 호스트 (데이터 센터에서 UP 상태의 두 번째 호스트)가 존재해야 합니다. Manager와 호스트 간의 연결 시간 초과 시 다음과 같은 상태가 발생합니다:
  1. 첫 번째 네트워크 장애 발생 시 호스트 상태는 "connecting"으로 변경됩니다.
  2. Manager는 VDSM에게 상태를 3번 확인하거나 호스트에서의 로딩에 의해 결정되는 대기 시간 동안 기다립니다. 이러한 대기 시간을 결정하는 수식은 TimeoutToResetVdsInSeconds (기본값 60 초) + [DelayResetPerVmInSeconds (기본값 0.5 초)]*(호스트에서 실행 중인 가상 머신 수) + [DelayResetForSpmInSeconds (기본값 20 초)] * 1 (호스트가 SPM으로 실행 중인 경우) 또는 0 (호스트가 SPM으로 실행하지 않는 경우)의 설정 값에 의해 지정됩니다. VDSM에 최대 응답 시간을 부여하려면 Manager는 위의 옵션 ( VDSM의 상태를 3번 확인하거나 위의 수식에 의해 지정되는 대기 시간 동안 대기) 중 두 개의 긴 옵션을 선택합니다.
  3. 시간이 경과해도 호스트가 응답하지 않을 경우 SSH를 통해 vdsm restart가 실행됩니다.
  4. vdsm restart가 호스트와 Manager 간의 연결을 다시 설정하지 않을 경우 호스트 상태는 Non Responsive로 변경되며 전원 관리가 설정되어 있을 경우 펜싱은 외부 펜싱 에이전트로 전달됩니다.

참고

SSH를 통한 소프트 펜싱은 전원 관리가 설정되어 있지 않은 호스트에서 실행될 수 있습니다. 이는 "펜싱 (fencing)"과는 다릅니다. 펜싱은 전원 관리가 설정되어 있는 호스트에서만 수행할 수 있습니다.

7.6.6. 호스트 전원 관리 기능 사용

요약

호스트에 전원 관리가 설정된 경우 관리 포털 인터페이스에서 여러 옵션에 액세스할 수 있습니다. 각각의 전원 관리 장치에는 사용자 정의 옵션이 있지만 모든 장치에서는 호스트를 시작, 중지, 다시 시작하기 위해 기본 옵션을 지원합니다.

절차 7.19. 호스트 전원 관리 기능 사용

  1. 호스트 리소스 탭, 트리 모드 또는 검색 기능을 사용하여 검색 결과 목록에서 호스트를 검색 및 선택합니다.
  2. 전원 관리 드롭 다운 메뉴를 클릭합니다.
  3. 다음 중 한가지 옵션을 선택합니다:
    • 다시 시작: 이 옵션은 호스트를 중지하고 호스트의 상태가 Down으로 변경될 때 까지 기다립니다. 에이전트가 호스트가 Down된 것을 확인하면 고가용성 가상 머신이 클러스터에 있는 다른 호스트에서 다시 시작됩니다. 그 후 에이전트는 호스트를 다시 시작합니다. 호스트가 사용 가능하게 되면 Up 상태로 표시됩니다.
    • 시작: 이 옵션은 호스트를 시작하고 클러스터에 추가합니다. 사용 가능하게 될 경우 Up 상태로 표시됩니다.
    • 중지: 이 옵션은 호스트 전원을 끕니다. 이 옵션을 사용하기 전 호스트에서 실행되고 있는 가상 머신이 클러스터에 있는 다른 호스트로 마이그레이션되었는지 확인합니다. 그렇지 않을 경우 가상 머신이 중단되고 고가용성 가상 머신만 다른 호스트에서 다시 시작됩니다. 호스트가 중지하면 Non-Operational 상태로 표시됩니다.

    중요

    두 펜싱 에이전트가 호스트에서 정의될 때 동시에 또는 순차적으로 사용될 수 있습니다. 동시에 에이전트가 사용될 경우 두 에이전트 모두 중지할 호스트에 대해 Stop 명령에 응답해야 합니다. 하나의 에이전트가 Start 명령에 응답하면 호스트가 실행됩니다. 순차적으로 에이전트가 사용될 경우 호스트를 시작 또는 중지하기 위해 주요 에이전트가 먼저 사용되며 실패할 경우 2차 에이전트가 사용됩니다.
  4. 위의 옵션 중 하나를 선택하여 확인 창을 엽니다. OK를 클릭하여 확인하고 계속 진행합니다.
결과

선택된 동작이 수행됩니다.

7.6.7. 응답 없음 (Non Responsive) 상태의 호스트를 수동으로 펜싱 또는 분리

요약

하드웨어 오류 등과 같은 문제로 인해 호스트가 응답 없음 (non-responsive) 상태로 될 경우 이는 환경의 성능에 크게 영향을 미칠 수 있습니다. 전원 관리 장치가 없거나 잘못 설정되어 있을 경우 수동으로 호스트를 재부팅할 수 있습니다.

주의

수동으로 호스트를 재부팅하는 경우를 제외하고 호스트가 재부팅되었는지 확인 옵션을 사용하지 않습니다. 호스트가 실행되는 동안 이러한 옵션을 사용할 경우 가상 머신 이미지가 손상될 수 있습니다.

절차 7.20. 응답 없음 (Non Responsive) 상태의 호스트를 수동으로 펜싱 또는 분리

  1. 호스트 탭에서 호스트를 선택합니다. 상태는 non-responsive로 표시해야 합니다.
  2. 수동으로 호스트를 재부팅합니다. 이는 물리적으로 시스템에 들어가 호스트를 재부팅하는 것을 의미합니다.
  3. 관리 포털에서 호스트 항목을 오른쪽 클릭하여 호스트가 재부팅되었는지 확인 버튼을 선택합니다.
  4. 호스트가 종료되었거나 재부팅되었는지를 확인하라는 메세지가 표시됩니다. 작업 승인 확인란을 선택하고 OK를 클릭합니다.
결과

수동으로 호스트를 재부팅하여 활성 호스트에서 고가용성 가상 머신을 시작할 수 있게 합니다. 관리 포털에서 수동 펜싱 작업을 확인하면 호스트가 다시 온라인 상태로 됩니다.