Upgrading Failover Manager

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

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

2.フェールオーバーマネージャーをインストールした後、 efm upgrade-conf ユーティリティを呼び出して、Failover Manager 4.7の.properties および.nodes ファイルを作成します。 Failover Managerインストーラーは、アップグレードユーティリティ(

efm upgrade-conf )を/usr/edb/efm-4.7/bin directory

にインストールします。ユーティリティを呼び出すには、 root権限を引き受けて、次のコマンドを呼び出します。

efm upgrade-conf <cluster_name>

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

3.フェールオーバーマネージャー4.7の.properties および.nodes ファイルを変更し、新しい設定を指定します。そのノードのサービスを開始する前に、エディターの選択を使用して、プロパティファイル( /etc/edb/efm-4.7 ディレクトリにあります)の追加プロパティを変更します。プロパティ設定の詳細については、

The cluster properties file を参照してください。

注釈

db.bin は必須プロパティです。プロパティファイルを変更するときは、 db.bin プロパティがPostgres bin ディレクトリの場所を指定していることを確認します。

  1. Eager Failoverを使用している場合は、Failover Managerクラスターを停止する前に無効にする必要があります。詳細については、

    Eager Failoverの無効化 を参照してください。

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

/usr/efm-4.4/bin/efm stop-cluster efm

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

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

  [root@hostname ~]# /usr/edb/efm-4.7/bin/efm upgrade-conf efm
  Checking directory /etc/edb/efm-4.6
  Processing efm.properties file
  Checking directory /etc/edb/efm-4.5
  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 ~]#

:ref:`using a Failover Manager configuration without sudo <Extending Failover Manager permissions>` の場合、 ``-source`` フラグを含め、 ``upgrade-conf``

を呼び出すときに構成ファイルが存在するディレクトリの名前を指定します。ディレクトリが構成のデフォルトディレクトリでない場合、アップグレードされたファイルは upgrade-conf コマンドが呼び出されたディレクトリに作成されます。

注釈

ユニットファイルを使用している場合は、アップグレードを実行するときにファイルを手動で更新して、新しいFailover Managerサービス名を反映します。

Failover Managerのアンインストール

注釈

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

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

  • RHELまたはCentOS 7.xの場合:

yum remove edb-efm45
  • RHELまたはRocky LinuxまたはAlmaLinux 8.xの場合:

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

apt-get remove edb-efm45
  • SLESでは:

zypper remove edb-efm45

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

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

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

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

  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 コマンドを使用して古いプライマリをスタンバイリストの先頭に追加し(必要に応じて)、スイッチオーバーしてクラスターを元の状態に戻すことができます。