レプリケーションの前後処理シェルスクリプトのカスタマイズ方法を、以下に説明します。
レプリケーション対象がボリュームグループの場合
ファイルシステムが構築された論理ボリュームを含むボリュームグループがレプリケーション対象の場合は、前後処理シェルスクリプトの修正が必要です。
複写元ボリューム用の前処理シェルスクリプト(RepSrc.pre)の64~128行目、および複写元ボリューム用の後処理シェルスクリプト(RepSrc.post)の68~142行目において、ファイルシステムが構築されたすべての論理ボリュームに対してアンマウント/マウント処理が行われるように、適宜修正してください。
“X”で示す箇所は、実際の環境に合わせて変更してください。また、複写元ボリューム用の前処理シェルスクリプト(RepSrc.pre)の99~127行目、および複写元ボリューム用の後処理シェルスクリプト(RepSrc.post)の105~136行目のコメントをはずし、これらの処理をボリューム数分記述してください。
複写先ボリューム用の前処理シェルスクリプト(RepDst.pre)の68~133行目、および複写先ボリューム用の後処理シェルスクリプト(RepDst.post)の180~201、204~240行目において、ファイルシステムが構築されたすべての論理ボリュームがアンマウント/マウントされるように、適宜修正してください。
“X”で示す箇所は、実際の環境に合わせて変更してください。また、複写先ボリューム用の前処理シェルスクリプト(RepDst.pre)の103~131行目、および複写先ボリューム用の後処理シェルスクリプト(RepDst.post)の188~189、224~238行目のコメントをはずし、これらの処理をボリューム数分記述してください。
複写先ボリューム用の後処理シェルスクリプト(RepDst.post)の編集方法は、以下のとおりです。
182行目は、複写先ボリュームの物理ボリューム名を記述してください。
186行目のクオートの中は、複写元ボリュームと複写先ボリュームの論理ボリューム名の対応関係を記述します。“複写元ボリュームの論理ボリューム名:複写先ボリュームの論理ボリューム名”の形式で記述してください。複写元ボリューム内に複数の論理ボリュームが存在する場合は、論理ボリュームの数分186行目の内容を記述してください。これは、マウントされていない論理ボリュームでも記述する必要があります。
187行目のクオートの中は、複写先ボリュームの論理ボリューム名を記述します。“複写先ボリュームの論理ボリューム名:複写先ボリュームの論理ボリューム名”の形式で記述してください。複写先ボリューム内に複数の論理ボリュームが存在する場合は、論理ボリュームの数分187行目の内容を記述してください。これはマウントされていない論理ボリュームでも記述する必要があります。
208行目は、複写先ボリュームの論理ボリューム名を記述してください。
209行目は、208行目に記述した論理ボリュームについて、複写元ボリュームにおけるマウントポイントを記述してください。
210行目は、208行目に記述した論理ボリュームについて、複写先ボリュームにおけるマウントポイントを記述してください。
シェルスクリプトに対して必要な修正を実施後、複写元ボリューム用の前処理シェルスクリプト(RepSrc.pre)の60行目、および複写先ボリューム用の前処理シェルスクリプト(RepDst.pre)の64行目のexit文をコメント(“#”)化してください。
また、ファイルシステムが構築されていない論理ボリュームを含むボリュームグループがレプリケーション対象の場合は、上記修正に加えて、複写先ボリューム用の後処理シェルスクリプト(RepDst.post)の212~217行目の処理をコメント(“#”)化してください。
注意
カスタマイズしていない状態では、ボリュームグループに対する前処理がエラーになります。
mountコマンドなどのOSコマンドのパラメーターやオプションは、運用に合わせて適宜修正してください。
複写先のボリュームグループを活性化する運用を行っている場合、複写先ボリューム用の後処理シェルスクリプトにおいてLVM管理情報の書換え(recreatevg)を実施します。この処理は、時間のかかる場合があります。
VERITAS Cluster Serverでクラスタ運用する場合
VERITAS Cluster Serverでクラスタ運用する場合で、複写先/複写元のボリュームのマウントポイントがクラスタ業務に登録されているときは、前後処理シェルスクリプトのカスタマイズが必要です。
前後処理シェルスクリプト内のアンマウント/マウント処理を、マウントポイントリソースのオフライン/オンライン処理に変更してください。
また、マウントポイントリソースのオフライン/オンラインを行ってから実際にボリュームがアンマウント/マウントされるまでに時間差があります。そのため、実際にアンマウント/マウントされるまで待ち合わせる処理(sleepやdfコマンドの結果を監視するなど)をオフライン/オンラインの成否を判定する箇所のうしろに追加してください。
以下に、前後処理シェルスクリプトのカスタマイズ例を示します。
[例] 複写元ボリューム用の前処理シェルスクリプト(RepSrc.pre)の、アンマウント処理変更
[70、79、100、109行目]
(変更前) | /usr/sbin/umount $mount_point |
(変更後) | /opt/VRTSvcs/bin/hares -offline リソース名 -sys システム名 |
[例] 複写元ボリューム用の前処理シェルスクリプト(RepSrc.pre)の、アンマウント待ち処理の追加
[98、128行目]
(追加) | mount_status="mounted" |
[例] 複写先ボリューム用の前処理シェルスクリプト(RepDst.pre)の、アンマウント処理変更
[74、83、104、113行目]
(変更前) | /usr/sbin/umount $mount_point |
(変更後) | /opt/VRTSvcs/bin/hares -offline リソース名 -sys システム名 |
[例] 複写先ボリューム用の前処理シェルスクリプト(RepDst.pre)の、アンマウント待ち処理追加
[102、132行目]
(追加) | mount_status="mounted" |
[例] 複写元ボリューム用の後処理シェルスクリプト(RepSrc.post)の、マウント処理変更
[77、86、110、119行目]
(変更前) | /usr/sbin/mount $lvname $lv_mount_point |
(変更後) | /opt/VRTSvcs/bin/hares -online リソース名 -sys システム名 |
[例] 複写元ボリューム用の後処理シェルスクリプト(RepSrc.post)の、マウント待ち処理追加
[104、137行目]
(追加) | mount_status="not_mounted" |
[例] 複写先ボリューム用の後処理シェルスクリプト(RepDst.post)の、マウント処理変更
[72、81行目]
(変更前) | /usr/sbin/mount $lvname $lv_mount_point |
(変更後) | /opt/VRTSvcs/bin/hares -online リソース名 -sys システム名 |
[例] 複写先ボリューム用の後処理シェルスクリプト(RepDst.post)の、マウント待ち処理追加
[99行目]
(追加) | mount_status="not_mounted" |