- メンテナンス・ガイド
- Oracle VMユーザー・ドメインの管理
- Oracle VMデプロイメントのリカバリ
- シナリオ2: 管理ドメインの再イメージ化およびバックアップからのユーザー・ドメインのリストア
5.20.3 シナリオ2: 管理ドメインの再イメージ化およびバックアップからのユーザー・ドメインのリストア
この手順では、管理ドメインを再イメージ化し、すべてのユーザー・ドメインを再構築します。
次の手順は、修復不可能な損傷が管理ドメインで発生したときに、管理ドメインのバックアップは存在しないが、すべてのユーザー・ドメインを収容しているストレージ・リポジトリ(/EXAVMIMAGESファイル・システム)のバックアップが利用可能な場合に使用できます。
- 「Oracle Exadata Database Serverの再イメージ化」の手順を使用して、ラック内のその他の管理ドメインで使用されているイメージで管理ドメインを再イメージ化します。
- 次のコマンドを実行します。
# /opt/oracle.SupportTools/switch_to_ovm.sh # /opt/oracle.SupportTools/reclaimdisks.sh –free –reclaim - Oracle Exadata Database Machineエイス・ラックでリカバリを実行する場合は、「Oracle Exadata Database Machineエイス・ラックのOracle Linuxデータベース・サーバーのリカバリ後の構成」の手順を実行します。
- OCFS2ファイル・システムを
/dev/sda3パーティションに再構築します。# umount /EXAVMIMAGES # mkfs -t ocfs2 -L ocfs2 -T vmstore --fs-features=local /dev/sda3 --force - OCFS2パーティション
/dev/sda3を/EXAVMIMAGESにマウントします。# mount -t ocfs2 /dev/sda3 /EXAVMIMAGES - バックアップNFSサーバーをマウントして、ユーザー・ドメインのイメージを保持する
/EXAVMIMAGESファイル・システムをリストアします。# mkdir -p /remote_FS # mount -t nfs -o ro,intr,soft,proto=tcp,nolock nfs_ip:/location_of_backup /remote_FS /EXAVMIMAGESファイル・システムをリストアします。# tar -Spxvf /remote_FS/backup-of-exavmimages.tar -C /EXAVMIMAGESノート:
記憶域リポジトリのリストア処理では、ユーザー・ドメイン固有のファイル(/EXAVMINAGES/GuestImages/user_domain/下のファイル)が通常のファイルとしてリストアされ、これらのファイルがユーザー・ドメインの作成時に最初に記憶域リポジトリに作成されたOCFS2 reflinkとしてはリストアされません。そのため、/EXAVMINAGES内の領域使用量は、リストア処理後に、バックアップ時の元の領域使用量よりも増加することがあります。- ネットワーク・ブリッジを手動で構成します。
ovmutilsRPMのバージョンを確認します。# rpm -qa|grep ovmutilsovmutilsRPMのバージョンが12.1.2.2.0より前の場合は、次のステップを実行します。-
/opt/exadata_ovm/exadata.img.domu_makerをバックアップします。このバックアップ・コピーは後ほど必要になります。# cp /opt/exadata_ovm/exadata.img.domu_maker /opt/exadata_ovm/exad ata.img.domu_maker-orig -
viなどのテキスト・エディタで/opt/exadata_ovm/exadata.img.domu_makerファイルを開いて、g_do_not_set_bridge=yesを検索します。この文字列は、CASE文オプションnetwork-discovery)の数行下にあります。この文字列を
g_do_not_set_bridge=noに変更します。/opt/exadata_ovm/exadata.img.domu_makerを保存して終了します。 -
/EXAVMIMAGES/confディレクトリ内のすべてのXMLファイルに、手動で/opt/exadata_ovm/exadata.img.domu_makerを実行します。# cd /EXAVMIMAGES/conf # ls -1|while read file; do /opt/exadata_ovm/exadata.img.domu_maker network-discovery $file /tmp/netdisc-$file; done -
バックアップ・コピーから
/opt/exadata_ovm/exadata.img.domu_makerをリストアします。# cp /opt/exadata_ovm/exadata.img.domu_maker-orig /opt/exad ata_ovm/exadata.img.domu_maker
-
ovmutilsRPMのバージョンが12.1.2.2.0以降の場合は、次のコマンドを実行します。# /opt/exadata_ovm/exadata.img.domu_maker add-bonded-bridge- dom0 vmbondeth0 eth4 eth5
/EXAVMIMAGES/GuestImagesディレクトリ内のユーザー・ドメイン・ディレクトリごとに、次のステップを実行します。- ユーザー・ドメインのUUIDを取得します。
# grep ^uuid /EXAVMIMAGES/GuestImages/user_domain_hostname/vm.cfg |awk -F"=" '{print $2}'|sed s/"'"//g|sed s/" "//gコマンドを実行すると、uuid値が返され、これは次のコマンドで使用されます。
- UUID用のサブディレクトリを作成します。
# mkdir -p /OVS/Repositories/uuid - 新しいUUIDディレクトリ内にuser_domain_hostnameの
vm.cfgファイルに対するシンボリック・リンクを作成します。# ln -s /EXAVMIMAGES/GuestImages/user_domain_hostname/vm.cfg /OVS/Repositories/uuid/vm.cfg - user_domain_hostnameの自動起動を構成します。
# ln -s /OVS/Repositories/uuid/vm.cfg /etc/xen/auto/user_domain_hostname.cfg VirtualDisksサブディレクトリを作成します。# mkdir VirtualDisksVirtualDisksディレクトリに移動します。# cd VirtualDisksvm.cfgファイル内の4つのディスク・イメージ名を使用して、このディレクトリに4つのシンボリック・リンクを作成します(/EXAVMIMAGES/GuestImages/user_domain_hostnameディレクトリ内にある4つの*.imgファイルを指します)。たとえば、
/OVS/Repositories/uuidディレクトリ内のサンプルvm.cfgファイルのサンプル・ディスク・エントリを次に示します。disk = ['file:/OVS/Repositories/6e7c7109c1bc4ebba279f8 4e595e0b27/VirtualDisks/dfd641a1c6a84bd69643da704ff98594.img,xv da,w','file:/OVS/Repositories/6e7c7109c1bc4ebba279f84e595e0b27/ VirtualDisks/d349fd420a1e49459118e6a6fcdbc2a4.img,xvdb,w','file :/OVS/Repositories/6e7c7109c1bc4ebba279f84e595e0b27/VirtualDisk s/8ac470eeb8704aab9a8b3adedf1c3b04.img,xvdc,w','file:/OVS/Repos itories/6e7c7109c1bc4ebba279f84e595e0b27/VirtualDisks/333e7ed28 50a441ca4d2461044dd0f7c.img,xvdd,w']/EXAVMIMAGES/GuestImages/user_domain_hostnameディレクトリ内にある4つの*.imgファイルをリスト表示できます。# ls /EXAVMIMAGES/GuestImages/user_domain_name/*.img /EXAVMIMAGES/GuestImages/user_domain_name/System.img /EXAVMIMAGES/GuestImages/user_domain_name/grid12.1.0.2.2.img /EXAVMIMAGES/GuestImages/user_domain_name/db12.1.0.2.2-3.img /EXAVMIMAGES/GuestImages/user_domain_name/pv1_vgexadb.imgこの例では、次のコマンドを使用して4つのシンボリック・リンクを作成できます(
dbm01db08vm01は、ユーザー・ドメインのホスト名です)。# ln -s /EXAVMIMAGES/GuestImages/dbm01db08vm01/System.img $(grep ^disk /EXAVMIMAGES/GuestImages/dbm01db08vm01/vm.cfg|awk -F":" '{print $2}'|awk -F"," '{print $1}'|awk -F"/" '{print $6}') # ln -s /EXAVMIMAGES/GuestImages/dbm01db08vm01/grid12.1.0.2.2.img $(grep ^disk /EXAVMIMAGES/GuestImages/dbm01db08vm01/vm.cfg|awk -F":" '{print $3}'|awk -F"," '{print $1}'|awk -F"/" '{print $6}') # ln -s /EXAVMIMAGES/GuestImages/dbm01db08vm01/db12.1.0.2.2-3.img $(grep ^disk /EXAVMIMAGES/GuestImages/dbm01db08vm01/vm.cfg|awk -F":" '{print $4}'|awk -F"," '{print $1}'|awk -F"/" '{print $6}') # ln -s /EXAVMIMAGES/GuestImages/dbm01db08vm01/pv1_vgexadb.img $(grep ^disk /EXAVMIMAGES/GuestImages/dbm01db08vm01/vm.cfg|awk -F":" '{print $5}'|awk -F"," '{print $1}'|awk -F"/" '{print $6}')
- ユーザー・ドメインのUUIDを取得します。
- 各ユーザー・ドメインを再起動します。
# xm create /EXAVMIMAGES/GuestImages/user_domain_hostname/vm.cfg
この時点で、すべてのユーザー・ドメインがOracle Grid Infrastructureとデータベース・インスタンスとともに起動します。
親トピック: Oracle VMデプロイメントのリカバリ