Debian KVM仮想化環境をまとめてsqueezeからwheezyにアップグレードした
検索しても仮想化環境のOSアップグレードをやった記事がヒットしない。
探し方が悪いだけ?
方針は次の通り。
- ホストOS一台のゲストOSをライブマイグレーションで移動して空にする
- ホストOSアップグレード
- ゲストOSアップグレード
- アップグレードしたホストOSにゲストOSを移動
- ゲストOS起動
とりあえず最初の一台は念のためアップグレードじゃなくて再インストールでやってみた。
DRBDの連携も squeeze と wheezy で繋がる。ganetiも問題無し。ということでスタート。
gnt-instance migrate instance1 gnt-instance replace-disks --new-secondary node3 instance1
などをやってnode1を空にする。
# sources.list の squeeze を wheezy に書き換え apt-get update apt-get upgrade apt-get dist-upgrade aptitude install reboot
ファームウェアの警告が出たら注意。
自分の環境ではDELL R410のNICをreboot前に入れた。
# non-free が必要 apt-get install firmware-bnx2
リブート後はソースから入れたものを再コンパイル。
cd ganeti-2.6.2 ./configure --localstatedir=/var --sysconfdir=/etc make install /etc/init.d/ganeti start
続いてゲストOSのinstance1をアップグレード。
方法は同じ。こっちはrebootではなくpoweroffで。
そしてnode2を空にしつつゲストOSをwheezyホストOSに移す
gnt-instance replace-disks --new-secondary node1 instance1 gnt-instance failover instance1
この後にゲストOS起動。node1とinstance1がwheezyになった。
これを繰り替えして全てwheezyにアップグレードした。
PHPを使っている場合は
dpkg --purge php5-suhosin
PostgreSQLを使っている場合は
su postgres pg_dropcluster --stop 9.1 main pg_upgradecluster 8.4 main pg_dropcluster 8.4 main
が必要。
これで無事Webアプリも新環境対応完了。