홈랩 만들기 : PC에서 VMware Workstation 사용

홈랩은 집(Home)에 구성해서 사용하는 연구실(Lab)이란 의미라 생각한다. 전산실(프러덕션) 환경과 차이가 있다면 아무래도 저비용 구조라는 점 같다. 경우에 따라서는 중소기업 전산실을 집에다 옮겨 놓고 사용하는 분들도 있기는 하다. 그렇다고 이런거 따라하다가는 비용이... 현실적으로 1)비용, 2)규모등 2가지 키워드에 촛점을 맞추게 된다.

이 글에서는 데스크탑 PC 또는 노트북 + 16GB 메모리 환경 정도에서 VMware Workstation을 이용해서 vSphere ICM 수업의 랩 환경과 비슷한 랩 환경을 만들어보는 것을 목표로 한다. CPU 코어는 많으면 좋겠으나, 랩이라 2 코어 환경에서도 별 문제는 없다.

준비물

Windows Server는 180일, VMware vSphere는 60일간 사용해볼 수 있다. 이후에는 재설치하거나...

공인교육 Lab 환경 토폴로지

VMware vSphere: Install, Configure, Manage 수업에서 사용하는 Lab의 토폴로지는 그림과 같다. 가장 최소한의 환경으로 구성되어 있다고 보면 된다.

ICM-Lab-Topology-001.png

공인수업에서는 미국에 있는 데이터센터에 원격으로 접속해서 사용하게 된다. 그렇다 보니 Fence Network가 존재하고, 수업시간에 2번에 걸쳐서 원격 데스크탑 접속을 통해 사용하게 된다.

DC-RASS는 Windows Server가 사용된다. 그 이유는 단순하다. 하나의 서버로 실습에 필요한 도메인 콘트롤러, DNS, DHCP, NFS, iSCSI 등 모두 구현할 수 있기 때문이다.

구강사가 변형한 토폴로지

위의 토폴로지를 PC에서 구현할 수도 있지다. 그러나 개인환경에서는 Student-a-01이 굳이 존재할 필요가 없다. 그래서 1)Fence 네트워크를 제거하고, PC에서 직접 Management로 접속할 수 있는 형태로 했다.

HomeLab-Workstation.png

2) Storage Network는 추가된 요소다. 일반적으로 NIC이 4개인 서버들이 많고, 가장 일반적인 형태로 변형한 것이다. 다만, iSCSI와 NFS 트래픽을 구분하는 것까지는 구현을 안했다. 공인교육 교재를 보고 연습할 분들은 스토리지 관련 IP 대역을 다르게 설정해서 사용하기 바란다.

VM들 사양과 IP 주소 배정

총 4개의 VM을 만들어야 한다. 각 사양은 다음과 같다.

  • DC
    • 역할 : AD, DNS, DHCP, iSCSI, NFS
    • vCPU : 2
    • Memory : 권장 6GB, 2GB로 축소
    • Hard Disk : 40GB
    • Ethernet 0 : 172.20.10.10
    • Ethernet 1 : 172.20.11.10
    • Ethernet 2 : 172.20.13.10
    • Ethernet 3 : VMnet0 / DHCP
  • VCSA
    • 역할 : vCenter Server
    • vCPU : 2
    • Memory : 권장 10GB, 설치 이후 5GB로 축소
    • vmnic0 IP : 172.20.10.94
    •  
  • ESXi-01
    • 역할 : ESXi Host
    • vCPU : 2
    • Memory : 권장 8GB, 4GB로 축소
    • vmnic0 IP : 172.20.10.51
    • vmnic1 IP : 172.20.11.51
    • vmnic2 IP : 172.20.12.51
    • vmnic3 IP : 172.20.13.51
  •  ESXi-02
    • 역할 : ESXi Host
    • vCPU : 2
    • Memory : 권장 8GB, 4GB로 축소
    • vmnic0 IP : 172.20.10.52
    • vmnic1 IP : 172.20.11.52
    • vmnic2 IP : 172.20.12.52
    • vmnic3 IP : 172.20.13.52

