Created: 10 January 2009
ひょんなことからOpenVZには、ずいぶん前からライブマイグレーションの機能があることを知り、早速実験してみました。
実行してみる
準備もいらず、とっても簡単です。
以下のように、コマンドを実行すればOKです。
# vzmigrate --online 192.168.0.207 2000
OPT:--online
OPT:192.168.0.207
Starting online migration of VE 2000 on 192.168.0.207
Preparing remote node
/usr/sbin/vzmigrate: line 382: [: missing `]'
Initializing remote quota
Syncing private
Live migrating VE
Syncing 2nd level quota
Cleanup
#結果、転送元のサーバーのVPSは削除され、転送先のサーバーが起動しました。
バグらしきエラー("/usr/sbin/vzmigrate: line 382: [: missing `]'")が出ましたが問題なくマイグレーションできました。
接続できないというエラーが出る
# vzmigrate --online 192.168.0.207 2000
OPT:--online
OPT:192.168.83.207
Starting online migration of VE 2000 on 192.168.83.207
Error: Can't connect to destination address using public key
Error: Please put your public key to destination node
#転送には、SSHで暗号化しているようですので、以下のコマンドでキーペアを作成し、パスワードを入れなくてもSSHで接続できるようにします。
# ssh-keygen -t dsa
#できたキーペアは、"id_dsa"が秘密鍵で、転送もとのサーバーに必要です。"id_dsa.pub"は公開鍵で、転送先のサーバーに必要ですので、転送します。
相互に転送しあう場合は、両方の鍵を、両方のサーバーに置きます。
コピー後、sshを、手動で、パスワードなしで接続できることを確認します。
vzquotaでエラーが出る
# vzmigrate --online 192.168.0.207 2000
OPT:--online
OPT:192.168.83.207
Starting online migration of CT 101 to 192.168.83.207
Preparing remote node
Initializing remote quota
Syncing private
Live migrating container...
Syncing 2nd level quota
Error: Failed to undump container
vzquota : (error) Quota is not running for id 101
#
停止しての移動もできる
停止しての移動もできる。
# vzmigrate 192.168.0.37 101
OPT:192.168.0.37
Starting migration of CT 101 to 192.168.0.37
Preparing remote node
Initializing remote quota
Syncing private
Syncing 2nd level quota
Turning quota off
Cleanup
#