Proxmox VE
Enax  (vitalap | szerkesztései)  | 
			Enax  (vitalap | szerkesztései)   | 
			||
| (2 szerkesztő 48 közbeeső változata nincs mutatva) | |||
| 1. sor: | 1. sor: | ||
| − | A [http://pve.proxmox.com/wiki/Main_Page Proxmox PE] egy Debian-ra épülő virtualizációs platform. Nagyon egyszerű és gyors telepítés, könnyen konfigurálhatóság, jól dokumentáltság jellemzi leginkább a Proxmox-ot, csak is ajánlani tudom mindenkinek, aki ilyen téren valami átfogó megoldást keres.  | 
  + | Irta: Dobó László, 2009. december  | 
| − | Kiemelném a főbb tulajdonságait, csak hogy egyből megértsük mivel is állunk szemben:  | 
  + | |
| − | * Konténer alapú OpenVZ virtualizáció - konténerek lényegét, hasznosságát lásd később   | 
  + | A [http://pve.proxmox.com/wiki/Main_Page Proxmox PE] egy Debianra épülő [[Virtualizációs_technikák,_technológiák#OpenVZ|OpenVZ]]-t és KVM-et támogató   | 
| − | * KVM virtualizáció  | 
  + | virtualizációs platform.  | 
| + | A Proxmox egyszerűen és gyorsan telepíthető, könnyen konfigurálható és jó a dokumentaciója; csak   | 
||
| + | ajánlani tudom mindenkinek, aki virtualizációs megoldást keres.  | 
||
| + | A Proxmox főbb jellemzői, képességei a következők:  | 
||
| + | * Konténeralapú virtualizáció - konténerek lényegét, hasznosságát lásd később   | 
||
| + | * KVM-alapú virtualizáció  | 
||
* Bare-Metal ISO telepítő - magyarán pár perc alatt kézhez kapsz egy üres szervert.  | 
  * Bare-Metal ISO telepítő - magyarán pár perc alatt kézhez kapsz egy üres szervert.  | 
||
* WEB alapu menedzsment   | 
  * WEB alapu menedzsment   | 
||
* Cluster támogatás  | 
  * Cluster támogatás  | 
||
| − | * Mentés, Visszaállitás, Online Migrálás  | 
  + | * Mentés, visszaállitás, online migrálás  | 
| − | ==Rendszer követelmények==  | 
  + | ==Rendszerkövetelmények==  | 
| − | *64bit-es processor  | 
  + | *64bites processor  | 
| − | *1 Gb memórai (4 Gb ajánlott)  | 
  + | *1 Gb memória (4 Gb ajánlott)  | 
*1 NIC (2 ajánlott az értelmes tűzfalazáshoz)  | 
  *1 NIC (2 ajánlott az értelmes tűzfalazáshoz)  | 
||
| − | Telepítés előtt érdemes elgondolkodni azon hogy akarunk-e KVM-et használni, mert ha úgy döntünk hogy akár most akár a későbbiekben szükség lehet rá akkor okvetlen olyan processzort válsszunk, ami támogatja az '''Intel VT/AMD-V-t'''.  | 
  + | Telepítés előtt érdemes elgondolkodni azon hogy akarunk-e KVM-et használni. Amennyiben úgy döntünk hogy akár most akár a későbbiekben szükség lehet rá, akkor okvetlen olyan processzort válsszunk, ami támogatja az '''Intel VT/AMD-V-t'''.  | 
==Telepítés==  | 
  ==Telepítés==  | 
||
| − | *Hagyományos:  | 
  + | === Saját telepítőjével ===  | 
| − | A telepítéshez nem sok mindent fűznék hozzá, már majd nem Win szindróma: next,next,finish...  | 
  ||
| − | Azonban amire érdemes odafigyelni, az az hogy a Proxmox PE nem támogat software raid-et és úgy néz ki nem is fog.  | 
  ||
| − | Szóval szerver vásárláskor vagy költünk a hw raid-re vagy marad a HACK, már amennyiben szeretnénk adatainkat biztonságban tudni.  | 
  ||
| − | *Már létező Debiánra:  | 
  + | Nem nagyon van mit hozzáfűzni: next, next, finish.  | 
| + | |||
| + | Ugyanakkor vegyük figyelembe, hogy a Proxmox PE nem támogatja a [[Software RAID Linux Alatt|software RAID]]-et, és úgy néz ki, nem is fogja. Így aztán vagy vásárolunk hardveres RAID-vezérlőt, vagy manuális gányolással állítjuk be a softraidet, ha fontos a rendelkezésreállás.  | 
||
| + | |||
| + | === Már létező Debianra ===  | 
||
Szerkesszük meg a sources.list-et:  | 
  Szerkesszük meg a sources.list-et:  | 
||
| − |  nano /etc/apt/sources.list  | 
  ||
| − | Írjuk bele a következő sort:  | 
  + | <pre>  | 
| + | echo deb http://download.proxmox.com/debian lenny pve >>/etc/apt/sources.list  | 
||
| + | </pre>  | 
||
| + | |||
| + | Adjuk hozzá a rendszerünkhöz a Proxmox PE repository kulcsát:  | 
||
| + | |||
| + | <pre>  | 
||
| + | wget -q -O- http://download.proxmox.com/debian/key.asc | apt-key add -  | 
||
| + | </pre>  | 
||
| + | |||
| + | Frissítsük a csomaglistát:  | 
||
| + | |||
| + | <pre>  | 
||
| + | apt-get update  | 
||
| + | </pre>  | 
||
| + | |||
| + | Telepítsük a Proxmox PE kernelét:  | 
||
| + | |||
| + | <pre>  | 
||
| + | apt-get install pve-kernel  | 
||
| + | </pre>  | 
||
| + | |||
| + | Ha szükséges, állítsuk be a bootloaderünket, hogy ezt a kernelt töltse be a következő bootkor, majd rebootoljunk.  | 
||
| + | |||
| + | Telepítsük a Proxmox PE-vel összefüggő további csomagokat:  | 
||
| + | |||
| + | <pre>  | 
||
| + | apt-get install proxmox-ve ntp  | 
||
| + | </pre>  | 
||
| + | |||
| + | ... és már csatlakozhatunk is a webes felületre.  | 
||
| + | |||
| + | ===Finomhangolás===  | 
||
| + | |||
| + | A Proxmox fő konfigurációs file-ja a /etc/vz/vz.conf-ban található. Ebben módosithatjuk többek között a környezeti változóit,loglevelt és a betöltendő IPv4-6 kernel modulokat.  | 
||
| + | |||
| + | == A webes felület ==  | 
||
| + | |||
| + | A webes menedzsment-felületet igen kényelmes. A következő beállításokat teszi lehetővé a hosztgéppel kapcsolatban:  | 
||
| + | |||
| + | * rendszeridő;  | 
||
| + | * DNS-szerver;  | 
||
| + | * IP-címek;  | 
||
| + | * mentés ütemezése;  | 
||
| + | * custering.  | 
||
| + | |||
| + | Emellett a virtuális gépeinket:  | 
||
| + | |||
| + | * elindíthatjuk;  | 
||
| + | * leállíthatjuk;  | 
||
| + | * újraindíthatjuk;  | 
||
| + | * migrálhatjuk egyik gépről a másikra, akár online is;  | 
||
| + | |||
| + | Néhány kattintással új virtuális gépet is létrehozhatunk.  | 
||
| + | |||
| + | <tt>sun-java6-plugin</tt>-re szükség lesz. [[Fájl:800px-Screen-startpage-with-cluster.png|thumb|150px]]  | 
||
| + | |||
| + | ==Virtuális gép telepítése==  | 
||
| + | |||
| + | Kétféle virtualizációs megoldás közül választhatunk, és ezeket szabadon keverhetjük: OpenVZ ill. KVM.  | 
||
| + | |||
| + | === Konténeralapú virtualizáció: OpenVZ ===  | 
||
| + | |||
| + | Linuxot futtató virtuális szerverek üzemeltetéséhez ezt a technológiát ajánlom. Minden egyes virtuális gép egy külön konténerbe kerül; a létrehozáskor megadott adatokat (tárhely, memória, cpu-k száma, cpu-idő korlátozása) bármikor megváltoztathatjuk. A konténerek igen nagy előnye, hogy fájlrendszerszinten elérhetők (alapértelmezett esetben a <tt>/var/lib/vz/private/vmid</tt> alatt).  | 
||
| + | |||
| + | Egy új virtuális gép a webes menedzsment-felületről pár kattintással létrehozható; ehhez nem fűznék különösebb magyarázatot.   | 
||
| + | |||
| + | [[Fájl:1.png|thumb|150px]] [[Fájl:2.png|thumb|150px]]  | 
||
| + | |||
| + | Ha scriptből szeretnénk virtuális gépet létrehozni, az sem lehetetlen; lássunk egy példát.  | 
||
| + | |||
| + | <pre>  | 
||
| + | #!/bin/bash  | 
||
| + | #-----------------------------------------------------  | 
||
| + | #Initial VM variables  | 
||
| + | #-----------------------------------------------------  | 
||
| + | vmdescription="debian-test VM"  | 
||
| + | vmid=444  | 
||
| + | vmhostname="test"  | 
||
| + | vmostemplate="debian-5.0-standard_5.0-1_i386.tar.gz"  | 
||
| + | vmrootpasswd='$1$EgSNc8pS$dc4aP14RZUVeUPjZiD5WM1'  | 
||
| + | vmdiskspace=8  | 
||
| + | vmmem=1024  | 
||
| + | vmswap=2048  | 
||
| + | vmcpu=1  | 
||
| + | vmifdev="eth0"  | 
||
| + | vmbridge="vmbr1"  | 
||
| + | vmipaddr="10.0.1.2"  | 
||
| + | vmnetmask="255.255.255.0"  | 
||
| + | vmgateway="10.0.1.1"  | 
||
| + | vmnameserver="1.2.3.4"  | 
||
| + | vmonboot="yes"  | 
||
| + | vmprivate="/var/lib/vz/private"  | 
||
| + | vmtimezone="Europe/Budapest"  | 
||
| + | echo "Creating VM..."  | 
||
| + | pvectl vzcreate $vmid --disk $vmdiskspace --ostemplate $vmostemplate --rootpasswd $vmrootpasswd --hostname $vmhostname --description $vmdescription --onboot $vmonboot --swap $vmswap --mem $vmmem --cpus $vmcpu --netif "ifname=$vmifdev,bridge=$vmbridge"  | 
||
| + | echo "Configuring VM..."  | 
||
| + | echo -e "auto $vmifdev\niface $vmifdev inet static\n	address $vmipaddr\nnetmask $vmnetmask\n	gateway  $vmgateway" >> $vmprivate/$vmid/etc/network/interfaces  | 
||
| + | echo "nameserver $vmnameserver" > $vmprivate/$vmid/etc/resolv.conf  | 
||
| + | echo $timezone > $vmprivate/$vmid/etc/timezone  | 
||
| + | echo "Starting VM..."  | 
||
| + | vzctl start $vmid  | 
||
| + | </pre>  | 
||
| + | |||
| + | A virtuális gép hálózatra való kijuttatását kétféleképpen oldhatjuk meg:  | 
||
| + | |||
| + | # Virtuális Hálózattal (venet)  | 
||
| + | #* Előnye: menedzsent-felületen összekattingatva már működik is.  | 
||
| + | #* Hátránya: megjegyezhetetlen, nem átlátható eszközneveket kapunk.  | 
||
| + | #Hídba kapcsolt ethernettel (veth)  | 
||
| + | #* Előnye: Átlátható, világos eszköznevek.  | 
||
| + | #* Hátránya: kézzel kell konfigolni a konténer alatti /etc/network/interfaces fájlban (vagy ennek disztribúciófüggő helyi megfelelőjében).  | 
||
| + | |||
| + | === Paravirtualizáció: KVM ===  | 
||
| + | |||
| + | Ez a megoldás a Xenre hasonlít; a virtuális gépek saját virtualizált hardware-en futnak, és a hosztgép kernele a hipervizor. Akkor érdemes használni, ha Linuxtól eltérő operációs rendszert virtualizálunk, vagy ha fontos, hogy a virtuális gépben egy konkrét, a hosztgépétől eltérő kernelverzió fusson.  | 
||
| + | |||
| + | A megoldás nagy hátránya, hogy a hosztgépről nem tudunk automatikusan közvetlenül hozzáférni a virtuális gép fájlrendszeréhez.  | 
||
| + | |||
| + | KVM-es virtuális gépet szintén létrehozhatunk a webes felületről, de parancssoros eszközzel is:  | 
||
| + | |||
| + | <pre>  | 
||
| + | #-----------------------------------------------------  | 
||
| + | #Initial QM variables  | 
||
| + | #-----------------------------------------------------  | 
||
| + | qmname="KVM test VM"  | 
||
| + | qmid="666"  | 
||
| + | qmmem="512"  | 
||
| + | qmdiskspace="8"  | 
||
| + | qmcpu="1"  | 
||
| + | qmostype="other"  | 
||
| + | qmonboot="no"  | 
||
| + | qmmac="F6:B4:59:58:4A:B0"  | 
||
| + | qmnetdev="rtl8139"  | 
||
| + | qm create $qmid --ide0 $qmdiskspace --ostype qmostype --memory $qmmem --onboot $qmonboot --cdrom cdrom --name $qmname --vlan0  $qmnetdev=$qmmac --smp $qmcpu --bootdisk ide0  | 
||
| + | </pre>  | 
||
| + | |||
| + | == Mindennapi használat ==  | 
||
| + | |||
| + | === OpenVZ-s virtuális gépek menedzselése a hosztról ===  | 
||
| + | |||
| + | A  | 
||
| + | |||
| + | <pre>  | 
||
| + | vzctl enter vmid  | 
||
| + | </pre>  | 
||
| + | |||
| + | paranccsal azonnal beléphetünk, rootként, a futó virtuális gépbe (ez ugyanúgy működik, mint a vservernél).  | 
||
| + | |||
| + | === OpenVZ-s virtuális gépek listázása ===  | 
||
| + | <pre>  | 
||
| + | # vzlist  | 
||
| + |  CTID      NPROC STATUS  IP_ADDR         HOSTNAME                          | 
||
| + |   157         38 running -               test                            | 
||
| + |   161         36 running -               test1  | 
||
| + | </pre>  | 
||
| + | |||
| + | Ebben a listában a KVM-es gépek sajnos nem jelennek meg.  | 
||
| + | |||
| + | === Új hálózati kártya hozzáadása OpenVZ-s guesthez ===  | 
||
| + | |||
| + | <pre>  | 
||
| + | # vzctl set 103 --netif_add eth1 --save  | 
||
| + | Saved parameters for CT 103  | 
||
| + | </pre>  | 
||
| + | |||
| + | === Parancs futtatása virtuális gépben ===  | 
||
| + | |||
| + | Ahogyan a vservernél, itt is elegendő egy  | 
||
| + | |||
| + | <pre>  | 
||
| + | vzctl exec vmid apt-get -y upgrade  | 
||
| + | </pre>  | 
||
| − |  deb http://download.proxmox.com/debian lenny pve  | 
  + | parancs ahhoz, hogy a megadott virtuális gépen lefuttassunk egy apt-get műveletet. Ehhez nem is kell explicite belépni a virtuális gépbe. A parancs terminálja a vzctl-t futtató user terminálja lesz.  | 
| − | Ajuk hozzá a Proxmox PE repó kulcsot:  | 
  + | === Tűzfal OpenVZ-s virtuális gépben ===  | 
| − |  wget -O- "http://download.proxmox.com/debian/key.asc" | apt-key add -  | 
  + | Ahhoz, hogy az <tt>iptables</tt> működhessen a konténerben, engedélyezni kell a megfelelő NetFilter-modulokat egyrészt a <tt>/etc/vz/vz.conf</tt>-ban, másrészt magában a konténerben is. A <tt>/etc/vz/vz.conf</tt> megfelelő sorát így kell kibővíteni:  | 
| − | Frissitsük be a rendszerünket:  | 
  + | <pre>  | 
| + | IPTABLES="ipt_REJECT ipt_tos ipt_limit ipt_multiport iptable_filter iptable_mangle ipt_TCPMSS ipt_tcpmss ipt_ttl ipt_length \  | 
||
| + | ip_conntrack ip_conntrack_ftp ip_conntrack_irc ipt_LOG ipt_conntrack ipt_helper \  | 
||
| + | ipt_state iptable_nat ip_nat_ftp ip_nat_irc ipt_TOS"  | 
||
| + | </pre>  | 
||
| − |  aptitude update  | 
  + | A módosítás után újra kell indítani a vz szolgáltatást (<tt>/etc/init.d/vz restart</tt>). Figyelem, ez leállítja a futó virtuális gépeket!  | 
| − |  aptitude upgrade  | 
  ||
| − | Telepítsük fel a Proxmox PE kernelt:  | 
  + | Az adott konténerben is engedélyezni kell ezen modulok használatát:  | 
| − |  apt-get install pve-kernel  | 
  + | <pre>  | 
| + | # vzctl set 103 --iptables ipt_REJECT --iptables ipt_tos --iptables ipt_TOS --iptables ipt_LOG --iptables ip_conntrack \  | 
||
| + | --iptables ipt_limit --iptables ipt_multiport --iptables iptable_filter --iptables  iptable_mangle --iptables ipt_TCPMSS \  | 
||
| + | --iptables ipt_tcpmss --iptables ipt_ttl --iptables ipt_length --iptables ipt_state --iptables iptable_nat \  | 
||
| + | --iptables ip_nat_ftp --save  | 
||
| + | Saved parameters for CT 103  | 
||
| + | </pre>  | 
||
| − | Amennyiben azt szeretnénk hogy alapértelmezetten a Proxmox PE kernel indúljon el:  | 
  + | Ezután a konténert is újra kell indítani, hogy érvényt szerezzünk a változtatásoknak.  | 
| − | |||
| − |  nano /boot/grub/menu.lst  | 
  ||
| − | Proxmox PE csomagok telepítése:  | 
  + | === I/O-tuning ===  | 
| − |  apt-get install proxmox-ve ntp  | 
  + | Ha feltűnően lassú az I/O a virtuális gépekben érdemes a következők valamelyikével próbálkozni:  | 
| − | már csatlakozhatunk is a web-es felületre  | 
  + | <pre>  | 
| + | for i in /sys/block/sd?/queue/scheduler; do  | 
||
| + |   echo deadline > $i  | 
||
| + | done  | 
||
| + | </pre>  | 
||
| − | ==Web-es felület==  | 
  + | Vagy:  | 
| − | A web-es felület nagyon kényelmes menedzsment felületet biztosit számunkra. Szerver részről tudjuk állitani a system időt,DNS szervert adhatunk meg, szerverünk ip cimét állithatjuk, mentés ütemezést, custeringet állithatunk.  | 
  + | <pre>  | 
| − | Virtuálgép részről pedig elindithatjuk,leállithatjuk,újraindithatjuk őket, valamint migrálhatunk egyik szerverről a másikra, akán online is. Mindössze pár kattintással létre hozhatunk új virtuál gépet.  | 
  + | for i in /sys/block/sd?/queue/scheduler; do  | 
| − | Ja igent sun-java6-plugin-re szükség lesz.  | 
  + |   echo cfq > $i  | 
| + | done  | 
||
| + | </pre>  | 
||
| − | ==Virtuál gép telepítés==  | 
  + | === Softraid és LVM ===  | 
| − | *Konténer alapú Openvz  | 
  + | A Proxmox alapértelmezés szerint LVM-re telepíti a root filesystemet is, amivel nincs is különösebb gond. Utólag az [[LVM#LVM_.C3.A9s_RAID|LVM szócikkben]] leírtak szerint RAIDesíthetjük a rendszerünket.  | 
| − | [[Fájl:1.png|thumb|150px]]  | 
  + | Én személy szerint úgy éreztem, hogy ha a rootfs-t softraid fölötti LVM-re tettem, attól a rendszerem lelassult, de kimérni nem mértem ki. YMMV.  | 
| − | [[Fájl:2.png|thumb|150px]]  | 
  + | Arról semmiképpen ne feledkezzünk meg, hogy a Proxmox kerneléhez tartozó initrd-t újrageneráljuk úgy, hogy belekerüljön az mdadm, hiszen különben nem lesz, ami az LVM alatt összerakja nekünk a RAIDet a boot során.  | 
| − | *KVM  | 
  ||
A lap jelenlegi, 2009. december 15., 17:02-kori változata
Irta: Dobó László, 2009. december
A Proxmox PE egy Debianra épülő OpenVZ-t és KVM-et támogató virtualizációs platform. A Proxmox egyszerűen és gyorsan telepíthető, könnyen konfigurálható és jó a dokumentaciója; csak ajánlani tudom mindenkinek, aki virtualizációs megoldást keres. A Proxmox főbb jellemzői, képességei a következők:
- Konténeralapú virtualizáció - konténerek lényegét, hasznosságát lásd később
 - KVM-alapú virtualizáció
 - Bare-Metal ISO telepítő - magyarán pár perc alatt kézhez kapsz egy üres szervert.
 - WEB alapu menedzsment
 - Cluster támogatás
 - Mentés, visszaállitás, online migrálás
 
Tartalomjegyzék | 
[szerkesztés] 1 Rendszerkövetelmények
- 64bites processor
 - 1 Gb memória (4 Gb ajánlott)
 - 1 NIC (2 ajánlott az értelmes tűzfalazáshoz)
 
Telepítés előtt érdemes elgondolkodni azon hogy akarunk-e KVM-et használni. Amennyiben úgy döntünk hogy akár most akár a későbbiekben szükség lehet rá, akkor okvetlen olyan processzort válsszunk, ami támogatja az Intel VT/AMD-V-t.
[szerkesztés] 2 Telepítés
[szerkesztés] 2.1 Saját telepítőjével
Nem nagyon van mit hozzáfűzni: next, next, finish.
Ugyanakkor vegyük figyelembe, hogy a Proxmox PE nem támogatja a software RAID-et, és úgy néz ki, nem is fogja. Így aztán vagy vásárolunk hardveres RAID-vezérlőt, vagy manuális gányolással állítjuk be a softraidet, ha fontos a rendelkezésreállás.
[szerkesztés] 2.2 Már létező Debianra
Szerkesszük meg a sources.list-et:
echo deb http://download.proxmox.com/debian lenny pve >>/etc/apt/sources.list
Adjuk hozzá a rendszerünkhöz a Proxmox PE repository kulcsát:
wget -q -O- http://download.proxmox.com/debian/key.asc | apt-key add -
Frissítsük a csomaglistát:
apt-get update
Telepítsük a Proxmox PE kernelét:
apt-get install pve-kernel
Ha szükséges, állítsuk be a bootloaderünket, hogy ezt a kernelt töltse be a következő bootkor, majd rebootoljunk.
Telepítsük a Proxmox PE-vel összefüggő további csomagokat:
apt-get install proxmox-ve ntp
... és már csatlakozhatunk is a webes felületre.
[szerkesztés] 2.3 Finomhangolás
A Proxmox fő konfigurációs file-ja a /etc/vz/vz.conf-ban található. Ebben módosithatjuk többek között a környezeti változóit,loglevelt és a betöltendő IPv4-6 kernel modulokat.
[szerkesztés] 3 A webes felület
A webes menedzsment-felületet igen kényelmes. A következő beállításokat teszi lehetővé a hosztgéppel kapcsolatban:
- rendszeridő;
 - DNS-szerver;
 - IP-címek;
 - mentés ütemezése;
 - custering.
 
Emellett a virtuális gépeinket:
- elindíthatjuk;
 - leállíthatjuk;
 - újraindíthatjuk;
 - migrálhatjuk egyik gépről a másikra, akár online is;
 
Néhány kattintással új virtuális gépet is létrehozhatunk.
sun-java6-plugin-re szükség lesz.[szerkesztés] 4 Virtuális gép telepítése
Kétféle virtualizációs megoldás közül választhatunk, és ezeket szabadon keverhetjük: OpenVZ ill. KVM.
[szerkesztés] 4.1 Konténeralapú virtualizáció: OpenVZ
Linuxot futtató virtuális szerverek üzemeltetéséhez ezt a technológiát ajánlom. Minden egyes virtuális gép egy külön konténerbe kerül; a létrehozáskor megadott adatokat (tárhely, memória, cpu-k száma, cpu-idő korlátozása) bármikor megváltoztathatjuk. A konténerek igen nagy előnye, hogy fájlrendszerszinten elérhetők (alapértelmezett esetben a /var/lib/vz/private/vmid alatt).
Egy új virtuális gép a webes menedzsment-felületről pár kattintással létrehozható; ehhez nem fűznék különösebb magyarázatot.
Ha scriptből szeretnénk virtuális gépet létrehozni, az sem lehetetlen; lássunk egy példát.
#!/bin/bash #----------------------------------------------------- #Initial VM variables #----------------------------------------------------- vmdescription="debian-test VM" vmid=444 vmhostname="test" vmostemplate="debian-5.0-standard_5.0-1_i386.tar.gz" vmrootpasswd='$1$EgSNc8pS$dc4aP14RZUVeUPjZiD5WM1' vmdiskspace=8 vmmem=1024 vmswap=2048 vmcpu=1 vmifdev="eth0" vmbridge="vmbr1" vmipaddr="10.0.1.2" vmnetmask="255.255.255.0" vmgateway="10.0.1.1" vmnameserver="1.2.3.4" vmonboot="yes" vmprivate="/var/lib/vz/private" vmtimezone="Europe/Budapest" echo "Creating VM..." pvectl vzcreate $vmid --disk $vmdiskspace --ostemplate $vmostemplate --rootpasswd $vmrootpasswd --hostname $vmhostname --description $vmdescription --onboot $vmonboot --swap $vmswap --mem $vmmem --cpus $vmcpu --netif "ifname=$vmifdev,bridge=$vmbridge" echo "Configuring VM..." echo -e "auto $vmifdev\niface $vmifdev inet static\n address $vmipaddr\nnetmask $vmnetmask\n gateway $vmgateway" >> $vmprivate/$vmid/etc/network/interfaces echo "nameserver $vmnameserver" > $vmprivate/$vmid/etc/resolv.conf echo $timezone > $vmprivate/$vmid/etc/timezone echo "Starting VM..." vzctl start $vmid
A virtuális gép hálózatra való kijuttatását kétféleképpen oldhatjuk meg:
-  Virtuális Hálózattal (venet)
- Előnye: menedzsent-felületen összekattingatva már működik is.
 - Hátránya: megjegyezhetetlen, nem átlátható eszközneveket kapunk.
 
 - Hídba kapcsolt ethernettel (veth)
- Előnye: Átlátható, világos eszköznevek.
 - Hátránya: kézzel kell konfigolni a konténer alatti /etc/network/interfaces fájlban (vagy ennek disztribúciófüggő helyi megfelelőjében).
 
 
[szerkesztés] 4.2 Paravirtualizáció: KVM
Ez a megoldás a Xenre hasonlít; a virtuális gépek saját virtualizált hardware-en futnak, és a hosztgép kernele a hipervizor. Akkor érdemes használni, ha Linuxtól eltérő operációs rendszert virtualizálunk, vagy ha fontos, hogy a virtuális gépben egy konkrét, a hosztgépétől eltérő kernelverzió fusson.
A megoldás nagy hátránya, hogy a hosztgépről nem tudunk automatikusan közvetlenül hozzáférni a virtuális gép fájlrendszeréhez.
KVM-es virtuális gépet szintén létrehozhatunk a webes felületről, de parancssoros eszközzel is:
#----------------------------------------------------- #Initial QM variables #----------------------------------------------------- qmname="KVM test VM" qmid="666" qmmem="512" qmdiskspace="8" qmcpu="1" qmostype="other" qmonboot="no" qmmac="F6:B4:59:58:4A:B0" qmnetdev="rtl8139" qm create $qmid --ide0 $qmdiskspace --ostype qmostype --memory $qmmem --onboot $qmonboot --cdrom cdrom --name $qmname --vlan0 $qmnetdev=$qmmac --smp $qmcpu --bootdisk ide0
[szerkesztés] 5 Mindennapi használat
[szerkesztés] 5.1 OpenVZ-s virtuális gépek menedzselése a hosztról
A
vzctl enter vmid
paranccsal azonnal beléphetünk, rootként, a futó virtuális gépbe (ez ugyanúgy működik, mint a vservernél).
[szerkesztés] 5.2 OpenVZ-s virtuális gépek listázása
# vzlist CTID NPROC STATUS IP_ADDR HOSTNAME 157 38 running - test 161 36 running - test1
Ebben a listában a KVM-es gépek sajnos nem jelennek meg.
[szerkesztés] 5.3 Új hálózati kártya hozzáadása OpenVZ-s guesthez
# vzctl set 103 --netif_add eth1 --save Saved parameters for CT 103
[szerkesztés] 5.4 Parancs futtatása virtuális gépben
Ahogyan a vservernél, itt is elegendő egy
vzctl exec vmid apt-get -y upgrade
parancs ahhoz, hogy a megadott virtuális gépen lefuttassunk egy apt-get műveletet. Ehhez nem is kell explicite belépni a virtuális gépbe. A parancs terminálja a vzctl-t futtató user terminálja lesz.
[szerkesztés] 5.5 Tűzfal OpenVZ-s virtuális gépben
Ahhoz, hogy az iptables működhessen a konténerben, engedélyezni kell a megfelelő NetFilter-modulokat egyrészt a /etc/vz/vz.conf-ban, másrészt magában a konténerben is. A /etc/vz/vz.conf megfelelő sorát így kell kibővíteni:
IPTABLES="ipt_REJECT ipt_tos ipt_limit ipt_multiport iptable_filter iptable_mangle ipt_TCPMSS ipt_tcpmss ipt_ttl ipt_length \ ip_conntrack ip_conntrack_ftp ip_conntrack_irc ipt_LOG ipt_conntrack ipt_helper \ ipt_state iptable_nat ip_nat_ftp ip_nat_irc ipt_TOS"
A módosítás után újra kell indítani a vz szolgáltatást (/etc/init.d/vz restart). Figyelem, ez leállítja a futó virtuális gépeket!
Az adott konténerben is engedélyezni kell ezen modulok használatát:
# vzctl set 103 --iptables ipt_REJECT --iptables ipt_tos --iptables ipt_TOS --iptables ipt_LOG --iptables ip_conntrack \ --iptables ipt_limit --iptables ipt_multiport --iptables iptable_filter --iptables iptable_mangle --iptables ipt_TCPMSS \ --iptables ipt_tcpmss --iptables ipt_ttl --iptables ipt_length --iptables ipt_state --iptables iptable_nat \ --iptables ip_nat_ftp --save Saved parameters for CT 103
Ezután a konténert is újra kell indítani, hogy érvényt szerezzünk a változtatásoknak.
[szerkesztés] 5.6 I/O-tuning
Ha feltűnően lassú az I/O a virtuális gépekben érdemes a következők valamelyikével próbálkozni:
for i in /sys/block/sd?/queue/scheduler; do echo deadline > $i done
Vagy:
for i in /sys/block/sd?/queue/scheduler; do echo cfq > $i done
[szerkesztés] 5.7 Softraid és LVM
A Proxmox alapértelmezés szerint LVM-re telepíti a root filesystemet is, amivel nincs is különösebb gond. Utólag az LVM szócikkben leírtak szerint RAIDesíthetjük a rendszerünket.
Én személy szerint úgy éreztem, hogy ha a rootfs-t softraid fölötti LVM-re tettem, attól a rendszerem lelassult, de kimérni nem mértem ki. YMMV.
Arról semmiképpen ne feledkezzünk meg, hogy a Proxmox kerneléhez tartozó initrd-t újrageneráljuk úgy, hogy belekerüljön az mdadm, hiszen különben nem lesz, ami az LVM alatt összerakja nekünk a RAIDet a boot során.


