VMware ESXi 호스트에서 관리 에이전트 재시작하는 방법

VMware ESXi는 VMware vSphere 가상화 플랫폼의 일부인 하이퍼바이저입니다. 모든 가상화 소프트웨어는 언젠가 문제가 발생할 수 있습니다. 예를 들어 vSphere에서는 ESXi에 연결할 수 없거나 ESXi 호스트를 vCenter에 연결할 수 없는 경우가 있습니다. 또는 vCenter에서 오류 메시지가 표시되어 VM을 생성할 수 없는 경우도 있습니다. ESXi 호스트를 다시 시작하면 일부 경우에 도움이 될 수 있습니다. 그러나 가상 머신(VMs)을 종료하거나 다른 호스트로 이동해야 할 수 있으며, 이는 프로덕션 환경에서 문제가 될 수 있습니다. 먼저 ESXi 관리 에이전트를 다시 시작하는 것이 좋습니다. ESXi 호스트의 관리 에이전트를 다시 시작하면 문제를 해결할 수 있는 가능성이 매우 높습니다.

증상

ESXi 관리 에이전트를 다시 시작해야 하는 일반적인 증상을 나열하는 것으로 시작하겠습니다:

  • ESXi 호스트에 직접 연결하거나 이 호스트를 vCenter에서 관리할 수 없습니다.
  • ESXi 호스트가 vCenter와 연결이 끊겼지만 VM은 ESXi 호스트에서 계속 실행됩니다.
  • vCenter에서 가상 머신(VM)을 생성하려고 할 때 다음과 같은 오류가 표시됩니다:

에이전트가 호스트에서 VM 생성 옵션을 검색할 수 없어 가상 머신 생성이 실패할 수 있음

  • ESXi 호스트 간 VM 이전이 수행되지 않고 다음과 같은 오류가 반환됩니다:

가상 머신 재위치

호스트의 현재 연결 상태에서 작업이 허용되지 않음

  • 선택한 VM에서 실행 중인 VM에 대한 정보가 Summary 탭에 표시되지 않습니다:

CPU 사용량 – 0 MHz

메모리 사용량 – 0.00 MB

ESXi 관리 에이전트의 역할

ESXi 관리 에이전트는 VMware 구성 요소를 동기화하고 vCenter Server에서 ESXi 호스트에 액세스할 수 있도록합니다. VMware 에이전트는 기본 구성에 포함되어 있으며 ESXi를 설치할 때 설치됩니다. ESXi에는 ESXi 호스트에서 연결 문제가 발생할 경우 다시 시작해야 할 수도 있는 두 가지 주요 에이전트가 있습니다 – hostdvpxa.

hostd는 ESXi 호스트에서 대부분의 작업을 관리하고 VM, 표시된 LUN 및 VMFS 볼륨을 등록하는 호스트 에이전트입니다. hostd는 VM 시작 및 중지와 같은 주요 작업을 처리합니다. VMware hostd는 ESXi와 vmkernel 간의 통신에 사용됩니다.

vpxa는 ESXi 호스트에 활성화되는 VMware 에이전트로, ESXi 호스트가 vCenter Server에 가입할 때 활성화됩니다. 또한 vCenter Server의 vpxd가 ESXi 호스트의 vpxa와 통신하는 경우가 있습니다 (vpxa는 ESXi 측에서 실행되는 VMware 에이전트이고 vpxd는 vCenter 측에서 실행되는 데몬입니다). vpxa는 ESXi 호스트에서 hostd와 통신합니다. VMware vpxa는 vCenter와 hostd 간의 통신을 위한 중간 서비스로 사용됩니다.

vSphere Client 및 vCenter를 사용하여 ESXi 호스트를 관리하는 경우 vCenter는 ESXi 호스트에서 실행되는 vpxa 프로세스를 통해 명령을 전달합니다. 호스트를 관리하기 위해 직접 ESXi 호스트에 연결하는 경우 호스트의 hostd 프로세스에 직접 통신이 설정됩니다.

VM이 어떻게 영향을 받나요?

가상 머신은 ESXi 관리 에이전트를 다시 시작할 때 다시 시작되거나 전원이 꺼지지 않습니다(가상 머신을 다시 시작할 필요가 없습니다). VM이 영향을 받지 않도록하려면 ESXi 호스트에서 실행 중인 VM 중 하나를 핑해보고이 ESXi 호스트에서 VMware 에이전트를 다시 시작하십시오. ESXi 호스트에서 실행중인 작업이 영향을 받거나 중단될 수 있습니다. ESXi 관리 에이전트를 다시 시작하는 동안 ESXi 호스트의 VMware VM 백업 작업이 실행 중이 아닌지 확인하십시오.

