Password Manager Pro ナレッジベース

PostgreSQLデータベース用リードオンリーサーバー(ROサーバー)の設定方法(ビルド12300以降)


概要

リードオンリーサーバー (以下、ROサーバー)は、ユーザーに対してデータ変更・更新を実行させず、Password Manager Proの読み取り操作のみを実行許可する冗長アプリケーションサーバー機能です。

ROサーバー設定は、書き込み操作も可能なセカンダリサーバーと読み取り操作のみ可能なROサーバーで構成される高可用性機能(HA)とは異なり、ご要望に合わせて複数のROサーバーを複数構築していただくことが可能です(セカンダリサーバーは構成対象ではありません)。構築されたすべてのROサーバーは、プライマリーサーバーに接続され同期されるため、データの一貫性が保証されます。

ROサーバーで実行されたすべての操作は、プライマリーサーバーから返答・監査され、他のROサーバーに複製されます。プライマリサーバーが故障した場合、管理者は任意のROサーバーをプライマリサーバーとして変換し、他すべてのROサーバーを再設定することで、新しく設定されたプライマリサーバーをミラーリングするようにできます。
ROサーバー機能では、ユーザーはパスワード取得・閲覧のみが許可されます。リソースアカウントへのリモート接続はできません。
※本機能のご使用をご検討されている場合、別途ライセンスが必要となります。 ライセンスについては、ご購入の際にご連絡いただきました弊社営業担当まで別途ご確認をお願いいたします。

目次

  1. ROサーバーのセットアップパック作成手順
  2. ROサーバーのセットアップ手順
  3. ROサーバーをプライマリーサーバーに変更する手順
  4. ROサーバーの削除手順
  5. ROサーバー監査

ROサーバーのセットアップパック作成手順

事前準備:

ROサーバーにプライマリサーバーで構築済みのPassword Manager Proと同じビルドをインストール。

※インストーラ起動時[Read-only server]を選択してインストールを進める必要があります。  
  1. プライマリ Password Manager Proサービスを停止します。
  2. プライマリサーバーでコマンドプロンプトを管理者権限で開き、PMP/binに移動します。
  3. 以下のコマンドを実行し、ROサーバーにコピーするのに必要なファイルを含むROPack.zipファイルを作成します。
    ※生成されたレプリケーションパック(ZIPファイル)は、PMP/replicationフォルダー下に配置されます。
  4. Windows: ROSetup.bat [IP_of_RO_Server] [userName] [password] [slotName]

    Linux: ROSetup.sh [IP_of_RO_Server] [userName] [password] [slotName]


    [コマンドの入力内容]
    1. [IP_of_RO_Server]:ROサーバーの有効なIPアドレス
    2. [userName]:レプリケーションに使用するユーザー名
    3. [password]:レプリケーションユーザーのパスワード
    4. [slotName]:レプリケーションを行うROサーバーのスロット名
    制約事項:
    • ユーザー名には、小文字、数字、アンダースコアのみを含めることができます。
    • パスワードには、使用する文字の制限はありません。
    • スロット名には、小文字、数字、アンダースコアのみを含めることができます。
    ROサーバーを設定するため初めてレプリケーションパックを作成する際には、任意のユーザー名/パスワード/スロット名を入力する必要があります。 今後、同じROサーバーに追加でレプリケーションパックを生成する際には、同じ情報を入力する必要がありますのでご注意ください。
    ※Password Manager Proデータベースは、ユーザー名/パスワード/スロット名を保存しません。ご自身での保存をお願いいたします。
  5. プライマリPassword Manager Proサービスを開始します。
  6. プライマリサーバーでコマンドプロンプトを管理者権限で開き、PMP/binに移動します。
  7. 以下のコマンドを実行し、証明書をインポートします。
  8. Windows:

    importCert.bat ..\conf \ServerCer.cer

    importCert.bat ..\conf\CACert.pem

    importCert.bat ..\agent\ServerCer.cer

    Linux:

    sh importCert.sh ../conf/ServerCer.cer

    sh importCert.sh ../conf/CACert.pem

    sh importCert.sh ../agent/ServerCer.cer

    カスタム証明書をインストールする場合は、上記のコマンドで証明書のパスを置き換えてください。

ROサーバーのセットアップ手順

  1. ROサーバーPassword Manager Proサービスを停止します。
  2. ROサーバーのPassword Manager Proインストールフォルダに移動し、プライマリサーバーで作成したROPack.zipファイルを展開します。 これにより、構築済みのプライマリーサーバーファイルをROサーバーにコピーします。
  3. プライマリサーバーからpmp_key.keyファイルをROサーバーの任意の場所にコピーし、/conf/manage_key.confファイルのpmp_key.keyファイルパスをコピーした場所のパスへ更新します。
    1. 当該フォルダーのフルパスには、2バイト文字(漢字、ひらがな、カタカナ、全角スペース等)を含まないようにしてください。
    2. PMPインストールフォルダーと同じ階層のフォルダーに暗号化キー(pmp_key.key)を保存する場合は、フォルダー名に「PMP」または「pmp」から始まる文字列は使用できません。
      例)以下のようなフォルダー構成は使用できません。

      インストールフォルダー:C:\Program Files\ManageEngine\PMP
      暗号化キーの保存先フォルダー:C:\Program Files\ManageEngine\PMP_key
  4. ROサーバーPassword Manager Proサービスを再開します。
    • PMPにカスタムSSL証明書を使用している場合は、プライマリーサーバーからSSL証明書をコピーし、ROサーバーPMP\confパスに貼り付けてください。
    • manage_key.confファイルがROサーバーに存在しない場合は、manage_key.confという名前のファイルを新規作成し、暗号化キーの場所を記述します。暗号化キーがリモートパスにある場合は、UNCフォーマットでパスを記述します。
    • ROサーバーでコマンドプロンプトを管理者権限で開き、PMP\binに移動して次のコマンドを実行し、証明書をインポートします。
    Windows:

    importCert.bat ..\conf\ServerCer.cer

    importCert.bat ..\conf\CACert.pem

    importCert.bat ..\agent\ServerCer.cer

    Linux:

    sh importCert.sh ../conf/ServerCer.cer

    sh importCert.sh ../conf/CACert.pem

    sh importCert.sh ../agent/ServerCer.cer


    カスタム証明書をインストールする場合は、上記のコマンドで証明書のパスを必ず置き換えてください。
これにて、ROサーバーの設定は完了です。 プライマリサーバー側「管理>設定>リードオンリーサーバー」にて、ROサーバーの状態が表示されます。

ROサーバーをプライマリーサーバーに変更する手順

  1. プライマリーサーバーとして変換するROサーバーのPassword Manager Proサービスを停止します。
  2. PMP\pgsql\dataフォルダーからrecovery.confファイルを削除します。
  3. PMP\conf\configurations.propertiesファイルのreadonly.mode=trueという項目を削除します。
  4. PMP\conf\serverstate.confを編集し、「ro」を「master」に変更します。
以上でROサーバーをプライマリーサーバーとして設定変更する手順は完了です。 次に、PMP\binに移動し、以下のコマンドを実行して、データベースから変換したROサーバーのIPアドレスを削除してください。
Windows:

DeleteROServerIP.bat

DeleteSlot.bat

Linux:

DeleteROServerIP.sh [IP_Address_of_RO_that_was_converted_to_Primary]

DeleteSlot.sh [slotName_of_RO_that_was_converted_to_Primary]

最後に、ステップ1(プライマリサーバーにROサーバー構成パックを作成する)およびステップ2(ROサーバーのセットアップ)の手順に従い、 既存のROサーバーを新しいプライマリーサーバーと同期するように再設定します。

ROサーバーの削除手順

プライマリーサーバーにて下記コマンドを実行し、ROサーバーをクラスタから削除します。

Windows:

PMP\bin\DeleteROServerIP.bat
Linux:
PMP/bin/DeleteROServerIP.sh

ROサーバーに設定されている既存のスロットを削除するには、以下のコマンドを実行します。

Windows:
PMP\bin\DeleteSlot.bat
Linux:
PMP/bin/DeleteSlot.sh
ビルド12400以降にアップグレードすると、ROサーバーで設定されている既存のスロットの削除は、PostgreSQLサーバーによって自動的に実行されます。

ROサーバー監査

ROサーバーが有効になっている場合、ROサーバーの監査は、[監査]タブ→[リソース監査]または、[ユーザー監査]→[リードオンリーサーバー]下に表示されます。