Mate (Server): Unterschied zwischen den Versionen
(Mitglieder VMs) |
(Vielzuviele Details zur Performanceoptimierung unter KVM reingehackt.) |
||
Zeile 57: | Zeile 57: | ||
</pre> | </pre> | ||
== Besondere Einstellungen auf dem Hypervisor == | |||
Die Default-Linux-Einstellungen (bzw die von Debian) sind etwas ungünstig für Performance. Folgendes sollte geändert werden: | |||
* '''Default-Scheduler von cfq auf deadline''' (Kernel-Parameter elevator=deadline <ref name="KER-PAR-01">[http://www.mjmwired.net/kernel/Documentation/kernel-parameters.txt#796 Dokumentation zum Kernel-Parameter elevator] </ref> in '''/etc/default/grub''' setzen, danach '''update-grub2''' ausführen) | |||
* '''Hugepages''' erlauben (in '''/etc/rc.local''') <ref name=KVM-TUN-01">[http://sheepdog.taobao.org/people/zituan/kvm_tuning.html#sec-1-2 KVM Memory Tuning]</ref>: | |||
** '''echo 1 > /sys/kernel/mm/transparent_hugepage/khugepaged/defrag''' | |||
** '''echo always > /sys/kernel/mm/transparent_hugepage/enabled''' | |||
** '''echo never > /sys/kernel/mm/transparent_hugepage/defrag''' | |||
* Prüfen, ob das Modul '''vhost_net''' geladen ist | |||
== Besondere Einstellungen auf den virtuellen Maschinen == | |||
=== In der Config für die VM === | |||
* Das '''Platten-Image''' muß '''raw''' und '''pre-allokiert''' sein. qcow2 und dynamische Allokierung ist wirklich langsam. | |||
* Der Modus des Festplatten-Controllers muß '''virtio''' sein (Achtung: Die Platten in den VMs sind dann '''vda, vdb etc''' anstatt '''sda, sdb etc''') | |||
* Das '''Plattenimage''' muß den '''Cache-Modus''' auf '''none''' gesetzt haben ('''<driver name='qemu' type='raw' cache='none'/>''') | |||
* Der Typ des '''Netzwerkinterfaces''' muß '''virtio''' sein ('''<model type='virtio'/>''') | |||
=== In der VM selbst === | |||
* '''Default-Scheduler von cfq auf moop''' (Kernel-Parameter elevator=noop <ref name="KER-PAR-01">[http://www.mjmwired.net/kernel/Documentation/kernel-parameters.txt#796 Dokumentation zum Kernel-Parameter elevator] </ref> in '''/etc/default/grub''' setzen, danach '''update-grub2''' ausführen) | |||
* '''Tickless Kernel aktivieren''' (Kernel-Parameter nohz=on <ref name="KER-PAR-02">[http://www.mjmwired.net/kernel/Documentation/kernel-parameters.txt#1855 Dokumentation zum Kernel-Parameter nohz] </ref> in '''/etc/default/grub''' setzen, danach '''update-grub2''' ausführen) | |||
* Prüfen, ob die Module '''virtio-blk''' und '''virtio-net''' geladen sind | |||
== Unterseiten == | == Unterseiten == | ||
<splist /> | <splist /> | ||
== Einzelnachweise == | |||
<references /> |
Version vom 21. November 2012, 23:00 Uhr
Mate (Server) Release status: experimental [box doku] | |
---|---|
Beschreibung | |
Autor(en) | NOC-Team |
Mate ist ein Server, der als Ersatz der Blackbox und Datengrab dient.
Technische Daten
CPU | AMD Turion II Neo N40L 2x 1.5 GHz |
RAM | 2x 8GB Transcend DDR3 1333MHz PC3-10666 CL9 DIMM |
HDDs | 5x1TB (Hitachi HDS721010DLE630) RAID5 über alle Platten, 4TB nutzbar, LVM, Platten werden über smartd gemonitort und an netzwerk (ät) rzl dot de im Fehlerfalle geschickt |
USB | 1x Onboard, 4x Front, 2x Hinten |
Verbrauch | 60W aktiv / 35W idle (Messung mit einem schlechten Messgerät) |
Virtualisierung | libvirt/KVM |
Dienste
Die Infrastruktur befindet sich noch im Aufbau. Aktuell können noch keine Mitglieder VMs erstellt werden.
Neue Debian-VM ohne GUI, nur mittels shell installieren (serielle console)
Vor der Installation neues, leeres Image anlegen:
fallocate -l 40G filename.img
Dann Netzinstallation starten:
virt-install --connect qemu:///system --name=monitoring --ram=<raminmb> \ --vcpus=1 --disk path=<diskpfad>,format=raw --os-type linux --os-variant debianwheezy \ --nographics --location http://ftp.de.debian.org/debian/dists/wheezy/main/installer-amd64/ \ --extra-args=console=tty0 console=ttyS0,115200n8 -v
Besondere Einstellungen auf dem Hypervisor
Die Default-Linux-Einstellungen (bzw die von Debian) sind etwas ungünstig für Performance. Folgendes sollte geändert werden:
- Default-Scheduler von cfq auf deadline (Kernel-Parameter elevator=deadline <ref name="KER-PAR-01">Dokumentation zum Kernel-Parameter elevator </ref> in /etc/default/grub setzen, danach update-grub2 ausführen)
- Hugepages erlauben (in /etc/rc.local) <ref name=KVM-TUN-01">KVM Memory Tuning</ref>:
- echo 1 > /sys/kernel/mm/transparent_hugepage/khugepaged/defrag
- echo always > /sys/kernel/mm/transparent_hugepage/enabled
- echo never > /sys/kernel/mm/transparent_hugepage/defrag
- Prüfen, ob das Modul vhost_net geladen ist
Besondere Einstellungen auf den virtuellen Maschinen
In der Config für die VM
- Das Platten-Image muß raw und pre-allokiert sein. qcow2 und dynamische Allokierung ist wirklich langsam.
- Der Modus des Festplatten-Controllers muß virtio sein (Achtung: Die Platten in den VMs sind dann vda, vdb etc anstatt sda, sdb etc)
- Das Plattenimage muß den Cache-Modus auf none gesetzt haben (<driver name='qemu' type='raw' cache='none'/>)
- Der Typ des Netzwerkinterfaces muß virtio sein (<model type='virtio'/>)
In der VM selbst
- Default-Scheduler von cfq auf moop (Kernel-Parameter elevator=noop <ref name="KER-PAR-01">Dokumentation zum Kernel-Parameter elevator </ref> in /etc/default/grub setzen, danach update-grub2 ausführen)
- Tickless Kernel aktivieren (Kernel-Parameter nohz=on <ref name="KER-PAR-02">Dokumentation zum Kernel-Parameter nohz </ref> in /etc/default/grub setzen, danach update-grub2 ausführen)
- Prüfen, ob die Module virtio-blk und virtio-net geladen sind
Unterseiten
<splist />
Einzelnachweise
<references />