권장 사항대로 만들면 총 32GB가 필요하다. Windows 10도 돌아야하니 실제로는 36GB 정도 있어야 한다. 또한 16GB 환경을 목표로 하니 전체적으로 줄여서 잡아야 한다.

설치 할 때 VM을 하나씩 설치->메모리 축소->VM 끄기를 진행하고, 다음 VM을 설치하는 것이 좋다.

VMware Workstation 네트워크 구성

VMware Workstation을 설치하면 시작 메뉴 또는 VMware Workstation > Edit 메뉴에서 Virtual Network Editor를 찾을 수 있다. 이 프로그램으로 토폴로지에 구상한 네트워크를 만든다.

screen-2020-002.png    screen-2020-003.png

Virtual Network Editor를 실행하고, Change Settings 단추를 누른다. "사용자 계정 콘트롤" 대화상자가 나오면 권한 상승을 위해 "예"를 선택한다.

screen-2020-001.png

이제 VMware Workstation 내부에서 사용하는 네트워크를 수정할 수 있는 상태가 되었다. 각각 하나의 네트워크가 독립된 네트워크 스위치라고 생각하면 이해하기 쉽다. VMnet0 ~ VMnet19까지 총 20개까지 만들 수 있다.

scr-1583996731-001.png

VMnet0

Bridged를 선택한 네트워크는 PC의 물리 네트워크 카드에 연결된 네트워크 즉, 공유기와 연결된 Home Network를 VMware Workstation안과 이어준다는 의미다. 네트워크 인터페이스를 VMnet0에 연결하면 공유기에서 IP 주소를 가져오게 된다.

우리가 만들 홈랩에서는 DC의 Ethernet 3번만 여기에 연결된다.

VMnet1 : Management Network

기존에 생성되어 있다. 선택하고 다음 몇가지 항목을 수정한다. 수정한 다음에는 꼭 Apply를 누른다.

  • VMnet Information : Host-only 선택 확인
  • Connect a host virtual adapter to this network : 선택
  • Subnet IP : 172.20.10.0 
  • Use local DHCP Service to distribute IP address to VMs : 선택
  • DHCP Settings... : Starting IP...은 172.20.10.128, Ending IP...은 172.20.10.254인지 확인

scr-1584062216-001.png

PC에 VMware Network Adapter가 추가되고, VMnet1에 연결된다. IP 주소는 172.20.10.1이 할당 된다.

VMnet2 : Production Network

Add Network를 누르고, Select a network to add: 에서 VMnet2를 선택하고, OK를 누른다.

VMnet2가 추가되고, 유형에 Host-only라고 표시될 것이다. 선택하고 다음 항목들을 처리하고, Apply를 누른다.

  • VMnet Information : Host-only 선택 확인
  • Connect a host virtual adapter to this network : 체크 해제
  • Use local DHCP Service to distribute IP address to VMs : 체크 해제
  • Subnet IP : 172.20.11.0

scr-1583998696-001.png

VMnet3 : vMotion Network

Add Network를 누르고, Select a network to add: 에서 VMnet3를 선택하고, OK를 누른다.

VMnet2가 추가되고, 유형에 Host-only라고 표시될 것이다. 선택하고 다음 항목들을 처리하고, Apply를 누른다.

  • VMnet Information : Host-only 선택 확인
  • Connect a host virtual adapter to this network : 체크 해제
  • Use local DHCP Service to distribute IP address to VMs : 체크 해제
  • Subnet IP : 172.20.12.0

scr-1583998920-001.png

VMnet4 : Storage Network

Add Network를 누르고, Select a network to add: 에서 VMnet3를 선택하고, OK를 누른다.

VMnet2가 추가되고, 유형에 Host-only라고 표시될 것이다. 선택하고 다음 항목들을 처리하고, Apply를 누른다.

  • VMnet Information : Host-only 선택 확인
  • Connect a host virtual adapter to this network : 체크 해제
  • Use local DHCP Service to distribute IP address to VMs : 체크 해제
  • Subnet IP : 172.20.13.0

