第2章 IdM でのフェイルオーバー、負荷分散、高可用性
Identity Management (IdM) は、IdM クライアントにはフェイルオーバーメカニズムを、IdM サーバーには負荷分散および高可用性機能を提供します。IdM クライアントと SSSD が利用可能なサーバーを自動的に選択する仕組みと、複数のレプリカを使用して高可用性を実現するサーバー側のアーキテクチャーを説明します。
2.1. クライアント側のフェイルオーバー機能 リンクのコピーリンクがクリップボードにコピーされました!
クライアント側のフェイルオーバーは、IdM クライアントに組み込まれた SSSD のメカニズムです。この機能は、継続的な認証とアクセスを維持するために、利用可能な IdM サーバーを自動的に判別して接続します。
フェイルオーバーメカニズムは、プライマリーサーバーが利用不能になった場合に、DNS SRV レコードを使用して IdM サーバーの検出と切り替えを円滑に行います。
SSSD は DNS サーバーから SRV レコードを照会します。デフォルトでは、SSSD は別の DNS サーバーに照会する前に、DNS リゾルバーからの応答を 6 秒間待機します。どの DNS サーバーにも到達できない場合、ドメインはオフラインモードで動作し続けます。dns_resolver_timeout オプションを使用すると、クライアントが DNS リゾルバーからの応答を待機する時間を長くすることができます。
SSSD のフェイルオーバーメカニズムは、IdM サーバー、マシン、およびそのサービスをそれぞれ個別に扱います。
- サービスの障害
- サーバーのホスト名解決が成功すると、SSSD はマシンがオンラインであるとみなし、そのマシン上の必要なサービスへの接続を試みます。サービスへの接続が失敗した場合、SSSD はマシン全体やマシン上の他のサービスではなく、その特定のサービスだけをオフラインと見なします。
- マシンの障害
- ホスト名の解決に失敗した場合、SSSD はマシン全体をオフラインと見なし、そのマシン上のどのサービスにも接続を試行しません。
プライマリーサーバーとバックアップサーバーの切り替え
SSSD はまずプライマリーサーバーへの接続を試みます。すべてのプライマリーサーバーが利用できない場合、SSSD は設定済みのバックアップサーバーに切り替えります。
バックアップサーバーに接続している間、SSSD は定期的にプライマリーサーバーの 1 つに再接続を試み、プライマリーサーバーが利用可能になるとすぐに接続します。これらの試行の間隔は、failover_primary_timeout オプションによって制御されます。デフォルトは 31 秒です。
すべての IdM サーバーにアクセスできなくなった場合、SSSD はオフラインモードに切り替わります。この状態では、SSSD はサーバーが利用可能になるまで 30 秒ごとに接続を再試行します。