XenSetup

Installation von Xen nach "Bitmuehle-Standard" ;-)

Xen dom0 auf Debian Jessie installieren

Kernel mit Xen-Unterstützung installieren und booten

apt-get install xen-linux-system

Bootloader-Konfiguration anpassen, damit Xen-Kernel geladen wird

dpkg-divert --divert /etc/grub.d/08_linux_xen --rename /etc/grub.d/20_linux_xen

Netzwerkkonfiguration anpassen

vi /etc/network/interfaces
# (nur der untere Teil)

# Bridge interface fuer die physikalische Netzwerkkarte
iface eth0 inet manual

# The primary network interface
auto xenbr0
iface xenbr0 inet static bridge_ports eth0 bridge_stp off address 192.168.39.39 netmask 255.255.255.0 gateway 192.168.39.1

/etc/default/grub editieren und hinzufügen:
GRUB_CMDLINE_XEN="dom0_mem=1536M dom0_max_vcpus=1 dom0_vcpus_pin"

/etc/xen/xl.conf editieren und hinzufügen:
autoballoon="off"

Bootloader updaten

update-grub

System neu starten, um den Xen-Kernel zu laden

reboot

Xen Gastsystem installieren

Erforderliche Pakete installieren

Toolstack auf XL setzen: /etc/default/xen editieren:

TOOLSTACK=xl
apt-get install xen-tools

Alternativ: apt-get install xen-tools --no-install-recommends

Optional für Verschlüsselung:

# apt-get install cryptsetup

Neustart:
reboot

Optional: Verschlüsselte Partitionen anlegen

Vor der Erstellung des Gastsystems Partitionen anlegen und mounten.
  1. Partition anlegen
    # lvcreate -n HOSTNAME-root -L 32G vg0
  2. Partition verschlüsseln
    # cryptsetup luksFormat --cipher aes-xts-plain64 --key-size 512 /dev/vg0/HOSTNAME-root
  3. Partition für Nutzung entschlüsseln
    # cryptsetup open /dev/vg0/mail-root mail-root

Gastsystem erstellen

Gastsystem / Virtuelle Maschine erstellen Variante 1: Ohne Verschlüsselung
xen-create-image --hostname=dev --vcpus=4 --memory=14gb --size=512G --lvm=ssd --fs=ext4 --nodhcp --noswap --ip=192.168.39.40 --netmask=255.255.255.0 --gateway=192.168.39.1 --bridge=xenbr0 --pygrub --dist=jessie --password=xxxx

Optionale Parameter:

--swap=8G --mac=00:50:56:00:48:A7

Variante 2: Mit Verschlüsselung (Hosting bei Hetzner): (hier ist zusätzlich noch eine verschlüsselte Swap-Partition dabei)

xen-create-image --hostname=HOSTNAME --vcpus=4 --memory=4Gb --swap-dev=/dev/mapper/HOSTNAME-swap --image-dev=/dev/mapper/HOSTNAME-root --nodhcp --ip=5.x.x.x --netmask=255.x.x.x --gateway=5.x.x.x --mac=xx:xx:xx:xx:xx:xx --bridge=xenbr0 --pygrub --dist=buster

Kein Save/Restore. Datei /etc/default/xendomains editieren und einfügen bzw. ändern:

XENDOMAINS_RESTORE=false

XENDOMAINS_SAVE=""

Autostart aktivieren. Erstmal den Ordner anlegen, falls er nicht existiert und dann Konfigurationsdatei verlinken:

mkdir /etc/xen/auto

cd /etc/xen/auto

ln -s ../<hostname>.cfg

VM starten:

xl create /etc/xen/<hostname>.cfg [-c]

Konsole zum Gastsystem öffnen:

xl console <hostname>

Konsole schließen:

STRG + ]

Maschine vom hypervisor aus herunterfahren:

xl shutdown <hostname>

Liste der VMs anzeigen:

xl list

Alternative Anbindung über NAT (in Arbeit)

Es ist möglich die virtuelle Maschine ohne eigene öffentliche IP zu betreiben. Hierbei dient dom0 als Router für ein virtuelles Netzwerk.

https://wiki.xen.org/wiki/Network_Configuration_Examples_(Xen_4.1%2B)#Network_Address_Translation_.28NAT.29
https://www.howtoforge.com/perfect_xen_setup_debian_ubuntu_p6

In der /etc/network/interfaces des Hostsystems sind keine Eintragungen erforderlich. Das Interface wird automatisch von XEN beim Start der virtuellen Maschine konfiguriert.

In der Konfigurationsdatei des virtuellen Systems muss jedoch das zu verwendende Netzwerk in der folgenden Form angegeben werden.

#

# Networking

#

vif = [ 'ip=10.0.0.11, script=vif-nat' ]

Zudem müssen in der Datei /etc/xen/xend-config.sxp folgende Zeilen aktiviert bzw. auskommentiert werden.
# (vif-script vif-bridge)

(network-script network-nat)

(vif-script vif-nat)

Hilfreiche Befehle

Management virtueller Maschinen

Liste virtueller Maschinen anzeigen

xl list

VM starten

xl create /etc/xen/turmzimmer1.cfg

VM mit Konsole starten

xl create -c /etc/xen/turmzimmer1.cfg

Konsole zur VM verbinden

xl console turmzimmer1

VM herunterfahren

xl shutdown turmzimmer1

Festplatte zu einer VM hinzufügen

Siehe auch: https://kyle.io/2011/11/how-i-learnt-to-love-xl-block-attach/
  • ID der VM (mit "xl list" ermitteln): 5
  • Gerätedatei der Festplatte (LVM) im Hypervisor: /dev/hdd/turmzimmer1-backup
  • Name der Gerätedatei in der VM: xvda2

Festplatte im laufenden Betrieb hinzufügen (hotplug)

xl block-attach 5 phy:/dev/hdd/turmzimmer1-backup xvda2 w

Wichtig: Noch in die Konfigurationsdatei /etc/xen/turmzimmer1.cfg hinzufügen (sonst fehlt die Platte beim nächsten Start):
diff turmzimmer1.cfg-bak turmzimmer1.cfg
22a23
> 'phy:/dev/hdd/turmzimmer1-backup,xvda2,w',
Topic-Revision: r9 - 08 Jan 2021, EinExperte
Diese Seite läuft auf FoswikiDas Urheberrecht © liegt bei den mitwirkenden Autoren. Alle Inhalte dieser Kollaborationsplattform sind Eigentum der Autoren.
Ideen, Anfragen oder Probleme bezüglich bitmuehle wiki? Feedback senden