2009-03-15

ganeti on Debian lenny

Debian5.0 lenny で ganeti を試してみる。

ganeti は仮想化ソフトの kvmXen、ストレージクラスタリングソフト?の DRBD を使用した、仮想クラスタリングソフトというかラッパーというかそんな感じのものです。Xen, KVM, DRBD を直にコマンドラインで操作するのは結構辛いので、それを簡単に使いこなそうと言う目論見。

今回の環境は以下のような感じ。
  • OS: Debian GNU/Linux 5.0 lenny
  • CPU: Celeron 1.7GB(non intel-VT) Memory:512MB HDD:250GB (しょぼいし古いし)
  • ganeti-1.2.6 drbd8 xen3.2かな?
  • コンパイルとかしません
  • できるだけ aptパッケージで
普通に Debian をインストール(詳細は割愛します)。
パーティションはこんな感じ
Name  Flags  Part     Type  FS Type [Label]  Size (MB)
------------------------------------------------------
hda1 Boot Primary Linux ext3 24996.63
hda2 Primary Linux swap 1497.01
hda3 Primary Linux LVM 223563.12

次に Xen の設定
必要パッケージインストール
$ sudo apt-get install libc6-xen xen-linux-system-2.6.26-1-xen-686
grub で Xen ハイパーバイザのメモリ設定 と Xen カーネルで再起動
$ sudo vi /boot/grub/menu.lst
## Xen hypervisor options to use with the default Xen boot option
# xenhopt=dom0_mem=128M

$ sudo update-grub
$ sudo reboot
Xen用にネットワークの bridge 設定、eth0 を削除して xen-br0 を設定
$ sudo vi /etc/network/interfaces
auto xen-br0
iface xen-br0 inet static
address
netmask
gateway
bridge_ports eth0
bridge_stp off
bridge_fd 0
$ sudo /etc/init.d/networking restart

設定確認
$ ip a show xen-br0
5: xen-br0: mtu 1500 qdisc noqueue state UNKNOWN
link/ether 00:02:2a:dd:09:84 brd ff:ff:ff:ff:ff:ff
inet 192.168.123.33/24 brd 192.168.123.255 scope global xen-br0
inet6 fe80::202:2aff:fedd:984/64 scope link
valid_lft forever preferred_lft forever
$ /usr/sbin/brctl show xen-br0
bridge name bridge id STP enabled interfaces
xen-br0 8000.00022add0984 no eth0

bridge-utils とかいれておかないとダメかもしれないです。
それから DRBD の設定
$ sudo apt-get install drbd8-modules-2.6.26-1-xen-686 drbd8-utils
$ sudo sh -c 'echo drbd minor_count=128 >> /etc/modules'
$ sudo depmod -a
$ sudo modprobe drbd minor_count=128
$ sudo apt-get install python-twisted-core python-pyopenssl python-pyparsing python-simplejson mdadm

さらに LVM の設定
$ sudo pvcreate /dev/hda3
Physical volume "/dev/hda3" successfully created
$ sudo vgcreate xenvg /dev/hda3
Volume group "xenvg" successfully created

そして ganeti のインストール
$ sudo apt-get install ganeti
ganeti クラスタの初期設定
$ sudo gnt-cluster init CLUSTERNAME
CLUSTERNAME は適当。一応DNS登録が必要(たぶん /etc/hosts でもOK)。
仮想マシンへ debootstrap でOSインストール(しばし待つ)
$ sudo gnt-instance add --node=MYHOSTNAME -o debootstrap -t plain VIRT NAME
ダメな場合は以下が必要かも
$ sudo ln -s /boot/vmlinuz-2.6.26-1-xen-686 /boot/vmlinuz-2.6-xenU
$ sudo ln -s /boot/initrd.img-2.6.26-1-xen-686 /boot/initrd-2.6-xenU

仮想マシンのコンソールへ接続 抜ける時は ESC + ]
$ sudo gnt-instance console VIRTNAME
とやってみたものの仮想マシンが起動途中で死亡。。。orz
たぶんもうちょっとで完璧に起動できそう。
パッケージがあると便利。google さまさまですなー
もっとドキュメントが揃うと使う人が多くなるかな?
# ソースコード嫁って

いろんなOSを使いたいので intel-VT な 64bit CPU が欲しいー
ganeti-2.0.0 & KVM に挑戦したい

0 件のコメント:

コメントを投稿