第6章 クラスタリング
clufter がバージョン 0.76.0 にリベースされ、完全にサポートされるようになる
clufter パッケージでは、クラスターの設定形式を変換および分析するツールが提供されます。これを使用すると、古いスタック設定から、Pacemaker を利用する新しい設定への移行を支援できます。以前はテクノロジープレビューとして利用できた
clufter ツールが完全にサポートされるようになりました。clufter の機能の詳細は、clufter (1) man ページまたは clufter -h コマンドの出力を参照してください。clufter の使用例は、Red Hat ナレッジベースの記事 https://access.redhat.com/articles/2810031 を参照してください。
clufter パッケージがアップストリームバージョン 0.76.0 にアップグレードされ、バグ修正および新機能が数多く追加されました。更新内容は、以下のとおりです。
- CMAN + RGManager スタック固有の設定を、
ccs2pcs*ファミリーのそれぞれの Pacemaker 設定(または一連のpcsコマンド)に変換する場合、clufterツールは完全に有効な lvm リソースエージェント設定の変換を拒否しなくなりました。 - CMAN ベースの設定を、
ccs2pcsファミリーのコマンドで Pacemaker スタックに似た設定に変換すると、( 障害をステータスチェックに返す前の最大失敗数など)処理で失われた設定ビットの一部が正しく伝播されるようになりました。 clufterコマンドのcib2およびpcspcs2pcscmdファミリーを使用して pcs コマンドを生成すると、設定変更の単一ステッププッシュの(デフォルト)の動作が考慮されるアラートハンドラー定義に、適切なファイナライズされた構文が使用されるようになりました。pcsコマンドを生成する際に、clufterツールは、設定全体の大規模な更新をプッシュするのではなく、異なる更新で設定に加えられた変更のみを更新するpcsコマンドを生成するのに推奨される機能に対応するようになりました。同様に、該当する場合、clufterツールは、pcsツールにユーザーパーミッション(ACL)を設定するよう指示できるようになりました。ドキュメントスキーマのさまざまなメジャーバージョンのインスタンスで動作するように、clufterは、pacemakerの内部メカニズムをミラーリングして、内部のオンデマンド形式アップグレードの概念を取得しました。同様に、clufterは、bundle機能を設定できるようになりました。clufterコマンドのccs2pcscmdおよびpcs2pcscmdファミリーによって生成された などのスクリプトのような出力シーケンスでは、単なる POSIX シェルではなく Bash が想定される場所を明確にするために、オペレーティングシステムによっても直接認識されるように、意図されたシェルインタープリターが最初のコメント行として出力されるようになりました。これは、過去のある状況では誤解を招く可能性がありました。=文字が、完了するシーケンスでオプションの値を指定する際に、clufterの Bash 補完ファイルが適切に機能しなくなりました。
Pacemaker クラスターにおけるクォーラムデバイスのサポート
Red Hat Enterprise Linux 7.4 は、以前はテクノロジープレビューとして利用できたクォーラムデバイスを完全にサポートします。この機能は、クラスターのサードパーティー調整デバイスとして機能する個別のクォーラムデバイス (QDevice) を設定する機能を提供します。主要な用途は、クォーラムルールによって許容されるノード障害の数よりも多くのノード障害をクラスターが許容するようにすることです。クォーラムデバイスは、偶数のノードで設定されるクラスターに推奨されます (2 ノード設定のクラスターには強く推奨されます)。クォーラムデバイスの設定方法の詳細は、https://access.redhat.com/documentation/ja-JP/Red_Hat_Enterprise_Linux/7/html/High_Availability_Add-On_Reference/ を参照してください。(BZ#1158805)
Booth クラスターチケットマネージャーのサポート
Red Hat Enterprise Linux 7.4 は、Booth クラスターチケットマネージャーを完全にサポートします。以前はテクノロジープレビューとして利用できたこの機能を使用すると、分散サービスを介して通信する別のサイトに複数の高可用性クラスターを設定して、リソースの管理を調整できます。Booth チケットマネージャーにより、個々のチケットに関するコンセンサスベースの決定プロセスが容易になり、チケットが付与されたときに指定したリソースが 1 度に 1 つのサイトでのみ実行されるようになります。Booth チケットマネージャーでマルチサイトクラスターを設定する方法の詳細は、https://access.redhat.com/documentation/ja-JP/Red_Hat_Enterprise_Linux/7/html/High_Availability_Add-On_Reference/ を参照してください。 (BZ#1302087、BZ#1305049)
SBD デーモンで共有ストレージを使用するために追加されたサポート
Red Hat Enterprise Linux 7.4 では、共有ブロックデバイスで SBD (Storage-Based Death) デーモンの使用をサポートしています。これにより、従来からサポートされていたウォッチドッグデバイスによるフェンシングに加えて、共有ブロックデバイスによるフェンシングを有効にできます。
fence-agents パッケージは、RHCS 形式のフェンスエージェントを使用して実際のフェンシングをトリガーし、制御するために必要な fence_sbd フェンスエージェントを提供するようになりました。SBD は、Pacemaker リモートノードではサポートされていません。(BZ#1413951)
CTDB リソースエージェントへの完全なサポート
Samba デプロイメントの実装に使用される CTDB リソースエージェントが Red Hat Enterprise Linux でサポートされるようになりました。(BZ#1077888)
High Availability and Resilient Storage Add-Ons が、IBM POWER (リトルエンディアン) で利用できるようになりました。
Red Hat Enterprise Linux 7.4 では、リトルエンディアンアーキテクチャーである IBM POWER の高可用性および復元力のあるストレージアドオンのサポートを追加しています。このサポートは、POWER8 サーバーの PowerVM で実行しているクラスターノードにのみ提供されることに注意してください。(BZ#1289662, BZ#1426651)
pcs が、暗号化された corosync 通信でクラスターを設定できるようになりました。
pcs cluster setup コマンドが、クラスターでの corosync 暗号化の設定を制御する新しい --encryption フラグに対応するようになりました。これにより、ユーザーは完全に信頼されていない環境で、暗号化された corosync 通信を使用してクラスターをセットアップできるようになります。(BZ#1165821)
リモートノードおよびゲストノードのサポートおよび削除に使用される新しいコマンド
Red Hat Enterprise Linux 7.4 では、リモートノードおよびゲストノードを作成および削除するための次のコマンドが追加されました。
- pcs cluster node add-guest
- pcs cluster node remove-guest
- pcs cluster node add-remote
- pcs cluster node remove-remote
このコマンドは、非推奨となった
pcs cluster remote-node add コマンドおよび pcs cluster remote-node remove コマンドに代わるものです。(BZ#1176018, BZ#1386512)
pcsd バインドアドレスの設定機能
/etc/sysconfig/ pcsd ファイルで pcsd バインドアドレスを設定できるようになりました。以前のリリースでは、pcsd がすべてのインターフェイスにバインドできました。これは、一部のユーザーに適さない状況です。デフォルトでは、pcsd はすべてのインターフェイスにバインドします。(BZ#1373614)
監視操作を無効にする pcs resource unmanage コマンドの新しいオプション
リソースが管理対象外モードの場合でも、モニター操作はクラスターによって実行されます。これにより、リソースが管理対象外の場合に特定のユースケースでエラーが発生する可能性があるため、ユーザーが関心を持たないエラーをクラスターが報告する場合があります。pcs resource unmanage コマンドが --monitor オプションに対応するようになりました。これは、リソースを管理対象外モードにするときに監視操作を無効にします。また、pcs resource manage コマンドは、--monitor オプションもサポートします。これにより、リソースを管理モードに戻すときに監視操作が有効になります。(BZ#1303969)
場所の制約を設定する際の pcs コマンドラインでの正規表現のサポート
pcs が、コマンドラインの場所の制約における正規表現に対応するようになりました。この制約は、リソース名に一致する正規表現に基づいて、複数のリソースに適用されます。これにより、従来は複数の制約が必要だったものが、1 つの制約で済むようになり、クラスター管理が容易になります。(BZ#1362493)
正規表現またはノード属性とその値によるフェンシングトポロジーのノードの指定
フェンシングトポロジーのノードは、ノード名に適用される正規表現、ノード属性、およびその値で指定できるようになりました。
たとえば、以下のコマンドは、ノード
node1、node2、および node3 がフェンスデバイス apc1 および apc2 を使用するように設定し、ノード node4、node5、および node6 を、フェンスデバイス apc3 および apc4 を使用するように設定します。
pcs stonith level add 1 "regexp%node[1-3]" apc1,apc2 pcs stonith level add 1 "regexp%node[4-6]" apc3,apc4
pcs stonith level add 1 "regexp%node[1-3]" apc1,apc2
pcs stonith level add 1 "regexp%node[4-6]" apc3,apc4
次のコマンドでは、ノード属性のマッチングを使用して、同じように設定します。
(BZ#1261116)
リソースエージェント Oracle および OraLsnrの Oracle 11g のサポート
Red Hat Enterprise Linux 7.4 は、Pacemaker で使用される
Oracle および OraLsnr リソースエージェントの Oracle Database 11g のサポートを提供します。(BZ#1336847)
共有ストレージでの SBD の使用のサポート
pcs コマンドを使用して共有ストレージで設定された SBD (Storage-Based Death)のサポートが追加されました。SBD フェンディングの詳細は、https://access.redhat.com/articles/2943361 を参照してください。(BZ#1413958)
NodeUtilization リソースエージェントのサポート
Red Hat Enterprise Linux 7.4 は
NodeUtilization リソースエージェントをサポートします。NodeUtilization エージェントは、利用可能な CPU、ホストメモリーの可用性、およびハイパーバイザーメモリーの可用性のシステムパラメーターを検出し、これらのパラメーターを CIB に追加します。エージェントをクローンリソースとして実行して、各ノードにこのようなパラメーターを自動的に入力することができます。NodeUtilization リソースエージェントおよびこのエージェントのリソースオプションの詳細は、pcs resource describe NodeUtilization コマンドを実行します。Pacemaker での使用率と配置ストラテジーに関する詳細は、https://access.redhat.com/documentation/ja-JP/Red_Hat_Enterprise_Linux/7/html/High_Availability_Add-On_Reference/s1-utilization-HAAR.html を参照してください。(BZ#1430304)