第2章 運用
2.2 バックアップ・リストア
2.2.4 リストア
# shutdown -h now <RETURN>
共有ストレージの構成設定情報のバックアップ
共有ストレージの構成設定情報をバックアップします。構成設定情報のバックアップは、「ETERNUS Web GUI ユーザーズガイド(設定編)」の"構成設定情報バックアップ"、および"構成設 定情報採取"の記述を参照してください。
共有ストレージに接続しているハードウェアの起動
共有ストレージに接続しているハードウェアを以下の順序で起動します。
各ハードウェアの起動方法は、「FUJITSU Integrated System PRIMEFLEX for Cloud K5モデル Standard 利用ガイド」を参照してくださ い。
1.
管理サーバ(コントローラーノード)2.
管理サーバ(ネットワークノード)3.
管理サーバ(Cinderノード)4.
業務サーバ(コンピュートノード)業務サーバ(利用者VM)の起動
1.
管理サーバ(コントローラーVM2)にroot権限でログインします。2.
業務サーバ(利用者VM)を起動します。以下のコマンドを実行します。
起動に失敗した業務サーバ(利用者VM)があれば、エラーメッセージに従って対処を実施してください。
コマンドの詳細は、「2.3.1 rcx_all_instance_ctl.sh」を参照してください。
# . /root/openrc <RETURN>
# /opt/FJSVpf4c/bin/rcx_all_instance_ctl.sh -l start <RETURN>
3.
業務サーバ(利用者VM)の起動を確認します。以下のコマンドを実行し、バックアップ前に起動していたすべての業務サーバ(利用者VM)の状態がACTIVEになっていることを 確認します。
コマンドの詳細と注意事項は、「2.3.1 rcx_all_instance_ctl.sh」を参照してください。
# /opt/FJSVpf4c/bin/rcx_all_instance_ctl.sh status <RETURN>
各ハードウェアの停止方法は、「FUJITSU Integrated System PRIMEFLEX for Cloud K5モデル Standard 利用ガイド」を参照してくださ い。
1.
業務サーバ(コンピュートノード)2.
管理サーバ(コントローラーVM2)3.
管理サーバ(コントローラーVM1)4.
管理サーバ(コントローラーノード)5.
管理サーバ(ネットワークノード)共有ストレージの構成設定情報のリストア
本手順は当社技術員が実施します。あらかじめ、当社技術員に連絡してください。
業務サーバ(利用者VM)のデータのリストア
1.
管理サーバ(Cinderノード)にroot権限でログインします。2.
以下のコマンドを実行し、一時ディレクトリを作成します。# mkdir -p /tmp/rcx_backup_tmp <RETURN>
3.
管理サーバ(Cinderノード)のAffinityGroupにリストア対象のボリュームを追加します。以下のコマンドを実行します。
# ETERNUS_IP=$(cat /etc/cinder/cinder_fujitsu_eternus_dx.xml | tr -d '\r\n' | sed 's;.*<EternusIP>\([^<>]*\)</EternusIP>.*;\1;') <RETURN>
# CINDER_AFFINGRP=$(/opt/FJSVssmgr/sbin/storageadm affinity info -ipaddr $ETERNUS_IP -csv | awk -F, '$2 ~ /^Cinder[0-9]*/{print $1}') <RETURN>
# for affingrp in $CINDER_AFFINGRP; do
/opt/FJSVssmgr/sbin/storageadm affinity info -ipaddr $ETERNUS_IP -affinitygroup $affingrp -csv done | awk -F, '/^0x[0-9a-fA-F]{4}/ {print $4}' |
sort -u > /tmp/rcx_backup_tmp/volume_cinder <RETURN>
# /opt/FJSVssmgr/sbin/storageadm volume info -ipaddr $ETERNUS_IP -csv | awk -F, '/^0x[0-9a-fA-F]{4}/ {print $1}' | sort -u > /tmp/rcx_backup_tmp/volume_all <RETURN>
# join -j 1 -v 2 \
/tmp/rcx_backup_tmp/volume_cinder \ /tmp/rcx_backup_tmp/volume_all \ > /tmp/rcx_backup_tmp/volume_added <RETURN>
# for affingrp in $CINDER_AFFINGRP; do
cat /tmp/rcx_backup_tmp/volume_added | tr "\r\n" "," | sed 's/,$//' | xargs -i /opt/FJSVssmgr/sbin/storageadm affinity update -ipaddr $ETERNUS_IP \ -affinitygroup $affingrp -add -volume {} -s > /dev/null
done <RETURN>
4.
管理サーバ(Cinderノード)を再起動します。以下のコマンドを実行し、OSを再起動します。
# shutdown -r now <RETURN>
5.
管理サーバ(Cinderノード)にroot権限でログインします。6.
管理サーバ(Cinderノード)のサービスを停止します。以下のコマンドを実行します。
コマンドの詳細は、「2.3.3 rcx_service」を参照してください。
# /opt/FJSVpf4c/bin/rcx_service stop <RETURN>
7.
管理サーバ(Cinderノード)のサービスの停止を確認します。以下のコマンドを実行します。
コマンドの詳細は、「2.3.3 rcx_service」を参照してください。
# /opt/FJSVpf4c/bin/rcx_service status <RETURN>
8.
バックアップしたデータをリストアします。以下に、ddコマンドを利用した例を示します。
# dd if=バックアップデバイスまたはバックアップファイル \ of=リストア対象デバイス \
bs=1G <RETURN>
バックアップデバイスまたはバックアップファイルは、「業務サーバ(利用者VM)のデータのバックアップ」でバックアップしたデバ イスまたはファイルを指定してください。
リストア対象デバイスは、バックアップデバイスまたはバックアップファイルに対応するデバイスを指定してください。
9.
バックアップ対象のボリュームを、管理サーバ(Cinderノード)のAffinityGroupから削除します。以下のコマンドを実行します。
# ETERNUS_IP=$(cat /etc/cinder/cinder_fujitsu_eternus_dx.xml | tr -d '\r\n' | sed 's;.*<EternusIP>\([^<>]*\)</EternusIP>.*;\1;') <RETURN>
# CINDER_AFFINGRP=$(/opt/FJSVssmgr/sbin/storageadm affinity info -ipaddr $ETERNUS_IP -csv | awk -F, '$2 ~ /^Cinder[0-9]*/{print $1}') <RETURN>
# for affingrp in $CINDER_AFFINGRP; do
cat /tmp/rcx_backup_tmp/volume_added | tr "\r\n" "," | sed 's/,$//' | xargs -I{} /opt/FJSVssmgr/sbin/storageadm affinity update -ipaddr $ETERNUS_IP \ -affinitygroup $affingrp -delete -volume {} -s > /dev/null
done <RETURN>
10.
以下のコマンドを実行し、一時ディレクトリを削除します。# rm -rf /tmp/rcx_backup_tmp <RETURN>
11.
管理サーバ(Cinderノード)を停止します。以下のコマンドを実行し、OSを停止します。
# shutdown -h now <RETURN>
共有ストレージに接続しているハードウェアの起動
共有ストレージに接続しているハードウェアを以下の順序で起動します。
各ハードウェアの起動方法は、「FUJITSU Integrated System PRIMEFLEX for Cloud K5モデル Standard 利用ガイド」を参照してくださ い。
1.
管理サーバ(コントローラーノード)2.
管理サーバ(ネットワークノード)3.
管理サーバ(Cinderノード)4.
業務サーバ(コンピュートノード)バックアップ・リストアの共通手順
「2.2.2 バックアップ・リストアの共通手順」を参照してください。
業務サーバ(コンピュートノード)のリストア
以下の手順は、すべての業務サーバ(コンピュートノード)で実施してください。
1.
業務サーバ(コンピュートノード)にroot権限でログインします。2.
バックアップ時に採取した以下のファイルをリストアします。scpコマンドでは、管理サーバ(コントローラーノード)のパスワードを求められます。
# rm -rf /etc/nova/* <RETURN>
# rm -rf /var/lib/nova/* <RETURN>
# scp root@control:/tmp/backup/バックアップディレクトリ/`hostname`.tar.gz /var/tmp/ <RETURN>
# tar --selinux -C / -xvf /var/tmp/`hostname`.tar.gz <RETURN>
# rm /var/tmp/`hostname`.tar.gz <RETURN>
管理サーバ(Cinderノード)のリストア
1.
管理サーバ(Cinderノード)にroot権限でログインします。2.
バックアップ時に採取した以下のファイルをリストアします。scpコマンドでは、管理サーバ(コントローラーノード)のパスワードを求められます。
# umount /var/lib/cinder/conversion <RETURN>
# rm -rf /etc/cinder/* <RETURN>
# rm -rf /var/lib/cinder/* <RETURN>
# scp root@control:/tmp/backup/バックアップディレクトリ/`hostname`.tar.gz /var/tmp/ <RETURN>
# tar --selinux -C / -xvf /var/tmp/`hostname`.tar.gz <RETURN>
# mount /var/lib/cinder/conversion <RETURN>
# rm /var/tmp/`hostname`.tar.gz <RETURN>
管理サーバ(ネットワークノード)のリストア
以下の手順は、すべての管理サーバ(ネットワークノード)で実施してください。
1.
管理サーバ(ネットワークノード)にroot権限でログインします。2.
バックアップ時に採取した以下のファイルをリストアします。scpコマンドでは、管理サーバ(コントローラーノード)のパスワードを求められます。
# rm -rf /etc/neutron/* <RETURN>
# scp root@control:/tmp/backup/バックアップディレクトリ/`hostname`.tar.gz /var/tmp/ <RETURN>
# tar --selinux -C / -xvf /var/tmp/`hostname`.tar.gz <RETURN>
# rm /var/tmp/`hostname`.tar.gz <RETURN>
管理サーバ(すべてのコントローラーVM)のリストア
1.
管理サーバ(コントローラーノード)にroot権限でログインします。2.
管理サーバ(すべてのコントローラーVM)のXML定義ファイルをリストアします。以下のコマンドを実行します。
# cp -p /tmp/backup/バックアップディレクトリ/control/etc/libvirt/qemu/controller-vm{1,2,3}.xml \ /etc/libvirt/qemu/ <RETURN>
# virsh define /etc/libvirt/qemu/controller-vm1.xml <RETURN>
# virsh define /etc/libvirt/qemu/controller-vm2.xml <RETURN>
# virsh define /etc/libvirt/qemu/controller-vm3.xml <RETURN>
3.
管理サーバ(すべてのコントローラーVM)のイメージファイルをリストアします。# cp -p \
/tmp/backup/バックアップディレクトリ/control/var/lib/libvirt/images/controller/controller-vm{1,2,3}.qcow2 \ /var/lib/libvirt/images/controller/ <RETURN>
# cp -p \
/tmp/backup/バックアップディレクトリ/control/var/lib/libvirt/images/data/swiftstorage1.qcow2 \ /var/lib/libvirt/images/data/ <RETURN>
管理サーバ(すべてのコントローラーVM)の起動
1.
管理サーバ(コントローラーノード)にroot権限でログインします。2.
管理サーバ(コントローラーVM1)を起動します。# virsh start controller-vm1 <RETURN>
3.
管理サーバ(コントローラーVM1)の起動を確認します。以下のコマンドを実行し、AMQPと出力されることを確認します。
# curl -s controller-vm1:5672 | grep -a AMQP <RETURN>
4.
管理サーバ(コントローラーVM2)を起動します。以下のコマンドを実行します。
# virsh start controller-vm2 <RETURN>
5.
管理サーバ(コントローラーVM3)起動します。以下のコマンドを実行します。
# virsh start controller-vm3 <RETURN>
6.
管理サーバ(コントローラーVM2とコントローラーVM3)の起動を確認します。以下のコマンドを実行し、controller-vm2、controller-vm3の状態がrunningになっていることを確認します。
# virsh domstate controller-vm2 <RETURN>
# virsh domstate controller-vm3 <RETURN>
管理サーバ(ネットワークノード)のサービスの起動
以下の手順は、すべての管理サーバ(ネットワークノード)で実施してください。
1.
管理サーバ(ネットワークノード)にroot権限でログインします。2.
管理サーバ(ネットワークノード)のサービスを起動します。以下のコマンドを実行します。
コマンドの詳細は、「2.3.3 rcx_service」を参照してください。
# /opt/FJSVpf4c/bin/rcx_service start <RETURN>
3.
管理サーバ(ネットワークノード)のサービスの起動を確認します。以下のコマンドを実行します。
コマンドの詳細は、「2.3.3 rcx_service」を参照してください。
# /opt/FJSVpf4c/bin/rcx_service status <RETURN>
管理サーバ(Cinderノード)のサービスの起動
1.
管理サーバ(Cinderノード)にroot権限でログインします。2.
管理サーバ(Cinderノード)のサービスを起動します。以下のコマンドを実行します。
コマンドの詳細は、「2.3.3 rcx_service」を参照してください。
# /opt/FJSVpf4c/bin/rcx_service start <RETURN>
3.
管理サーバ(Cinderノード)のサービスの起動を確認します。以下のコマンドを実行します。
コマンドの詳細は、「2.3.3 rcx_service」を参照してください。
# /opt/FJSVpf4c/bin/rcx_service status <RETURN>
業務サーバ(コンピュートノード)のサービスの起動
以下の手順は、すべての業務サーバ(コンピュートノード)で実施してください。
1.
業務サーバ(コンピュートノード)にroot権限でログインします。2.
業務サーバ(コンピュートノード)のサービスを起動します。以下のコマンドを実行します。
コマンドの詳細は、「2.3.3 rcx_service」を参照してください。
# /opt/FJSVpf4c/bin/rcx_service start <RETURN>
3.
業務サーバ(コンピュートノード)のサービスの起動を確認します。以下のコマンドを実行します。
コマンドの詳細は、「2.3.3 rcx_service」を参照してください。
# /opt/FJSVpf4c/bin/rcx_service status <RETURN>
PRIMECLUSTERの起動【HA構成】
1.
HA構成の場合、PRIMECLUSTERを起動します。a.
任意の業務サーバ(コンピュートノード)にroot権限でログインします。b.
以下のコマンドを実行します。# hvcm -a <RETURN>
c.
「2.1.3.1 すべての業務サーバ(コンピュートノード)の起動」の下記項目を実行します。-
PRIMECLUSTERの起動-
本製品の設定変更不要なインスタンス定義の削除
業務サーバ(コンピュートノード)リストア前後の、インスタンス定義の差分を抽出し、不要なインスタンス定義を削除します。
以下の手順は、すべての業務サーバ(コンピュートノード)で実施してください。
1.
業務サーバ(コンピュートノード)にroot権限でログインします。2.
Nova管理下の定義ファイルからインスタンス名を取得します。以下のコマンドを実行します。
# grep -roI "<name>.*</name>" /var/lib/nova/ | cut -d: -f2 | sed -e 's;<name>\(.*\)</name>;\1;' | sort > /tmp/backup_instances.txt <RETURN>
3.
業務サーバ(コンピュートノード)上のインスタンス名を取得します。以下のコマンドを実行します。
# virsh list --all | tail -n+3 | awk '{print $2}' | grep -v "^$" | sort > /tmp/virsh_instances.txt <RETURN>
4.
インスタンス名の差分を抽出します。以下のコマンドを実行します。差分がない場合は出力されません。
# diff /tmp/backup_instances.txt /tmp/virsh_instances.txt | grep "^>" | awk '{print $2}' <RETURN>
5.
手順3.で出力されたインスタンスの状態がSHUTOFFであることを確認します。以下のコマンドを実行します。
# virsh list --all <RETURN>
6.
手順4.で出力されたインスタンスの定義を削除します。以下のコマンドを実行します。
# virsh undefine インスタンス名 --managed-save --snapshots-metadata <RETURN>
7.
一時ファイルを削除します。以下のコマンドを実行します。
# rm /tmp/backup_instances.txt /tmp/virsh_instances.txt <RETURN>
業務サーバ(利用者VM)の起動
1.
管理サーバ(コントローラーVM2)にroot権限でログインします。2.
業務サーバ(利用者VM)を起動します。以下のコマンドを実行します。
コマンドの詳細と注意事項は、「2.3.1 rcx_all_instance_ctl.sh」を参照してください。
# . /root/openrc <RETURN>
# /opt/FJSVpf4c/bin/rcx_all_instance_ctl.sh -l start <RETURN>