警告: セカンダリレプリケーションサイトのレプリケーションモードとオペレーションモードは変更できますが、LifeKeeperの外部でSAP HANAシステムレプリケーションの手動によるテイクオーバーまたはスイッチオーバーは実行しないでください。これを行うとエラー状態になり、SAP HANAシステムレプリケーションモードはLifeKeeperがアクティブ/スタンバイサーバーで期待しているモードと一致しなくなります。このエラー状態は、LifeKeeper GUIに次のリソース状態で表示されます。
この状態の間、SAP HANAリソースの監視はすべて、プライマリレプリケーションサイトとなるサーバー上のLifeKeeperでリソースがIn Serviceになるまで中断されます。
レプリケーションモードの変更
データベースがセカンダリレプリケーションサイトで実行されている場合でも、 "hdbnsutil -sr_changemode" コマンドを使用してSAP HANAシステムレプリケーションモードを変更できます。
- セカンダリレプリケーションサイトで次のコマンドを実行します。
su - <sid>adm -c "hdbnsutil -sr_changemode --mode=[sync|syncmem|async]"
<sid> は、SAP HANAインストール時に使用した小文字のSAPシステムIDで、希望するレプリケーションモード(sync、syncmem、またはasync)を --mode オプションで指定します。このコマンドを実行すると、セカンダリサイトでデータベースを実行または停止できます。
- レプリケーションモードが正常に変更されたことを確認するには、セカンダリレプリケーションサイトで次のコマンドを実行し、"mode" パラメーターが新しいレプリケーションモードに更新されたことを確認します。
su - <sid>adm -c "hdbnsutil -sr_state"
次のquickCheck間隔(デフォルトは2分)後、LifeKeeperは変更を自動的に検出し、同等のすべてのSAP HANAリソースの情報フィールドを更新して新しいレプリケーションモードを含めます。これは、次のコマンドを使用してHANAリソースの情報フィールドを調べることで確認できます。
/opt/LifeKeeper/bin/ins_list -d <HostName> -t <Tag> -f: | cut -d: -f6 | tr '\002' ':'
<HostName> は、情報を取得するサーバーのホスト名、 <Tag> は、指定されたサーバー上のLifeKeeperのSAP HANAリソースのタグ名(例:HANA-SPS_HDB00)です。
現在保存されているセカンダリレプリケーションモードは、このコマンドの出力の3番目のフィールドです。
SPS:HDB00:sync:shiba:logreplay
オペレーションモードの変更
注記: オペレーションモードをlogreplayまたはlogreplay_readaccessからdelta_datashippingに変更するには、レプリケーションの再開時にプライマリサイトからセカンダリサイトへの完全なデータシッピングが必要になります。これらのオペレーションモードの変更の1つが検出されると、SAP HANAによってこの完全なデータシッピングが自動的に実行されます。
SAP HANAシステムレプリケーションのオペレーションモードを変更するには、通常、セカンダリサイトでデータベースを停止し、新しい操作モードで再登録し、セカンダリサイトでデータベースを再起動する必要があります。LifeKeeperがこのプロセス中にセカンダリサイトでデータベースを自動的に再起動しないようにするには、データベースが新しいオペレーションモードで正常に再登録されるまで、HANAリソースの監視を一時停止することをお勧めします。
- リソースが現在アクティブ(ISP)になっているサーバーで対応する nomonitor フラグを作成して、HANAリソースの監視を一時停止します。
/opt/LifeKeeper/bin/flg_create -f 'nomonitor_<Tag>'
<Tag> は、そのサーバー上のLifeKeeperのHANAリソースタグです(例:HANA-SPS_HDB00)。このプロセスが完了したら、次のコマンドで nomonitor フラグを削除して、リソースの監視を再開することを忘れないようにしてください。
/opt/LifeKeeper/bin/flg_remove -f 'nomonitor_<Tag>'
警告: メンテナンス操作の実行後にこのフラグを削除しないと、SAP HANAデータベースの障害がLifeKeeperによって検出されなくなります。
- 次のコマンドを実行して、バックアップサーバーでSAP HANAデータベースが停止していることを確認します。
su - <sid>adm -c "sapcontrol -nr <HDB Inst#> -function StopSystem HDB"
<HDB Inst#> は、SAP HANAデータベースインスタンスのインスタンス番号です(例:HDB00という名前のインスタンスの場合、インスタンス番号は00です)。
- 使用したいレプリケーションモードとオペレーションモードを指定してバックアップサーバーで次のコマンドを実行し、セカンダリレプリケーションサイトとして再登録します。
su - <sid>adm -c "hdbnsutil -sr_register --name=<SecondarySiteName> --remoteHost=<PrimaryHost> --remoteInstance=<PrimaryInst#> --replicationMode=[sync|syncmem|async] --operationMode=[delta_datashipping|logreplay|logreplay_readaccess]"
<SecondarySiteName> は、セカンダリレプリケーションサイトを識別するためにSAP HANAシステムレプリケーションで使用されるエイリアス、 <PrimaryHost> は、プライマリレプリケーションサイトとして現在登録されているサーバーのホスト名、 <PrimaryInst#> はプライマリレプリケーションサイトのHDBインスタンスのインスタンス番号です。 注記: 新しいレプリケーションモードまたはオペレーションモードで再登録する前に、 "hdbnsutil -sr_unregister" コマンドでセカンダリサイトを登録解除する必要はありません。
- バックアップサーバーが新しいオペレーションモードでセカンダリレプリケーションサイトとして正常に再登録されたことを確認するには、バックアップサーバーで次のコマンドを実行し、"is secondary/consumer system" が「true」であり、パラメーター"operation mode" が新しいオペレーションモードに更新されていることを確認します。
su - <sid>adm -c "hdbnsutil -sr_state"
- バックアップサーバーがセカンダリレプリケーションサイトとして正常に登録されたら、バックアップサーバーで次のコマンドを実行してデータベースを起動します。
su - <sid>adm -c "sapcontrol -nr <HDB Inst#> -function StartSystem HDB"
<HDB Inst#> は、SAP HANAデータベースインスタンスのインスタンス番号です。
- プロセスが完了したら、ステップ1で作成した nomonitor フラグを削除して、LifeKeeperによるHANAリソースの監視を再開します。
/opt/LifeKeeper/bin/flg_remove -f 'nomonitor_<Tag>'
警告: このフラグを削除しないと、SAP HANAデータベースの障害がLifeKeeperによって検出されなくなります。
次のquickCheck間隔(デフォルトは2分)後、LifeKeeperは変更を自動的に検出し、同等のすべてのSAP HANAリソースの情報フィールドを更新して新しいオペレーションモードを含めます。これは、次のコマンドを使用してHANAリソースの情報フィールドを調べることで確認できます。
/opt/LifeKeeper/bin/ins_list -d <HostName> -t <Tag> -f: | cut -d: -f6 | tr '\002' ':'
<HostName> は情報を取得するサーバーのホスト名で、 <Tag> は指定されたサーバー上のLifeKeeperのSAP HANAリソースのタグ名です(例:HANA-SPS_HDB00)。
現在保存されているセカンダリレプリケーションモードは、このコマンドの出力の5番目のフィールドです。
SPS:HDB00:sync:shiba:logreplay
このトピックへフィードバック