scr-1583999074-001.png

디스크 생성시 선택사항

VM을 생성하다 보면 Specify Disk Capacity 대화상자에서 생성 방식을 다음과 같이 지정해주는 것이 성능 측면에서 유리하다. ESXi를 사용한다면 Thin 프로비저닝 방식으로 생성해도 성능이 좋은 편이다. 그러나 VMware Workstation은 "Allocate all disk space now"를 선택하지 않으면 좀 느린 경향이 있다.

디스크 용량이 처음 부터 많이 사용하는 단점이 있지다. 그래도 속도를 위한 희생이니 이 정도 용량은 감수하도록 하자.

  • Allocate all disk space now : 선택
  • Store virtual disk as a single file : 선택

scr-1584004781-001.png

Windows Server 설치

VMware Workstation v15에 Windows Server 2019를 설치할 경우에 UEFI 모드 선택시 진행 중에 오류가 발생한다. 이 경우에는 해당 VM을 선택하고 "Settings > CD/DVD > Advanced... > Legacy emulation" 을 선택하고 설치하면 된다.

윈도우 서버는 VM은 AD, DNS, DHCP, NFS, iSCSI 등의 역할을 수행한다. 그래서 설치한 이후에 구성해야할 내용들이 많다. 각 역할별 구성 방법에 대해서는 인터넷 검색을 통해 쉽게 찾을 수 있으니, 여기서는 생략하도록 하겠다. 각 역할별로 설정해야할 항목들은 다음과 같다.

  • 컴퓨터 이름 변경 : dc <- 선호하는 이름으로 변경 가능
  • 네트워크 인터페이스에 IP 주소 설정
  • 역할 추가
    • Active Directory Domain Services
    • DHCP Server
    • DNS Server
    • iSCSI Target Server
    • Server for NFS
    • Remote Access - Routing : VM들 인터넷 접속 사용할 경우
  • Active Directory 도메인 : home.lab <- 선호하는 이름으로 변경 가능
  • DNS에 역방향 존 추가 : 172.20.in-addr.arpa
  • DNS에 호스트 등록 : 역방향 포함
    • esxi-01.home.lab : 172.20.10.51
    • esxi-02.home.lab : 172.20.10.52
    • vcsa.home.lab : 172.20.10.94

하드디스크는 OS 설치(C 드라이브)는 20~60GB, 데이터(D 드라이브)는 50~200GB 정도 선에서 상황에 따라 적절하게 조정하기 바란다.

네트워크는 앞서 구성해 놓은 것에 맞추어 그림 처럼 할당하면 된다.

scr-1584009678-001.png

역할 추가와 구성이 마무리되었으면, VMware Tools를 설치해준다.

Server Manager > Tools > Routing and Remote Access를 실행한다.

scr-1584066146-001.png

DC (local) 선택 > Action > Configure and Enable Routing and Remote Access 마법사를 실행하고, Network address translation (NAT) 를 선택해서 구성한다.

NAT Internet Connection 에서는 Ethernet3, Network Selection에서는 Ethernet0 을 선택한다.

vSphere ESXi 설치

ESXi의 경우 부팅 디스크 사용량이 적은 편이다. 그러므로 Specify Disk Capacity에서 "Allocate all disk space now"를 선택하지 않아도 무난하다. 설치 Hard Disk의 용량은 VMware의 권장사항인 16GB로 한다.

Network Adapter는 순서대로 VMnet1~VMnet4까지 선택해주면 된다.

scr-1584057313-001.png

설치가 끝난 이후에는 Management Network 설정에서 다음 항목들 구성해 주도록 한다.

  1. Network Adapters : vmnic0 번만 체크되어 있는지 확인
  2. IPv4 설정 : 172.20.10.51
  3. DNS : 172.20.10.10
  4. Subnet Mask : 255.255.0.0
  5. Default Gateway : 172.20.10.10
  6. Hostname : esxi-01
  7. Custom DNS Suffixes : home.lab

