목차

소개

사전 요구 사항

요구 사항

사용되는 구성 요소

표기 규칙

vemlog 명령 실행

Vemlog 디버깅 수준

1단계: 현재 캡처 설정 지우기

2단계: vemlog 캡처 매개변수 설정

3단계: 출력 보기

4단계: 일반 로깅 수준으로 vemlog 복원

관련 정보

소개

Nexus 1000v의 VEM(Virtual Ethernet Module) 부분에는 문제 해결에 도움이 되는 데 사용할 수 있는 디버그 명령이 내장되어 있습니다. 이러한 vemlog 명령을 사용하면 VEM의 특정 프로세스, VEM이 어떤 명령을 전송하는지, 어떤 응답을 수신하는지 파악할 수 있습니다. 예를 들어 다음 상황에서 사용할 수 있습니다.

- Nexus 1000v와 업스트림 스위치 간에 LACP 포트 채널이 가동되지 않습니다. 호스트에서 "vemlog"를, 업스트림 스위치에서 "debug"를 조합하여 문제를 좁힐 수 있습니다.

- QoS가 제대로 작동하지 않으며 VEM에서 값을 올바르게 설정하는지 확인합니다.

- VSM-VEM 통신에 대한 변경 사항을 확인합니다.

이러한 명령을 실행하는 가장 일반적인 활용 사례는 LACP 디버깅입니다. 업스트림 스위치에서 디버그 모듈 "sflacp" 및 "debug lacp"를 사용하여 어떤 디바이스가 제대로 작동하지 않는지 또는 두 디바이스 간의 링크가 LACP BPDU를 삭제하는지 감지할 수 있습니다.

기본 수준에는 일반적으로 충분한 정보가 있으므로 추가 디버그를 켜지 않고도 로그를 수집 및 분석할 수 있습니다.

사전 요구 사항

요구 사항

이 문서에 대한 특정 요건이 없습니다.

사용되는 구성 요소

이 문서는 특정 소프트웨어 및 하드웨어 버전으로 한정되지 않습니다.

표기 규칙

문서 규칙에 대한 자세한 내용은 Cisco 기술 팁 표기 규칙을 참고하십시오.

vemlog 명령 실행

이러한 명령의 구문에 대한 질문이 있는 경우 ESXi CLI에 "vemlog"를 입력하고 도움말 출력을 받을 수 있습니다. 탭이 완전하지 않거나 '?' 을 참조하십시오. 완전히 입력해야 합니다. 그렇지 않으면 제대로 작동하지 않습니다. vemlog 명령을 실행하려면 다음 중 하나가 필요합니다.

- 문제의 ESXi 호스트에 대한 SSH/로컬 콘솔 액세스 쉽게 위로 스크롤할 수 있으므로 SSH 액세스를 사용하는 것이 좋습니다.

- VSM에 대한 SSH/로컬 콘솔 액세스 및 모듈은 VSM에서 활성화되어 있어야 합니다. 다시 한 번 SSH 액세스를 사용하는 것이 좋습니다. 이 방법을 사용하는 경우 모듈 vem # execute를 사용하여 모든 명령의 앞에 와야 합니다. 여기서 #은 VEM의 모듈 번호입니다.

Vemlog 디버깅 수준

VEM의 Vemlog는 일반 스위치의 syslog와 유사합니다. 일반 스위치와 마찬가지로 심각도 수준은 다음과 같습니다.

e – Error

n – Notification

w – Warning

i – Information

d – Debug

p – Print

t – Temporary

가장 심각한 수준부터 최소(심각도가 낮은 메시지가 훨씬 더 많은 정보를 출력함)로 분류됩니다. 기본적으로 vemlog는 ENW(Error, Notification, Warning)로 설정됩니다.

1단계: 현재 캡처 설정 지우기

특정 문제를 해결하려면 기본 캡처를 비활성화하는 것이 좋습니다.

vemlog stop

vemlog clear

vemlog debug all none

이러한 명령은 현재 발생하는 vemlog 명령을 중지하고 vemlog를 빈 캡처 설정으로 재설정합니다. 다음 명령을 사용하여 이를 확인할 수 있습니다.

여기서 볼 수 있듯이 vemlog show debug 명령은 현재 디버그 설정을 표시합니다. "인쇄"의 모든 모듈의 기본값은 0이거나 인쇄되지 않습니다.

2단계: vemlog 캡처 매개변수 설정

이제 처음부터 다시 시작할 수 있는 명암이 있으므로, 이제 쿠키를 캡처할 수 있도록 설정해야 합니다. 이 예에서는 일반 포트 로그가 캡처됩니다.

두 번째 명령에는 다음 구문이 있습니다.

vemlog debug [module|all] [-][all|none|default|e|w|n|i|d|p|t]

여기서 "debug_module"은 캡처할 vemlog 패키지입니다. 일반적으로 "debug"는 문제 해결에 충분합니다.

[-]를 명령에 추가하면 해당 모듈에 대한 디버그 레벨이 제거됩니다. 이 스크린샷에는 다음과 같은 예가 있습니다.

vemlog show debug 명령을 사용하여 사용 가능한 모든 디버그 모듈을 볼 수 있습니다.

모니터링할 패키지를 지정한 후 vemlog start 명령을 사용하여 vemlog를 시작합니다.

3단계: 출력 보기

로그를 볼 준비가 되었으면 vemlog show all 명령을 실행합니다. 그러면 모든 로그 항목이 콘솔(또는 SSH 세션)에 인쇄됩니다. 호스트에 직접 연결되어 있는 경우 파일을 파일로 전송하여 나중에 복사하여 분석할 수도 있습니다.

이 파일을 /vmfs/volumes/[datastore_name] 디렉토리로 이동하면 ESXi의 데이터 저장소 브라우저를 사용하여 호스트에서 이동할 수 있습니다.

vemlog는 vmkernel 로그에도 저장됩니다.

4단계: 일반 로깅 수준으로 vemlog 복원

~ # vemlog stop

Suspended log

~ # vemlog clear

Cleared log

~ # vemlog debug all default

~ # vemlog start

Started log

이러한 명령은 vemlog를 표준 컨피그레이션으로 복원합니다. 이는 향후 문제에 대한 디버깅 정보가 제대로 캡처되도록 하는 데 중요합니다.

vemlog는 vmkernel 로그와 vemlog의 버퍼에 모두 저장되므로 특히 tty 디버그는 불필요한 정보로 둘 다 플러딩할 수 있습니다. 특히 활성화된 상태로 둘 다 남아 있을 수 있습니다.

관련 정보

- 기술 지원 및 문서 − Cisco Systems