[Linux-ha-jp] sfexリソースエージェントの設定について

Back to archive index

Keisuke Nakamura k.xna****@gmail*****
2016年 10月 13日 (木) 21:04:26 JST


関係者各位
お世話になっております。nakaと申します。

環境:
CentOS 7.2(x86_64)
pacemaker-1.1.14-1.el7.x86_64
corosync-2.3.5-1.el7.x86_64

稼働系:hoge01v
待機系:hoge02v

(質問)
pacemaker1.1.14とcorosync2.3.5の組み合わせでの動作検証を進めております。
sfexのリソースエージェントの動作を検証しているのですが、どうもうまく機能
しません。というのも、待機系ノードでOS再起動をさせたとき、OS起動のタイミング
でなぜか稼働系の共有ディスク(LVM)リソースが一時的にstopし参照できなくなってし
まいます。(スプリットブレインが起こってしまう。)
sfex_initコマンドは実行済です。

想定動作としては、sfexのリソースエージェントを設定しているつもりなので
これが機能して、待機系ではLVは非活性状態となり、稼働系は何も影響しないもの
と考えてます。

お忙しいところ大変恐縮ではございますが、被疑箇所と思われる点等ございましたら
ご指摘頂けると幸いです。ご不明点等あればご連絡ください。

・sfexのリソースエージェントの書き方は正しい?
・corosyncのquorumディレクティブは関係無し?
等

◆設定内容◆
# crm configure show

node 1: hoge01v
node 2: hoge02v
primitive ip_hoge00t IPaddr2 \
        meta migration-threshold=5 \
        params ip=10.2.24.94 cidr_netmask=24 nic=ens160 iflabel=0 \
        op monitor interval=3s
primitive res_ping ocf:pacemaker:ping \
        params name=ens160_ping_set host_list=10.2.24.1 multiplier=200
dampen=1 debug=true attempts=10 \
        op monitor interval=10s timeout=60 \
        op start interval=0 timeout=60
primitive vgua01 LVM \
        params volgrpname=vgua01
primitive vgua01_LogVol00 Filesystem \
        meta migration-threshold=5 \
        params device="/dev/vgua01/LogVol00" fstype=xfs directory="/ua" \
        op monitor interval=20s
primitive vgua01_lv_quorum sfex \
        params index=1 device="/dev/vgua01/lv_quorum"
group pkg_hoge00t ip_hoge00t vgua01 vgua01_lv_quorum vgua01_LogVol00 \
        meta is-managed=true target-role=Started
clone clone_ping res_ping \
        meta target-role=Started
location pkg_hoge00t-location pkg_hoge00t \
        rule 200: #uname eq hoge01v \
        rule 100: #uname eq hoge02v
location pkg_hoge00t-service-location pkg_hoge00t \
        rule -inf: defined ens160_ping_set and ens160_ping_set lt 200
property cib-bootstrap-options: \
        have-watchdog=false \
        dc-version=1.1.14-1.el7-70404b0 \
        cluster-infrastructure=corosync \
        stonith-enabled=false \
        no-quorum-policy=ignore \
        default-action-timeout=120s \
        last-lrm-refresh=1474010070
rsc_defaults rsc-options: \
        resource-stickiness=INFINITY

◆corosyncの設定◆
# cat /etc/corosync/corosync.conf

totem {
        version: 2
        token: 10000
        rrp_mode: active
        interface {
                ringnumber: 0
                bindnetaddr: 10.0.0.0
                mcastport: 5405
                ttl: 1
        }
        interface {
                ringnumber: 1
                bindnetaddr: 10.2.24.0
                mcastport: 5405
                ttl: 1
        }
        transport: udpu
}
logging {
        fileline: off
        to_logfile: yes
        to_syslog: no
        logfile: /var/log/cluster/corosync.log
        debug: off
        timestamp: on
}
nodelist {
        node {
                ring0_addr: 10.0.0.35
                ring1_addr: hoge01v
                nodeid: 1
        }
        node {
                ring0_addr: 10.0.0.36
                ring1_addr: hoge02v
                nodeid: 2
        }
}
quorum {
        provider: corosync_votequorum
        expected_votes: 2
        two_node: 1
}

◆稼働系でのsfex_stat結果◆
# sfex_stat /dev/vgua01/lv_quorum

control data:
  magic: 0x53, 0x46, 0x45, 0x58
  version: 1
  revision: 3
  blocksize: 512
  numlocks: 1
lock data #1:
  status: lock
  count: 383
  nodename: hoge01v
status is LOCKED.

以上、宜しくお願い致します。

-- 
Naka



Linux-ha-japan メーリングリストの案内
Back to archive index