Koan

Koan (Kickstart over a network) を使うと、Cobbler と連携して、PXE ブートを使わずに OS を再インストールしたり、Xen または QEMU のゲスト OS をコマンド一発でインストールすることができます。

以下、Fedora 7 で Koan を試してみたメモ。

Koan のインストール

$ sudo yum install koan

プロファイルやシステムの一覧を表示

プロファイル一覧を表示する。

$ sudo koan --server=cobbler.example.org --list-profile
fc7-i386
fc7-xen-i386 

システム一覧を表示する。

$ sudo koan --server=cobbler.example.org --list-system
test-server.example.org

cobbler.example.org は cobbler が動いてるサーバ。koan による OS インストールを行うときには、プロファイルかシステムのどちらかを指定する。

OS の再インストール

OS を再インストールする時には、--replace-self オプション と --profile または --system を指定して koan を実行。

$ sudo koan --server=cobbler.example.org --replace-self --profile=f7-i386
- using kickstart from cobbler: http://cobbler.example.org/cblr/kickstarts/f7-i386/ks.cfg
downloading initrd initrd.img to /boot/initrd.img
url=http://cobbler.example.org/cobbler/images/f7-i386/initrd.img
- using kickstart from cobbler: http://cobbler.example.org/cobbler/images/f7-i386/initrd.img
downloading kernel vmlinuz to /boot/vmlinuz
url=http://cobbler.example.org/cobbler/images/f7-i386/vmlinuz
- using kickstart from cobbler: http://cobbler.example.org/cobbler/images/f7-i386/vmlinuz
- kickstart: http://cobbler.example.org/cblr/kickstarts/f7-i386/ks.cfg
- downloading http://cobbler.example.org/cblr/kickstarts/f7-i386/ks.cfg
- using kickstart from cobbler: http://cobbler.example.org/cblr/kickstarts/f7-i386/ks.cfg
- ['/bin/bash', '/var/spool/koan/insert.sh']
cpio
14535 blocks
14538 blocks
done
- ['/sbin/grubby', '--grub', '--add-kernel', '/boot/vmlinuz', '--initrd', '/boot/initrd.img', '--make-default', '--title', 'kick1199098439', '--args', 'ksdevice=eth0 lang=  kssendmac syslog=cobbler.example.org:25150 text  ks=file:ks.cfg', '--copy-default']
- reboot to apply changes 

ネットワークインストール用の /boot/initrd.img とか /boot/vmlinuz とかを cobbler サーバからダウンロードして、/boot/grub/menu.lst を書き換えてくれる。

あとは再起動すれば、OS の再インストールが勝手にはじまる。

Xen ゲスト OS のインストール

Xen のインストールと Xen カーネルの起動

当然 Xen 環境が必要になるので、Xen をインストール。

$ sudo yum install kernel-xen xen

インストール後、/boot/grub/menu.lst を書き換えて、デフォルトで Xen カーネルが起動するようにして再起動する。

koan コマンドでの Xen ゲスト OS インストール

--replace-self ではなく --virt を指定する。

$ sudo koan --server=cobbler.example.org --virt --profile=f7-xen-i386

これで Xen ゲスト OS のインストールがはじまる、はずなんだけど、うちの環境では Segmentation Fault になってしまった。VMWare 上で Xen を動かすというのは無理があるのかもしれない。

実機で試したいところだけど、試せるサーバがないので保留。Yappo さんあたりが試してレポートしてくれるに違いない、きっと。