작업자가 NSX 라우팅 하위 시스템의 다양한 부분에 대한 실행 상태를 검사할 수 있는 CLI 명령 모음이 있습니다.
NSX 라우팅 하위 시스템의 분산 특성 때문에 NSX의 다양한 구성 요소에서 액세스할 수 있는 여러 CLI가 있습니다. NSX 버전 6.2부터 NSX는 다양한 분산 구성 요소에 액세스하고 로그인하는 데 필요한 "이동 시간"을 줄이는 데 도움이 되는 중앙 CLI도 제공합니다. 또한 단일 위치인 NSX Manager 셸에서 대부분의 정보에 액세스할 수 있도록 합니다.
전제 조건 확인
각 ESXi 호스트에 대해 다음 2가지 주요 전제 조건이 충족되어야 합니다.
- DLR에 연결되는 모든 논리적 스위치는 정상 상태여야 합니다.
- ESXi 호스트는 VXLAN에 대해 준비 완료 상태여야 합니다.
논리적 스위치 상태 점검
NSX 라우팅은 NSX 논리적 스위치와 함께 작동합니다. DLR에 연결된 논리적 스위치가 정상 상태인지 확인하려면:
- 문제의 DLR에 연결된 각 논리적 스위치의 세그먼트 ID(VXLAN VNI)를 찾습니다(예: 5004..5007).
- 이 DLR에서 제공하는 VM이 실행 중인 ESXi 호스트에서 이 DLR에 연결된 논리적 스위치에 대한 VXLAN 제어부의 상태를 확인합니다.
# esxcli network vswitch dvs vmware vxlan network list --vds-name=Compute_VDS VXLAN ID Multicast IP Control Plane Controller Connection Port Count MAC Entry Count ARP Entry Count -------- ------------------------- ----------------------------------- --------------------- ---------- --------------- --------------- 5004 N/A (headend replication) Enabled (multicast proxy,ARP proxy) 192.168.110.201 (up) 2 2 0 5005 N/A (headend replication) Enabled (multicast proxy,ARP proxy) 192.168.110.202 (up) 1 0 0 5006 N/A (headend replication) Enabled (multicast proxy,ARP proxy) 192.168.110.203 (up) 1 1 0 5007 N/A (headend replication) Enabled (multicast proxy,ARP proxy) 192.168.110.202 (up) 1 0 0
각 관련 VXLAN에 대해 다음을 확인합니다.
- 하이브리드 또는 유니캐스트 모드인 논리적 스위치의 경우:
- 제어부가 "사용"으로 설정되어 있습니다.
- “멀티캐스트 프록시” 및 “ARP 프록시”가 나열됩니다. “ARP 프록시”는 IP 검색을 사용하지 않도록 설정한 경우에도 표시됩니다.
- 유효한 컨트롤러 IP 주소가 "컨트롤러" 아래에 나열되고 "연결"은 "실행" 상태입니다.
- “포트 수”는 맞는 것처럼 보입니다. 문제의 논리적 스위치에 연결된 해당 호스트에 VM이 없더라도 포트 수는 1 이상입니다. 이 포트는 ESXi 호스트의 DLR 커널 모듈에 연결된 특수한 dvPort인 vdrPort입니다.
- 다음 명령을 실행하여 vdrPort가 관련 VXLAN 각각에 연결되어 있는지 확인합니다.
~ # esxcli network vswitch dvs vmware vxlan network port list --vds-name=Compute_VDS --vxlan-id=5004 Switch Port ID VDS Port ID VMKNIC ID -------------- ----------- --------- 50331656 53 0 50331650 vdrPort 0 ~ # esxcli network vswitch dvs vmware vxlan network port list --vds-name=Compute_VDS --vxlan-id=5005 Switch Port ID VDS Port ID VMKNIC ID -------------- ----------- --------- 50331650 vdrPort 0
- 위 예에서 VXLAN 5004에는 하나의 VM 및 하나의 DLR 연결이 있지만 VXLAN 5005에는 DLR 연결만 있습니다.
- 해당 VM이 해당 VXLAN에 제대로 연결되어 있는지 확인합니다(예: VXLAN 5004의 web-sv-01a).
~ # esxcfg-vswitch -l DVS Name Num Ports Used Ports Configured Ports MTU Uplinks Compute_VDS 1536 10 512 1600 vmnic0 DVPort ID In Use Client [..skipped..] 53 1 web-sv-01a.eth0
VXLAN 준비 점검
ESXi 호스트에 대한 VXLAN 구성의 일부로 DLR 커널 모듈도 VXLAN용으로 준비된 DVS의 dvPort에 설치되고, 구성되고, 연결됩니다.
- show cluster all을 실행하여 클러스터 ID를 가져옵니다.
- show cluster cluster-id를 실행하여 호스트 ID를 가져옵니다.
- show logical-router host hostID connection를 실행하여 상태 정보를 가져옵니다.
nsxmgr-01a# show logical-router host <hostID> connection
Connection Information:
-----------------------
DvsName VdrPort NumLifs VdrVmac
------- ------- ------- -------
Compute_VDS vdrPort 4 02:50:56:56:44:52
Teaming Policy: Default Teaming
Uplink : dvUplink1(50331650): 00:50:56:eb:41:d7(Team member)
Stats : Pkt Dropped Pkt Replaced Pkt Skipped
Input : 0 0 1968734458
Output : 303 7799 31891126
- VXLAN이 사용하도록 설정된 DVS에 하나의 vdrPort가 생성되며 해당 ESXi 호스트의 모든 DLR 인스턴스에서 공유됩니다.
- “NumLifs”는 이 호스트에 존재하는 모든 DLR 인스턴스의 LIF 합계를 나타냅니다.
- “VdrVmac”는 DLR이 모든 인스턴스의 모든 LIF에서 사용하는 vMAC입니다. 이 MAC는 모든 호스트에서 동일합니다. ESXi 호스트 외부의 물리적 네트워크를 이동하는 프레임에서는 확인되지 않습니다.
- LACP/Etherchannel 팀 구성 모드가 사용되어, dvUplink 수와 관계없이 VTEP가 1개만 생성되는 경우를 제외하고, VXLAN이 사용하도록 설정된 DVS의 각 dvUplink에 대해 일치하는 VTEP가 있습니다.
- 호스트를 나갈 때 DLR이 전송하는 트래픽(SRC MAC = vMAC)의 경우 SRC MAC가 해당 dvUplink의 pMAC로 변경됩니다.
- 원래 VM의 소스 포트 또는 소스 MAC는 dvUplink를 확인하는 데 사용됩니다(DVS의 메타데이터에 있는 각 패킷에 대해 보존됨).
- 호스트에 여러 VTEP가 있고 dvUplink 중 하나가 실패할 경우 실패한 dvUplink와 연결된 VTEP는 해당 VTEP에 고정된 모든 VM과 함께 남은 dvUplink 중 하나로 이동됩니다. 이 작업은 다른 VTEP로 VM을 이동할 때 발생하는 제어부 변경 내용이 너무 많아지지 않도록 하기 위해 수행됩니다.
- 각 “dvUplinkX” 옆의 “()”에 있는 숫자는 dvPort 번호입니다. 개별 업링크의 패킷 캡처에 유용합니다.
- 각 “dvUplinkX”에 대해 표시되는 MAC 주소는 해당 dvUplink와 연결된 “pMAC”입니다. 이 MAC 주소는 DLR에서 시작된 트래픽(예: DLR에서 생성된 ARP 쿼리 및 이러한 패킷이 ESXi 호스트를 나갈 때 DLR에서 라우팅한 모든 패킷)에 사용됩니다. 이 MAC 주소는 물리적 네트워크에서 볼 수 있습니다(DLR LIF가 VLAN 유형인 경우 직접 또는 VXLAN LIF의 경우 VXLAN 패킷 내부에서).
- [Pkt Dropped], [Replaced], [Skipped]는 DLR의 내부 구현 세부 정보와 관련된 카운터를 나타내며, 일반적으로 문제 해결이나 모니터링에는 사용되지 않습니다.