= Konfiguration der Software = /!\ Work in progress /!\ {{{ apt-get install openssh-server vi /etc/ssh/sshd_config PermitRootLogin no /etc/init.d/ssh restart vi /etc/inittab H0:2345:respawn:/sbin/getty -L hvc0 115200 vt100 init q apt-get install xen-hypervisor-3.2-1-amd64 linux-image-xen-amd64 xen-tools apt-get install vlan apt-get remove --purge dhcp3-client dhcp3-common vi /etc/resolv.conf domain ping.de search ping.de nameserver 193.99.160.70 nameserver 83.97.42.2 nameserver 83.97.42.23 nameserver 83.97.42.196 nameserver 83.97.42.197 apt-get install debsums apt-get clean debsums_init apt-get install nullmailer vim vim-scripts apticron apt-listchanges uptimed screen logcheck nullmailer: mailname: rautedrei.ping.de smarthost: mail.ping.de update-alternatives --set editor /usr/bin/vim.basic echo `hostname -s`@ping.de > /etc/nullmailer/adminaddr dpkg-reconfigure locales de_DE.UTF-8 en_US.UTF-8 en_IE.UTF-8 dpkg-reconfigure apt-listchanges method: text skip: yes email: root type: both confirm: no apt-get install lm-sensors smartmontools vi /etc/modules ... vi /etc/sensors3.conf ... apt-get install munin-node munin-plugins-extra vi /etc/munin/munin-node.conf allow ^83\.97\.42\.133$ vi /etc/munin/plugin-conf.d/local [sensors_volt] env.volt_warn_percent 0 cd /etc/munin/plugins/ ln -s /usr/share/munin/plugins/uptime ln -s /usr/share/munin/plugins/users ln -s /usr/share/munin/plugins/sensors_ sensors_fan ln -s /usr/share/munin/plugins/sensors_ sensors_volt ln -s /usr/share/munin/plugins/sensors_ sensors_temp ln -s /usr/share/munin/plugins/netstat ln -s /usr/share/munin/plugins/ntp_ ntp_cr1_ping_de ln -s /usr/share/munin/plugins/ntp_ ntp_lou_ping_de ln -s /usr/share/munin/plugins/ntp_states /etc/init.d/munin-node restart apt-get install ntp vi /etc/ntp.conf statsdir /var/log/ntpstats/ server cr1.ping.de server lou.ping.de # comment other server lines /etc/init.d/ntp restart vi /boot/grub/menu.lst serial --unit=0 --speed=115200 terminal --timeout=5 serial console update-grub vi /etc/sysctl.conf ############################################################## # Control Ethernet bridge usage # # Do not push bridged data through iptables/ip6tables/ebtables net.bridge.bridge-nf-call-arptables=0 net.bridge.bridge-nf-call-ip6tables=0 net.bridge.bridge-nf-call-iptables=0 net.bridge.bridge-nf-filter-vlan-tagged=0 vi /etc/modules bridge vi /boot/grub/menu.lst # xenhopt=dom0_mem=524288 sched=sedf com1=115200,8n1 console=com1,vga # xenkopt=console=tty0 console=hvc0 update-grub vi /etc/xen-tools/xen-tools.conf serial_device = hvc0 disk_device = xvda vi /etc/munin/plugin-conf.d/xen [xen_cpu] user root [xen_memory] user root [xen_traffic_all] user root [xen_vbd] user root cd /etc/munin/plugins wget -O xen_cpu http://muninexchange.projects.linpro.no/download.php?phid=107 wget -O xen_memory http://muninexchange.projects.linpro.no/download.php?phid=185 wget -O xen_traffic_all http://muninexchange.projects.linpro.no/download.php?phid=302 wget -O xen_vbd http://muninexchange.projects.linpro.no/download.php?phid=182 chmod 0755 xen_* vi xen_cpu :32 o $arg = ''; vi xen_traffic_all :31 name=$( echo $dom | sed -e's/^\(.*\)\.prima\.de/\1/' -e's/^\(.*\)\.ping\.de/\1/' -e's/-/_/g' ) :51 name=$( echo $dom | sed -e's/^\(.*\)\.prima\.de/\1/' -e's/^\(.*\)\.ping\.de/\1/' -e's/-/_/g' ) vi xen_vbd :93 # comment three of four shifts /etc/init.d/munin-node restart vi /etc/default/xendomains XENDOMAINS_SAVE="" }}} = Konfiguration/Installation DRBD = DRBD aus backports.org: * Backports.org Quelle nach [[http://www.backports.org/dokuwiki/doku.php?id=instructions]] aktivieren. * drbd8-source installieren: apt-get install -tlenny-backports drbd8-source * Mit Modules-Assistent bauen der Module vorbereiten: m-a prepare * Die DRBD-Module bauen: m-a build drbd8 * Vor den Modulen das drbd8-utils Paket installieren: apt-get install -tlenny-backports drbd8-utils * Die DRBD-Module installieren: m-a install drbd8 * DRBD konfigurieren: * In /etc/drbd.d/global_common.conf: usage-count no; * Datei /etc/drbd.d/ping0X-ping0Y.res anlegen (auf beiden Rechnern identisch): {{{ resource ping0X-data { startup { become-primary-on ping0X; } syncer { rate 110M; } device minor X; on ping0X { device /dev/drbdX; disk /dev/sda3; address 192.168.XY.X:7789; meta-disk internal; } on ping0Y { device /dev/drbdX; disk /dev/sda4; address 192.168.XY.Y:7789; meta-disk internal; } } }}} * Mit {{{drbdadm create-md ping0X-data}}} auf beiden Rechnern Disk initialisieren * Mit {{{drbdadm up ping0X-data}}} auf beiden Rechner das DRBD starten * Nur auf ping0X (erster Rechner) aufrufen: {{{drbdadm -- --overwrite-data-of-peer primary ping0X-data}}} * LVM auf DRBD konfigurieren: * Damit das LVM nicht das PV auf der direkt auf der von DRBD genutzten Festplattenpartition erkennt, muss der Filter in {{{/etc/lvm/lvm.conf}}} angepasst werden. Die vorhandene Filter-Zeile wird dafür auskommentiert und um folgendes ergänzt: {{{ # Exclude DRBD disks (/dev/sda3,/dev/sda4) filter = [ "a|^/dev/sda2$|", "a|drbd.*|", "r/.*/" ] }}} * Danach kann mit {{{pvcreate /dev/drbd/by-res/ping0X-data}}} das DRBD-Device für LVM initialisiert werden. * Eine Volumegroup (VG) wird {{{vgcreate ping0X-data /dev/drbd/by-res/ping0X-data}}} * Xen-Konfiguration auf das DRBD-LVM-Device verschieben: * Logical Volume (LV) erstellen: lvcreate -n xenconfig -L 1G ping0X-data * Dateisystem erstellen: mkfs.ext3 /dev/mapper/ping0X--data-xenconfig * Dateisystem temporär mounten: mount /dev/mapper/ping0X--data-xenconfig /mnt/ * Dateien Kopieren: cp -a /etc/xen/. /mnt/ * Dateisystem wieder aushängen: umount /mnt/ * {{{/etc/fstab}}} ergänzen: echo -e "/dev/mapper/ping0X--data-xenconfig\t/etc/xen\text3\tdefaults,noauto\t0\t3" >>/etc/fstab * Dateisystem an richtiger Stelle wieder einhängen: mount /etc/xen * Initscripts anpassen, damit Xen nach DRBD gestartet wird: {{{ update-rc.d -f xend remove update-rc.d xend start 82 2 3 4 5 . stop 02 0 1 6 . update-rc.d -f xendomains remove update-rc.d xendomains start 83 2 3 4 5 . stop 01 0 1 6 . }}} * Initscript einfügen als {{{/etc/init.d/pingxen}}}, um /etc/xen zu mounten und VG zu aktivieren (nicht unbedingt in dieser Reihenfolge): {{{ #! /bin/sh PATH=/sbin:/bin:/usr/sbin:/usr/bin NAME=pingxen DESC=pingxen set -e case "$1" in start) echo -n "Starting $DESC: " /sbin/vgscan >/dev/null 2>&1 /sbin/vgchange -ay ping01-data >/dev/null 2>&1 /bin/mount /etc/xen >/dev/null 2>&1 echo "$NAME." ;; stop) echo -n "Stopping $DESC: " /bin/umount /etc/xen >/dev/null 2>&1 /sbin/vgchange -an ping01-data >/dev/null 2>&1 echo "$NAME." ;; *) N=/etc/init.d/$NAME # echo "Usage: $N {start|stop}" >&2 echo "Usage: $N {start|stop}" >&2 exit 1 ;; esac exit 0}}} * Initscript aktivieren: {{{update-rc.d pingxen start 80 2 3 4 5 . stop 03 0 1 6 .}}}