티스토리 뷰
NXOSv 구성 2편으로 1편을 참조해서 아래 내용을 살펴 보면 된다. (NXOSv 네트워크 구축 1편 -https://youngmind.tistory.com/entry/NXOSv-%EB%84%A4%ED%8A%B8%EC%9B%8C%ED%81%AC-%EA%B5%AC%EC%B6%95-1%ED%8E%B8 )
1. 네트워크 구성
6개의 Nexus9000v를 구성하여 연결할 수 있도록 합니다.
- SPINE 2대
- LEAF 4대
- Nexus9000v 대당 구성 - NXOS 9.2.3 / ethernet 6개 포트 (Mgmt 1개 포트 포함) / 가상 인터페이스는 128개 포트를 제공하며 실제 트래픽은 6개 포트만 가능.
아래와 같은 토폴로지로 LAB을 구성한다.
Nexus9000v 인터페이스 끼리 연결하기 위해서는 몇가지 방법이 있으나, 안정적인 연결 방식을 위해 상호 연결시 독립적인 vSwitch와 PortGroup을 생성한다.
또한 반드시 Promiscuous mode를 허용해야 한다.
그 이유는 VM이 할당되는 vNIC MAC과 실제 내부에서 에뮬레이팅 되어 사용되는 스위치의 인터페이스 MAC이 달라서, Promiscuous Mode를 활성화 해야 한다.
아래는 필자가 구성한 NXOSv Ansible LAB 토폴로지 기반으로 vCenter에서 설정한 내용들이다.
[root@DC1-ESX35:~] esxcfg-vswitch -l | grep TO
NXOSv-S1-2-TO-L4-1 7936 3 128 1500
S1-2-TO-L4-1 0 2
NXOSv-S1-1-TO-L3-1 7936 3 128 1500
S1-1-TO-L3-1 4095 2
NXOSv-S1-3-TO-L5-1 7936 3 128 1500
S1-3-TO-L5-1 0 2
NXOSv-S1-4-TO-L6-1 7936 3 128 1500
S1-4-TO-L6-1 0 2
NXOSv-S2-1-TO-L3-2 7936 3 128 1500
S2-1-TO-L3-2 0 2
NXOSv-S2-2-TO-L4-2 7936 3 128 1500
S2-2-TO-L4-2 0 2
NXOSv-S2-3-TO-L5-2 7936 3 128 1500
S2-3-TO-L5-2 0 2
NXOSv-S2-4-TO-L6-2 7936 3 128 1500
S2-4-TO-L6-2 0 2
NXOSv-S1-5-TO-S2-5 7936 3 128 1500
S1-5-TO-S2-5 0 2
NXOSv-L3-5-TO-L4-5 7936 3 128 1500
L3-5-TO-L4-5 0 2
NXOSv-L5-5-TO-L6-5 7936 3 128 1500
L5-5-TO-L6-5 0 2
# 11개의 가상스위치를 생성하여 Nexus9000v 스위치간 독립적으로 연결 구성하고, PortGroup도 생성해 준다
vCenter에서 확인해 보면 아래와 같이 11개의 가상스위치가 Nexus9000v 스위치간 연결용으로 구성되어 있는 것을 확인 할 수 있다.
아래 예는 NXOSv-SPINE-2001 Ethernet 1/1 과 NXOSv-LEAF-2003 Ethernet 1/1을 ESX vSwitch NXOSv-S1-1-TO-L3-1의 포트그룹 S1-1-TO-L3-1으로 연동되어 있는 것을 확인 할 수 있다.
가상 스위치로 연결할 때나, 또는 하나의 가상스위치에서 여러개의 포트그룹을 통해 연결해야 할때는 반드시 Promiscuous Mode를 활성화해야 한다.
각 Nexus9000v 가상스위치의 포트 매핑은 아래와 같이 구성된다.
NXOSv-L3# show interface brief
--------------------------------------------------------------------------------
Port VRF Status IP Address Speed MTU
--------------------------------------------------------------------------------
mgmt0 -- up 10.72.78.173 1000 1500
--------------------------------------------------------------------------------
Ethernet VLAN Type Mode Status Reason Speed Port
Interface Ch #
--------------------------------------------------------------------------------
Eth1/1 -- eth routed up none 1000(D) --
Eth1/2 1 eth access up none auto(D) --
Eth1/3 1 eth access up none auto(D) --
Eth1/4 1 eth access up none auto(D) --
Eth1/5 1 eth access up none auto(D) --
정상적으로 연결이 완료되면, lldp , CDP로도 인터페이스 연결을 확인 할 수 있다.
NXOSv-S1# show lldp neighbors
Capability codes:
(R) Router, (B) Bridge, (T) Telephone, (C) DOCSIS Cable Device
(W) WLAN Access Point, (P) Repeater, (S) Station, (O) Other
Device ID Local Intf Hold-time Capability Port ID
NXOSv-E8 mgmt0 120 BR mgmt0
NXOSv-L3 Eth1/1 120 BR Ethernet1/1
NXOSv-L4 Eth1/2 120 BR Ethernet1/1
NXOSv-L5 Eth1/3 120 BR Ethernet1/1
NXOSv-L6 Eth1/4 120 BR Ethernet1/1
2. 네트워크 구성 테스트
NXOSv-S1 과 NXOSv-L3 간에 192.168.2.x 네트워크 대역을 설정하고, 상호간에 Direct Connect로 ICMP 테스트 예제이다.
NXOSv-L3# conf t
NXOSv-L3(config)# interface ethernet 1/1
NXOSv-L3(config-if)# exit
NXOSv-L3(config)# vlan 2
NXOSv-L3(config-if)# interface ethernet 1/1
NXOSv-L3(config-if)# switchport
NXOSv-L3(config-if)# switchport mode access
NXOSv-L3(config-if)# switchport access vlan 2
NXOSv-L3(config-if)# interface vlan 2
NXOSv-L3(config-if)# ip add 192.168.2.1/24
NXOSv-L3(config-if)# no sh
NXOSv-S1# conf t
NXOSv-S1(config)# vlan 2
NXOSv-S1(config-vlan)# interface ethernet 1/1
NXOSv-S1(config-if)# switchport
NXOSv-S1(config-if)# switchport mode access
NXOSv-S1(config-if)# switchport access vlan 2
NXOSv-S1(config)# interface vlan 2
NXOSv-S1(config-if)# ip address 192.168.2.254/24
NXOSv-S1(config-if)# no sh
NXOSv-S1# ping 192.168.2.1
PING 192.168.2.1 (192.168.2.1): 56 data bytes
64 bytes from 192.168.2.1: icmp_seq=0 ttl=254 time=8.157 ms
64 bytes from 192.168.2.1: icmp_seq=1 ttl=254 time=8.75 ms
64 bytes from 192.168.2.1: icmp_seq=2 ttl=254 time=6.835 ms
64 bytes from 192.168.2.1: icmp_seq=3 ttl=254 time=6.93 ms
64 bytes from 192.168.2.1: icmp_seq=4 ttl=254 time=6.894 ms
Ansible 을 기반으로 6대의 스위치에 동시에 feature들을 Enable 해보자.
NXOSv-S1# sh running-config | inc feature
feature privilege
feature nxapi
feature scp-server
feature sftp-server
feature interface-vlan
feature lldp
#Ansible이 구동하기 전에 현재 설정되어 있는 feature list
nxosv $ ansible-playbook 02.nxos_feature_enable.yml -i ./hosts
PLAY [nxos_feature_enable.yml] *************************************************************************************
TASK [Gathering Facts] *********************************************************************************************
ok: [NXOSv-L3]
ok: [NXOSv-L5]
ok: [NXOSv-L6]
ok: [NXOSv-L4]
ok: [NXOSv-S1]
ok: [NXOSv-S2]
TASK [Ensure L2 feature is enabled] ********************************************************************************
ok: [NXOSv-S1] => (item=lacp)
ok: [NXOSv-L5] => (item=lacp)
ok: [NXOSv-L6] => (item=lacp)
ok: [NXOSv-L3] => (item=lacp)
ok: [NXOSv-L4] => (item=lacp)
ok: [NXOSv-S1] => (item=lldp)
ok: [NXOSv-L5] => (item=lldp)
ok: [NXOSv-L6] => (item=lldp)
ok: [NXOSv-L3] => (item=lldp)
ok: [NXOSv-L4] => (item=lldp)
ok: [NXOSv-S1] => (item=vpc)
중략…
TASK [Ensure L3 feature is enabled] ********************************************************************************
ok: [NXOSv-S1] => (item=interface-vlan)
ok: [NXOSv-L5] => (item=interface-vlan)
ok: [NXOSv-L3] => (item=interface-vlan)
ok: [NXOSv-L6] => (item=interface-vlan)
ok: [NXOSv-L4] => (item=interface-vlan)
ok: [NXOSv-L5] => (item=ospf)
ok: [NXOSv-L6] => (item=ospf)
ok: [NXOSv-L3] => (item=ospf)
ok: [NXOSv-L4] => (item=ospf)
중략…
TASK [Mgmt feature is enabled] *************************************************************************************
ok: [NXOSv-S1] => (item=sftp-server)
ok: [NXOSv-L5] => (item=sftp-server)
ok: [NXOSv-L3] => (item=sftp-server)
ok: [NXOSv-L6] => (item=sftp-server)
ok: [NXOSv-L4] => (item=sftp-server)
ok: [NXOSv-S1] => (item=scp-server)
중략…
TASK [API_virtual feature is enabled] ******************************************************************************
ok: [NXOSv-L4] => (item=bash-shell)
ok: [NXOSv-L5] => (item=bash-shell)
ok: [NXOSv-L3] => (item=bash-shell)
ok: [NXOSv-L6] => (item=bash-shell)
changed: [NXOSv-S1] => (item=bash-shell)
중략…
TASK [Saving running conf for changed targets] *********************************************************************
changed: [NXOSv-L5]
changed: [NXOSv-L6]
changed: [NXOSv-L4]
changed: [NXOSv-L3]
changed: [NXOSv-S1]
중략…
PLAY RECAP *********************************************************************************************************
NXOSv-L3 : ok=6 changed=1 unreachable=0 failed=0
NXOSv-L4 : ok=6 changed=1 unreachable=0 failed=0
NXOSv-L5 : ok=6 changed=1 unreachable=0 failed=0
NXOSv-L6 : ok=6 changed=1 unreachable=0 failed=0
NXOSv-S1 : ok=6 changed=3 unreachable=0 failed=0
# Ansbile Playbook 실행 이후 Nexus9000v 스위치에서 Config 확인.
NXOSv-S1# sh running-config | grep feature
feature privilege
feature nxapi
feature bash-shell
feature scp-server
feature sftp-server
feature vrrp
feature ospf
feature bgp
feature pim
feature eigrp
feature pbr
feature interface-vlan
feature vn-segment-vlan-based
feature hsrp
feature lacp
feature vpc
feature lldp
feature bfd
feature vmtracker
feature container-tracker
NXOSv-S1# show logging last 10
생략...
2019 May 10 09:17:44 NXOSv-S1 %VSHD-5-VSHD_SYSLOG_CONFIG_I: Configured from vty by whchoi on nginx
2019 May 10 09:18:03 NXOSv-S1 last message repeated 2 times
2019 May 10 09:18:03 NXOSv-S1 %VSHD-5-VSHD_SYSLOG_CONFIG_I: Configured from vty by on vsh.bin.3283
# http기반 REST API로 접속하여, config를 하고 저장한 것을 확인 할 수 있다.
'네트워크 > Nexus Switch' 카테고리의 다른 글
NXOSv 네트워크 구축 1편. (4) | 2019.05.10 |
---|---|
Nexus Switch NTP 구성 (0) | 2019.03.24 |
Nexus Switch SSH Key 기반 로그인 관리 (0) | 2019.03.24 |
공지사항