Xen

Z Wiki UnArt Slavičín
Verze z 19. 2. 2011, 21:01, kterou vytvořil Dulik (diskuse | příspěvky) (→‎Zvětšení LVM disku jeho kopií)
(rozdíl) ← Starší verze | zobrazit aktuální verzi (rozdíl) | Novější verze → (rozdíl)
Skočit na navigaciSkočit na vyhledávání

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)
 # 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