Using the efm utility#

Failover Managerは、クラスター管理を支援するefm ユーティリティを提供します。 RPMインストーラーは、Failover Managerのインストール時に、ユーティリティを/usr/edb/efm-4.<x>/bin ディレクトリに追加します。

efm allow-node#

efm allow-node <cluster_name> <address>

efm allow-node コマンドを呼び出して、指定されたノードをクラスターに参加させます。コマンドを呼び出すときに、クラスターの名前と参加ノードのIPアドレスを指定します。

このコマンドは、efm、efmグループのメンバー、またはrootによって呼び出される必要があります。

efm disallow-node#

efm disallow-node <cluster_name> <address>

efm disallow-node コマンドを呼び出して、指定されたノードを許可ホストリストから削除し、ノードがクラスターに参加しないようにします。 efm disallow-node コマンドを呼び出すときに、クラスターの名前とノードのアドレスを指定します。このコマンドは、efm、efmグループのメンバー、またはrootによって呼び出される必要があります。

注釈

クラスターからノードを削除し、再度追加する予定がない場合、代わりに efm remote-members コマンドを使用できます。

efm cluster-status#

efm cluster-status <cluster_name>

efm cluster-status コマンドを呼び出して、フェールオーバーマネージャークラスターの状態を表示します。ステータスレポートの詳細については、 Monitoring a Failover Manager cluster を参照してください。

efm cluster-status-json#

efm cluster-status-json <cluster_name>

efm cluster-status-json コマンドを呼び出して、フェールオーバーマネージャークラスターの状態をJSON形式で表示します表示される情報の形式はefm cluster-status コマンドで生成された表示とは異なりますが、情報ソースは同じです。

次の例は、3つのノードを持つ正常なクラスターのステータスを照会することにより生成されます。

{
    "nodes": {
        "172.16.144.176": {
            "type": "Witness",
            "db": "N\/A",
            "vip": "",
            "vip_active": false
        },
        "172.16.144.177": {
            "type": "Primary",
            "db": "UP",
            "vip": "",
            "vip_active  :   false"
            "xlogReceive :   0/14001478"
            "xlog    :   0/14001478"
            "xloginfo    :"
        },
        "172.16.144.180": {
            "type": "Standby",
            "db": "UP",
            "vip": "",
            "vip_active  :   false"
            "xlogReceive :   0/14001478"
            "xlog    :   0/14001478"
            "xloginfo    :"
        }
    },
    "allowednodes": [
        "172.16.144.177",
        "172.16.144.160",
        "172.16.144.180",
        "172.16.144.176"
    ],
    "membershipcoordinator": "172.16.144.177",
    "failoverpriority": [
        "172.16.144.180"
    ],
    "minimumstandbys": 0,
    "missingnodes": [],
    "messages": []
}

efm encrypt#

efm encrypt <cluster_name> [--from-env]

クラスタプロパティファイルにパスワードを含める前に、 efm encrypt コマンドを呼び出してデータベースパスワードを暗号化します--from-env オプションを含めて、EFMPASS 環境変数で指定された値を使用し、ユーザー入力なしで実行するようにフェールオーバーマネージャーに指示します。詳細については、 Encrypting your database password を参照してください。

efm promote#

