私は http://clusterlabs.org/doc/en-US/Pacemaker/1.1-pcs/html/Clusters_from_Scratch/_verify_corosync_installation.html ドキュメントに従って、AWSで2ノードクラスターを設定しています。 2つのノードにペースメーカーがインストールされ、FWルールが有効になっています。両方のノードでpcs statusコマンドを実行すると、他のノードがUNCLEAN(オフライン)であるというメッセージが表示されます。
私がセットアップした2つのノードはha1pとha2pです。
ha1pの出力
[root@ha1 log]# pcs status
Cluster name: mycluster
WARNING: no stonith devices and stonith-enabled is not false
Last updated: Wed Dec 24 21:30:44 2014
Last change: Wed Dec 24 21:27:44 2014
Stack: cman
Current DC: ha1p - partition with quorum
Version: 1.1.11-97629de
2 Nodes configured
0 Resources configured
Node ha2p: UNCLEAN (offline)
Online: [ ha1p ]
Full list of resources:
ha2pの出力
[root@ha2 log]# pcs status
Cluster name: mycluster
WARNING: no stonith devices and stonith-enabled is not false
Last updated: Wed Dec 24 21:30:44 2014
Last change: Wed Dec 24 21:27:44 2014
Stack: cman
Current DC: ha2p - partition with quorum
Version: 1.1.11-97629de
2 Nodes configured
0 Resources configured
Node ha1p: UNCLEAN (offline)
Online: [ ha2p ]
Full list of resources:
/etc/cluster/cluster.confの内容は次のとおりです。
[root @ ha1 log]#cat /etc/cluster/cluster.conf
<cluster config_version="9" name="mycluster">
<fence_daemon/>
<clusternodes>
<clusternode name="ha1p" nodeid="1">
<fence>
<method name="pcmk-method">
<device name="pcmk-redirect" port="ha1p"/>
</method>
</fence>
</clusternode>
<clusternode name="ha2p" nodeid="2">
<fence>
<method name="pcmk-method">
<device name="pcmk-redirect" port="ha2p"/>
</method>
</fence>
</clusternode>
</clusternodes>
<cman expected_votes="1" two_node="1"/>
<fencedevices>
<fencedevice agent="fence_pcmk" name="pcmk-redirect"/>
</fencedevices>
<rm>
<failoverdomains/>
<resources/>
</rm>
</cluster>
どんな助けでも大歓迎です。
はい、クラスター定義で使用しているホスト名が/ etc/hostsの127.0.0.1行のホスト名ではないことを確認する必要があります。
だから、私の/etc/hosts
は次のようになります。
127.0.0.1 cluster-node1 domain.com localhost4 localhost4.localdomain4
::1 localhost localhost.localdomain localhost6 localhost6.localdomain6
192.168.0.1 node1
192.168.0.2 node2
/ etc/hostsファイルを編集して、127.0.0.1と:: 1(localhostについて言及している行)を含む行を削除できます。私はこの正確な問題を抱えており、私はこの方法を試してみて問題を解決しました。
エラー:
Node ha2p: UNCLEAN (offline)
Corosyncが他のクラスターノードを実行している他のcorosyncサービスに接続できなかったことを意味します。
直し方:
ss -tulnp|egrep ':5405.*corosync'
ip_version: ipv6
ファイルのtotem
セクションに/etc/corosync/corosync.conf
を追加すると、IPv4を強制できます。getent ahosts $HOSTNAME
を使用します。これは、クラスターに完全なstonith構成がないために発生します。クリーンでない状態では、クラスターはノードの状態を認識していません。