호스트의 논리적 라우터 커널 모듈은 VXLAN 네트워크 간 그리고 가상 네트워크와 물리적 네트워크 간에 라우팅을 수행합니다. NSX Edge 장치는 필요에 따라 동적 라우팅 기능을 제공합니다. 논리적 라우터는 크로스 vCenter NSX 환경의 기본 및 보조 NSX Manager 모두에서 생성할 수 없지만 범용 논리적 라우터는 기본 NSX Manager에서만 생성할 수 있습니다.

시작하기 전에

  • 엔터프라이즈 관리자 또는 NSX 관리자 역할을 할당받아야 합니다.

  • 논리적 라우터를 설치하려면 작동 중인 컨트롤러 클러스터가 운영 환경에 있어야 합니다.

  • NSX 논리적 스위치를 생성할 계획이 없어도 로컬 세그먼트 ID 풀을 생성해야 합니다.

  • 논리적 라우터는 NSX Controller를 사용하지 않으면 라우팅 정보를 호스트에 배포할 수 없습니다. 논리적 라우터는 NSX Controller를 사용하여 작동하는 반면, ESG(Edge Services Gateway)는 NSX Controller를 사용하지 않습니다. 논리적 라우터 구성을 생성하거나 변경하기 전에 컨트롤러 클러스터가 최신 상태이고 사용 가능한지 확인하십시오.

  • 논리적 라우터가 VLAN dvPortgroup에 연결될 경우 논리적 라우터 장치가 설치된 모든 하이퍼바이저 호스트가 UDP 포트 6999에서 서로 연결할 수 있는지 확인하십시오. 그래야 논리적 라우터 VLAN 기반 ARP 프록시가 작동합니다.

  • VLAN ID를 0으로 설정한 상태에서 논리적 라우터 인터페이스와 브리징 인터페이스를 dvPortgroup에 연결할 수 없습니다.

  • 지정한 논리적 라우터 인스턴스는 다른 전송 영역에 있는 논리적 스위치에 연결할 수 없습니다. 이를 통해 모든 논리적 스위치와 논리적 라우터 인스턴스가 정렬됩니다.

  • 논리적 라우터가 둘 이상의 VDS(vSphere Distributed Switch)에 걸친 논리적 스위치에 연결된 경우 논리적 라우터를 VLAN 지원 포트 그룹에 연결할 수 없습니다. 이를 통해 호스트에서 논리적 라우터 인스턴스를 논리적 스위치 dvPortgroup과 올바로 정렬할 수 있습니다.

  • 두 개의 네트워크가 동일한 vSphere Distributed Switch에 있는 경우 동일한 VLAN ID를 가진 두 개의 다른 분산 포트 그룹(dvPortgroups)에서 논리적 라우터 인터페이스를 생성하면 안 됩니다.

  • 두 개의 네트워크가 다른 vSphere Distributed Switch에 있지만 두 개의 vSphere Distributed Switch가 동일한 호스트를 공유할 경우 동일한 VLAN ID를 가진 두 개의 다른 dvPortgroups에서 논리적 라우터 인터페이스를 생성하면 안 됩니다. 즉 두 개의 dvPortgroups이 두 개의 다른 vSphere Distributed Switch에 있는 경우 vSphere Distributed Switch가 호스트를 공유하지 않는 한 동일한 VLAN ID를 가진 두 개의 다른 네트워크에서 논리적 라우터 인터페이스를 생성할 수 있습니다.

  • NSX 버전 6.0 및 6.1과 달리, NSX 버전 6.2에서는 논리적 라우터로 라우팅된 논리적 인터페이스(LIF)를 VLAN에 브리징되는 VXLAN에 연결할 수 있습니다.

  • 논리적 라우터 가상 장치의 배치를 선택할 때 ECMP 설치에서 ESG를 사용할 경우 해당 업스트림 ESG 중 하나 이상과 동일한 호스트에 배치하지 마십시오. DRS 반선호도 규칙을 사용하여 이를 적용함으로써 논리적 라우터 전달에 대한 호스트 실패의 영향을 줄일 수 있습니다. 업스트림 ESG가 하나 있거나 HA 모드인 경우 이 지침이 적용되지 않습니다. 자세한 내용은 https://communities.vmware.com/docs/DOC-27683에 있는 VMware NSX for vSphere 네트워크 가상화 설계 가이드를 참조하십시오.

이 태스크 정보

다음 목록에서는 논리적 라우터의 인터페이스 유형(업링크 및 내부)별로 지원되는 기능을 설명합니다.

  • 동적 라우팅 프로토콜(BGP 및 OSPF)은 업링크 인터페이스에서만 지원됩니다.

  • 방화벽 규칙은 업링크 인터페이스에서만 적용 가능하고 Edge 가상 장치로 전송되는 제어 및 관리 트래픽으로 제한됩니다.

  • DLR 관리 인터페이스에 대한 자세한 내용은 기술 자료 문서, 논리적 분산 라우터 제어 VM의 관리 인터페이스에 대한 고려 사항, http://kb.vmware.com/kb/2122060을 참조하십시오.

