ESXi를 계속쓰다가 가상화 서버를 저전력으로 구성한다고 J1900으로 바꾸면서 ESXi가 정상 부팅되지 않아 고민하다 ProxMox를 쓰게 되었습니다.
그런데 이거 ProxMox가 예상외로 물건이네요.
ESXi와 간단하게 비교하여 장점을 적어보면..
1. OpenVZ와 KVM/QEMU 두가지 가상화 방법을 제공
2. Web UI로 OS에 상관없이 접근이 가능
3. noVNC 기반으로 VM 콘솔을 Web에서 쓸수 있음
4. Debian GNU/Linux 기반으로 커스터마이징하기 쉬움
5. Snapshot, Backup, Live Migration 등 ESXi에서 지원하는 고급 기능을 쓸수있음
6. Windows, Linux, Xpenology, OS X 등을 사용 가능
7. Storage를 기능별 (ISO, Image, Template 등)로 분리하여 관리가능
8. HA 지원 한다고 함
9. Web UI인데 Mobile Page도 있음 (핸드폰으로 접속시 자동으로 Mobile Page가 뜸)
또한 회사 VPN 접속시 VirtualBox, VMWare 계열은 막혀서 불가능하지만 KVM/QEMU는 아직 가능한 장점(?)이 있습니다.
용량 또한 작아 조금만 Linux를 쓸 줄 알면 설치후 USB에 옮기면 1G 내외의 작은 용량으로 쓸 수 있습니다.
단점으로는
1. Snapshot 생성시 Independent(Persistent Disk) 개념이 없음
2. 진짜로 커스터마이징 하려면 KVM/QEMU를 알고 args를 추가해줘야 할 수도 있음
3. Bridge Mode로 vSwitch의 ESXi와 달리 UDP Multicast에 대해 별도의 설정이 필요함
4. 3D 가속이 없음
5. 1GB 내외의 USB를 만들수 있음에도 Installer가 16GB이상을 찾음 (설치 후 8G 짜리에 옮겨 써본 결과 속도만 보장되면 4GB 이상되는 USB로 부팅가능)
이정도가 아주 작은 홈 서버를 쓰는 제 입장에서 나온것입니다.
제가 원하는 OS X에서 설정 가능한 Console, KVM/QEMU 기반, USB 부팅 가능 등으로 쓰는데 아주 괜찮습니다.
간단게 설명하면
1. 다운로드
- https://www.proxmox.com/en/ 에서 다운로드 받습니다. (속도 엄청 느림)
2. 설치
- ISO 파일을 CD-R을 이용해 굽던지... https://pve.proxmox.com/wiki/Install_from_USB_Stick 를 참고하여 USB Boot media를 생성합니다.
- EFI 모드를 쓰실거면 ISO 직접 구워서 써야합니다.
- 설치 모드 자체는 쉬워서... 그냥 따라하면 됩니다면 partition 설정하고 싶으면... Debian GNU/Linux를 설치하고 PVE를 올리라고 가이드합니다.
- 저는 설치하고 그걸 다시 USB에 옮겨 USB에 Grub을 설치하여 USB 부팅하여 씁니다.
3-1. 설치 후 할일 (Update)
- Update를 하려고 하면 기본 설정된 Repository가 subsription 이라 불가능합니다.
- /etc/apt/sources.list.d/pve-enterprise.list 를 편집하여 '#' (주석)을 붙입니다.
#deb https://enterprise.proxmox.com/debian wheezy pve-enterprise
- /etc/apt/sources.list.d/pve-no-subscription.list 를 생성하여 다음 내용을 넣습니다.
deb http://download.proxmox.com/debian wheezy pve-no-subscription
- apt-get update && apt-get dist-upgrade로 업데이트를 실시합니다.
- 업데이트 완료 후 재부팅해줍니다.
3-2. 설치 후 할일 (Subscription 알림 끄기)
- Web 접속시 계속 Subscription 하라고 알림이 뜹니다.
- 여유가 되시거나 지원 받을 일이 있으면 Subscription을 신청하시고 아니면 꺼야합니다.
- /usr/share/pve-manager/ext4/pvemanagerlib.js 의 "if (data.status !== 'Active') {"를 "if (false) {"로 바꿉니다.
3-3. 설치 후 할일 (UDP Multicast 설정)
- 저같은 경우 VM 서버에 TV 서버가 있어서 UDP Multicasting이 되어야합니다.
- ProxMox의 경우 Bridge로 동작하여 Multicasting을 하려면 설정해야합니다.
- /etc/network/interfaces 의 iface vmbr0 inet static 끝에 다음을 추가합니다.
post-up echo 0 > /sys/devices/virtual/net/vmbr0/bridge/multicast_snooping
4. Web 접속
- https://ip:8006 접속하면 Console 이 뜹니다.
- 기본 ID/PW는 root 와 설치시 설정한 암호 이고 Linux PAM으로 접속하셔야 로컬 유저로 사용가능합니다.
5. 사용법
- ProxMox WIKI 검색하시면 Best Practice가 있습니다.
6. 총평
- Browser를 통해 간단히 접속 가능하여 어디에서라도 붙을 수 있습니다.
- 성능도 나쁘지 않네요.
- 저는 그냥 좋습니다.
- 저는 USB에 Hypervisor 만 넣고 부팅하고 SWAP Image는 HDD에 설정하였습니다.
또한 SSD는 OS용으로 쓰고 HDD는 Data용, NFS에 각종 Image를 넣어서 쓰고 있는데... 꽤 좋습니다.
- SPICE 를 통하면 USB도 Passthrough 된다고 하는데... 제가 맥에서 돌리는 관계로 SPICE는 사용하지 않아 잘모르겠습니다.
That's the bottom line, cause StoneCold said so!
ESXi¸»°í °£´ÜÇÏ°Ô ¼¹ö ¿Ã¸®½Ç ºÐµéÀº »ó¿ëÀ¸·Î °¡Áö ¾Ê°í ÀÌÁ¤µµ¸¸ Çصµ ÃæºÐÇÒµí ½Í½À´Ï´Ù.
ÁÁÀº±Û °¨»çÇÕ´Ï´Ù.
¸Æ µ¹¸®´Â¹ý
https://pve.proxmox.com/wiki/Pci_passthrough
Passthrough
Çغ¸Áö´Â¾Ê¾Ò½À´Ï´Ù¤»
±Ã±ÝÇÑ°Ô Àִµ¥¿ä USB ¿¡ proxmox ¸¦ ¼³Ä¡Çؼ °¡»óȸ¦ ÇÒ ¼ö Àִ°ǰ¡¿ä? ¾Æ´Ï¸é usb ¼³Ä¡ ¿ëÀΰ¡¿ä? ±Ã±ÝÇÕ¤·´Ï´Ù
¾à 1±â°¡ ³»¿ÜÀâ¾Æ¸Ô°í ºÎÆüӵµµµ ³ª»ÚÁö¾Ê½À´Ï´Ù
´Ù¸¸ ÀνºÅç·¯¿¡¼Á÷Á¢Áö¿øÇÏÁö´Â¾Ê°í ¼³Ä¡ÈÄ ¿Å°å½À´Ï´Ù
¹°·Ð IO°¡ ¸¹Àº µð·ºÅ丮´Â tmpfs·Î ó¸®ÇÏ°í swapÀº hdd¿¡¼ ¾¹´Ï´Ù
´ÜÁ¡À¸·Î À¥¿¡ Á¢¼ÓÇÒ¶§ Àоîµé¿©¼ Á¶±Ý´ÊÀº°¨ÀÌÀÖÁö¸¸ À̰͵µ squashfs·Î ó¸®ÇÏ´Â ¹æº¡ÀÌ Àֳ׿ä
³ªÁß¿¡ ½Ã°£µÉ¶§ ¿Ã¸®°Ú½À´Ï´Ù
°¨»çÇÕ´Ï´Ù
(USB·Î ¼³Ä¡°¡ ¾Æ´Ï°í..) ÇÏ´Â ¹æ¹ýÀ» ¾Ë¼ö ÀÖÀ»Áö¿ä? °í°ßÀ» ºÎŹµå¸³´Ï´Ù...
ÀÀ¿ë ¹üÀ§°¡ ²Ï ÀÖÀ»°Í °°½À´Ï´Ù.
±Ùµ¥ ¼öÁ¤ÇÏ°í ¸®º×Çߴµ¥ °è¼Ó ¶ß³×¿ä ¤Ð¤Ð
vi /usr/share/pve-manager/ext4/pvemanagerlib.js
¾ÈµÇ¾î¼
vi /usr/share/pve-manager/js/pvemanagerlib.js
ÀÌ·¸°Ô ÇÏ´Ï ¤Ð¤Ð
if (data.status !== 'Active')
À̺κÐÀÌ ¾îµð¿¡ ºÙ¿© ÀÖ´ÂÁö ãÀ»¼ö°¡ ¾ø³×¿ä.
±Ùµ¥ ¼öÁ¤À» Çߴµ¥ °è¼Ó ¶ß³ª¿ä?
¾Æ´Ï¸é ¹º°¡ ¼³Ä¡¸¦ ´Ù¸£°Ô Çß³ª? ¤Ð¤Ð