티스토리 뷰

vSphere

[vSphere] 네트워크 구성: 가상 스위치 생성

나미의 로그포스 2023. 4. 14. 13:38

데이터 센터에서 가장 먼저 구축해야 할 사항은 바로 네트워크 입니다.

 

#1 가상 스위치 만들기 - ui

 

vSphere Client에서 스위치 생성

 

가상 스위치는 물리적 uplink(네트워크 업링크 포트: 한 스위치가 다른 스위치와 연결할 때 사용하는 포트)와 실제 IP로 나누어져 있습니다.

 

화면과 같이 UI에서는 두 가지 ADD NETWORKING 탭을 확인할 수 있습니다.

 

1번 ADD NETWORKING = 현재 스위치에 네트워크를 추가하겠다는 의미, "현 스위치에 port를 하나 더 만들겠다"

2번 ADD NETWORKING = 스위치 자체를 하나 더 추가하겠다는 의미

 

여기서는 가상 스위치 자체를 만들 것이므로 2번을 선택합니다.

 

1.1 connetion type

 

 

VMkernel Network Adapter : VM에서 제공해주는 기능(커널 레벨)을 사용할 때 선택

Virtual Machine Port Group for a Standard Switch : 표준 스위치에 포트 그룹을 추가하는 방식 선택

Physical Network Adapter : 현재 만들 스위치는 라우터를 거쳐 동작하는 가상 스위치므로 해당 X

 

1.2 target device

 

standard switch의 MTU 설정

 

📌 MTU = 최대 전송 단위 (패킷)

Header Data Check (FBECDD)
내가 1600 만큼을 보내고 상대방이 응답으로 1500 만큼을 보냈을 경우
→ Check 값이 없다고 판단해 정상 전달 X
→ 마음대로 패킷을 쪼개거나 잘못 해석해 통신 자체가 안 될 가능성 존재
⇒ End to End 까지 전달 단위(MTU) 일치 매우 중요 !!

Q. Header가 더 붙는 경우도 있을까?

Header (...) Data Check
A. NAT 처리 시 가능하다! 사설 IP → 공인 IP 처럼 헤더 정보를 바꿔 (추가) 처리할 경우 헤더의 양이 증가하는 변화 발생
(Ex. Wireshark에서 패킷을 깔 때마다 헤더 정보가 추가되는 것처럼)
⇒ 네트워크 전송 단위는 매우 중요 !!

 

1.3 standard switch

 

 

어댑터 동작(Active/Standby/Unused)에 따라 세 가지로 분류됩니다. (따로 선택하지 않고 넘어감)

 

1.4 connection settings

 

VLAN ID 설정

 

📌 VLAN ID

스위치는 IP 인식이 불가능하므로 VLAN ID를 통해 서로 다른 VLAN을 식별합니다.
VLAN ID 범위 : 0번 ~ 4095번 (4096개)

0번 system이 쓰는 vlan
1번 Cisco에서 사용하는 값으로 웬만하면 할당 지양
4095번 (ALL) 4095 밑의 모든 넘버 ID 값에 대한 처리가 다 가능하도록 함
변동이 큰 서비스의 경우 한 번에 4095로 할당해 Trunk mode 이용

*** Trunk mode = 1개의 물리적 링크에 여러 vlan을 함께 실어서 보내야 할 때 사용

 

설정을 마친 스위치는 생성 시 이름이 vSwitch로 자동 지정됩니다. UI를 이용한 생성으로는 스위치 이름을 따로 지정해 줄 수 없지만, 코드를 이용해 생성하면 이름을 직접 설정할 수 있습니다.

 

 

#1 가상 스위치 만들기 - IaC

 

WSL, ubuntu가 설치된 가상 머신에서 ansible playbook 작성을 통해 코드로 가상 스위치를 만들어보겠습니다.

 

/mnt/c/Materal에서 ansible playbook 작업

 

✔️ Playbook 작업 시 vars.yaml 변수 파일을 따로 만들어 관리하며, 들여쓰기 실수를 방지하기 위해 VS Code를 사용합니다. 

 

https://vscode.dev/

 

Visual Studio Code for the Web

Build with Visual Studio Code, anywhere, anytime, entirely in your browser.

vscode.dev

 

✔️ 패스워드와 같이 민감한 정보가 소스 코드에 포함될 경우 ansible-vault로 암호화 처리를 해 주어야 합니다.

✔️ ansible-playbook 실행 오류 발생 시 -vvv 옵션으로 작업 과정을 자세히 확인할 수 있습니다. (오류 메시지 확인)

 

댓글
공지사항
최근에 올라온 글
최근에 달린 댓글
Total
Today
Yesterday
«   2025/01   »
1 2 3 4
5 6 7 8 9 10 11
12 13 14 15 16 17 18
19 20 21 22 23 24 25
26 27 28 29 30 31
글 보관함