호스트의 DLR(논리적 분산 라우터) 커널 모듈은 VXLAN 네트워크 간 그리고 가상 네트워크와 물리적 네트워크 간에 라우팅을 수행합니다. NSX Edge Appliance는 필요한 경우 동적 라우팅 기능을 제공합니다. 논리적 분산 라우터는 크로스 vCenter NSX 환경의 기본 및 보조 NSX Manager 모두에서 생성할 수 있지만 범용 논리적 분산 라우터는 기본 NSX Manager에서만 생성할 수 있습니다.
- NSX Data Center for vSphere 6.2 이상에서는 논리적 라우터로 라우팅된 논리적 인터페이스(LIF)를 VLAN에 브리징되는 VXLAN에 연결할 수 있습니다.
- VLAN ID를 0으로 설정한 상태에서 논리적 라우터 인터페이스와 브리징 인터페이스를 dvPortgroup에 연결할 수 없습니다.
- 지정한 논리적 라우터 인스턴스는 다른 전송 영역에 있는 논리적 스위치에 연결할 수 없습니다. 이를 통해 모든 논리적 스위치와 논리적 라우터 인스턴스가 정렬됩니다.
- 논리적 라우터가 둘 이상의 VDS(vSphere Distributed Switch)에 걸쳐 있는 논리적 스위치에 연결된 경우 VLAN 지원 포트 그룹에 연결할 수 없습니다. 따라서 논리적 라우터 인스턴스가 여러 호스트에 있는 논리적 스위치 dvPortgroups에 올바르게 맞춰질 수 있습니다.
- 두 개의 네트워크가 동일한 vSphere Distributed Switch에 있는 경우 동일한 VLAN ID를 가진 두 개의 다른 분산 포트 그룹(dvPortgroups)에서 논리적 라우터 인터페이스를 생성하면 안 됩니다.
- 두 개의 네트워크가 다른 vSphere Distributed Switch에 있지만 두 개의 vSphere Distributed Switch가 동일한 호스트를 공유할 경우 동일한 VLAN ID를 가진 두 개의 다른 dvPortgroups에서 논리적 라우터 인터페이스를 생성하면 안 됩니다. 즉 두 개의 dvPortgroups이 두 개의 다른 vSphere Distributed Switch에 있는 경우 vSphere Distributed Switch가 호스트를 공유하지 않는 한 동일한 VLAN ID를 가진 두 개의 다른 네트워크에서 논리적 라우터 인터페이스를 생성할 수 있습니다.
- VXLAN이 구성된 경우, 논리적 라우터 인터페이스를 vSphere VXLAN이 구성된 vSphere Distributed Switch의 분산 포트 그룹에 연결해야 합니다. 논리적 라우터 인터페이스를 다른 vSphere Distributed Switch의 포트 그룹에 연결하지 마십시오.
- 동적 라우팅 프로토콜(BGP 및 OSPF)은 업링크 인터페이스에서만 지원됩니다.
- 방화벽 규칙은 업링크 인터페이스에서만 적용 가능하고 Edge 가상 장치로 전송되는 제어 및 관리 트래픽으로 제한됩니다.
- DLR 관리 인터페이스에 대한 자세한 내용은 기술 자료 문서 "관리 인터페이스 가이드: DLR 제어 VM - NSX" http://kb.vmware.com/kb/2122060을 참조하십시오.
크로스 vCenter NSX 환경에서 NSX Edge에 대해 고가용성을 사용하도록 설정하는 경우 활성 및 대기 NSX Edge Appliance가 동일한 vCenter Server에 상주해야 합니다. NSX Edge HA 쌍의 장치 중 하나를 다른 vCenter Server로 마이그레이션하면 두 HA 장치가 더 이상 HA 쌍으로 작동하지 않으며 트래픽 중단이 발생할 수 있습니다.
사전 요구 사항
- 엔터프라이즈 관리자 또는 NSX 관리자 역할을 할당받아야 합니다.
- 논리적 스위치를 생성할 계획이 없어도 로컬 세그먼트 ID 풀을 생성해야 합니다.
- 논리적 라우터 구성을 생성하거나 변경하기 전에 컨트롤러 클러스터가 최신 상태이고 사용 가능한지 확인하십시오. 논리적 라우터는 NSX Controller를 사용하지 않으면 라우팅 정보를 호스트에 배포할 수 없습니다. 논리적 라우터는 NSX Controller를 사용하여 작동하는 반면, ESG(Edge Services Gateway)는 NSX Controller를 사용하지 않습니다.
- 논리적 라우터가 VLAN dvPortgroup에 연결될 경우 논리적 라우터 장치가 설치된 모든 하이퍼바이저 호스트가 UDP 포트 6999에서 서로 연결할 수 있는지 확인하십시오. 논리적 라우터 VLAN 기반 ARP 프록시가 작동하려면 이 포트에서 통신할 수 있어야 합니다.
- 논리적 라우터 장치를 배포할 위치를 확인합니다.
- 대상 호스트는 새 논리적 라우터의 인터페이스에 연결된 논리적 스위치와 동일한 전송 영역에 속해야 합니다.
- ECMP 설정에서 ESG를 사용하는 경우 하나 이상의 업스트림 ESG와 동일한 호스트에 배치하지 않도록 합니다. DRS 반선호도 규칙을 사용하여 이 사례를 적용함으로써 논리적 라우터 전달에 대한 호스트 실패의 영향을 줄일 수 있습니다. 업스트림 ESG가 하나 있거나 HA 모드인 경우 이 지침이 적용되지 않습니다. 자세한 내용은 https://communities.vmware.com/docs/DOC-27683의 "NSX 네트워크 가상화 설계 가이드" 를 참조하십시오.
- 논리적 라우터 장치를 설치하는 호스트 클러스터에서 NSX Data Center for vSphere가 준비되었는지 확인하십시오. "NSX 설치 가이드" 에서 "NSX에 대한 호스트 클러스터 준비"를 참조하십시오.
-
변경할 적합한 NSX Manager를 결정합니다.
- 독립 실행형 또는 단일 vCenter NSX 환경에는 NSX Manager가 하나만 있기 때문에 선택할 필요가 없습니다.
- 범용 개체는 기본 NSX Manager에서 관리해야 합니다.
- NSX Manager에 로컬인 개체는 NSX Manager에서 관리해야 합니다.
- 고급 연결 모드가 사용되도록 설정되지 않은 크로스 vCenter NSX 환경에서는 수정하려는 NSX Manager에 연결된 vCenter에서 구성을 변경해야 합니다.
- 고급 연결 모드의 크로스 vCenter NSX 환경에서는 모든 연결된 vCenter에서 원하는 NSX Manager의 구성을 변경할 수 있습니다. NSX Manager 드롭다운 메뉴에서 적절한 NSX Manager를 선택합니다.
- 추가하려는 논리적 라우터 종류를 결정합니다.
- 논리적 스위치를 연결하려면 논리적 라우터를 추가합니다.
- 범용 논리적 스위치를 연결하려면 범용 논리적 라우터를 추가합니다.
- 범용 논리적 라우터를 추가하는 경우 로컬 송신을 사용하도록 설정할지 여부를 결정합니다. 로컬 송신을 사용하면 호스트 경로를 선택적으로 전송할 수 있습니다. 이 기능은 NSX 배포가 여러 사이트에서 사용되는 경우에 필요할 수 있습니다. 자세한 내용은 크로스 vCenter NSX 토폴로지 항목을 참조하십시오. 범용 로컬 라우터가 생성된 후에는 로컬 송신을 수정할 수 없습니다.
프로시저
결과
다음 예제 토폴로지에서 App VM의 기본 게이트웨이는 172.16.20.1이과 웹 VM의 기본 게이트웨이는 172.16.10.1입니다. VM이 해당 기본 게이트웨이 및 서로를 Ping할 수 있는지 확인하십시오.
-
모든 논리적 라우터 인스턴스 정보를 나열합니다.
nsxmgr-l-01a> show logical-router list all Edge-id Vdr Name Vdr id #Lifs edge-1 default+edge-1 0x00001388 3
-
컨트롤러 클러스터에서 논리적 라우터에 대한 라우팅 정보를 수신한 호스트를 나열합니다.
nsxmgr-l-01a> show logical-router list dlr edge-1 host ID HostName host-25 192.168.210.52 host-26 192.168.210.53 host-24 192.168.110.53
지정한 논리적 라우터(이 예제에서는 edge-1)에 연결된 논리적 스위치를 소유하는 전송 영역의 멤버로 구성된 모든 호스트 클러스터의 모든 호스트가 출력에 포함됩니다.
-
논리적 라우터가 호스트에 전달하는 라우팅 테이블 정보를 나열합니다. 모든 호스트에서 라우팅 테이블 항목이 일치해야 합니다.
nsx-mgr-l-01a> show logical-router host host-25 dlr edge-1 route VDR default+edge-1 Route Table Legend: [U: Up], [G: Gateway], [C: Connected], [I: Interface] Legend: [H: Host], [F: Soft Flush] [!: Reject] [E: ECMP] Destination GenMask Gateway Flags Ref Origin UpTime Interface ----------- ------- ------- ----- --- ------ ------ --------- 0.0.0.0 0.0.0.0 192.168.10.1 UG 1 AUTO 4101 138800000002 172.16.10.0 255.255.255.0 0.0.0.0 UCI 1 MANUAL 10195 13880000000b 172.16.20.0 255.255.255.0 0.0.0.0 UCI 1 MANUAL 10196 13880000000a 192.168.10.0 255.255.255.248 0.0.0.0 UCI 1 MANUAL 10196 138800000002 192.168.100.0 255.255.255.0 192.168.10.1 UG 1 AUTO 3802 138800000002
-
호스트 중 하나의 관점에서 라우터에 대한 추가 정보를 나열합니다. 이 출력은 호스트와 통신하고 있는 컨트롤러를 확인하는 데 유용합니다.
nsx-mgr-l-01a> show logical-router host host-25 dlr edge-1 verbose VDR Instance Information : --------------------------- Vdr Name: default+edge-1 Vdr Id: 0x00001388 Number of Lifs: 3 Number of Routes: 5 State: Enabled Controller IP: 192.168.110.203 Control Plane IP: 192.168.210.52 Control Plane Active: Yes Num unique nexthops: 1 Generation Number: 0 Edge Active: No
show logical-router host host-25 dlr edge-1 verbose 명령의 출력에서 컨트롤러 IP 필드를 확인합니다.
-
192.168.110.202 # show control-cluster logical-switches vni 5000 VNI Controller BUM-Replication ARP-Proxy Connections 5000 192.168.110.201 Enabled Enabled 0
VNI 5000에 대한 출력에서 제로 연결을 표시하고 컨트롤러 192.168.110.201을 VNI 5000의 소유자로 나열합니다. 해당 컨트롤러에 로그인하여 VNI 5000에 대한 추가 정보를 수집합니다.192.168.110.201 # show control-cluster logical-switches vni 5000 VNI Controller BUM-Replication ARP-Proxy Connections 5000 192.168.110.201 Enabled Enabled 3
192.168.110.201에 대한 출력에서 세 개 연결을 표시합니다. 추가 VNI를 확인합니다.192.168.110.201 # show control-cluster logical-switches vni 5001 VNI Controller BUM-Replication ARP-Proxy Connections 5001 192.168.110.201 Enabled Enabled 3
192.168.110.201 # show control-cluster logical-switches vni 5002 VNI Controller BUM-Replication ARP-Proxy Connections 5002 192.168.110.201 Enabled Enabled 3
192.168.110.201에서 3개의 VNI 연결을 모두 소유하기 때문에 다른 컨트롤러 192.168.110.203에서 연결이 표시되지 않을 것입니다.192.168.110.203 # show control-cluster logical-switches vni 5000 VNI Controller BUM-Replication ARP-Proxy Connections 5000 192.168.110.201 Enabled Enabled 0
- MAC 및 ARP 테이블을 확인하기 전에 하나의 VM에서 다른 VM으로 ping합니다.
App VM에서 웹 VM으로:
vmware@app-vm$ ping 172.16.10.10 PING 172.16.10.10 (172.16.10.10) 56(84) bytes of data. 64 bytes from 172.16.10.10: icmp_req=1 ttl=64 time=2.605 ms 64 bytes from 172.16.10.10: icmp_req=2 ttl=64 time=1.490 ms 64 bytes from 172.16.10.10: icmp_req=3 ttl=64 time=2.422 ms
MAC 테이블을 확인합니다.192.168.110.201 # show control-cluster logical-switches mac-table 5000 VNI MAC VTEP-IP Connection-ID 5000 00:50:56:a6:23:ae 192.168.250.52 7
192.168.110.201 # show control-cluster logical-switches mac-table 5001 VNI MAC VTEP-IP Connection-ID 5001 00:50:56:a6:8d:72 192.168.250.51 23
ARP 테이블을 확인합니다.192.168.110.201 # show control-cluster logical-switches arp-table 5000 VNI IP MAC Connection-ID 5000 172.16.20.10 00:50:56:a6:23:ae 7
192.168.110.201 # show control-cluster logical-switches arp-table 5001 VNI IP MAC Connection-ID 5001 172.16.10.10 00:50:56:a6:8d:72 23
논리적 라우터 정보를 확인합니다. 각 논리적 라우터 인스턴스를 컨트롤러 노드 중 하나가 사용합니다.
show control-cluster logical-routers 명령의 instance 하위 명령에서 이 컨트롤러에 연결된 논리적 라우터 목록을 표시합니다.
interface-summary 하위 명령에서 컨트롤러가 NSX Manager에서 확인한 LIF를 표시합니다. 전송 영역에서 관리되는 호스트 클러스터에 있는 호스트로 이 정보가 전송됩니다.
-
이 컨트롤러에 연결된 모든 논리적 라우터를 나열합니다.
controller # show control-cluster logical-routers instance all LR-Id LR-Name Universal Service-Controller Egress-Locale 0x1388 default+edge-1 false 192.168.110.201 local
LR-Id를 기록하고 이를 다음 명령에서 사용하십시오.
-
controller # show control-cluster logical-routers interface-summary 0x1388 Interface Type Id IP[] 13880000000b vxlan 0x1389 172.16.10.1/24 13880000000a vxlan 0x1388 172.16.20.1/24 138800000002 vxlan 0x138a 192.168.10.2/29
-
controller # show control-cluster logical-routers routes 0x1388 Destination Next-Hop[] Preference Locale-Id Source 192.168.100.0/24 192.168.10.1 110 00000000-0000-0000-0000-000000000000 CONTROL_VM 0.0.0.0/0 192.168.10.1 0 00000000-0000-0000-0000-000000000000 CONTROL_VM
[root@comp02a:~] esxcfg-route -l VMkernel Routes: Network Netmask Gateway Interface 10.20.20.0 255.255.255.0 Local Subnet vmk1 192.168.210.0 255.255.255.0 Local Subnet vmk0 default 0.0.0.0 192.168.210.1 vmk0
- 특정 VNI에 대한 컨트롤러 연결을 표시합니다.
192.168.110.203 # show control-cluster logical-switches connection-table 5000 Host-IP Port ID 192.168.110.53 26167 4 192.168.210.52 27645 5 192.168.210.53 40895 6
192.168.110.202 # show control-cluster logical-switches connection-table 5001 Host-IP Port ID 192.168.110.53 26167 4 192.168.210.52 27645 5 192.168.210.53 40895 6
이 호스트-IP 주소는 VTEP가 아니라 vmk0 인터페이스입니다. ESXi 호스트와 컨트롤러 간의 연결이 관리 네트워크에 생성됩니다. 여기서 포트 번호는 호스트가 컨트롤러와 연결을 설정할 때 ESXi 호스트 IP 스택에서 할당하는 사용 후 삭제 TCP 포트입니다.
-
호스트에서 포트 번호와 일치하는 컨트롤러 네트워크 연결을 확인할 수 있습니다.
[[email protected]:~] #esxcli network ip connection list | grep 26167 tcp 0 0 192.168.110.53:26167 192.168.110.101:1234 ESTABLISHED 96416 newreno netcpa-worker
-
호스트의 활성 VNI를 표시합니다. 호스트에서 출력이 어떻게 다른지 관찰합니다. 모든 VNI가 모든 호스트에서 활성화되어 있는 것은 아닙니다. 논리적 스위치에 연결된 VM이 호스트에 있는 경우 VNI가 호스트에서 활성화되어 있습니다.
[[email protected]:~] # 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 VTEP Count -------- ------------------------- ----------------------------------- --------------------- ---------- --------------- --------------- ---------- 5000 N/A (headend replication) Enabled (multicast proxy,ARP proxy) 192.168.110.203 (up) 1 0 0 0 5001 N/A (headend replication) Enabled (multicast proxy,ARP proxy) 192.168.110.202 (up) 1 0 0 0
참고: vSphere 6.0 이상에서 vxlan 네임스페이스를 사용하도록 설정하려면 /etc/init.d/hostd restart 명령을 실행하십시오.하이브리드 모드나 유니캐스트 모드에 있는 논리적 스위치의 경우 esxcli network vswitch dvs vmware vxlan network list --vds-name <vds-name> 명령에 다음 출력이 포함됩니다.
- 제어부는 사용하도록 설정되어 있습니다.
- 멀티캐스트 프록시 및 ARP 프록시가 나열됩니다. IP 검색을 사용하지 않도록 설정한 경우에도 AARP 프록시가 나열됩니다.
- 유효한 컨트롤러 IP 주소가 나열되고 연결이 실행 중입니다.
- 논리적 라우터가 ESXi 호스트에 연결된 경우 논리적 스위치에 연결된 호스트에 VM이 없더라도 포트 수는 최소 1입니다. 이 포트는 ESXi 호스트의 논리적 라우터 커널 모듈에 연결된 특수한 dvPort인 vdrPort입니다.
-
먼저 VM에서 다른 서브넷의 다른 VM으로 Ping한 다음, MAC 테이블을 표시합니다. 내부 MAC은 VM 항목이고, 외부 MAC과 외부 IP는 VTEP를 참조합니다.
~ # esxcli network vswitch dvs vmware vxlan network mac list --vds-name=Compute_VDS --vxlan-id=5000 Inner MAC Outer MAC Outer IP Flags ----------------- ----------------- -------------- -------- 00:50:56:a6:23:ae 00:50:56:6a:65:c2 192.168.250.52 00000111
~ # esxcli network vswitch dvs vmware vxlan network mac list --vds-name=Compute_VDS --vxlan-id=5001 Inner MAC Outer MAC Outer IP Flags ----------------- ----------------- -------------- -------- 02:50:56:56:44:52 00:50:56:6a:65:c2 192.168.250.52 00000101 00:50:56:f0:d7:e4 00:50:56:6a:65:c2 192.168.250.52 00000111
다음에 수행할 작업
NSX Edge Appliance를 설치할 때 vSphere HA가 클러스터에서 사용하지 않도록 설정되어 있으면 NSX는 호스트에서 자동 VM 시작/종료를 사용하도록 설정합니다. 장치 VM이 나중에 클러스터의 다른 호스트로 마이그레이션되는 경우 새 호스트가 자동 VM 시작/종료를 사용하도록 설정하지 않을 수도 있습니다. 이러한 이유로 vSphere HA가 사용하지 않도록 설정된 클러스터에서 NSX Edge Appliance를 설치할 때는 클러스터의 모든 호스트를 점검하여 자동 VM 시작/종료가 사용하도록 설정되어 있는지 확인해야 합니다. "vSphere 가상 시스템 관리" 에서 "가상 시스템 시작 및 종료 설정 편집"을 참조하십시오.
논리적 라우터가 배포된 후 논리적 라우터 ID를 두 번 클릭하여 인터페이스, 라우팅, 방화벽, 브리징 및 DHCP 릴레이 같은 추가 설정을 구성합니다.