연습하다보면 잘못 설정한 부분 찾기가 어려울 수도 있다. 그럴 때 대비해서 언제든 롤백할 수 있게 "Snapshot"로 꼭 찍어두자.

ESXi-02 설치

위와 같은 ESXi-02도 설치한다. ESXi-01을 Clone해서 디스크 사용량을 줄이는 방법이 있기는 하다. 그러나 그 절차가 처음 시작하는 분이하기에는 복잡할 것 같아서, 새로 설치하는 것이다.

  1. Network Adapters : vmnic0 번만 체크되어 있는지 확인
  2. IPv4 Address : 172.20.10.52
  3. Subnet Mask : 255.255.0.0
  4. Default Gateway : 172.20.10.10
  5. DNS : 172.20.10.10
  6. Hostname : esxi-02
  7. Custom DNS Suffixes : home.lab

vCenter Server 설치

이제 2대의 ESXi 호스트가 준비되었다. 마지막으로 vCenter Server만 설치하면 된다. vCenter Server 설치용 ISO 파일을 마운트한다. 그림과 같은 내용이 보일 것이다. 일반적으로는 인스톨러를 이용해서 ESXi 서버에 설치와 구성 작업을 하게 된다. 그러나 안타깝게도 우리의 환경에는 vCenter Server를 설치할 ESXi가 없다. 그러면...

scr-1584060516-001.png

VMware Workstation에서 "File > Open..." 메뉴를 선택하고, 파일선택 대화상자가 나오면 vCenter Server의 ISO 파일을 마운트한 드라이브 > vcsa 폴더로 이동한다.

scr-1584060781-001.png

그러면 VMware-Vcenter-Server-Appliance... 어쩌구 하는 ova 파일이 보인다. 요것을 선택한다! 이후에 다음 절차대로 설치를 진행한다.

  1. End user License Agreement : I accept the... 항목 체크하고, Next
  2. Store the new Virtual Machine : VM 이름 지정해주고, Next
  3. Deployment Options : Tiny vCenter Server with Embedded PSC 선택하고, Next
  4. Networking Configuration : 그림 참조scr-1584068498-001.png
  5. SSO Configuration : 암호 입력
  6. Miscellaneous : 암호 입력 <- vCenter Server 어플라이언스의 root 계정 암호

위 사항들을 입력하고 "Import" 단추를 누른다. 그러면 OVF 파일을 가져와서 VM을 생성하고, 전원이 켜진다. 그림과 같은 화면이 나올 때까지 기다린다.

scr-1584061789-001.png

IP를 지정했지만 아직은 PC에서 연결할 수가 없다. VMware Workstation에서 "VCSA 선택 > Settings... > Network Adapter"를 선택한다. Bridged로 선택되어 있을 것이다. 이것을 "Custom을 선택하고, VMnet1로 변경" 해준다.

OVA 파일을 가져온 이후에도 내부 구성과정이 조금 있다. 그래서 VCSA가 켜지고 5~10분 정도 기다렸다가 접속하는 것이 좋다.

PC에서 웹 브라우저를 열고 https://172.20.10.94:5480 에 접속한다. 보안 경고창 나오면 잘 된 것이다. 무시하고 접속하도록 한다.

Getting Started... 페이지에서 "Set up"을 누른다.

scr-1584062844-001.png

root 암호를 묻는 대화창이 나타나면, 위에 OVF 가져오기 단계에서 입력한 암호를 입력한다.

Introduction 페이지가 나타나면, Next.

scr-1584064387-001.png

Appliance configuration 페이지가 나타나면 다음 항목을 수정하고, Next.

  • System name : 172.20.10.94 <- 원칙은 FQDN이 좋으나, IP 주소를 사용한다.
  • Time synchronization mode : Synchronize time with NTP... 선택
  • NTS Servers : 0.vmware.pool.ntp.org,1.vmware.pool.ntp.org,2.vmware.pool.ntp.org,3.vmware.pool.ntp.org

