Xen
Instalace
instalace backports.
Zdroj baliku backports.
Instalace balíku z backports:
apt-get -t etch-backports install “package”
Potřebné balíky pro správnou funkčnost Xenu:
- xen-docs-3.X
- xen-hypervisor-3.X - vybíráme dle architektury systému
- xen-linux-system-2.6.X - vybíráme dle architektury systému
- xen-utils-3.X
- xen-utils-common
- xen-tools - volitelné, slouží pro automatickou spávu virtuálních serverů
Pro správu si dále můžeme doinstalovat grafickou aplikaci xenman nebo novější convirt. Objě aplikace vyžadují přítomnost GUI (KDE, Gnome,...).
Konfigurace
Ovládání
Tvorba nového virtuálního stroje
Pro toto je potřeba mít instalované xen-tools, viz tento postup. Pokud už máte vytvořený konfigurační soubor /etc/xen-tools/xen-tools.conf, pak k vytvoření virtuální mašiny stačí jediný příkaz:
xen-create-image --hostname=nejakeJmeno --ip==nejakaIPadresa
Tento příklad vytvoří image na LVM:
xen-create-image --force --hostname=nejakeJmeno --size=2Gb --memory=512M --ide --ip nejakaIPadresa --lvm vg_main --role=udev --arch=i386
- --force říká, že se má případně existující stejnomenný image přepsat
- --lvm vg_main říká, že se mají logické disky image vytvořit ve volume group "vg_main"
- --arch=i386 popř. amd64 říká, že se má vytvořit 32 nebo 64 bit image
Ovládání běhu VM, monitoring
Zvětšeni velikosti disku u paravirtualizovaneho VM
Pokud vám dojde místo na virtuálním disku, tak si jej jednoduše zvětšete. Použijeme program dd pro vytvoření pomocného souboru v našem případě 1GB.
dd if=/dev/zero of=pom.file bs=1024k count=1000
Připojíme pomocný soubor k našemu virt. disku.
cat pom.file >> disk.img
Nakonec přepočítáme(zvětšíme) velikost disku.
resize2fs -f disk.img
Zvětšení LVM disku jeho kopií
Při operaci zvětšení disku je záhodno pracovat s kopií, kdyby se něco nepovedlo, nic se neděje.
Nejdřív si vytvořme nový prázdný disk:
lvcreate -L 100G -n novy_lv vg_main
Vyrobme na něm filesystém:
mkfs.ext3 /dev/vg_main/novy_lv
Připojme jej "zaživa" k virtuálu:
xm block-attach guestdomain phy:/dev/vg_main/novy_lv /dev/hda5 w
Pak se připojme přes SSH na virtuál, disk si do něj namountujme:
mount /mnt/hda5 /dev/hda5
A zkopírujme root:
cp -axu / /mnt/hda3
Zabezpečení
Xen stroj nepotřebuje firewall, protože na něm (doufám) nebudete provozovat žádné služby. Nicméně - pozor na jednu věc: Xen má defaultně otevřené porty 8002, které se používají pro migraci virtuálních mašin z jednoho fyzického Xen stroje na druhý. Toto je skvělá věc při potřebě vypnout server, něco v něm upravit a přitom nepřerušit žádnou ze služeb, nicméně si představte, jak by tohoto mohl využít hacker.
Takže:
- pokud migraci nepotřebujete vůbec, zakažte ji takto: v souboru /etc/xen/xend-config.sxp nastavte
(xend-relocation-server no)
- pokud migraci potřebujete, zakažte přístup na port 8002 ze všech IP adres kromě stroje, ze/na který chcete migrovat - v tomto článku je ukázáno jak:
# this command disables all access to the Xen relocation port iptables -A INPUT -p tcp --destination-port 8002 -j REJECT
# this command enables Xen relocations only from the specific subnet iptables -I INPUT -p tcp --source 192.168.1.1/8 --destination-port 8002 -j ACCEPT
Problém s konzolí
U verze Xen 3.2 se nejde přihlásit pomocí konsoli do SSH virtuálu na tty, protože xen začal defaultně používat konzoli hvc.
návod: přepěnete se do konzole virtuálu a upravte
joe /etc/fstab none /dev/pts devpts defaults 0 0
a následně
apt-get install udev reboot
nebo alternativně pokud vytváříte VM pomocí xen-tools tak dle návodu na howtoforge.
Problém s časem
http://wiki.debian.org/Xen#A.27clocksource.2BAC8-0.3ATimewentbackwards.27