Red Hat Cluster Suite上の高可用性クラスター

LinuxでHAクラスターを構築するためのソリューションを探して、私はかなり興味深い製品に出会いました。これは、私の観察によれば、尊敬されるコミュニティの注目を不当に奪われました。 ロシア語の記事、必要に応じて、サービスレベルでのフォールトトレランスの組織から判断すると、ハートビートとペースメーカーの使用がより一般的です。 最初の決定も2番目の決定も当社に定着していません。その理由は本当にわかりません。 構成と使用の複雑さ、低い安定性、詳細で更新されたドキュメントの欠如、およびサポートが役割を果たした可能性があります。



次のcentosの更新後、ペースメーカーの開発者はこのOSのリポジトリのサポートを停止し、公式リポジトリには完全に異なる構成(corosyncではなくcman)を暗示するアセンブリが含まれていました。 ペースメーカーを再構成する必要はなくなり、別のソリューションを探し始めました。 英語のフォーラムのいくつかで、Red Hat Cluster Suiteについて読んだので、試してみることにしました。



一般的な情報




RHCSはいくつかの主要コンポーネントで構成されています。





ハートビートおよびペースメーカーと同様に、クラスターリソースは標準化されたスクリプト(リソースエージェント、RA)によって制御されます。 ペースメーカーとの基本的な違いは、redhatはシステムにカスタムのカスタムRAを追加することを意味しないということです。 しかし、これは、通常のinitスクリプトを追加するためのユニバーサルリソースエージェントがあるという事実によって補われます。それはスクリプトと呼ばれます。



リソース管理は、サービスグル​​ープのレベルでのみ行われます。 リソース自体をオンまたはオフにすることはできません。 フェールオーバードメインは、ノード間でリソースを分散し、特定のノードで起動を優先するために使用され、特定のノードでリソースグループを起動するルール、優先順位付け、およびフェールバックを表します。 1つのリソースグループを単一のドメインにマッピングできます。





セットアップガイド:


このマニュアルは、centos 6.3-6.4でテストされました。

  1. 1つのノードの完全な操作に必要なパッケージのセット全体が、リポジトリ内の高可用性グループに便利に結合されます。 yumを使用してそれらを配置し、別にluciを配置します。 この記事の執筆時点で、luciはベースリポジトリからインストールする必要があります。epelを有効にしてインストールした場合、python-webobの誤ったバージョンがインストールされ、luciは正しく起動しません。

    yum groupinstall "High Availability" yum install --disablerepo=epel* luci
          
          





  2. 最初に最初のノードを起動するには、cluster.conf構成を登録する必要があります(centos、デフォルトでは/etc/cluster/cluster.conf)。 最初の起動には、この構成が十分にあります。

     <?xml version="1.0"?> <cluster config_version="1" name="cl1"> <clusternodes> <clusternode name="node1" nodeid="1"/> </clusternodes> </cluster>
          
          





    node1は、他のノードが通信するノードのFQDNです。

    これは、このシステムをセットアップするときにコンソールからルールを設定する唯一の構成です。

  3. ユーザーricciのパスワードを設定します。 このユーザーは、ricciパッケージのインストール時に作成され、luci Webインターフェースでノードを接続するために使用されます。

     passwd ricci
          
          





  4. サービスを開始します:

     service cman start service rgmanager start service modclusterd start service ricci start service luci start
          
          





    ここで、ノードが使用できない場合にluciが使用できるように、クラスターに関係しない別のサーバーにluciをインストールすることをお勧めします。



    スタートアップにサービスをすぐに含めることも便利です。

     chkconfig ricci on chkconfig cman on chkconfig rgmanager on chkconfig modclusterd on chkconfig luci on
          
          





  5. これで、luci Webインターフェースにアクセスできます。これは、サービスが正常に開始されると、ポート8084でhttps経由で起動します。rootとしてログインできます。

    非常に美しいWebインターフェイスが表示されます。



    [クラスターの管理]-> [追加]をクリックして1つのノードからクラスターを追加し、ノード名、ricciユーザーパスワードを指定して、[クラスターの追加]をクリックします。 ノードを追加するためだけに残ります。

  6. サーバーをノードとして追加するには、そのサーバーに高可用性パッケージグループをインストールし、ricciを実行する必要があります。 ノードはクラスター管理の[ノード]タブに追加され、サーバー名とricciユーザーパスワードが表示されます。 ノードを追加した後、ricciはそのノードでcluster.confを同期し、その後、そのノードで必要なすべてのサービスを起動します。





興味があれば、次の記事で共有ストレージとこのシステムでのフェンシングの使用について書きます。



All Articles