On each node, install the required packages:
{{{
- apt-get install fai-client ssed extlinux
- apt-get install {drbd8-utils,ganeti2,ganeti-htools}/squeeze-backports ganeti-instance-debootstrap qemu-kvm
+ # maybe: apt-get install drbd8-utils
+ # maybe: apt-get install ganeti-instance-debootstrap
+ apt-get install ganeti2 ganeti-htools qemu-kvm
}}}
=== configure kernel modules ===
ainsl /etc/modules 'hmac'
ainsl /etc/modules 'tun'
ainsl /etc/modules 'ext3'
+ ainsl /etc/modules 'ext4'
}}}
=== configure networking ===
vgcreate vg_ganeti /dev/cciss/c0d0p3
}}}
-=== create kvmU symbolic links ===
-
-On each node, create vmlinuz and initrd symlinks as expected by the kvm
-hypervisor (not strictly required if all guests will boot from their own
-kernels):
-
-{{{
- ln -s -T /boot/vmlinuz-2.6.32-5-amd64 /boot/vmlinuz-2.6-kvmU
- ln -s -T /boot/initrd.img-2.6.32-5-amd64 /boot/initrd.img-2.6-kvmU
-}}}
-
=== exchange ssh keys ===
on each node:
--mac-prefix 00:16:37 \
--no-ssh-init \
--no-etc-hosts \
- --hypervisor-parameters kvm:initrd_path=/boot/initrd.img-2.6-kvmU,kernel_path=/boot/vmlinuz-2.6-kvmU \
+ --hypervisor-parameters kvm:initrd_path=,kernel_path= \
foobar.debian.org
}}}
* If you are importing an instance from libvirt with LVM setup, you can adopt LVs:
{{{
-
gnt-instance add -t plain --os-type debootstrap+dsa-wheezy \
--disk 0:adopt=lully-boot \
--disk 1:adopt=lully-root \
--disk 3:adopt=lully-log \
--hypervisor-parameters kvm:initrd_path=,kernel_path= \
--net 0:ip=82.195.75.99 -n clementi.debian.org lully.debian.org
+}}}
+
+And you want to convert it to use DRBD afterwards and start it on the other cluster node, so we can ensure that DRBD is correctly working.
+{{{
+ gnt-instance shutdown lully.debian.org
+ gnt-instance modify -t drbd -n czerny.debian.org lully.debian.org
+ gnt-instance failover lully.debian.org
+ gnt-instance startup lully.debian.org
+}}}
+
+* Some instances NEED ide instead of virtio
+
+{{{
+ gnt-instance modify --hypervisor-parameters disk_type=ide fils.debian.org
+}}}
+
+* To import instances with SAN volumes
+
+{{{
+ gnt-instance add -t blockdev --os-type debootstrap+dsa \
+ --disk 0:adopt=/dev/disk/by-id/scsi-reger-boot \
+ --disk 1:adopt=/dev/disk/by-id/scsi-reger-root \
+ --hypervisor-parameters kvm:initrd_path=,kernel_path= \
+ --net 0:ip=206.12.19.124 -n rossini.debian.org reger.debian.org
+}}}
+
+* How to add new LUNs to Bytemark Cluster
+
+** Add new LUN to MSA and export to all blades
+
+{{{
+ Log into MSA controller
+
+ Choose which vdisk to use, use "show vdisks" to list
+
+Add the volume:
+ # create volume vdisk msa2k-2-500gr10 size 5G donizetti
+
+Find a free LUN:
+
+ # show lun-maps
+
+Make a note of the next free LUN
+
+Generate map commands for all blades, all ports, run locally:
+
+ $ for p in 1 2 3 4; do for bl in 1 2 3 4 5 6 ; do echo "map volume donizetti lun 27 host bm-bl$bl-p$p" ; done ; done
+
+Paste the output into the MSA shell
+
+Find the WWN by doing show host-maps and looking for the volume name.
+Transform it using the sed run at the top of /etc/multipath.conf:
+
+echo "$WWN" | sed -re 's#(.{6})(.{6})0000(.{2})(.*)#36\1000\2\3\4#'
+}}}
+
+{{{
+
+ then:
+ gnt-cluster command "echo 1 > /sys/bus/pci/devices/0000:0e:00.0/cciss0/rescan"
+
+ then:
+ reload multipath-tools on gnt-master (normaly bm-bl1):
+ service multipath-tools reload
+ add the WWNs to dsa-puppet/modules/multipath/files/multipath-bm.conf and define the alias and commit that file to git.
+
+ then:
+ gnt-cluster command "puppet agent -t"
+ This will update the multipath config on all cluster nodes. WITHOUT doing this, you can't migrate VMs between nodes.
}}}