第2章 IdM でのフェイルオーバー、負荷分散、高可用性
Identity Management (IdM) には、IdM クライアント向けのフェイルオーバーメカニズムと、IdM サーバー向けの負荷分散および高可用性機能があります。
クライアント側のフェイルオーバー機能
デフォルトでは、IdM クライアント上の SSSD
サービスが DNS サービス (SRV) のリソースレコードを使用するように設定されています。そのため、クライアントは接続する最適な IdM サーバーを自動的に決定できます。
プライマリーサーバーとバックアップサーバーの設定
サーバー解決の動作は、/etc/sssd/sssd.conf
ファイルの ipa_server
パラメーターの _srv_
オプションによって制御されます。
/etc/sssd/sssd.conf の例
[domain/example.com]
id_provider = ipa
ipa_server = _srv_, server1.example.com, server2.example.com
ipa_backup_server = backup1.example.com, backup2.example.com
...
_srv_
オプションが指定されている場合、SSSD は優先度順に並んだ IdM サーバーのリストを取得します。プライマリーサーバーがオフラインになった場合、IdM クライアント上の SSSD サービスが、利用可能な別の IdM サーバーに自動的に接続します。
プライマリーサーバーは ipa_server
パラメーターで指定します。SSSD は、まずプライマリーサーバーへの接続を試みます。プライマリーサーバーが利用できない場合にのみ、バックアップサーバーに切り替えます。
_srv_
オプションはバックアップサーバーではサポートされていません。
SSSD は DNS サーバーから SRV レコードを照会します。デフォルトでは、SSSD は別の DNS サーバーに照会する前に、DNS リゾルバーからの応答を 6
秒間待機します。どの DNS サーバーにも到達できない場合、ドメインはオフラインモードで動作し続けます。dns_resolver_timeout
オプションを使用すると、クライアントが DNS リゾルバーからの応答を待機する時間を長くすることができます。
-
パフォーマンス上の理由から DNS ルックアップをバイパスする場合は、
ipa_server
パラメーターから_srv_
エントリーを削除し、クライアントが接続すべき IdM サーバーを優先順に指定します。
/etc/sssd/sssd.conf の例
[domain/example.com] id_provider = ipa ipa_server = server1.example.com, server2.example.com ipa_backup_server = backup1.example.com, backup2.example.com ...
IdM サーバーおよびサービスのフェイルオーバー動作
SSSD のフェイルオーバーメカニズムは、IdM サーバーとそのサービスを別々に扱います。サーバーのホスト名解決が成功すると、SSSD はマシンがオンラインであると見なし、そのマシン上の必要なサービスへの接続を試みます。サービスへの接続が失敗した場合、SSSD はマシン全体やマシン上の他のサービスではなく、その特定のサービスだけをオフラインと見なします。
ホスト名の解決に失敗した場合、SSSD はマシン全体をオフラインと見なし、そのマシン上のどのサービスにも接続を試行しません。
すべてのプライマリーサーバーが利用できない場合、SSSD は設定されたバックアップサーバーへの接続を試みます。バックアップサーバーに接続している間、SSSD は定期的にプライマリーサーバーの 1 つに再接続を試み、プライマリーサーバーが利用可能になるとすぐに接続します。これらの試行の間隔は、failover_primary_timeout
オプションによって制御されます。デフォルトは 31 秒です。
すべての IdM サーバーにアクセスできなくなった場合、SSSD はオフラインモードに切り替わります。この状態では、SSSD はサーバーが利用可能になるまで 30 秒ごとに接続を再試行します。
サーバー側の負荷分散およびサービスの可用性
複数の IdM レプリカをインストールして、IdM で負荷分散および高可用性を実行できます。
- 地理的に分散したネットワークがある場合には、データセンターごとに複数の IdM レプリカを設定することで、IdM クライアントと、最寄りのアクセス可能なサーバーとの間のパスを短くできます。
- Red Hat は、最大 60 のレプリカを持つ環境に対応します。
- IdM レプリケーションメカニズムでは、アクティブ/アクティブのサービスの可用性 (全 IdM レプリカのサービスを同時利用可) を提供します。
Red Hat では、IdM と他の負荷分散ソフトウェアまたは高可用性 (HA) ソフトウェアを組み合わせることを推奨していません。
サードパーティーの高可用性ソリューションの多くは、アクティブ/パッシブのシナリオを想定しており、IdM へのサービスが不要に中断されてしまう可能性があります。他のソリューションでは、クラスター化されたサービスごとに仮想 IP または単一のホスト名を使用します。このような方法はすべて、通常、IdM ソリューションが提供するタイプのサービスの可用性では適切に機能しません。また、Kerberos との統合性が非常に低く、デプロイメントのセキュリティーと安定性が全体的に低下します。
関連情報
-
システム上の
sssd.conf(5)
man ページ