Saving hostname...에서 3분 이상 걸리면 재접속해서 다시 시도한다.

Configure CEIP 페이지 나타나면, Next

Ready to complete 페이지 나타나면, 구성 내용 최종적으로 확인하고, Next.

Warning 대화상자 나타나면 OK.

VCSA 내부 구성이 진행된다. 기다림... 기다림... 기다림... (글쓴이는 약 10분 걸림)

https://172.20.10.94에 접속한다. 그림 처럼 나오면 "LAUNCH VSPHERE CLIENT (HTML5)"를 선택한다.

scr-1584067483-001.png

드디어 접속이 됐다.

scr-1584070374-001.png

VCSA의 전원을 끄고(VM 콘솔 화면에서 F12 키 누르고 Shut Down), 메모리 용량을 5GB(5120MB)로 수정한다. 

vCenter Server는 가동에 시간이 좀 걸리는 편이다. 특히, VMware Workstation에서 사용하면 더 오래 걸린다. 부팅된 이후에 vCenter Server의 애플리케이션 서버가 준비 중인 상황에서 접속하게 되면 그림과 같은 페이지가 표시된다.

scr-1584075714-001.png

VCSA를 켜거나, 리부팅할 때는 10~15분 이상 여유있게 기다리기 바란다.

vCenter Server의 전체적인 설치 과정이 궁금한 분들은 아래 동영상을 참조해보는 것도 좋다. 다만, 이 글에서 구성하는 홈랩과는 구성차이가 있다.

정말 동작할까?

동작한다! 그러나 많이 여유는 없다. VMware Workstation에 DC, VCSA, ESXi-01, ESXi-02를 실행했다. 그리고 vCenter Server에 접속하기 위해서 Firefox를 실행시켰다. 어느 정도 안정된 상태에서, AD 조인하고, 데이터센터 생성하고, 호스트 2대한 상태에서 메모리 사용량은 그림과 같다.

scr-1584079046-001.png

사용량 96%. 이 상태에서 오피스 프로그램 하나라도 띄운다면 곧 바로 메모리 스와핑이 발생할 것 같다. 이게 16GB의 한계라고 보면 되겠다.

PC가 빵빵하다면, 더 큰 랩도 가능!

개인적으로 서비스용 가상화시스템을 디자인한다면 가장 신경쓰이는 부분은 스토리지다. 그러나 홈랩은 SSD 하나면 충분해 보인다. 뭐 용량 부족하면 하나 더 꼽아주면 그만이다. CPU도 2 코어 정도면 잘 돌아간다. 홈랩이니까 ^^

그러나 조금 더 규모가 커져서 호스트 수가 3대 이상으로 간다거나, vSAN을 해본다거나, Horizon을 해본다거나 할 때는 PC가 좀 더 빵빵하면 좋다. 코어 수 보다는 메모리가 관건이다.

그래도 데스크탑은 16GB 메모리 모듈을 사용한다거나, 메모리 슬롯이 많은 워크스테이션 급도 있으니 충분히 더 큰 규모도 운영할 수 있다. 노트북은 아무래도 슬롯 수가 최대 2개 정도다 보니 메모리 확장이 좀 어려움이 있는 편이다. 상황에 따라 적절한 장비와 구성을 선택하면 된다.

글쓴이의 경우는 노트북은 메모리 16GB, SSD 1TB 확장까지만 했다. 더 큰 규모는 별도의 컴퓨터(PC 또는서버)를 장만했다.

이제 연습, 연습, 연습!

이제 무제한 연습할 수 있는 환경은 만들어졌다. 각종 메뉴들의 위치가 익숙해질 때까지 반복하면 좋다. ICM 랩 교제에 있는 내용도 한 3번은 해봐야 조금 이해가 되는 것 같다. 귀찮고, 지루하더라도 반복해서 연습하기 바란다.

세상에 공짜는 없고, 반복 없는 숙달은 없습니다.