vSphere 가상 네트워크 기본 구조
VM → 가상 NIC → VMKernel → 가상 스위치 → 물리 NIC (여기가 ESXi 영역 경계) → 물리 스위치
- 가상 NIC은 VM과 VMKernel 사이에 위치하여 고유의 MAC주소를 가짐
가상 스위치
- vSphere 가상 네트워크 환경에서 가장 핵심
- 네트워크 I/O의 에뮬레이션을 담당
- (가상화 vs 에뮬레이션) : 둘 다 가상적으로 특정 시스템을 구동하는 것을 의미, 기존의 HW 리소스를 활용하여 시스템을 구동하느냐의 차이
- VM 및 VMKernel 용 포트 그룹을 설정 가능
가상 스위치 종류
- 표준 가상 스위치 (개별 ESXi Host에 구성하는 가상 스위치)
- 분산 가상 스위치
- ESXi Host 마다 표준 스위치를 설정하는 것은 상당히 번거로운 작업
- vCenter에서 여러 대의 ESXi Host의 표준 스위치를 통합하여 하나의 거대한 스위치로 만드는 기능 → 각 Host의 표준 스위치들이 모여 하나의 분산 스위치가 되는 것
- 다수의 Host들의 네트워크를 일괄적으로 설정 가능 + 네트워크 풀 구성하기에 용이
포트 그룹
VMKernel 이나 VM들에 특화된 서비스를 제공하는 가상 스위치의 논리적인 그룹
포트 그룹 종류
1. VMKernel 포트 그룹
- vSphere의 특화된 기능을 구성하기 위해 반드시 필요한 별도의 트래픽을 전송하는 포트 그룹
- vMotion, HA, FT, iSCSI 스토리지 연결, VSAN, NAS 연결, Hypervisor 관리 트래픽 등 사용을 위해 필요
- VM 포트 그룹 (VLAN)
vSphere 가상 네트워크 특징
- 물리 NIC는 IP Address를 가지지 않음
- 통신에 필요한 IP주소 및 MAC 주소는 모두 VM이 가져감
- 물리 NIC는 단순히 네트워크 케이블 같이 연결 이외의 역할을 가지지 않음
- 가상 스위치는 Path-Through의 역할 수행
- 가상 스위치 역시 스위치 이므로 VLAN 설정이나 Link Aggregation 설정 가능
- Link Aggregation : 여러개 네트워크를 병렬로 연결, 대역폭 제한 + 회복성 결여를 위해 사용
- 물리 스위치와 다른 가상 스위치의 특징
- Telnet 같은 접속을 통해 조작 X → vCenter GUI를 통해서만 조작 가능
- 가상 스위치들 간 서로 연결될 일이 없음 → Loop 현상 X
→ STP(Spanning Tree Protocol)를 위한 설정 불필요
- VM의 MAC주소를 가상 스위치가 이미 알기 때문에 따로 table에 등록 불필요
표준 가상 네트워크 설계 가이드
- 목적별 가상 스위치 배치
- 하나의 가상 스위치에 모든 포트그룹 할당 X → 여러 개의 목적별 가상 스위치 O
- 목적별 트래픽 분산이 가능하기 때문
- 단 이렇게 가상 스위치를 나누기 위해서는 물리 NIC 개수가 일단 많아야 함
- 가상 스위치 1개 당 물리 NIC가 최소 1개 필요하기 때문 (외부로 트래픽이 연결되는 경우 한정)
- Interneal 네트워크로만 쓸 예정이라면 물리 NIC 개수는 노 상관
- mgmt와 VM 네트워크를 나누는 것이 기본
- mgmt 네트워크가 죽으면 ESXi host 관리는 안되더라도 VM 전체가 통신을 못하지는 않기 때문
- 트레픽 분산 목적
- NIC 티밍(Teaming) 설정
- NIC Teaming : 네트워크 로드밸런싱이나 Active-Standby 구성을 위해 NIC를 하나의 그룹으로 묶음
- NIC Teaming 종류
- ESXi Host 차원의 티밍 : 관리포트, HA, FT, 등의 트래픽에 대한 로드밸런싱, Active-Standby 구성
- 물리 스위치와 접속 시 고려 사항 1 : VLAN 구성 여부 (VLAN trunk)
- VM들을 별도의 네트워크로 구분해야 한다면 VLAN 구성은 항상 염두해야함
- 스위치에서 설정된 VLAN id정보를 포트그룹에 mapping 한 뒤 개별 VM에 할당함으로써 다수의 네트워크 환경에 대한 인프라 구성
- 물리 스위치와 접속 시 고려 사항 2 : Link Aggregation 구성
- Link Aggregation 구성 시 어떤 VLAN을 할당할 것인지, vCenter에서는 어떻게 구성해 줘야하는지를 VM 생성 전에 미리 설계 해야함