ESXi 호스트 및 해당 호스트의 VM은 ESXi 호스트에서 ESXi 관리 에이전트를 다시 시작하는 동안 잠시 연결이 끊긴 상태로 표시됩니다. 몇 초 후에 VMware vSphere Client에서 페이지를 새로 고치면 ESXi 호스트 및 VM의 상태가 정상이어야합니다.

문제를 피하려면 VMware 가상 환경에서 vSAN, NSX 또는 공유 그래픽을 사용하는 경우 ESXi를 사용하여 VMware 에이전트를 다시 시작하기 전에 블로그 게시물 끝에 주의 사항을 읽으십시오.

직접 콘솔 UI에서 에이전트 다시 시작ESXi 관리 에이전트를 다시 시작하는 가장 신뢰할 수있는 방법은 ESXi 직접 콘솔 사용자 인터페이스 (DCUI)를 사용하는 것입니다. 키보드와 모니터가 서버에 연결된 ESXi 서버에 물리적으로 액세스해야합니다. ESXi 네트워크 관리에 사용되는 서비스는 책임이 없을 수 있으며 예를 들어 SSH를 통해 호스트를 원격으로 관리할 수 없을 수 있습니다.

ESXi 관리 에이전트를 다시 시작하는 가장 신뢰할 수있는 방법은 ESXi 직접 콘솔 사용자 인터페이스 (DCUI)를 사용하는 것입니다. 키보드와 모니터가 서버에 연결되어 있어야 합니다. ESXi 네트워크 관리에 사용되는 서비스가 책임을 지지 않을 수 있으며 예를 들어 SSH를 통해 호스트를 원격으로 관리할 수 없을 수 있습니다.

  1. DCUI에서 시스템 설정을 사용자 정의하려면 F2를 누르세요.
  2. 관리 계정 (ESXi에서 관리 권한이 있는 기본 계정은 root입니다)의 사용자 이름과 암호를 입력하세요.
    참고: 조급해하지 마십시오. 때로는 상당한 지연이 발생할 수 있습니다. 자격 증명을 입력한 후 서버가 이 작업에 대한 반응을 보이기까지의 지연은 몇 분이 걸릴 수 있습니다. 대기 중인 관리 서비스로부터 응답을 기다리는 것으로 인한 시간 초과가 발생할 수 있습니다.

  1. 자격 증명을 수락한 후 시스템 사용자 정의 메뉴가 표시됩니다.
  2. 문제 해결 옵션을 선택하고 Enter를 누릅니다. DCUI의 오른쪽 창에서 메뉴 옵션을 선택한 후 유용한 팁을 볼 수 있습니다.

  1. 문제 해결 모드 옵션에서 관리 에이전트 다시 시작을 선택하고 Enter를 누릅니다.

  1. 관리 에이전트 다시 시작에 관한 구성 메시지가 표시됩니다. 추가 문제 해결 정보를 수집하려면 Space를 누르세요 (선택 사항). 지금 관리 에이전트를 확인하고 다시 시작하려면 F11을 누르세요.

  1. ESXi 관리 에이전트가 다시 시작될 때까지 기다렸다가 문제가 해결되었는지 확인하십시오.
    • DCUI에서 관리 에이전트를 다시 시작해도 문제가 해결되지 않으면 ESXi 셸을 직접 액세스하거나 SSH를 통해 ESXi 명령줄에서 시스템 로그를 보고 명령을 실행해야 할 수 있습니다. DCUI에서 ESXi 셸과 SSH를 활성화할 수 있습니다. SSH 액세스 및 ESXi 셸은 기본적으로 비활성화되어 있습니다.
    • ESXi 셸을 활성화하려면 문제 해결 옵션으로 이동하여 ESXi 셸 활성화를 선택하고 Enter를 누르십시오.
    • 원격 SSH 액세스를 활성화하려면 문제 해결 옵션으로 이동하여 SSH 활성화를 선택하고 Enter를 누르십시오.

VMware 호스트 클라이언트 사용

VMware 호스트 클라이언트를 사용하면 ESXi 호스트와 vCenter 간의 연결에 사용되는 VMware vCenter 에이전트 vpxa를 다시 시작하는 데 편리합니다.

  1. 웹 브라우저의 주소 표시줄에 ESXi 호스트의 IP 주소를 입력하십시오. 그런 다음 ESXi의 관리 계정 자격 증명을 입력하여 VMware 호스트 클라이언트에 로그인하십시오.
  2. 탐색 창에서 호스트 > 관리로 이동하고 서비스 탭을 선택하십시오.
  3. vpxa 서비스를 마우스 오른쪽 단추로 클릭하고 컨텍스트 메뉴에서 재시작을 누르십시오.

VMware 호스트 클라이언트를 열 수 없는 경우 ESXi 관리 에이전트를 다시 시작하는 다른 방법을 사용하십시오. ESXi 호스트에 원격 SSH 액세스를 활성화하려면 TSM-SSH 서비스를 시작할 수 있습니다.

