単一の PostgreSQL データベースと Redis ノードを共有する複数の RaaS ノードを構成できます。この方法は、クラスタリングと呼ばれることもあります。
以下の手順では、単一ノードのインストール シナリオを使用して、プライマリ RaaS ノードに PostgreSQL サービスと Redis サービスをインストールする方法を示します。
注: 高可用性の要件によっては、コンサルティング サービスが必要な場合があります。
開始する前に
複数の RaaS ノードを設定するには、すべての RaaS ノードが次の条件を満たす必要があります。
- 同じ PostgreSQL データベースにアクセスする
- 同じキー スペースを共有する
- 同じ
/etc/raas/pki/.raas.key
ファイルおよび/etc/raas/raas.secconf
ファイルを使用する
複数の RaaS ノードを構成する前に、単一ノードのインストール シナリオを使用して、2 つのスタンドアローン RaaS ノードをインストールする手順を実行します。このシナリオの最後で、両方のノードがスタンドアローン モードで SaltStack Config を実行する必要があります。つまり、各ノードで独自のローカル バージョンの PostgreSQL と Redis が使用されます。
プライマリ RaaS ノードの構成
最初の RaaS ノードを構成するには、次の手順に従います。
- ノードが 1,000 台未満の場合の SaltStack Config のインストールシナリオを使用して、2 台のスタンドアローン RaaS ノードをインストールする手順を実行します。このシナリオの最後で、両方のノードがスタンドアローン モードで SaltStack Config を実行する必要があります。つまり、各ノードで独自のローカル バージョンの PostgreSQL と Redis が使用されます。
- 1 台目の RaaS ノードで、次のコマンドを使用して、RaaS、Redis、および PostgreSQL サービスを停止します。
systemctl stop raas systemctl stop redis systemctl stop postgresql-12
注:PostgreSQL を停止するコマンドは、別のバージョンを実行している場合は異なることがあります。
- 1 台目の RaaS ノードで、他の RaaS ノードからのリモート接続を許可するように
postgresqlpg_hba.conf
ファイルを更新します。リモート接続を許可するには、そのファイルの末尾に次のエントリを追加し、例の IP アドレスを 2 台目の RaaS ノードの IP アドレスに置き換えます。# Allow connection from RaaS 2 host all all 127.31.4.137/32 trust
- すべてのインターフェイスへのバインドを許可するように
/etc/redis.conf
ファイルを更新します。デフォルトでは、バインドは localhost に設定されています。以下をファイルに追加します。#bind 127.0.0.1
- 次のコマンドを使用して、サービスを開始し、ステータスを確認します。
systemctl start postgresql-12 systemctl status postgresql-12 systemctl start redis systemctl status redis systemctl start raas systemctl status raas
- 1 台目の RaaS ノードの URL を使用して SaltStack Config ユーザー インターフェイスにアクセスし、1 台目のノードで SaltStack Config が正常に機能していることを確認します。
セカンダリ RaaS ノードの構成
このセクションでは、プライマリ RaaS ノードと共に動作するように 2 台目の RaaS ノードを構成する方法について説明します。
2 台目の RaaS ノードを構成するには、次の手順に従います。
- 2 台目の RaaS ノードで、次のコマンドを使用して、RaaS、Redis、および PostgreSQL サービスを停止します。
systemctl stop raas systemctl stop redis systemctl stop postgresql-12
- 2 台目の RaaS ノードで、1 台目の RaaS ノードのリモート Redis サービスおよび PostgreSQL サービスに接続するように、
/etc/raas/raas
ファイルを更新します。両方のノードで、customer_id
構成が同一である必要があります。以下に、構成の例を示します。customer_id: 43cab1f4-de60-4ab1-85b5-1d883c5c5d09 sql: dialect: postgresql host: 172.31.8.237 port: 5432 driver: psycopg2 ssl: True redis: url: redis://172.31.8.237:6379
- 1 台目のノードから 2 台目のノードに
/etc/raas/pki/.raas.key
および/etc/raas/secconf
をコピーします。次の例のように、アクセスと権限を維持します。# ls -l /etc/raas/raas.secconf -rw-------. 1 raas raas 313 Jan 2117:21 /etc/raas/raas.secconf # ls -l /etc/raas/pki/.raas.key -rwx------. 1 raas raas 77 Jan 2117:17 /etc/raas/pki/.raas.key
- 次のコマンドを使用して、RaaS サービスを開始し、ステータスを確認します。
systemctl start raas systemctl status raas
- 2 台目の RaaS ノードの URL を使用して SaltStack Config ユーザー インターフェイスにアクセスし、2 台目のノードで SaltStack Config が正常に動作していることを確認します。
構成のテスト
新しいシステム アーキテクチャが正常に機能するかどうかをテストするには、次の手順に従います。
- 構成をテストするために、新しいターゲットなどの新しいオブジェクトを作成します。ユーザー インターフェイスを更新したときに、両方のノードに変更が加わることを確認します。
- 2 台目の RaaS ノードで、次のコマンドを使用して、Redis サービスおよび PostgreSQL サービスを無効にします。
systemctl disable redis systemctl disable postgresql-12