domainU のテンプレを作りたいけどだめだった気がしたけどいけたかもしれない
Xen で毎回 domainU を xen-craete-image するのは、作成後のdomainU 内のセットアップが面倒なのでしたくない。
なので、テンプレ的なdomainU をひとつつくっておいて、それをコピーすればいけるようにしたいなーと思って調べてました。
とりあえず、以下の手順を踏んでみました。
- テンプレにしたいdomainU (vm-debian1)を作成する
- /home/xen/domains/vm-debian1 以下を複製して、vm-debian2 を作成する
- /etc/xen/vm-debian1.cfg を複製して、vm-debian2.cfg を作成する
- vm-debian2.cfg の ip アドレス、mac アドレスを編集する。
- vm-debian2.cfg で xm create する。
と、xm list には vm-debian2 と書いてあるのですが、実際に起動したマシンの ip は vm-debian1 と同じものでした…
なにが足りないのやら。
追記:
domainU 側で /etc/network/interface をいじれば ip は変わりました。これでコピーはできてると思っていいのかな?UUIDなんかが気になるところではあるけども
追記の追記:
UUID は、起動毎にランダムに割り当てられる模様。
なので、いろんなWebページで書いてあるような設定は Xen4.0 は不要なのかしら?
結局、コピー後に必要な作業は以下のとおり。
- コピーした設定ファイルで起動する
- xm console で 起動した domainU へ
- /etc/hostname のホストネームを変更する
- /etc/network/interface のIPアドレスを変更する
コピーした仮想マシンと元の仮想マシンを両方立ち上げてみましたが、どちらも正常に動いているようです。
追記の追記の追記:
まだまだだった…
ただ単にコピーしてるので ssh サーバの鍵もおんなじだったりして、これを変えてあげないといけないらしい
- /etc/ssh_host* を削除する
- ssh-keygen -t dsa /etc/ssh/ssh_host_dsa_key -N "" を実行
- ssh-keygen -t rsa /etc/ssh/ssh_host_rsa_key -N "" を実行
あと、sudo でこんなエラーがでていた。
sudo: unable to resolve host ***
調べてみると、/etc/hosts にコピー元の hostname の情報が残ってしまっているのがまずい、というか新しい hostname と対応がとれてないのがまずいらしい。
ということで、「192.168.1.51 vm-debian1 vm-debian1」」のエントリを「192.168.1.52 vm-debian2 vm-debian2」に書き換えるなど。
結論:
コピーなんてせずに一から作ったほうがいい気がした。そして出来上がったマシンの環境をセットアップするスクリプト用意するほうが、あっちゃこっちゃ書き換えずに済むので安全だと思います。