프로시저

  1. vSphere Web Client에서 홈 > Networking & Security > NSX Edge(Home > Networking & Security > NSX Edges)로 이동합니다.
  2. 추가(Add)(추가) 아이콘을 클릭합니다.
  3. 논리적 (분산) 라우터(Logical (Distributed) Router)를 선택하고 디바이스 이름을 입력합니다.

    이 이름은 vCenter 인벤토리에 나타납니다. 이 이름은 단일 테넌트 내의 모든 논리적 라우터에서 고유해야 합니다.

    필요한 경우 호스트 이름을 입력할 수도 있습니다. 이 이름이 CLI에 표시됩니다. 호스트 이름을 지정하지 않으면 자동으로 생성되는 Edge ID가 CLI에 표시됩니다.

    필요한 경우 설명과 테넌트를 입력할 수 있습니다.

    예:

  4. (선택 사항) : Edge Appliance를 배포합니다.

    [Edge Appliance 배포]가 기본적으로 선택됩니다. 논리적 라우터 ping, SSH 액세스 및 동적 라우팅 트래픽에 적용되는 동적 라우팅 및 논리적 라우터 장치의 방화벽에는 Edge Appliance(논리적 라우터 가상 장치라고도 함)가 필요합니다.

    정적 경로만 필요하고 Edge Appliance를 배포하지 않을 경우 Edge Appliance 옵션을 선택 취소할 수 있습니다. 논리적 라우터를 생성한 후 Edge Appliance를 논리적 라우터에 추가할 수 없습니다.

  5. (선택 사항) : 고가용성을 사용하도록 설정합니다.

    [고가용성 사용]은 기본적으로 선택되어 있지 않습니다. 고가용성을 사용하도록 설정하고 구성하려면 [고가용성 사용] 확인란을 선택합니다. 동적 라우팅 수행을 계획하는 경우 고가용성이 필요합니다.

  6. 논리적 라우터의 암호를 입력하고 다시 입력합니다.

    암호는 12 ~ 255자여야 하고 다음을 포함해야 합니다.

    • 하나 이상의 대문자

    • 하나 이상의 소문자

    • 하나 이상의 숫자

    • 하나 이상의 특수 문자

  7. (선택 사항) : SSH를 사용하도록 설정하고 로그 수준을 설정합니다.

    기본적으로 SSH는 사용하지 않도록 설정되어 있습니다. SSH를 사용하도록 설정하지 않은 경우 가상 장치 콘솔을 열어서 논리적 라우터에 액세스할 수 있습니다. 여기서 SSH를 사용하도록 설정하면 SSH 프로세스가 논리적 라우터 가상 장치에서 실행되지만, SSH가 논리적 라우터의 프로토콜 주소에 액세스할 수 있도록 논리적 라우터 방화벽 구성을 수동으로 조정해야 합니다. 논리적 라우터에서 동적 라우팅을 구성할 때 프로토콜 주소가 구성됩니다.

    기본적으로 로그 수준은 긴급입니다.

    예:

  8. 배포를 구성합니다.
    • NSX Edge 배포(Deploy NSX Edge)를 선택하지 않은 경우 추가(Add) (추가) 아이콘이 회색으로 표시됩니다. 구성을 계속하려면 다음(Next)을 클릭합니다.

    • NSX Edge 배포(Deploy NSX Edge)를 선택한 경우 vCenter 인벤토리에 추가되는 논리적 라우터 가상 장치에 대한 설정을 입력합니다.

    예:

  9. 인터페이스를 구성합니다.

    논리적 라우터에서는 IPv4 주소 지정만 지원됩니다.

    NSX Edge 배포(Deploy NSX Edge)를 선택한 경우에는 [HA 인터페이스 구성]에서 인터페이스를 분산 포트 그룹에 연결해야 합니다. HA 인터페이스에 대해서는 VXLAN 논리적 스위치를 사용하는 것이 좋습니다. 2개의 NSX Edge 장치 각각의 IP 주소가 링크 로컬 주소 공간 169.250.0.0/16에서 선택됩니다. HA 서비스에 대한 추가 구성은 필요하지 않습니다.

    참고:

    NSX의 이전 릴리스에서는 HA 인터페이스를 관리 인터페이스라고 했습니다. 논리적 라우터에 대한 원격 액세스에는 HA 인터페이스가 지원되지 않습니다. HA 인터페이스와 동일한 IP 서브넷에 없는 모든 위치에서 HA 인터페이스로 SSH할 수 없습니다. HA 인터페이스를 가리키는 정적 경로를 구성할 수 없으므로, RPF가 들어오는 트래픽을 삭제하게 됩니다. 이론상 RPF를 사용하지 않도록 설정할 수 있지만 이런 경우 고가용성에는 역효과를 낼 수 있습니다. SSH의 경우 동적 라우팅을 구성할 때 나중에 구성되는 논리적 라우터의 프로토콜 주소를 사용하십시오.

    NSX 6.2에서는 논리적 라우터의 HA 인터페이스가 경로 재배포에서 자동으로 제외됩니다.

    이 NSX Edge의 인터페이스 구성(Configure interfaces of this NSX Edge)에서 내부 인터페이스는 VM 대 VM 통신(때로 동-서 통신이라고도 함)을 허용하는 스위치에 연결하기 위한 것입니다. 논리적 라우터 가상 장치에서 내부 인터페이스가 유사 vNIC로 생성됩니다. 업링크 인터페이스는 북-남 통신용입니다. 논리적 라우터 업링크 인터페이스는 NSX Edge Services Gateway, 해당 용도의 타사 라우터 VM 또는 VLAN 지원 dvPortgroup에 연결하여 논리적 라우터가 물리적 라우터에 직접 연결하도록 할 수 있습니다. 동적 라우팅이 작동하려면 업링크 인터페이스가 하나 이상 있어야 합니다. 논리적 라우터 가상 장치에서 업링크 인터페이스가 vNIC로 생성됩니다.

    여기서 입력하는 인터페이스 구성을 나중에 수정할 수 있습니다. 논리적 라우터가 배포된 후 인터페이스를 추가, 제거 및 수정할 수 있습니다.

    다음 예제에서는 관리 분산 포트 그룹에 연결된 HA 인터페이스를 보여줍니다. 또한 2개의 내부 인터페이스(app 및 web)와 업링크 인터페이스(to-ESG)를 보여줍니다.

  10. 기본 게이트웨이를 구성합니다.

    예:

  11. 논리적 스위치에 연결된 VM의 기본 게이트웨이가 논리적 라우터 인터페이스 IP 주소로 올바로 설정되어 있는지 확인하십시오.

