クラスター構成を同期し、ノードのフェイルオーバー設定を確認する方法 - パート 4
みんなこんにちは。まず最初に、このクラスター シリーズの最後の部分が遅れたことをお詫びします。これ以上遅れずに仕事に取り組みましょう。
皆さんの多くはこれまでの 3 つのパートをすべて完了しているので、これまでに完了した内容を簡単に説明します。これで、2 つのノードのクラスター パッケージをインストールして構成し、クラスター環境でフェンシングとフェールオーバーを有効にするための十分な知識がすでに得られました。
最後の部分を投稿するのに少し時間がかかったので、覚えていない場合は、前の部分を参照してください。
Linux クラスタリングの概要とクラスタリングの長所/短所 – パート 1
Linux で 2 つのノードを持つクラスターをインストールおよび構成する方法 – パート 2
クラスタリングへのフェンシングとフェイルオーバーの追加 - パート 3
まず、クラスターにリソースを追加します。この場合、必要に応じてファイル システムまたは Web サービスを追加できます。これで、/dev/sda3 パーティションが /x01 にマウントされました。これをファイル システム リソースとして追加します。
1. 以下のコマンドを使用して、ファイル システムをリソースとして追加します。
ccs -h 172.16.1.250 --addresource fs name=my_fs device=/dev/mapper/tecminttest_lv_vol01 mountpoint=/x01 fstype=ext3
さらに、サービスも追加したい場合は、以下の方法を使用して追加できます。次のコマンドを発行します。
ccs -h 172.16.1.250 --addservice my_web domain=testdomain recovery=relocate autostart=1
前のレッスンで行ったように、cluster.conf
ファイルを表示することで確認できます。
2. 次に、cluster.conf ファイルに次のエントリを入力して、サービスに参照タグを追加します。
<fs ref="my_fs"/>
3. すべて準備完了です。いいえ、私たちが持っている 2 つのノード間でクラスター化するために行った構成をどのように同期できるかを見ていきます。次のコマンドは必要なことを行います。
ccs -h 172.16.1.250 --sync --activate
注: パッケージをインストールする初期段階で ricci に設定したパスワードを入力します。
以下のコマンドを使用して構成を確認できます。
ccs -h 172.16.1.250 --checkconf
4. さあ、始めましょう。必要に応じて、以下のコマンドのいずれかを使用できます。
1 つのノードのみを起動するには、関連する IP を指定してコマンドを使用します。
ccs -h 172.16.1.222 start
または、すべてのノードを起動したい場合は、次のように --startall
オプションを使用します。
ccs -h 172.16.1.250 –startall
クラスターを停止する必要がある場合は、stop または --stopall
を使用できます。
リソースを有効にせずにクラスターを開始する場合 (クラスターの開始時にリソースは自動的に有効になります)、フェンシング ループを無効にするために特定のノードのリソースを意図的に無効にした場合などのシナリオでは、クラスターの起動時にこれらのリソースを有効にしたくない場合。
そのためには、クラスターを開始しますが、リソースを有効にしない以下のコマンドを使用できます。
ccs -h 172.16.1.250 --startall --noenable
5. クラスターが起動したら、clustat コマンドを発行して統計を表示できます。
clustat
上記の出力は、クラスター内に 2 つのノードがあり、現時点では両方とも稼働していることを示しています。
6. これまでのレッスンでフェイルオーバー メカニズムを追加したことを思い出してください。動作を確認したいですか?これがやり方です。 1 つのノードを強制的にシャットダウンし、 フェールオーバーの結果についてclustatコマンドを使用してクラスターの統計情報を確認します。
shutdown -h now コマンドを使用して node02server(172.16.1.223) をシャットダウンしました。次に、cluster_server(172.16.1.250) から clustat コマンドを実行しました。
上の出力では、ノード 1 がオンラインである一方、 シャットダウンしたため ノード 2 がオフライン になっていることがわかります。ただし、オンラインのnode01 で確認するとわかるように、共有したサービスとファイル システムはまだオンラインです。
df -h /x01
tecmint に使用されるセットアップに関連する構成セット全体が含まれる cluster.conf
ファイルを参照してください。
<?xml version="1.0"?>
<cluster config_version="15" name="tecmint_cluster">
<fence_daemon post_join_delay="10"/>
<clusternodes>
<clusternode name="172.16.1.222" nodeid="1">
<fence>
<method name="Method01">
<device name="tecmintfence"/>
</method>
</fence>
</clusternode>
<clusternode name="172.16.1.223" nodeid="2">
<fence>
<method name="Method01">
<device name="tecmintfence"/>
</method>
</fence>
</clusternode>
</clusternodes>
<cman/>
<fencedevices>
<fencedevice agent="fence_virt" name="tecmintfence"/>
</fencedevices>
<rm>
<failoverdomains>
<failoverdomain name="tecmintfod" nofailback="0" ordered="1" restricted="0">
<failoverdomainnode name="172.16.1.222" priority="1"/>
<failoverdomainnode name="172.16.1.223" priority="2"/>
</failoverdomain>
</failoverdomains>
<resources>
<fs device="/dev/mapper/tecminttest_lv_vol01" fstype="ext3" mountpoint="/x01" name="my_fs"/>
</resources>
<service autostart="1" domain="testdomain" name="my_web" recovery="relocate"/>
<fs ref="my_fs"/>
</rm>
</cluster>
一連のクラスタリング レッスンを楽しんでいただければ幸いです。より便利なガイドを毎日 tecmint に連絡して、アイデアや質問をお気軽にコメントしてください。