efm promote cluster_name [-switchover [-sourcenode <address>][-quiet][-noscripts]

efm promote コマンドは、スタンバイからプライマリへの手動フェールオーバーを実行するようにフェールオーバーマネージャーに指示します。

データベースクラスターのメンテナンス時間帯に、クラスター内のすべてのスタンバイがプライマリと最新の状態であることがstatusコマンドで報告された場合にのみ、手動プロモーションを試行します。

–switchover 句を含めてスタンバイノードを昇格させ、プライマリノードをスタンバイノードとして再構成します。 -sourcenode キーワードを含め、ノードアドレスを指定して、スタンバイにする古いプライマリノードにリカバリ設定をコピーするノードを指定します。スイッチオーバープロセス中の通知を抑制するには、 -quiet キーワードを含めます。 -noscripts キーワードを含めて、フェンシングまたはポストプロモーションスクリプトを呼び出さないようにフェールオーバーマネージャーに指示します。

このコマンドは、efm、efmグループのメンバー、またはrootによって呼び出される必要があります。

注釈

このコマンドは、クラスタープロパティファイルの`auto.failover` パラメーターで指定された値を無視するようにサービスに指示します。

efm remote-members#

efm reset-members <cluster_name>

efm reset-members コマンドを呼び出して、キャッシュされたノードアドレスをフェールオーバーマネージャークラスターから削除します。ノードがクラスターから完全に削除された後にこのコマンドを実行して、クラスターが削除されたノードのアドレスに接続しようとしないようにします。このコマンドを実行すると、クラスター内の各ノードで次のことが行われます。

  1. .nodes ファイルのアドレスを現在のクラスターメンバーにリセットします。これは、 stable.nodes.file プロパティがtrue に設定されている場合でも発生します。

  2. 許可ノードホストリストを更新して、現在のメンバーのみを含めます。

  3. すべてのエージェントを互いに一時的に切断し、再接続します。

実行中のデータベースは、この操作の影響を受けません。操作が完了したら、スタンバイ優先度リストの更新が必要になる場合があります。詳細については、 efm set-priority コマンドを参照してください。

efm resume#

efm resume <cluster_name>

efm resume コマンドを呼び出して、以前に停止したデータベースの監視を再開します。このコマンドは、efm、efmグループのメンバー、またはrootによって呼び出される必要があります。

efm set-priority#

efm set-priority <cluster_name> <address> <priority>

efm set-priority コマンドを呼び出して、フェールオーバー優先度をスタンバイノードに割り当てます。値は、フェールオーバーが発生した場合にノードを使用する順序を指定します。このコマンドは、efm、efmグループのメンバー、またはrootによって呼び出される必要があります。

priorityオプションを使用して、優先度リスト内のノードの場所を指定します。たとえば、1 の値を指定して、ノードがプライマリスタンバイであり、フェールオーバーが発生した場合に昇格する最初のノードになることを示します。 0 の優先度値は、スタンバイをプロモートしないようにフェールオーバーマネージャーに指示します。

efm stop-cluster#

efm stop-cluster <cluster_name>

efm stop-cluster コマンドを呼び出して、すべてのノードでフェールオーバーマネージャーを停止します。このコマンドは、フェールオーバーマネージャーに、クラスター内の各ノードに接続し、既存のメンバーにシャットダウンするように指示します。このコマンドは実行中のデータベースには影響しませんが、コマンドが完了すると、フェールオーバー保護は実施されません。

注釈

efm stop-cluster コマンドを呼び出すと、許可されたノード情報がすべて許可ノードホストリストから削除されます。

このコマンドは、efm、efmグループのメンバー、またはrootによって呼び出される必要があります。

efm upgrade-conf#

efm upgrade-conf <cluster_name> [-source <directory>]

efm upgrade-conf コマンドを呼び出して、既存のFailover Managerインストールから構成ファイルをコピーし、Failover Managerインストールに必要なパラメーターを追加します。ユーティリティを呼び出すときに、以前のクラスターの名前を指定します。デフォルトモードでフェールオーバーマネージャーを実行している場合、このコマンドはスーパーユーザー特権で呼び出す必要があります。

オプションの-source フラグの詳細について、またはsudoを使用しないフェールオーバーマネージャー構成からアップグレードする場合、 Eager FailoverモードでのFailover Managerのアップグレード を参照してください。

efm node-status-json#

efm node-status-json <cluster_name>

efm node-status-json コマンドを呼び出して、ローカルノードの状態をJSON形式で表示しますこのコマンドの実行が成功すると、終了コードとして0 が返されます。データベースに障害が発生するか、エージェントのステータスがIDLEになった場合、コマンドは終了コードとして1 を返します。

次に、 efm node-status-json コマンドの出力例を示します。

{
  "type":"Standby",
  "address":"172.16.144.130",
  "db":"UP",
  "vip":"",
  "vip_active":"false"
 }

efm –help#

efm --help

efm --help コマンドを呼び出して、フェールオーバーマネージャーユーティリティコマンドのオンラインヘルプを表示します。