결과

다음 예제 토폴로지에서 App VM의 기본 게이트웨이는 172.16.20.1이어야 합니다. 웹 VM의 기본 게이트웨이는 172.16.10.1이어야 합니다. VM이 해당 기본 게이트웨이 및 서로를 Ping할 수 있는지 확인하십시오.

SSH를 통해 NSX Manager에 로그인하고 다음 명령을 실행하십시오.

  • 모든 논리적 라우터 인스턴스 정보를 나열합니다.

    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 필드를 확인합니다.

컨트롤러에 SSH하고, 다음 명령을 실행하여 컨트롤러의 확인된 VNI, VTEP, MAC 및 ARP 테이블 상태 정보를 표시합니다.

  • 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으로:

    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를 표시합니다. 전송 영역에서 관리되는 호스트 클러스터에 있는 호스트로 이 정보가 전송됩니다.

routes 하위 명령에서 논리적 라우터의 가상 장치(컨트롤 VM이라고도 함)가 이 컨트롤러에 전송한 라우팅 테이블을 표시합니다. ESXi 호스트에서와 달리 이 라우팅 테이블에는 직접 연결된 서브넷은 포함되지 않습니다. 이 정보는 LIF 구성에서 제공하기 때문입니다. ESXi 호스트에 대한 경로 정보에는 직접 연결된 서브넷이 포함됩니다. 이 경우 ESXi 호스트의 데이터 경로에서 사용한 전달 테이블이기 때문입니다.

  • 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 포트입니다.

  • 호스트에서 포트 번호와 일치하는 컨트롤러 네트워크 연결을 확인할 수 있습니다.

    [root@192.168.110.53:~] #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가 호스트에서 활성화되어 있습니다.

    [root@192.168.210.52:~] # 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 이상에서 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 장치가 먼저 배포된 호스트에서는 NSX가 자동 VM 시작/종료를 사용하도록 설정합니다. 장치 VM이 나중에 다른 호스트로 마이그레이션되는 경우 새 호스트가 자동 VM 시작/종료를 사용하도록 설정하지 않을 수도 있습니다. 따라서 클러스터의 모든 호스트에서 자동 VM 시작/종료가 사용되도록 설정되었는지 확인하는 것이 좋습니다. http://pubs.vmware.com/vsphere-60/index.jsp?topic=%2Fcom.vmware.vsphere.vm_admin.doc%2FGUID-5FE08AC7-4486-438E-AF88-80D6C7928810.html을 참조하십시오.

논리적 라우터가 배포된 후 논리적 라우터 ID를 두 번 클릭하여 인터페이스, 라우팅, 방화벽, 브리징 및 DHCP 릴레이 같은 추가 설정을 구성합니다.

예: