Xenインストール
さっそくLVSを試して見ようと思ってるんですが、どーせなら今まで触ったことのないXenを使って仮想ホストの上でやってみようかと思って触ってみました。ついでなのでインストール手順のメモ。ちなみに昨日、飲み過ぎて軽く二日酔い (゚∀゚)アヒャ 。酒とインターネットがあれば良いとかいうと退廃的で良いですね。酒はそんなに好きじゃないですが、血筋のせいか結構飲めたり。
xenインストール
# echo alias scsi_hostadapter xenblk >>/etc/modprobe.conf # vi /etc/sysconfig/kernel DEFAULTKERNEL=kernel-xen # yum -y install xen kernel-xen
ドメインUにCentOS 5.2インストール
# virt-install -n lvs -r 256 -f /opt/xen/lvs/lvs.img -s 8 --nographics -l http://mirror.centos.org/centos/5.2/os/i386 完全仮想化のゲストがいいですか (yes または no)? これは修正不要のオペレーティングシステムの実行を可能にします。 yes インストールを開始しています... ファイル .treeinfo ? 100% |=========================| 413 B 00:00 ファイル boot.iso を 100% |=========================| 721 B 00:00 ドメインを作成中... 0 B 00:00 ドメインに使用できるコンソールがありません ドメインのインストールは続いています。インストール処理を完結 させるためにコンソールに再接続することができます。
失敗。ssh越しで操作してるからドメインUのシリアルを取れないとダメなのかな?xenconsoledを使えばいいみたい
# xenconsoled # xm console lvs xenconsole: Could not read tty from store: No such file or directory
つなげん...。再接続できるっていってたのに。インストールしなおしてみるか。ゲストOSを削除するのはこんな感じ
# xm destroy lvs # /etc/init.d/xend stop xend を停止中: [ OK ] # rm /opt/xen/lvs/lvs.img rm: remove 通常ファイル `/opt/xen/lvs/lvs.img'? y # rm /etc/xen/lvs rm: remove 通常ファイル `/etc/xen/lvs'? y
インストールしなおし
# /etc/init.d/xend start xend を起動中: [ OK ] # virt-install -n lvs -r 256 -f /opt/xen/lvs/lvs.img -s 8 --nographics -l http://mirror.centos.org/centos/5.2/os/i386 完全仮想化のゲストがいいですか (yes または no)? これは修正不要のオペレーティングシステムの実行を可能にします。 yes インストールを開始しています... ファイル .treeinfo ? 100% |=========================| 413 B 00:00 ファイル boot.iso を 100% |=========================| 721 B 00:00 ドメインを作成中... 0 B 00:00 ドメインに使用できるコンソールがありません ドメインのインストールは続いています。インストール処理を完結 させるためにコンソールに再接続することができます。
一緒だなぁ。完全仮想化じゃなく準仮想化ならエラーがでないらしいんですが、LVS使うなら完全の方がよさそうです。virt-installを使わず手でインストール手順(http://www.thinkit.co.jp/free/tech/26/4/1.html)をみるとイメージファイルを作ってループバックマウントしてキャラクタデバイスを手で作ってるのでこの辺の何かがキチンと作られてないのかなぁ。virt-installでやってないってことはない気がしますが、折角だし手間のかかる方の手順で一回やってみようかな。しかし、デバイスまわりに近づくと知識が薄いから勘所がなくなる。そろそろ真面目にC勉強して色々作ってみないとダメかなー。カーネルソースも読んでみたいとこだけど、なんかちょっと作ってみるのに良いものないもんですかね。
この分だと、LVSにたどり着くまで少し時間がかかりそうだけど、Xenも面白そうだしいいか。これで仮想で有名どこかと思われるVMWare Server, OpenVZ, Xen全部なんとなく触れるようになりそうだし。
追記
よくよくxm console lvsした時のエラーをみると
Could not read tty from store
って言われてますね。やっぱイメージファイルに/dev/ttyXがないからかな。試しにvirt-installで出来たイメージファイルをマウントしてみようと思ったけど、
# mount -o loop /opt/xen/lvs/lvs.img /mnt mount: ファイルシステムタイプを指定する必要があります # mount -t ext3 -o loop /opt/xen/lvs/lvs.img /mnt mount: wrong fs type, bad option, bad superblock on /dev/loop2, missing codepage or other error In some cases useful info is found in syslog - try dmesg | tail or so
そもそもファイルシステムすらできてなさげ。やっぱ手でやってみるのがよさそうですね。
追追記
ttyで怒られるのはイメージファイル側じゃなくてsshでつないでてディスプレイつないでみてないからかな?やっぱもっとOSの深い部分勉強しなきゃ...。