バックアップの前後処理シェルスクリプトをカスタマイズする方法について、以下に説明します。
業務ボリュームをアンマウントしたくない場合
マウントされているがアンマウントしたくない業務ボリュームに対しては、バックアップ実行時の前処理シェルスクリプト(OpcBackup.pre)の90~98、102、135行目のコメント("#")をエディタなどで消去し、90行目のif文で対象となるデバイスを指示してください。
この操作は、ファイルシステムが以下の場合だけ可能です。
ufs
SafeFILE(シングルパーティション構成)
カスタマイズしたシェルスクリプトによる前処理の動作は、以下のとおりです。
業務ボリュームの状態 | 前処理 |
---|---|
マウントされている | 業務ボリュームへの更新を抑止します。 |
カスタマイズしたシェルスクリプトによる後処理の動作は、以下のとおりです。
前処理 | 後処理 |
---|---|
業務ボリュームへの更新を抑止した | 業務ボリュームへの更新抑止を解除します。 |
注意
標準のシェルスクリプトを使用した運用では、アドバンスト・コピー(EC/OPC)の前にファイルシステムをアンマウントすることで、ファイルシステムのキャッシュの書出しとそのあとの更新が抑止されるため、ファイルシステム全体のデータの整合性が保証されます。
シェルスクリプトをカスタマイズして、ファイルシステムをアンマウントしない場合は、lockfs -wを使用してファイルシステムのキャッシュのフラッシュとそのあとの更新を抑止しますが、Write Open中のファイル(オンラインバックアップをサポートしているOracleのデータベーススペースは除きます)は、ファイル内容が保証されません。また、メタデータ更新中のプロセスがある場合は、lockfsの仕様上、ファイルシステム自体のデータ整合性も保証されません。
したがって、ファイルシステムをアンマウントしない場合は、運用でデータ整合性を考慮・対処する必要があります。
SDXオブジェクトをスライス単位で運用する場合は、バックアップ実行時の前処理シェルスクリプト(OpcBackup.pre)で、90行目にはスライス名(/dev/sfdsk/(クラス名)/dsk/(ボリューム名):(sdxinfoのDEVNAMの値))でなく、論理ボリューム名(/dev/sfdsk/(クラス名)/dsk/(ボリューム名))を指定してください。
VERITAS Cluster Serverでクラスタ運用する場合
VERITAS Cluster Serverでクラスタ運用する場合で、業務ボリュームのマウントポイントがクラスタ業務に登録されているときは、前後処理シェルスクリプトのカスタマイズが必要です。
前後処理シェルスクリプト内のマウント/アンマウント処理を、マウントポイントリソースのオフライン/オンライン処理に変更してください。
また、マウントポイントリソースのオフライン/オンラインを行ってから実際にボリュームがアンマウント/マウントされるまで時間差があります。そのため、実際にアンマウント/マウントされるまで待ち合わせる処理(sleepやdfコマンドの結果を監視するなど)を、オフライン/オンラインの成否を判定する箇所のうしろに追加してください。
以下に、前後処理シェルスクリプトのカスタマイズ例を示します。
[例] バックアップの前処理シェルスクリプト(OpcBackup.pre)の、アンマウント処理変更
[104、113行目]
(変更前) | /usr/sbin/umount $mount_point |
(変更後) | /opt/VRTSvcs/bin/hares -offline resourceName -sys systemName |
[例] バックアップの前処理シェルスクリプト(OpcBackup.pre)の、アンマウント待ち処理追加
[133行目]
(追加) | while /usr/sbin/df -l "$device">/dev/null 2>&1; do :; done |
[例] バックアップの後処理シェルスクリプト(OpcBackup.post)の、マウント処理変更
[112、116、118、131、135、137行目]
(変更前) | /usr/sbin/mount $device $mount_point または |
(変更後) | /opt/VRTSvcs/bin/hares -online resourceName -sys systemName |
[例] バックアップの後処理シェルスクリプト(OpcBackup.post)の、マウント待ち処理追加
[157行目]
(追加) | until /usr/sbin/df -l "$device">/dev/null 2>&1; do :; done |