ウェブサイト検索

ノードにおけるクラスタ設定の同期方法とフェイルオーバー設定の確認 - パート4


皆さん、こんにちは。まず最初に、このクラスターシリーズの最後の部分の遅れについてお詫び申し上げます。これ以上遅れることなく、作業を始めましょう。

皆さんの多くがこれまでの3つの部分をすべて完了したので、これまでに達成したことを簡単にご説明します。すでに、2つのノードのためのクラスターパッケージのインストールと設定を行い、クラスタ環境でのフェンシングとフェイルオーバーを有効にするための十分な知識を持っています。

前回の部分を投稿するのに少し時間がかかったので、思い出せない場合は私の以前の部分を参照してください。

Linuxクラスタリングの紹介とクラスタリングの利点/欠点 – パート1

二ノードのLinuxクラスターをインストールして構成する方法 - パート2

フェンシングとクラスタリングへのフェイルオーバーの追加 – パート3

クラスターにリソースを追加することから始めます。この場合、必要に応じてファイルシステムやウェブサービスを追加できます。現在、私は/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. 前回のレッスンで冗長化メカニズムを追加したことを覚えていますか? それが機能するか確認したいですか? これがその方法です。一つのノードを強制的にシャットダウンし、冗長化の結果を確認するためにclustatコマンドを使用してクラスタの統計を見てください。

私はshutdown -h nowコマンドを使用してnode02server(172.16.1.223)をシャットダウンしました。その後、私のcluster_server(172.16.1.250)からclustatコマンドを実行しました。

上記の出力は、ノード1がオンラインである一方で、ノード2がオフラインになったことを明確にしています。私たちがそれをシャットダウンしたためです。しかし、共有したサービスとファイルシステムはまだオンラインであり、ノード01をチェックすればそれを確認できます。

# df -h /x01

cluster.confファイルを参照して、tecmintの設定に関連する全体の構成を確認してください。

<?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 とつながりを持ち続け、アイデアや質問を自由にコメントしてください。

関連記事: