VMware 서버 소프트웨어 제품은 각 소프트웨어 구성 요소의 이벤트와 타임스탬프에 대한 데이터를 기록하는 로그 파일을 제공합니다. VMware 로그는 문제 해결 및 문제 진단을 위해 사용할 수 있습니다. 이 블로그 포스트에서는 ESXi 및 vCenter 로그를 다루며 VMware vSphere에서 로그를 확인하고 필요한 정보를 찾아내고 분석하는 방법을 설명합니다.
ESXi 로그
VMware ESXi는 물리 서버에서 가상 머신을 생성하고 관리할 수 있는 널리 사용되는 하이퍼바이저입니다. ESXi 서버의 적절한 기능, 문제 해결 및 모니터링을 보장하기 위해 다양한 로그가 생성됩니다. 이러한 로그는 중요한 이벤트, 오류 및 성능 데이터를 기록하여 관리자 및 지원 팀이 문제를 식별하고 가상 인프라의 안정성을 유지하는 데 도움이 됩니다. 아래에서는 몇 가지 필수 VMware ESXi 로그에 대한 설명이 나와 있습니다.
VMkernel 로그
/var/log/vmkernel.log
이 로그는 장치 드라이버 이벤트, 스토리지, 네트워킹 및 기타 커널 관련 활동을 포함한 VMkernel 활동을 기록합니다. 이는 하드웨어 관련 문제를 진단하는 데 중요한 낮은 수준의 시스템 작업에 대한 통찰력을 제공합니다. vmkernel 로그 위치는 /var/log/ 디렉토리입니다.
/var/log/vmkwarning.log
이 로그 파일에는 ESXi 하이퍼바이저의 핵심인 VMkernel이 생성한 경고 메시지가 포함되어 있습니다. 이는 주의가 필요한 이벤트 및 조건을 기록하지만 중요한 오류는 아닙니다.
/var/log/vmksummary.log
vmksummary.log는 ESXi 호스트의 운영 상태를 개요로 제공하는 요약 로그로, 시작 및 종료 이벤트, 시스템 리소스 사용, 그리고 일부 주요 성능 통계를 포함합니다.
호스트 관리 로그
/var/log/hostd.log
이 로그에는 ESXi 호스트 관리 서비스(hostd)와 관련된 항목이 포함됩니다. 가상 머신 전원 작업, 작업 및 이벤트 처리, 그리고 해당하는 경우 vCenter Server와의 통신 이벤트를 포착합니다.
가상 머신 로그
/vmfs/volumes/datastore_name/vm_name/vmware.log
각 가상 머신은 해당 VM에 특정한 이벤트를 캡처하는 로그 파일을 유지합니다. 이는 전원 작업, 가상 하드웨어 변경, 그리고 게스트 OS 내부의 응용 프로그램 이벤트와 같은 이벤트를 포함합니다. vmware.log 파일 위치는 데이터 스토어의 VM 디렉터리입니다.
저장소 로그
/var/log/vobd.log
이 로그는 저장소 및 iSCSI 작업과 관련된 문제에 중점을 둡니다.
/var/log/vmkernel.log
이전에 언급한 대로, VMkernel 로그는 또한 저장소 관련 이벤트를 캡처합니다.
네트워크 로그
/var/log/vobd.log
이 로그에는 vMotion, 네트워크 연결 및 통신 오류와 같은 네트워크 관련 이벤트가 포함됩니다.
/var/log/vmkernel.log
VMkernel 로그에도 네트워크 관련 메시지가 포함됩니다.
인증 및 사용자 로그
/var/log/auth.log
이 로그는 사용자 로그인 및 로그아웃을 포함한 인증 이벤트를 기록합니다.
ESXi 쉘 및 SSH 로그
/var/log/shell.log
이 로그는 사용자가 실행한 ESXi 쉘 (TSM) 명령을 캡처합니다.
/var/log/ssh.log
ESXi 호스트에서 SSH가 활성화되어 있는 경우 이 로그는 SSH 관련 이벤트를 기록합니다.
시스템 메시지
/var/log/syslog.log
syslog.log에는 VMkernel 및 ESXi 호스트에서 실행되는 다양한 서비스의 시스템 메시지에 대한 포괄적인 로그가 포함되어 있습니다. 부팅 메시지, 하드웨어 이벤트, 네트워크 활동 등 다양한 정보를 포착합니다.
방화벽 로그
/var/log/firewall.log
이 로그는 ESXi 방화벽과 관련된 이벤트를 추적합니다. 허용된 및 거부된 연결을 포함합니다.
ESXi에 연결된 vCenter Server의 vCenter 서버 로그 (연결된 경우)
/var/log/vpxa.log
이 로그 파일은 vCenter Server에 의해 관리되는 ESXi 호스트에 특화되어 있습니다. vpxa.log는 ESXi 호스트에서 실행되는 vCenter 에이전트 (vpxa)와 관련이 있습니다. vCenter에서 시작된 작업 (예: VM 전원 작업, 마이그레이션 및 구성 변경)과 호스트 상태 업데이트, 작업 및 이벤트 실행, vCenter Server와의 통신 등을 기록합니다.
ESXi 업데이트 로그
/var/log/esxupdate.log
esxupdate.log은 ESXi 호스트 패치 및 업데이트와 관련된 로그를 포함합니다. 이 로그 파일은 ESXi 호스트에 대한 소프트웨어 패키지 (VIBs)의 설치, 업그레이드 및 제거에 관한 정보를 기록합니다.
USB 로그
/var/log/usb.log
usb.log 파일은 ESXi 호스트에 연결된 USB 장치와 관련된 이벤트를 기록합니다. USB 장치의 감지, 연결 및 연결 해제를 추적하며, USB 통과 또는 USB arbitrator 서비스의 사용과 관련된 문제를 기록합니다.
VMware vCenter 로그
VMware vCenter는 여러 VMware ESXi 호스트 및 가상 머신을 효율적으로 관리할 수 있는 중앙 집중식 관리 플랫폼입니다. vCenter Server 및 연결된 ESXi 호스트의 건강 및 성능을 유지하기 위해 특정 목적을 위해 여러 로그가 생성됩니다. 아래에는 일부 필수 VMware vCenter 로그에 대한 설명이 있습니다.
vpxd.log
위치: /var/log/vmware/vpxd/vpxd.log
이 로그 파일은 vCenter Server 서비스와 관련된 이벤트를 기록합니다. vpxd 로그 위치는 vCenter 서버의 /var/log/vmware/vpxd/ 디렉토리입니다. vpxd 로그에는 vCenter 서비스 시작, vSphere 클라이언트의 연결 이벤트, 사용자 인증, 라이선싱, vSphere 클라이언트 또는 API를 통해 수행된 다양한 관리 작업에 대한 정보가 포함되어 있습니다.
/var/log/vmware/vpxd/vpxd-alert.log는 vpxd 프로세스와 관련된 비중요한 정보를 포함합니다.
fdm.log
위치: /var/log/fdm.log
Fault Domain Manager (FDM) 로그는 vSphere High Availability (HA) 문제 해결에 중요합니다. 호스트 및 VM 오류, HA 구성, 하트비트 데이터, HA 클러스터에서 마스터 호스트 선거에 대한 정보가 포함되어 있습니다.
vmsyslogd.log
위치: /var/log/vmware/vmsyslogd.log
이 로그 파일은 vCenter Server Appliance에서 실행 중인 syslog 서비스와 관련이 있습니다. 다양한 구성 요소 및 서비스에서 vCenter Server의 syslog로 전달되는 메시지를 기록합니다.
vmware-vpostgres.log
위치: /var/log/vmware/vpostgres/postgresql-xx.log
이 로그에는 복제 상태, 트랜잭션 로그 및 기타 데이터베이스 이벤트를 포함하여 자세한 PostgreSQL 데이터베이스 관련 메시지가 포함되어 있습니다.
catalina.log
위치: /var/log/vmware/vpostgres/catalina.out
이 로그 파일은 VMware Postgres 데이터베이스 서비스에 속합니다. 데이터베이스 작업과 관련된 메시지가 포함되어 있으며, 시작 및 종료 이벤트, 쿼리 및 오류가 있습니다.
sms.log
위치: /var/log/vmware/sms/sms.log
스토리지 모니터링 서비스(SMS) 로그는 데이터 저장소, 스토리지 장치 및 스토리지 경보와 관련된 스토리지 모니터링 및 관리 작업과 관련된 이벤트를 기록합니다.
invsvc.log
위치: /var/log/vmware/invsvc/invsvc.log
인벤토리 서비스 로그에는 vCenter Server 인벤토리 작업에 대한 정보가 포함되어 있으며, 개체 업데이트, 데이터 수집 및 동기화가 있습니다.
applmgmt.log
위치: /var/log/vmware/applmgmt/applmgmt.log
이 로그 파일은 어플라이언스 관리 서비스와 관련이 있으며, vCenter Server Appliance의 배포 및 구성에 대한 정보를 제공합니다.
vmware-sts-idmd.log
위치: /var/log/vmware/sso/vmware-sts-idmd.log
이 로그는 VMware Single Sign-On (SSO) 서비스, 아이덴티티 관리 및 인증 프로세스와 관련된 이벤트를 기록합니다.
stats.log
위치: /var/log/vmware/perfcharts/stats.log
stats.log 파일은 vCenter Server 성능 차트 서비스(또는 vCenter 성능 차트로도 알려짐)와 관련이 있습니다. 이 파일에는 성능 차트 서비스에 의해 수집된 통계 데이터 및 성능 관련 정보가 포함되어 있습니다.
성능 차트 서비스는 가상 머신 및 호스트의 성능 지표를 그래픽으로 표현합니다. stats.log 파일은 가상 인프라 구성 요소의 성능을 모니터링하고 분석하기 위한 성능 차트 및 그래프를 생성하는 데 사용될 수 있는 데이터를 기록합니다.
참고: 성능 차트 서비스는 VM 및 호스트의 실시간 성능을 모니터링하는 데 필수적이며, stats.log는 기본 데이터를 저장하는 데 역할을 합니다.
eam.log
위치: /var/log/vmware/eam/eam.log
eam.log 파일은 vCenter Server의 ESX 에이전트 관리자(EAM) 서비스에 속합니다. EAM은 vSphere 에이전트를 관리하는 책임을 지며, 이에는 vSphere 설치 번들(VIB) 및 확장 에이전트가 포함됩니다.
eam.log 파일은 vSphere 에이전트의 라이프사이클 관리와 관련된 이벤트 및 활동을 기록합니다. 에이전트 배포, 업그레이드 및 유효성 검사에 관한 정보가 저장됩니다. VMware Lifecycle Manager 로그 위치를 찾고 있다면, /var/log/vmware/eam/eam.log을 확인하십시오.
참고: ESX 에이전트 관리자는 ESXi 호스트에 올바른 VIB 버전이 설치되어 있고 확장 에이전트가 올바르게 등록되었음을 보장합니다. eam.log 파일은 이러한 작업을 추적하고 vSphere 에이전트와 관련된 문제를 감지하는 데 중요한 역할을 합니다.
로그가 저장되는 위치
VMware 로그가 저장되는 파티션과 디렉터리가 어디인지 알아보겠습니다. 기본 VMware ESXi 설치에서는 로그가 다른 파티션의 여러 디렉터리에 저장됩니다. VMkernel 로그와 같은 VMware 로그의 일반적인 위치는 ESXi 호스트의 다음과 같습니다.
/scratch/log/
심볼릭 링크는 /var/log/에 있지만 로그 파일은 ESXi 스크래치 파티션에 저장됩니다(위아래 스크린샷 참조). ESXi를 USB 플래시 드라이브에 설치하는 방법을 설명하면서 스크래치 파티션과 임시 스토리지에 대해 설명했었습니다.
예를 들어 심볼릭 링크를 사용하여 /var/log/hostd.log에서 호스트 관리 로그에 액세스할 수 있지만 hostd.log 파일은 로그 디렉터리의 /scratch 파티션에 있습니다.
가상 머신 로그는 일반적으로 VM 디렉터리의 VM 데이터스토어에 있으며 ESXi 서버를 재부팅하더라도 삭제되지 않습니다. 예:/vmfs/volumes/datastore_name/vm_name/vmware.log
VM 로그 파일(vmware.log)이 가득 차면 vmware-1.log, vmware-2.log 등으로 이름이 변경됩니다.
VM 로그를 사용하거나 사용하지 않도록 설정하려면 VMware vSphere Client에서 VM 설정 > VM 옵션으로 이동한 다음 고급 옵션을 확장하여 로깅 사용 확인란을 선택하거나 선택 취소하면 됩니다.
따라서 ESXi 호스트에서 로그 및 기타 임시 파일을 저장하는 /scratch 파티션입니다. 일부 설치에서는 /scratch 파티션이 인-메모리 파일 시스템인 tmpfs로 구성됩니다. 다시 부팅 시 로그를 보존해야 하는 경우 ” esxcli system syslog “명령 및 아래 설명된 다른 명령을 사용하여 로그를 위한 지속 저장 위치를 구성할 수 있습니다.
ESXi 로그의 위치는 ESXi 버전 및 구성에 따라 다를 수 있음을 염두에 두십시오. 또한 시스템 관리자가 명시적으로 구성한 경우 로그가 지속 저장 장치에 저장될 수 있습니다.
vCenter 로그의 위치
대부분의 vCenter Server 로그는 /var/log/vmware/ 디렉터리에 있습니다. VMware vCenter Server는 ESXi와 같이 임시 (비지속) 파티션에 로그를 저장하지 않습니다. 대신 vCenter Server 로그는 일반적으로 운영 체제의 로컬 디스크 또는 마운트된 저장 볼륨에 저장되므로 다시 부팅되어도 지속됩니다. VMware vCenter Server Appliance (VCSA)는 우리가 기억하기로 Photon Linux를 기반으로하며 VCSA는 최신 vSphere 버전에서 사용되는 최신 vCenter 배포 접근 방식입니다.
Linux 기반 설치 (VCSA)의 vCenter 로그 위치는 다음과 같습니다:
/var/log/vmware/vpx/
vCenter 로그의 정확한 위치는 vCenter Server가 설치된 운영 체제에 따라 다릅니다. VMware vSphere 6.7까지 사용되었던 Windows 기반 vCenter Server는 다음의 기본 위치를 사용하여 VMware vCenter 로그를 저장했습니다:
C:\ProgramData\VMware\vCenterServer\logs\
vCenter 로그 위치는 vCenter Server 버전 및 구성에 따라 다를 수 있습니다. 정확한 로그 위치를 찾으려면 언제든지 공식 VMware 문서 또는 해당 vCenter Server 버전의 문서를 참조할 수 있습니다.
vCenter Server는 중앙 관리 플랫폼이므로 시간이 지남에 따라 기록을 유지하고 문제 해결 및 성능 분석을 용이하게 합니다. 기본 구성에 따라 일부 임시 로그에 대해 메모리 파일 시스템을 사용하는 ESXi와 달리, vCenter Server 로그는 영구적이며 영구적인 저장 장치에 저장됩니다. ESXi의 비영구적 저장소에 대해서는 ESXi의 로그 저장 위치를 변경할 수 있습니다.
VMware 로그에 액세스하는 방법
VMware 로그가 무엇이며 어디에 저장되는지 살펴보았습니다. 이제 VMware ESXi 로그를 확인하는 방법을 알아야 합니다. VMware ESXi 로그에 대한 추가 분석을 수행하려면 다음과 같은 방법으로 VMware ESXi 로그에 액세스할 수 있습니다.
VMware Host Client
ESXi 로그를 VMware Host Client에서 보려면 다음 단계를 수행하십시오:
- 웹 브라우저에서 VMware Host Client에 로그인합니다.
- 호스트 > 모니터를 클릭하여 네비게이터 창에서 로그 탭을 클릭합니다.
- 선택한 ESXi 로그 중 하나를 확인하려면 로그된 정보를 보려는 필요한 문자열로 검색 필드를 사용할 수 있습니다.
DCUI (ESXi)
ESXi에서 직접 콘솔 사용자 인터페이스를 사용하여 로그를 볼 수 있습니다. ESXi 호스트에 물리적 액세스가 필요합니다. 모니터 및 키보드 또는 KVM 스위치 및 유사한 기술을 사용할 수 있습니다.
- ESXi 직접 콘솔 사용자 인터페이스 (DCUI)에 로그인합니다.
- 시스템 로그 보기 항목을 시스템 사용자 정의 메뉴에서 선택합니다.
- 1에서 6까지의 키를 눌러 ESXi 서버에서 적절한 VMware 로그를 보여줍니다. 각 숫자에 대한 설명이 인터페이스의 오른쪽 창에 표시됩니다.
- 필요한 숫자를 입력한 후 로그가 표시되는 전체 화면 페이지가 표시됩니다. 검색 문자열을 입력하고 /를 입력하여 필요한 정보만 포함된 줄만 표시할 수 있습니다. 이 모드를 종료하고 이전 DCUI 메뉴로 돌아가려면 q를 누릅니다.
웹 브라우저
ESXi 호스트에 대한 자격 증명을 입력하여 로그 파일을 다운로드할 수 있는 페이지에 링크가 있는 웹 브라우저를 사용하십시오.
https://<ESXI_host_IP>/host
ESXi 명령줄
ESXi 명령줄은 DCUI와 유사하게 네트워크 연결이 불가능하고 네트워크를 통한 원격 로그 보기 방법을 사용할 수 없는 경우에 ESXi 로그를 볼 수 있습니다.
- DCUI에서 ESXi 셸이 활성화되어 있는지 확인하십시오 (문제 해결 옵션 > ESXi 셸 활성화).
- ESXi 셸을 열려면 Alt+F1을(를) 누르십시오.
- ESXi 로그를 보기 위해 명령을 사용하십시오.
SSH
원격 SSH 액세스는 VMware 로그를 보고 분석하는 가장 편리하고 강력한 방법 중 하나입니다.
- DCUI (문제 해결 옵션 > SSH 사용) 또는 VMware 호스트 클라이언트에서 SSH를 활성화하여 ESXi 호스트에 원격 SSH 액세스를 허용하십시오.
- SSH 클라이언트를 사용하여 ESXi 호스트에 연결하십시오 (예: Windows에서 연결하는 경우 PuTTY).
- ESXi 로그 및 VMware 로그 분석에 명령을 사용하십시오.
예제로 하는 VMware 로그 분석
이제 우리는 가상 환경에서 다양한 문제를 해결하는 데 귀중한 VMware 로그의 이름과 위치를 알고 있습니다. 이제 VMware 로그를 문제 해결에 어떻게 활용하는지에 대한 실제적인 예제를 살펴보겠습니다.
ESXi 호스트 연결 문제 식별
문제: ESXi 호스트의 가상 머신들이 간헐적인 네트워크 연결 문제를 겪고 있습니다.
확인할 로그:
- /var/log/vmkernel.log
- /var/log/vobd.log
- /var/log/hostd.log
문제 해결 단계: 네트워크 관련 메시지를 확인하고 오류나 패킷 손실을 찾기 위해 VMkernel 로그를 확인하십시오. 또한 호스트 관리 서비스 문제를 확인하기 위해 호스트 로그를 검토하십시오. 또한 vobd.log은 VM 네트워킹에 영향을 미칠 수 있는 저장소 관련 문제에 대한 통찰력을 제공할 수 있습니다.
가상 머신 스냅샷 생성 실패
문제: 가상 머신 스냅샷 생성 시도가 실패합니다.
확인할 로그:
- /vmfs/volumes/datastore_name/vm_name/vmware.log
- /var/log/vmkernel.log
문제 해결 단계: 특정 가상 머신의 vmware.log을 조사하여 스냅샷 관련 오류나 경고 메시지를 확인하십시오. 동시에 스냅샷 작업을 방해할 수 있는 저장소 관련 문제를 확인하기 위해 VMkernel 로그를 확인하십시오.
VM 성능 저하
문제: 가상 머신이 고 CPU 또는 메모리 사용량과 같은 성능 문제를 겪고 있습니다.
확인해야 할 로그:
- /vmfs/volumes/datastore_name/vm_name/vmware.log
- /var/log/vmkernel.log
문제 해결 단계: 영향을 받는 VM의 vmware.log를 분석하여 특정 응용 프로그램 오류 또는 자원 이용률 급증을 확인하십시오. 동시에 성능 관련 메시지를 위해 VMkernel 로그를 확인하고 ESXi 호스트가 충분한 자원을 가지고 있는지 확인하십시오.
vCenter 서비스 시작 실패
문제: vCenter Server 서비스가 시작되지 않습니다.
확인해야 할 로그:
- vCenter 서버의 /var/log/vmware/vpxd/vpxd.log
- ESXi 호스트의 /var/log/vpxa.log
문제 해결 단계: vCenter Server 시작 중에 오류 또는 예외를 위해 vpxd.log를 검토하십시오. 또한 관리되는 ESXi 호스트의 vpxa.log를 확인하여 vCenter와 호스트 간의 적절한 통신을 확인하십시오.
VMware 고가용성 (HA) 클러스터 장애 조치 문제
문제: ESXi 호스트 장애 후 HA 클러스터의 다른 호스트에서 가상 머신이 다시 시작되지 않습니다.
확인해야 할 로그: /var/log/fdm.log
문제 해결 단계. 영향을 받는 호스트의 fdm.log를 분석하여 HA 클러스터의 오류나 문제를 식별합니다. 하트비트 메시지, 마스터 호스트 선출 과정 및 VM 장애 조치 실패에 대한 가능한 원인을 찾으십시오.
vMotion 실패
문제: 호스트 간 VM을 이동하려고 할 때 VMware vMotion이 실패합니다.
확인할 로그:
- /var/log/vmkernel.log
- /var/log/vobd.log
문제 해결 단계. vMotion 관련 메시지 및 네트워크 연결 문제를 확인하려면 vmkernel.log를 검사하십시오. 또한 vMotion에 영향을 줄 수 있는 잠재적인 저장소 관련 문제를 확인하려면 vobd.log를 확인하십시오.
VMware Tools 설치 문제
문제: 가상 머신에서 VMware Tools 설치가 실패합니다.
확인할 로그: /vmfs/volumes/datastore_name/vm_name/vmware.log
문제 해결 단계. VMware Tools 관련 오류 또는 설치 메시지를 확인하려면 가상 머신 내부의 vmware.log를 검토하십시오.
VMware 로그로 문제 해결 시 여러 로그를 상호 연관시키는 것이 중요합니다. 이를 통해 문제의 종합적인 이해를 얻을 수 있습니다. 또한 VMware Aria Operations for Logs (이전 vRealize Log Insight)와 같은 로그 분석 도구를 사용하여 로그 검토 프로세스를 간소화하고 복잡한 환경에서 보다 효율적인 VMware 문제 해결을 가능하게 할 수 있습니다.
저장소 문제 해결
VMware 로그를 사용하여 하드 디스크 드라이브나 솔리드 스테이트 드라이브와 관련된 문제를 식별할 수 있습니다. 예를 들어 HDD에 나쁜 블록이 있는지 확인할 수 있습니다. VMware 환경에서 하드 디스크 드라이브(HDD)나 솔리드 스테이트 드라이브(SSD)와 관련된 문제를 식별하려면 다양한 VMware 로그를 사용하여 저장소 관련 이벤트와 오류를 추적하고 분석할 수 있습니다.
- VMkernel 로그(/var/log/vmkernel.log) 검토:
VMkernel 로그는 저장소 관련 이벤트를 포함한 저수준 시스템 정보를 제공합니다. 디스크 I/O 오류 또는 디스크 문제와 관련된 SCSI 센스 코드를 나타내는 메시지를 찾으십시오.
오류 예시: “장치 I/O 오류“, “미디어 오류 감지됨“, “데이터의 수정할 수 없는 오류“
- 저장소별 로그를 확인합니다 (/var/log/vobd.log):
vobd.log에는 저장소 하위 시스템에서 발생한 오류를 포함한 저장소 관련 메시지가 포함되어 있습니다.
오류 예시: “저장소 오류: 장치 ‘naa.xxxxxxxxxxxxxx’… Sense: 복구할 수 없는 읽기 오류”
- 가상 머신 로그를 확인합니다 (/vmfs/volumes/datastore_name/vm_name/vmware.log):
특정 가상 머신의 디스크 I/O 오류를 확인할 수 있는 가상 머신별 로그입니다.
오류 예시: “하나 이상의 가상 디스크에서 디스크 I/O 오류가 발생했습니다”, “디스크 오류가 감지되었습니다” 또는 “오류 스택: 파티션 테이블을 읽을 수 없음”
권장 사항: VMware 로그 외에 추가로 사용할 것
VMware 로그와 함께 사용할 것을 권장하는 것이 있습니다. 더 나은 및 자세한 진단 및 문제 해결을 위해 시간에 저장소 문제를 감지하는 데 도움이 됩니다.
- vCenter 알림 및 이벤트 모니터링. 스토리지와 관련된 vCenter Server 알림 및 이벤트를 주시하세요. 스토리지 문제로 인한 알림은 잠재적인 디스크 문제에 대한 통찰력을 제공할 수 있습니다.
- VMware 건강 점검 사용. VMware는 vSphere 클라이언트를 통해 수행할 수 있는 다양한 건강 점검을 제공합니다. 이러한 점검은 스토리지 관련 문제를 식별하고 권장 사항을 제공할 수 있습니다.
- 제3자 모니터링 도구 활용. 여러 호스트 및 VM에서 로그 데이터를 중앙 집중화하고 분석하기 위한 특별한 IT 모니터링 및 로그 분석 도구를 구현하세요. 이러한 도구는 전체 가상 인프라에서 디스크 관련 문제를 식별하는 데 도움이 될 수 있습니다.
- HDD의 불량 블록을 식별할 때 여러 오류 메시지와 패턴에 주의하는 것이 중요합니다, 특히 미디어 또는 읽기/쓰기 오류를 나타내는 것들입니다. 불량 블록은 데이터 손상이나 성능 저하로 이어질 수 있으며 초기 감지는 더 심각한 문제를 방지할 수 있습니다. 실패한 디스크 장치의 데이터가 손실된 경우, VMware 백업에서 데이터 복구가 필수적입니다.
클러스터 문제 VMware ESXi 로그와 vCenter 로그를 사용하여 가상화된 환경에서 클러스터 관련 문제를 식별하는 데 도움이 될 수 있습니다. 클러스터 문제는 VM 성능 , HA 장애, vMotion 실패 또는 기타 클러스터 관련 작업에 문제로 나타날 수 있습니다.
VMware ESXi 로그와 vCenter 로그를 사용하여 가상화 환경에서 클러스터 관련 문제를 식별하는 데 도움이 될 수 있습니다. 클러스터 문제는 VM 성능, HA 장애 조치(failover), vMotion 실패 또는 기타 클러스터 관련 작업과 같은 문제로 나타날 수 있습니다.
- vCenter Server 로그 검토:
- vCenter 로그에 액세스하여 vpxd.log 및 vpxa.log와 같은 로그를 /var/log/vmware/vpxd/vpxd.log 및 /var/log/vpxa.log에 각각 위치시킵니다.
- 클러스터 작업, 리소스 관리 및 vCenter와 ESXi 호스트 간 통신과 관련된 오류 또는 경고 메시지를 찾습니다.
- 클러스터 생성, 구성 변경 및 클러스터 서비스 관련 문제가 발생한 이벤트에 주의를 기울입니다.
- ESXi 호스트 로그를 확인하고 ESXi 호스트 로그에 접근합니다, 다음과 같은 vmkernel.log, hostd.log, fdm.log를 포함합니다:
- vmkernel.log: 클러스터 관련 이벤트를 확인하는 데 사용합니다, 例如 vMotion 시도, HA 하트비트 문제, 또는 자원 공유 중에 에러.
- hostd.log: 호스트 관리 서비스가 처리하는 작업과 이벤트에 관한 클러스터 관련 메시지를 찾습니다.
- fdm.log: 호스트 실패, VM 재시작, 마스터 선거 이벤트를 포함하는 HA 관련 이벤트를 확인하는 데 사용합니다.
- 가상 머신 로그를 검사합니다:
- vmware.log와 같은 가상 머신 로그에 접근하여 클러스터 내 개별 VM에 특정된 문제를 식별합니다.
- VM 로그는 VM 성능, 자원 제약, 또는 vMotion 작업 중에 실패에 대한 내용을 제공합니다.
- 모니터 클러스터별 경고 및 이벤트:
- vCenter를 사용하여 클러스터 성능 및 상태에 특화된 경고 및 이벤트를 생성합니다.
- 과도한 리소스 사용, 클러스터 파티셔닝 또는 VM 장애와 같은 문제에 대한 경고를 구성합니다.
- 클러스터 관련 이벤트, 예를 들어 VM 이동, 클러스터 재구성 또는 HA 이벤트와 같은 이벤트는 vCenter의 이벤트 탭에서 확인할 수 있습니다.
ESXi 로그, vCenter 로그, 성능 메트릭 및 클러스터별 이벤트에서의 정보를 결합하여 클러스터 상태에 대한 포괄적인 이해를 얻고 가상 머신 성능, 고 가용성 및 전체 클러스터 안정성에 영향을 주는 문제를 식별할 수 있습니다. 정기적인 로그 분석 및 예방적 모니터링은 클러스터 문제를 예방하거나 발생할 때 신속하게 해결하는 데 도움이 될 수 있습니다.
네트워크 문제 해결
VMware vSphere에서 네트워크 문제 해결은 가상 머신과 ESXi 호스트 간의 통신에 영향을 미치는 네트워크 관련 문제를 식별하고 해결하는 것을 포함합니다. VMware ESXi 및 vCenter 로그는 이러한 문제를 찾아내는 데 중요한 역할을 할 수 있습니다. 아래는 ESXi 및 vCenter 로그를 사용한 네트워크 문제 해결 예제와 관련 정보를 추출하는 명령어들입니다.
VM 네트워크 연결 문제 식별
문제: 가상 머신이 네트워크에 접근할 수 없습니다.
- A command to check VMkernel logs (on an ESXi host):
cat /var/log/vmkernel.log | grep -E 'Failed to send packet|dropped|no network'
이 명령어는 패킷 실패, 패킷 손실 또는 네트워크 불가와 관련된 VMkernel 로그 메시지를 필터링합니다.
- A command to check VM network configurations (on an ESXi host):
esxcfg-vmknic -l
이 명령어는 ESXi 호스트에 구성된 VMkernel 네트워크 인터페이스 및 IP 주소를 나열합니다. VM의 네트워크가 올바르게 구성되어 있는지 확인합니다.
vMotion 문제 해결
문제: 두 ESXi 호스트 간의 vMotion이 실패합니다.
- A command to check VMkernel logs (on both source and destination ESXi hosts):
cat /var/log/vmkernel.log | grep -E 'Migration to host|vMotion'
이 명령어는 소스와 대상 ESXi 호스트에서 vMotion과 관련된 메시지를 찾는 데 도움이 됩니다.
- A command to check vCenter events (on vCenter Server):
vim-cmd vmsvc/get.eventlog <vmid> | grep 'Migrate'
<vmid>를 영향을 받은 VM의 가상 머신 ID(VMID)로 교체하십시오. 이 명령은 VM의 이벤트 로그를 검색하고 vMotion 관련 이벤트를 검색합니다.
네트워크 성능 병목 현상 식별
문제: 가상 머신이 네트워크 성능 저하를 겪고 있습니다.
- A command to check ESXTOP statistics (on an ESXi host):
esxtop
esxtop 내에서, n을 눌러 네트워킹 뷰로 전환하십시오. 네트워크 처리량(MBTx/rx), 네트워크 패킷/s, 네트워크 드롭/s와 같은 메트릭을 모니터링하여 잠재적인 병목 현상을 식별하십시오. 이 명령과 다음 명령은 VMware 로그 파일에서 데이터를 표시하는 것이 아니라 VMware 문제 해결을 위한 실시간 업데이트 정보를 표시하는 데 사용됩니다. esxtop 명령을 사용하여 ESXi 가동 시간을 확인할 수도 있습니다.
vSphere Distributed Switch (VDS) 문제 해결
문제: vSphere Distributed Switch의 VM 연결 문제.
- A command to check VDS health (on vCenter Server):
net-dvs -l
이 명령은 모든 분산 가상 스위치(VDS)와 그 상태를 나열합니다.
- A command to check VDS port status (on vCenter Server):
net-dvs -p <VDS Name>
<VDS Name>을 VDS 이름으로 교체하십시오. 이 명령은 지정된 분산 가상 스위치의 모든 포트 상태를 표시합니다.
네트워크 문제 해결은 종종 VMkernel 로그, vCenter 로그, 성능 메트릭 및 네트워크 구성과 같은 여러 소스에서 로그와 성능 데이터를 분석해야 합니다. 위의 예제는 네트워크 문제와 관련된 정보를 수집하기 위한 시작점으로 제공되며, vSphere 환경에서 발생하는 특정 문제에 따라 명령을 조정해야 할 수도 있습니다.
VMware 로그 분석을 위한 정규 표현식
위의 예제에서 볼 수 있듯이, SSH를 통해 ESXi 셸에 액세스하고 명령줄을 사용하는 것은 VMware 로그를 보고 분석하는 강력한 방법입니다. VMware ESXi 로그 분석 도구로 네이티브 명령줄 도구를 사용할 수 있습니다. 이러한 명령줄 도구는 Linux 사용자에게 친숙합니다:
- cat은 하나 이상의 텍스트 파일 내용을 터미널에 연결하고 표시하는 명령줄 도구입니다. 일반적으로 파일의 전체 내용을 한 번에 보기 위해 사용됩니다. 그러나 큰 파일의 경우, cat을 사용하면 출력이 빠르게 스크롤되어 화면에서 사라지기 때문에 읽기에 실용적이지 않을 수 있습니다.
- less는 텍스트 파일의 내용을 보고 스크롤할 수 있는 명령줄 페이지 유틸리티입니다. 한 화면씩 텍스트를 표시하며 파일 내에서 앞뒤로 이동할 수 있는 탐색 옵션을 제공합니다. cat과 달리, less는 큰 파일을 더 효율적으로 읽는 데 유용합니다.
- grep은 “Global Regular Expression Print”의 약자입니다. 이 명령줄 도구는 하나 이상의 파일에서 텍스트 패턴(정규 표현식)을 검색하는 강력한 도구입니다. grep은 지정된 패턴을 포함하는 줄을 필터링하고 표시할 수 있습니다. 텍스트 검색, 로그 분석 및 파일에서 특정 정보를 추출하는 데 일반적으로 사용됩니다.
- tail은 텍스트 파일의 마지막 몇 줄을 표시하는 명령줄 유틸리티입니다. 기본적으로 tail은 파일의 마지막 10줄을 표시합니다. 로그 파일을 실시간으로 모니터링하는 데 특히 유용하며, 로그에 새 항목이 추가될 때마다 이를 표시할 수 있습니다. tail 명령은 종종 -f 옵션과 함께 사용되어 파일을 지속적으로 모니터링하고 실시간 업데이트를 볼 수 있습니다.
- head은 텍스트 파일의 처음 N줄을 표시하는 명령줄 유틸리티입니다. 기본적으로 head 도구는 파일의 처음 10줄을 표시합니다. 파일의 시작 부분을 빠르게 미리보거나 초기 정보를 추출하는 데 도움이 됩니다. tail과 유사하게, -n 옵션을 사용하여 표시할 줄 수를 지정할 수 있습니다.
이러한 명령줄 도구들을 정규 표현식과 함께 사용하면 VMware 로그 분석의 효율성을 극대화할 수 있습니다. ESXi 명령줄에서 정규 표현식(regex)을 사용하여 로그 파일을 분석하면 특정 정보를 추출하고 문제나 패턴에 대한 통찰을 얻는 강력한 방법이 될 수 있습니다. 아래에서는 ESXi에서 로그 분석을 위해 정규 표현식을 사용하는 몇 가지 실제 실용적인 예를 볼 수 있습니다.
특정 이벤트에 대한 로그 필터링
특정 이벤트, 예를 들어 “Disk I/O error“가 vmkernel.log 파일에서 모든 발생을 찾고 싶다고 가정해 보겠습니다.
cat /var/log/vmkernel.log | grep -E 'Disk I/O error'
이 명령은 Disk I/O error라는 구문이 포함된 모든 줄을 vmkernel.log에서 표시합니다.
로그에서 IP 주소 추출하기
hostd.log 파일에서 IP 주소를 추출하려면, IPv4 주소와 일치하는 정규 표현식 패턴을 사용할 수 있습니다.
cat /var/log/hostd.log | grep -E -o '([0-9]{1,3}\.){3}[0-9]{1,3}'
이 명령은 hostd.log에서 발견된 모든 IPv4 주소를 표시합니다.
수량자로 패턴 찾기
연속된 숫자가 포함된 모든 줄을 vmware.log 파일에서 찾고 싶다고 가정해 보겠습니다.
cat /vmfs/volumes/datastore_name/vm_name/vmware.log | grep -E '[0-9]+'
이 명령은 vmware.log에서 하나 이상의 숫자가 포함된 모든 줄을 표시합니다.
다중 패턴 검색
vpxd.log 파일에서 “error” 또는 “warning”이 포함된 줄을 찾으려면, 정규 표현식 패턴에서 OR 연산자 |를 사용할 수 있습니다.
cat /var/log/vmware/vpxd/vpxd.log | grep -E 'error|warning'
이 명령은 error 또는 warning이 포함된 모든 줄을 vpxd.log에서 표시합니다.
와일드카드로 일치시키기
vobd.log 파일에서 대소문자를 구분하지 않고 “failed”라는 단어를 포함하는 모든 줄을 찾으려면 다음과 같이 합니다.
cat /var/log/vobd.log | grep -i 'failed'
이 명령은 failed“, “FAILED“, “Failed“ 등 vobd.log 파일의 모든 줄을 표시합니다.
캡처 그룹 사용
sms.log 파일의 줄에서 날짜 및 시간 정보를 추출하려면 정규 표현식 패턴에서 캡처 그룹을 사용할 수 있습니다.
cat /var/log/vmware/sms/sms.log | grep -Eo '([0-9]{4}-[0-9]{2}-[0-9]{2}) ([0-9]{2}:[0-9]{2}:[0-9]{2})'
이 명령은 sms.log 파일의 모든 날짜 및 시간 발생을 표시합니다.
참고: 특정 사용 사례에 필요한 로그 경로로 변경할 수 있습니다.
이 예제는 정규 표현식을 grep 명령과 결합하여 ESXi 명령 줄 인터페이스에서 로그 분석을 수행하는 방법을 보여줍니다. 정규 표현식은 강력한 패턴 매칭 기능을 제공하여 특정 정보를 추출하고, 로그를 필터링하며, 패턴을 효율적으로 찾을 수 있게 합니다. 실제 정규 표현식 패턴은 로그 파일의 내용과 추출하거나 검색하려는 정보에 따라 달라질 수 있습니다. 이러한 예제를 사용하고 명령을 조정하여 VMware 로그 분석에 대한 특정 요구 사항을 충족시킬 수 있습니다.
VMware 로그 내보내기 및 지원 번들 다운로드 방법
VMware 로그 분석이 ESXi 호스트나 vCenter에서 발생한 문제를 해결하는 데 도움이 되지 않을 수 있습니다. 이 경우, 로그를 내보내거나 지원 번들을 다운로드하여 이 정보를 VMware 지원팀에 보낼 수 있습니다. VMware 지원팀의 전문가는 라이선스가 있는 VMware vSphere 버전을 사용 중인 경우 VMware 환경의 문제를 해결하는 데 도움을 줄 수 있습니다.
VMware 호스트 클라이언트
지원 번들을 생성하고 VMware 로그를 내보내려면 다음 단계를 수행하십시오:
- 모니터를 네비게이터 창에서 클릭하십시오.
- 로그 탭을 선택하십시오.
- 지원 번들 생성을 클릭하십시오.
- 웹 브라우저에서 다운로드한 번들 아카이브를 저장하십시오.
VMware vSphere 클라이언트
vSphere 클라이언트에서 VMware 시스템 로그를 내보내려면 다음을 수행하십시오:
- 호스트 및 클러스터 보기를 선택하고 로그를 내보내려는 ESXi 호스트를 선택하십시오 (왼쪽 창, 즉 네비게이션 창에서).
- ESXi 호스트를 마우스 오른쪽 버튼으로 클릭하고 열린 메뉴에서 시스템 로그 내보내기를 클릭합니다.
- 내보낼 ESXi 로그를 선택하고 로그 내보내기를 클릭합니다.
vSphere Client에서 VMware 지원에 번들을 업로드하려면 다음을 수행하십시오:
- 왼쪽 상단 모서리에 있는 메뉴 아이콘을 클릭합니다.
- 관리 > 지원 > 서비스 요청에 파일 업로드로 이동하여 서비스 요청에 파일 업로드 버튼을 누릅니다.
웹 브라우저에서 링크
ESXi 호스트의 cgi 스크립트 링크를 사용합니다:
http://<ESXi_IP_address>/cgi-bin/vm-support.cgi
내보낸 ESXi 로그가 포함된 번들(.tgz 파일)을 다운로드하여 저장합니다.
ESXi 셸(명령 줄)에서 번들 생성
ESXi 셸에서 다음 명령을 실행하여 ESXi 로그가 포함된 지원 번들을 생성할 수 있습니다:
/usr/bin/vm-support
결론
VMware vSphere 문제 해결 시에는 ESXi 및 vCenter를 포함한 VMware 로그를 분석하여 문제의 근본 원인을 파악하고 적절한 조치를 취할 수 있습니다. 이러한 로그를 분석함으로써 관리자는 성능 병목 현상, 연결 문제, 구성 오류 및 잠재적인 보안 문제와 같은 문제를 식별하고 해결할 수 있습니다. 정기적인 로그 검토는 프로액티브 관리와 VMware vCenter 및 가상화 환경의 안정성과 신뢰성을 유지하는 데 중요합니다.
VMware 인프라와 VM 백업의 정기적인 모니터링을 통해 문제를 시간 내에 예방하고 데이터 손실을 피할 수 있습니다.
Source:
https://www.nakivo.com/blog/vmware-logs-analysis-for-troubleshooting/