Upgrading Failover Manager#

Failover Managerは、Failover Managerによって管理されるクラスターをアップグレードする際に役立つユーティリティを提供します。既存のクラスターをアップグレードするには、次のことを行う必要があります。

  1. クラスターの各ノードにFailover Manager 5.0をインストールします。 Failover Managerのインストールの詳細については、 Installing Failover Manager on Linux を参照してください。

  2. Failover Managerをインストールした後、 efm upgrade-confユーティリティを呼び出して、Failover Manager 5.0の.properties および.nodes ファイルを作成します。 Failover Managerインストーラーは、アップグレードユーティリティ efm upgrade-conf を/usr/edb/efm-5.0/bin ディレクトリにインストールします。ユーティリティを起動するには、root権限を引き受けて、コマンドを呼び出します。

efm upgrade-conf <cluster_name>

efm upgrade-conf ユーティリティは、既存のクラスターの.properties および.nodes ファイルを見つけ、フェールオーバーマネージャーが使用する新しい構成ファイルにパラメーター値をコピーします。ユーティリティーは、構成ファイルの更新されたコピーを/etc/edb/efm-5.0 ディレクトリーに保存します。

  1. Failover Manager 5.0の.properties および.nodes ファイルを変更し、新しい設定を指定します。そのノードのサービスを開始する前に、自分の使いやすいエディターを使って、プロパティファイル/etc/edb/efm-5.0 ディレクトリにある追加プロパティを変更します。プロパティ設定の詳細については、 The cluster properties file を参照してください。

  2. イーガーフェールオーバーを使用している場合、フェールオーバーマネージャークラスターを停止する前にそれを無効にする必要があります。詳細については、 Eagerフェイルオーバーの無効化 を参照してください。

  3. バージョン固有のコマンドを使用して、古いフェールオーバーマネージャークラスターを停止します。たとえば、次のコマンドを使用してバージョン4.10クラスターを停止できます。

/usr/efm-4.10/bin/efm stop-cluster efm

注釈

プライマリエージェントは、停止時に仮想IPアドレスを使用している場合をドロップしません。 EFMのアップグレード中に、VIPでデータベースは稼働したままでアクセスできます。 Using Failover Manager with virtual IP addresses も参照してください。

  1. クラスターの各ノードで新しい Controlling the Failover Manager service edb-efm-5.0 を起動します。

次の例は、アップグレードユーティリティを呼び出して、Failover Managerインストールの.properties および.nodes ファイルを作成する方法を示しています。

[root@hostname ~]# /usr/edb/efm-5.0/bin/efm upgrade-conf efm
Checking directory /etc/edb/efm-4.10
Processing efm.properties file
New property auto.resume.startup.period set to value of 20 based on auto.resume.period property.
New property auto.resume.failure.period set to default value of 0.

The following properties were added in addition to those in previous installed version:
    jdbc.properties
    backup.wal

Checking directory /etc/edb/efm-4.10
Processing efm.nodes file

Upgrade of files is finished. The owner and group for properties and nodes files have been set as efm.[root@hostname ~]#

オプションの-source フラグ#

-source フラグを使用して、処理するファイルを含むディレクトリを明示的に指定できます。ディレクトリがフェールオーバーマネージャーの構成の場所つまり/etc/edb/efm-<earlier_version> の場合、ユーティリティはデフォルトの構成ディレクトリに新しいファイルを書き込みます。この動作により、必要に応じて特定の以前のバージョンからアップグレードできます。

ソースディレクトリが他のディレクトリの場合、ユーティリティはコマンドが呼び出されたディレクトリに新しいファイルを作成します。ファイルの所有者は、コマンドを実行したユーザーです。このアプローチは、通常、 using a Failover Manager configuration without sudo の場合に使用され、 root権限は必要ありません。

概要

  • ``-source`` フラグは使用されません。 ユーティリティーは、以前のインストールディレクトリで構成ファイルを検索します。新しいファイルは、現在のデフォルト構成ディレクトリに生成され、efmユーザーが所有します。 root権限が必要です。

  • ``-source`` フラグは、以前のインストールの構成ディレクトリに設定されています。 ユーティリティは、指定されたディレクトリでのみ構成ファイルを検索します。新しいファイルは、現在のデフォルト構成ディレクトリに生成され、efmユーザーが所有します。 root権限が必要です。

  • ``-source`` フラグは他のディレクトリに設定されています。 ユーティリティは、指定されたディレクトリでのみ構成ファイルを検索します。新しいファイルは、コマンドが呼び出されたディレクトリに生成され、コマンドを呼び出したユーザーが所有します。 root権限は必要ありません。

注釈

すべての場合、 <cluster_name>.properties または`<cluster_name>.nodes` ファイルがターゲットディレクトリに既に存在する場合、新しいファイルが保存される前にタイムスタンプで名前が変更されます。

フェールオーバーマネージャーのアンインストール#

注釈

カスタムスクリプトを使用している場合、Failover Managerスクリプトを呼び出しているかどうかを確認します。たとえば、昇格後に実行してさまざまなタスクを実行し、フェールオーバーマネージャーの`efm_address` スクリプトを呼び出して仮想IPアドレスを取得するスクリプト。フェールオーバーマネージャースクリプトを呼び出すカスタムスクリプトがある場合は、古いバージョンのフェールオーバーマネージャースクリプトをアンインストールする前に、新しくインストールされたバージョンのフェールオーバーマネージャースクリプトを使用するようにカスタムスクリプトを更新します。

Failover Manager 5.0にアップグレードした後、ネイティブパッケージマネージャーを使用して、以前にインストールしたFailover Managerを削除できます。たとえば、次のコマンドを使用して、フェールオーバーマネージャー4.10および不要な依存関係を削除します。

  • RHEL/Rocky Linux/AlmaLinux 8.x以降

dnf remove edb-efm410
  • DebianまたはUbuntuの場合

apt-get remove edb-efm410
  • SLESの場合

zypper remove edb-efm410

メンテナンスタスクの実行#

OSパッチやマイナーデータベースバージョンのアップグレードなどのメンテナンスアクティビティを実行できます。マイナーバージョンから別のマイナーバージョン15.5.0からバージョン15.6.0などにアップグレードしたり、バージョンにパッチリリースを適用したりできます。

最初に、フェールオーバーマネージャークラスターの各スタンバイノードでデータベースサーバーを更新します。次に、スイッチオーバーを実行し、スタンバイノードをフェールオーバーマネージャークラスター内のプライマリの役割に昇格させます。次に、古いプライマリノードでデータベースの更新を実行します。

クラスターの各ノードで、次の手順を実行してデータベースサーバーを更新します。

  1. Failover Managerエージェントを停止します。

  2. データベースサーバーを停止します。

  3. データベースサーバーを更新します。

  4. データベースサービスを開始します。

  5. Failover Managerエージェントを起動します。

EDB Postgres Advanced Serverサービスの制御、またはEDB Postres Advanced Serverのバージョンのアップグレードの詳細については、 EDB Postgres Advanced Server Guide を参照してください。

更新が完了したら、 efm set-priority コマンドを使用して古いプライマリをスタンバイリストの先頭に追加し、スイッチオーバーしてクラスターを元の状態に戻すことができます。