[Linux-ha-jp] pacemakerでtakeoverさせる設定について

アーカイブの一覧に戻る

木下 正昭 kinos****@tdc*****
2015年 8月 25日 (火) 14:21:42 JST


TDCソフトの木下と申します。

前回サービスの自動起動ではお世話になりました。
今回はcrmでのリソース設定について質問が御座います。

環境は前回と同様です。

CentOS6.5でpacemaker+corosync+drbd+mysqlで環境構築をしております。

Linux-HAからリポジトリ(pacemaker-repo-1.1.12-1.1.el6.x86_64.rpm)をインストールして、
yum install pacemaker-allでインストールしています。

各バージョンが、以下になっております。
CentOS6.5(x86_64)
pacemaker(1.1.12)
corosync(2.3.4-1)
drbd(8.4.3-1)

2ノードでactive/sandbyにしています。

最後にcrmの設定を転記いたしますが、以下の理解で間違いが無いかアドバイス頂ければと思います。

・Activeノードにおいて、corosyncプロセスをkillした場合watchdogによりOS再起動いたしますが、
pacmakerdをkillしてもプロセスが再起動してtakeoverしませんが、この動作で間違いないのですか?

・また、グループリソース内のmysqlをmysqld_safeとmysqldの2つのプロセスをkillした場合は、
OS再起動をして、takeoverしますが、mysqld_safeだけプロセスをkillした場合はunmanagedとなり、
takeoverしません。これはそういった仕様なのか、それともトリガーになる判定式不足なのでしょうか?

crmの設定を転記いたします。

[crm]

crm(live)configure# show
node 3232291841: alpha.local
node 3232291842: bravo.local
primitive rsc_drbd0 ocf:linbit:drbd \
        params drbd_resource=r0 \
        op start interval=0s timeout=240s on-fail=restart \
        op monitor interval=10s timeout=20s role=Master on-fail=restart \
        op monitor interval=20s timeout=20s role=Slave on-fail=restart \
        op stop interval=0s timeout=100s on-fail=restart
primitive rsc_filesystem Filesystem \
        params device="/dev/drbd0" fstype=ext4 directory="/data" \
        op start interval=0s timeout=60s on-fail=restart \
        op monitor interval=20s timeout=40s on-fail=restart \
        op stop interval=0s timeout=60s on-fail=restart
primitive rsc_gwping ocf:pacemaker:ping \
        params name=default_ping_set host_list=192.168.0.254 multiplier=100 attempts=2 timeout=2 debug=true \
        op start interval=0s timeout=60s on-fail=restart \
        op monitor interval=10s timeout=60s on-fail=restart \
        op stop interval=0s timeout=20s on-fail=restart
primitive rsc_mysql mysql \
        params binary="/usr/bin/mysqld_safe" datadir="/data/mysql_data" pid="/data/mysql_data/mysql.pid" socket="/data/mysql_data/mysql/mysql.sock" \
        op start interval=0s timeout=120s on-fail=restart \
        op monitor interval=120s timeout=60s on-fail=restart \
        op stop interval=0s timeout=120s on-fail=restart
primitive rsc_vip IPaddr2 \
        params ip=10.20.0.210 cidr_netmask=24 nic=eth0 \
        op start interval=0s timeout=20s on-fail=restart \
        op monitor interval=10s timeout=20s on-fail=restart \
        op stop interval=0s timeout=20s on-fail=restart
group rgrp_db rsc_filesystem rsc_vip rsc_mysql
ms ms_drbd0 rsc_drbd0 \
        meta master-max=1 master-node-max=1 clone-max=2 clone-node-max=1 notify=true
clone cln_gwping rsc_gwping
location rsc_location-rgrp_db-1 rgrp_db \
        rule -inf: not_defined default_ping_set or default_ping_set lt 100
colocation c_rgrp_db_on_drbd0 inf: rgrp_db ms_drbd0:Master
order o_drbd_befor_rgrp_db inf: ms_drbd0:promote rgrp_db:start
property cib-bootstrap-options: \
        dc-version=1.1.12-561c4cf \
        cluster-infrastructure=corosync \
        no-quorum-policy=ignore \
        stonith-enabled=false \
        startup-fencing=true \
        last-lrm-refresh=1440470485
rsc_defaults rsc-options: \
        resource-stickiness=INFINITY \
        migration-threshold=1
crm(live)configure#

[/etc/init/pacemaker.combined.conf]
# diff -u pacemaker.combined.conf_org pacemaker.combined.conf
--- pacemaker.combined.conf_org       2014-09-04 19:38:20.000000000 +0900
+++ pacemaker.combined.conf     2015-08-21 19:46:32.145708704 +0900
@@ -1,7 +1,9 @@
 # pacemaker-corosync - High-Availability cluster
 #
 # Starts Corosync cluster engine and Pacemaker cluster manager.
+start on started local and runlevel [2345]

+stop on runlevel [0123456]
 kill timeout 3600
 respawn

@@ -20,7 +22,7 @@
 pre-start script
     # setup the software watchdog which corosync uses.
     # rewrite according to environment.
-    modprobe softdog soft_margin=60
+    [ -c /dev/watchdog ] || modprobe softdog soft_margin=6
     pidof corosync || start corosync

     # if you use corosync-notifyd, uncomment the line below.
@@ -49,7 +51,7 @@
     rm -f /var/run/$prog.pid

     # if you use watchdog of corosync, uncomment the line below.
-    #pidof corosync || false
+    pidof corosync || false

     pidof crmd || stop corosync


[/etc/sysconfig/pacemaker]
# diff -u pacemaker_org pacemaker
--- pacemaker_org     2015-08-18 17:24:18.000000000 +0900
+++ pacemaker    2015-08-21 13:19:04.513453641 +0900
@@ -65,7 +65,7 @@
 # PCMK_schema_directory=/some/path

 # Enable this for rebooting this machine at the time of process (subsystem) failure
-# PCMK_fail_fast=no
+export PCMK_fail_fast=yes

 #==#==# Pacemaker Remote
 # Use a custom directory for finding the authkey.
[root @ 1tpdb03 init]#




Linux-ha-japan メーリングリストの案内
アーカイブの一覧に戻る