들어가며
이번에 Arista DCS-7320X Modular Switch를 개인 랩에 도입하면서, 랩의 전반적인 네트워크 구성을 뜯어고치게 되었다.
그리고 이번 기회에 전체 랩 리소스를 100GbE 기반의 L3 네트워크로 통합하는 것을 추가적인 목표로 삼았다.
이를 위해 다음과 같은 작업 프로세스를 수립하였다.
물리 네트워크 설계
1. 하드웨어 구성
- 가장 먼저 스위치 하드웨어와 케이블, 트랜시버를 선정하고 개별 컴포넌트의 호환성을 검증한다.
- 개별 컴포넌트들은 가능하면 기존에 사용하던 물건을 재사용하고, 그렇지 않을 경우 최대한 저렴한 옵션을 선택한다.
- 케이블과 트랜시버의 경우, 향후 대역폭 확장과 호환성을 고려하여 OS2/LR로 구성을 통일한다. 이를 통해 현행 최신 규격인 800GbE까지 커버할 수 있는 케이블링을 확보한다.
이 기준에 따라 추가 구매한 컴포넌트들은 다음과 같다
- 25GbE LR 트랜시버 16개
- 100GbE LR MPO 트랜시버 4개
- 96C OS2 LC 패치 패널 1개
- 48C OS2 LC 패치 패널 1개 (Breakout용)
- OS2 MPO 8P to 4x OS2 LC 케이블 (25G Breakout용, 10m) 4개
- 24C OS2 LC-LC 케이블 (10m) 2개
- LC-LC OS2 점퍼 코드 케이블 (2m) 36개
100GbE 트랜시버는 예전에 구매한 Intel SPTSBP2CLCKS를 사용한다.
40개를 구매했기 때문에 수량은 부족하지 않을 것이다.
이 물건은 Arista 스위치와 Mellanox NIC에서의 동작이 검증된 아주 저렴한 트랜시버이다.
[그림 1. Intel SPTSBP2CLCKS 사진]
하드웨어와 케이블링 컴포넌트가 결정되었으면, 이제 네트워크의 하이 레벨 디자인을 진행해야 한다.
2. 물리 네트워크 하이 레벨 디자인
내 랩 구성에서 핵심 컴포넌트들은 다음과 같다.
- 방화벽 겸 라우터: Fortigate FG-60E 1EA
- 매니지먼트 스위치: Mikrotik CRS326-24G-2S+ 2EA
- L2 스위치: Arista DCS-7304 Modular Switch
- UPS (네트워크 랙): APC SMT3000RMI2U
- UPS (서버 랙): EATON 9PX5K
- 타임 서버: Meinberg M600/GPS (PTP 지원)
이 중에서 네트워크 랙의 UPS와 타임 서버는 다른 랙에 위치한 팀원의 서버와도 통신할 수 있어야 하기 때문에, 이를 고려한 전체적인 랩의 네트워크 구성도는 다음과 같다.
[그림 2. 팀원의 랩을 포함한 전체 디자인]
이 다이어그램에 모든 팀원의 장비가 그려진 것은 아님에 유의해야 한다. 이 도식은 최종 산출물을 작성하기 전, 참고 자료로 사용할 것이다.
상기 구성에서 내 Firewall에 직결되어야 하는 인터페이스들은 다음과 같다.
- DCS-7304의 Supervisor 매니지먼트 인터페이스
- Mikrotik CRS326-24G-2S+ 2개의 업링크 겸 매니지먼트 인터페이스
- 타임 서버의 NTP 겸 매니지먼트 인터페이스
- EATON UPS의 매니지먼트 인터페이스
- APC UPS의 매니지먼트 인터페이스가 연결된 화웨이 스위치로의 업링크
WAN 인터페이스를 제외하고 6개의 인터페이스가 필요하며, 화웨이 스위치의 업링크를 제외하고는 VLAN 1 (Native VLAN)을 사용한다.
이는 향후 장비 증설과 장애 조치 시에 OOBM 접근을 용이하게 하기 위함이다.
가상 네트워크 설계
물리 네트워크 디자인을 마쳤다면, 가상 네트워크를 디자인 할 차례다.
이 랩의 주된 목적이 VMware 제품의 테스트베드이기 때문에, 나는 다음과 같은 요소를 고려하여 가상 네트워크를 디자인 할 것이다.
- 고가용성 확보: 모든 업링크를 이중화하여, 최소한 서버 NIC의 장애로 인한 통신 장애가 일어나지 않도록 보장한다.
- 내부 통신용 대역폭 최대화: 내부 통신이 필요한 컴포넌트 (T1 Segment, vMotion, Backup 등)의 트래픽은 전부 DCS-7304를 거치도록 한다.
- NSX Overlay Network 사용: VMware NSX를 사용하여 오버레이 네트워크를 구성한다
- 차후 도입할 제품에 대한 확장성 보장: VMware VCF, Tanzu, NSX Advanced Load Balancer 등 향후 추가될 VMware 컴포넌트들에 대한 확장성을 보장할 수 있어야 한다.
1. vSphere 네트워크 디자인
현재 내 랩의 서버에는 각각 100GbE 2포트, 25GbE 2포트, 10GbE 2포트, 1GbE 2포트가 있다.
나는 이 중에서 100GbE 2포트와 25GbE 2포트 그리고 1GbE 2포트를 사용할 것이다.
[그림 3. ESXi 호스트의 물리 포트 구성]
위 포트들을 다음과 같이 용도별로 구분한다.
- 100GbE 포트: 대용량 트래픽 전송용. vMotion, vSAN, Nested ESXi, Backup, NVMe-oF용 네트워크로 사용
- 25GbE 포트: 오버레이 네트워크 트래픽 전송용. NSX East-West, Tanzu, Avi용 네트워크로 사용
- 1GbE 포트: 매니지먼트, WAN, T0 Uplink용 네트워크로 사용
그리고 업링크 포트의 구성에 맞춰 6개의 vDS를 생성한다. (현재의 랩 환경에는 2개의 vCenter Server가 존재한다)
- vDS-DC1-1_100GbE
- vDS-DC1-1_25GbE
- vDS-DC1-1_1GbE
- vDS-DC1-2_100GbE
- vDS-DC1-2_25GbE
- vDS-DC1-2_1GbE
랩을 처음부터 다시 구축하는 것이 아닌, Brownfield deployment임에 주의해야 한다.
vDS의 MTU는 9000Bytes (단, 1GbE는 1500Bytes), Discovery Protocol은 호스트 단의 네트워크 가시성을 높이기 위해 LLDP로 설정한다.
[그림 4. vDS 설정 구성 예시]
다음은 포트 그룹 디자인이다.
포트 그룹은 용도에 맞춰 유동적으로 구성을 변경할 수 있지만, 여기서는 현재 구성되어 있는 포트 그룹을 기준으로 설명하도록 하겠다.
내 랩에서 포트 그룹의 명명 규칙은 <용도>-V<VLAN_ID>-<IP_ADDR>_<CIDR> 이다.
vDS-DC1-1_1GbE / vDS-DC1-2_1GbE
- pMGMT-V122-10.22.0.0_24: ESXi의 매니지먼트 VMKernel 인터페이스를 할당하기 위한 포트 그룹
- vMGMT-V123-10.23.0.0_24: 매니지먼트 컴포넌트와 일반적인 VM의 인터넷 액세스를 위한 포트 그룹
vDS-DC1-1_100GbE / vDS-DC1-2_100GbE
- vMotion-V124-10.23.1.0_24: vMotion 서비스를 위한 포트 그룹
- NVMF1-V126-10.24.0.0_24: NVMe over RDMA Adapter를 위한 포트 그룹
- NVMF2-V127-10.24.1.0_24: NVMe over RDMA Adapter를 위한 포트 그룹
- vSAN-V125-10.24.2.0_24: vSAN Kernel Adapter를 위한 포트 그룹
vDS-DC1-1_25GbE / vDS-DC1-2_25GbE
- NSX_TEP_V150-10.25.150.0_24: NSX Host TEP를 위한 포트 그룹
- NSX_Edge_TEP_V151-10.25.151.0_24: NSX Edge TEP를 위한 포트 그룹
- NSX_Edge_Uplink_01-V161-172.16.161.0_24: NSX T0 Uplink를 위한 포트 그룹
- NSX_Edge_Uplink_02-V162-172.16.162.0_24: NSX T0 Uplink를 위한 포트 그룹
모든 업링크 포트가 이중화되어 있기 때문에, 포트 그룹의 Teaming and Failover 정책을 적절하게 변경하는 것으로 해당 워크로드가 요구하는 고가용성을 충족시킬 수 있다.
Load balancing 구성과 Failover Order는 VVD와 VMware Documentation의 Best Practice 구성에 준하며, 자세한 내용은 Deployment 파트에서 다룰 것이다.
이로써 전체적인 랩 네트워크의 하이레벨 디자인이 완료되었다.
Design Decision Items
실제 구축에 들어가기에 앞서, 우리는 다음과 같은 항목들을 추가로 결정해야 한다.
- 랩 인원별 VLAN 범위 할당
- Inter-VLAN Routing 용으로 사용할 수 있는 Private IP 범위 지정 및 랩 인원별 할당
- Power Outage 경고를 위한 Network Management Card (NMC)에 할당할 VLAN/IP 주소 결정
- 내부망 분리를 위한 DCS-7304의 ACL 정책 정의
해당 Design Decision 포인트들은 랩 구성원간의 협의를 거쳐 결정되었으며, 자세한 내용은 다른 랩의 구성 정보가 노출될 가능성이 있기에 생략한다.
다음 포스팅에서는 실제 물리 네트워크 구축을 위한 사전 준비 과정을 다룰 것이다.