
sles12に2ノードクラスタを作成しました。以下は構成です -
msnode1:~ # crm --version
crm 3.0.0
msnode1:~ # corosync -v
Corosync Cluster Engine, version '2.3.6'
Copyright (c) 2006-2009 Red Hat, Inc.
msnode1:~ # crm config show
node 1: msnode1
node 2: msnode2
primitive mspersonal systemd:mspersonal \
op monitor interval=30s
primitive virtip IPaddr \
params ip=10.243.109.103 cidr_netmask=21 \
op monitor interval=30s
location cli-prefer-virtip virtip role=Started inf: msnode1
colocation msconstraint inf: virtip mspersonal
order msorder Mandatory: virtip mspersonal
property cib-bootstrap-options: \
have-watchdog=false \
dc-version=1.1.16-4.8-77ea74d \
cluster-infrastructure=corosync \
cluster-name=mscluster \
stonith-enabled=false \
placement-strategy=balanced \
help \
list \
last-lrm-refresh=1561341732
rsc_defaults rsc-options: \
resource-stickiness=100 \
migration-threshold=2
op_defaults op-options: \
timeout=600 \
record-pending=true
msnode1:~ # crm status
Stack: corosync
Current DC: msnode1 (version 1.1.16-4.8-77ea74d) - partition with quorum
Last updated: Tue Jun 25 17:43:44 2019
Last change: Tue Jun 25 17:38:21 2019 by hacluster via cibadmin on msnode1
2 nodes configured
2 resources configured
Online: [ msnode1 msnode2 ]
Full list of resources:
virtip (ocf::heartbeat:IPaddr): Started msnode1
mspersonal (systemd:mspersonal): Started msnode1
ノード 1 でクラスターをシャットダウンするか、ノード 1 を再起動すると、リソースは msnode2 で開始されますが、ただちにシャットダウンされ、状況が変更されます。
msnode1:~ # systemctl stop pacemaker
msnode2:~ # crm status
Stack: corosync
Current DC: msnode2 (version 1.1.16-4.8-77ea74d) - partition WITHOUT quorum
Last updated: Tue Jun 25 17:44:26 2019
Last change: Tue Jun 25 17:38:20 2019 by hacluster via cibadmin on msnode1
2 nodes configured
2 resources configured
Online: [ msnode2 ]
OFFLINE: [ msnode1 ]
Full list of resources:
virtip (ocf::heartbeat:IPaddr): Stopped
mspersonal (systemd:mspersonal): Stopped
msnode1でPacemakerサービスを再起動すると、リソースはmsnode1で再起動されます。
msnode1:~ # systemctl start pacemaker
msnode1:~ # crm status
Stack: corosync
Current DC: msnode2 (version 1.1.16-4.8-77ea74d) - partition with quorum
Last updated: Tue Jun 25 17:46:09 2019
Last change: Tue Jun 25 17:38:20 2019 by hacluster via cibadmin on msnode1
2 nodes configured
2 resources configured
Online: [ msnode1 msnode2 ]
Full list of resources:
virtip (ocf::heartbeat:IPaddr): Started msnode1
mspersonal (systemd:mspersonal): Started msnode1
しかし、同じ練習を再実行すると、リソースは実際にmsnode2から始まります。
msnode1:~ # systemctl stop pacemaker
msnode2:~ # crm status
Stack: corosync
Current DC: msnode2 (version 1.1.16-4.8-77ea74d) - partition WITHOUT quorum
Last updated: Tue Jun 25 17:47:00 2019
Last change: Tue Jun 25 17:38:20 2019 by hacluster via cibadmin on msnode1
2 nodes configured
2 resources configured
Online: [ msnode2 ]
OFFLINE: [ msnode1 ]
Full list of resources:
virtip (ocf::heartbeat:IPaddr): Started msnode2
mspersonal (systemd:mspersonal): Started msnode2
しかし、msnode1からPacemakerを再起動すると、リソースはmsnode1に戻ります。これは、固定性が100に設定されているため予期しない現象です。
このクラスタ構成で何が欠落しているかが見つかりません。
答え1
ログや追加情報なしで最初の試行でリソースが完全に停止した理由はわかりません。 2番目の練習は、以下の位置制約を考慮して予想通りに行われました。
location cli-prefer-virtip virtip role=Started inf: msnode1
この位置制約には、200を超える固定スコアを持つ無限大スコアがあります。この位置制約を削除してテストを再試行すると、目的の方法で動作するようには思えません。