ESXi 셸 (SSH)에서 VMware 에이전트 다시 시작

ESXi 명령 줄 인터페이스 (CLI)는 ESXi 호스트를 관리하고 문제를 해결하는 강력한 도구입니다. 원격 관리를 위해 ESXi 호스트의 SSH 액세스가 활성화되어 있어야 합니다. SSH 클라이언트를 사용하여 원격으로 ESXi 호스트에 연결하고 명령 줄 인터페이스를 사용할 수 있습니다. Windows 머신에서 PuTTY를 SSH 클라이언트로 사용할 수 있습니다. ESXi 서버의 IP 주소 또는 호스트 이름을 정의하고 포트 (기본값은 22)를 선택한 다음 SSH 클라이언트에서 관리 자격 증명을 입력하십시오. 그런 다음 SSH를 통해 콘솔 (터미널) 세션을 볼 수 있어야 합니다.

ESXi 셸을 직접 사용하려는 경우 (원격 액세스 없이), ESXi 셸을 활성화하고 ESXi 서버에 물리적으로 연결된 키보드와 모니터를 사용해야 합니다. ESXi 명령 줄 옵션에 대해 자세히 알아 보려면 ESXCLI에 대한 블로그 게시물을 읽으십시오.참고: 이 블로그 게시물에서 사용된 명령은 ESXi 6.x 및 ESXi 7.x와 호환됩니다.

참고: 이 블로그 게시물에서 사용된 명령어는 ESXi 6.x 및 ESXi 7.x와 호환됩니다.

  1. ESXi 호스트에서 사용 가능한 모든 서비스를 나열하려면 (선택 사항) 다음 명령을 사용하십시오:
    chkconfig –list
  2. 콘솔 출력에서 hostdvpxa 서비스를 찾아 상태를 확인하십시오.

  1. hostdvpxa 서비스(관리 에이전트)를 다시 시작하려면 다음 명령을 사용하십시오:
    /etc/init.d/hostd restart
    /etc/init.d/vpxa restart

  1. ESXi 호스트에서 모든 관리 에이전트를 다시 시작하려면 이 명령을 대안으로 사용하십시오.
    services.sh restart &tail -f /var/log/jumpstart-stdout.log
    VMware 에이전트 다시 시작 진행 상황이 콘솔 출력에 표시됩니다.

  1. VMkernel 인터페이스에서 관리 네트워크를 재설정할 수도 있습니다:
    esxcli network ip interface set -e false -i vmk0; esxcli network ip interface set -e true -i vmk0

vmk0 인터페이스는 ESXi에서 기본적으로 사용됩니다. 관리 네트워크 인터페이스에 다른 이름이 있는 경우 명령어에서 적절한 인터페이스 이름을 사용하십시오.

이 복잡한 명령은 ; (세미콜론)으로 구분된 두 가지 기본 명령으로 구성됩니다. 첫 번째 명령의 실행으로 vmk0 관리 네트워크 인터페이스가 비활성화됩니다. 이 부분이 성공적으로 실행되어 vmk0이 다운되면 두 번째 명령이 실행되어 vmk0 인터페이스를 활성화합니다. 결과적으로 ESXi 관리 네트워크 인터페이스가 다시 시작됩니다.

SSH를 통해 DCUI 사용

ESXi 호스트에 SSH 액세스 권한이 있는 경우 SSH 세션에서 DCUI를 열 수 있습니다. 이 방법을 사용하면 더 편리하게 콘솔에서 DCUI의 의사 그래픽 사용자 인터페이스를 사용할 수 있습니다.

  1. 콘솔/터미널에서 DCUI를 열려면 다음 명령을 실행하십시오:
    dcui
  2. F2를 눌러 시스템을 사용자 정의합니다.
  3. DCUI가 설명된 섹션 위에서 설명된대로 VMware 관리 에이전트를 다시 시작할 옵션을 선택하십시오.

PowerCLI를 사용하여 VMware 관리 에이전트 다시 시작하기

VMware PowerCLI는 vCenter 및 ESXi 호스트를 명령줄 인터페이스에서 관리하기 위한 Windows PowerShell을 기반으로 한 다른 도구입니다.

  1. ESXi 호스트에서 사용 가능한 서비스 목록을 가져옵니다:
    Get-VMHostService -VMHost 192.168.101.208 -Refresh

    • -Refresh 매개변수는 이 데이터를 콘솔에 인쇄하기 전에 데이터를 새로 고칩니다.
    • 192.168.101.208은 이 예제에서 사용된 ESXi 호스트의 IP 주소입니다.
  2. 구성에 따라 ESXi 호스트의 이름 또는 IP 주소를 정의하십시오. 출력에 표시된 서비스 목록은 ESXi 명령줄이 아닌 VMware Host Client에 표시된 서비스 목록과 유사합니다.

  1. 호스트 및 서비스를 지정하여 $VMHostService 변수에 값을 추가합니다.
    $VMHostService = Get-VMHostService -VMHost 192.168.101.208 -Refresh | Where {$_.Key -eq ‘vpxa’}
    여기서 vpxa는 필요한 ESXi 관리 서비스의 이름입니다. 또한 시작, 중지 또는 다시 시작하려는 다른 서비스를 정의할 수도 있습니다. 예를 들어, TSM-SSH (ESXi 호스트의 SSH 서버 서비스)입니다.
  2. vpxa 서비스를 $VMHostService 변수를 사용하여 다음 명령을 사용하여 다시 시작합니다.
    Restart-VMHostService -HostService $VMHostService -Verbose

  • 또한 서비스를 수동으로 중지하고 시작할 수도 있습니다.

Stop-VMHostService -HostService $VMHostService

Start-VMHostService -HostService $VMHostService

다음 명령을 사용하여 vpxa를 다시 시작하는 대체 명령을 시도할 수 있습니다.Get-VMHostService -VMHost 192.168.101.208 | where {$_.Key -eq “vpxa”} | Restart-VMHostService -Confirm:$false -ErrorAction SilentlyContinue

주의 사항

  • ESXi 호스트가 vSAN 클러스터의 구성원인 경우 링크 집계 제어 프로토콜 (LACP)을 사용하는 경우 services.sh 명령을 사용하여 ESXi 관리 에이전트를 다시 시작하지 마십시오.
    독립적인 서비스를 다시 시작하려면 /etc/init.d/module restart을(를) 사용하십시오.
  • NSX가 VMware 가상 환경에 구성된 경우 /sbin/services.sh 재시작 명령을 사용하지 마십시오. 이 명령은 ESXi 호스트의 모든 서비스를 다시 시작하며 네트워크 연결이 일시적으로 중단됩니다. 이 경우 호스트의 ESXi 관리 에이전트를 개별적으로 다시 시작해야합니다. 개별적으로 에이전트를 다시 시작해도 문제가 해결되지 않고 /sbin/services.sh 재시작을 실행해야하는 경우, 현재 ESXi 호스트에서 VM을 마이그레이션하고 호스트를 유지보수 모드로 전환하십시오.
  • ESXi 호스트에 NSX가 설치되어 있는지 여부를 모를 때 다음 명령을 사용하여 확인할 수 있습니다:
    /sbin/services.sh restartesxcli software vib list –rebooting-image | grep esx-*
  • 출력에 vsip-esxesx-vxlan VIB가 표시되면 해당 ESXi 호스트에 NSX for vSphere가 설치되어 있습니다.
  • VMware View 환경에서 공유 그래픽이 사용되는 경우 (VGPU, vSGA, vDGA), services.sh를 사용하여 ESXi 에이전트를 다시 시작하지 마십시오. services.sh 명령으로 관리 에이전트를 다시 시작하면 게스트 운영 체제의 그래픽을 담당하는 xorg 서비스가 중지됩니다. 게스트 운영 체제에서 그래픽을 비활성화하면 공유 그래픽을 사용하는 경우 가상 데스크톱 인프라 (VDI)가 충돌합니다. 공유 그래픽을 사용하고 ESXi 호스트가 유지보수 모드로 전환되지 않은 경우 hostdvpxa를 수동으로 다시 시작할 수 있습니다.

결론

ESXi 관리 에이전트를 재시작하면 vCenter에서 ESXi 호스트의 연결 해제 상태, ESXi 호스트에 직접 연결할 때 발생하는 오류, VM 작업 관련 문제 등과 관련된 문제를 해결할 수 있습니다. 이 블로그 포스트에서는 DCUI, ESXi 명령줄, VMware Host Client 및 VMware PowerCLI를 사용하여 ESXi 관리 에이전트를 재시작하는 일반적인 방법을 다루었습니다. 일반적으로 가상 머신은 에이전트를 재시작해도 영향을 받지 않지만, vSAN, NSX 또는 VDI의 공유 그래픽을 vSphere 가상 환경에서 사용하는 경우 더 주의가 필요합니다.

데이터를 보호하고 데이터를 빠르게 복구하고 워크로드를 복원할 수 있는 능력을 갖추기 위해 정기적으로 vSphere에서 VMware VM을 백업하세요. NAKIVO Backup & Replication은 VMware vSphere에서 VM 백업을 지원하는 올인원 데이터 보호 솔루션입니다. 제품은 Windows, Linux, NAS 장치 및 VMware 가상 어플라이언스에 설치할 수 있습니다.

Source:
https://www.nakivo.com/blog/how-to-restart-management-agents-on-a-vmware-esxi-host/