Пытаюсь сделать отказоустойчивый Asterisk.
Есть две ноды с CentOS7 + DRDB + Asterisk +MySQL + Apache Первый сервер выступает мастером, второй слейв. Все как бы работает, когда тушишь первый сервер, второй слейв становится мастером.
Возникла проблема: Когда второй сервер мастер, если включить первую ноду (которая была отключена), она автоматически перехватывает на себя все ресурсы слейва. Соотcветственно все данные которые писались на слейв не видны мастеру.
Хотя хочется чтобы этот процесс был сделан в ручную.
Настройки кластера:
pcs cluster cib clust_cfg
pcs -f clust_cfg property set stonith-enabled=false
pcs -f clust_cfg property set no-quorum-policy=ignore
pcs -f clust_cfg resource defaults resource-stickiness=INFINITY
pcs -f clust_cfg resource create ast_data01 ocf:linbit:drbd drbd_resource=disk1 op monitor interval=30s
pcs -f clust_cfg resource master AstClone01 ast_data01 master-max=1 master-node-max=1 clone-max=2 clone-node-max=1 notify=true
pcs -f clust_cfg resource create ast_fs01 Filesystem device="/dev/drbd/by-res/disk1/0" directory="/etc/asterisk" fstype="ext4"
pcs -f clust_cfg resource create ast_fs02 Filesystem device="/dev/drbd/by-res/disk1/1" directory="/var/lib/asterisk" fstype="ext4"
pcs -f clust_cfg resource create ast_fs03 Filesystem device="/dev/drbd/by-res/disk1/2" directory="/var/lib/mysql" fstype="ext4"
pcs -f clust_cfg resource create ast_fs04 Filesystem device="/dev/drbd/by-res/disk1/3" directory="/var/www/html" fstype="ext4"
pcs -f clust_cfg constraint colocation add ast_fs03 with AstClone01 INFINITY with-rsc-role=Master
pcs -f clust_cfg constraint colocation add ast_fs01 with AstClone01 INFINITY with-rsc-role=Master
pcs -f clust_cfg constraint colocation add ast_fs02 with AstClone01 INFINITY with-rsc-role=Master
pcs -f clust_cfg constraint colocation add ast_fs04 with AstClone01 INFINITY with-rsc-role=Master
pcs -f clust_cfg constraint order promote AstClone01 then start ast_fs03
pcs -f clust_cfg constraint order promote AstClone01 then start ast_fs01
pcs -f clust_cfg constraint order promote AstClone01 then start ast_fs02
pcs -f clust_cfg constraint order promote AstClone01 then start ast_fs04
pcs -f clust_cfg resource create mysql_service01 ocf:heartbeat:mysql binary="/usr/bin/mysqld_safe" config="/etc/my.cnf" user="mysql" group="mysql" datadir="/var/lib/mysql" pid="/var/lib/mysql/mysql.pid" socket="/var/lib/mysql/mysql.sock" op start timeout=60s op stop timeout=60s op monitor interval=20s timeout=30s
pcs -f clust_cfg resource create ast_service01 ocf:heartbeat:asterisk op start timeout=60s op stop timeout=60s op monitor interval=20s timeout=30s
pcs -f clust_cfg resource create httpd_service01 ocf:heartbeat:apache op start timeout=60s op stop timeout=60s op monitor interval=20s timeout=30s
pcs -f clust_cfg constraint colocation add mysql_service01 with ast_fs03 INFINITY
pcs -f clust_cfg constraint colocation add ast_service01 with ast_fs01 INFINITY
pcs -f clust_cfg constraint colocation add ast_service01 with ast_fs02 INFINITY
pcs -f clust_cfg constraint colocation add httpd_service01 with ast_fs04 INFINITY
pcs -f clust_cfg constraint order ast_fs03 then mysql_service01
pcs -f clust_cfg constraint order ast_fs01 then ast_service01
pcs -f clust_cfg constraint order ast_fs02 then ast_service01
pcs -f clust_cfg constraint order ast_fs04 then httpd_service01
pcs -f clust_cfg resource create ast_VIP01 ocf:heartbeat:IPaddr2 ip=192.168.0.43 cidr_netmask=32 op monitor interval=30s
pcs -f clust_cfg constraint colocation add ast_VIP01 with mysql_service01 INFINITY
pcs -f clust_cfg constraint colocation add ast_VIP01 with ast_service01 INFINITY
pcs -f clust_cfg constraint colocation add ast_VIP01 with httpd_service01 INFINITY
pcs -f clust_cfg constraint order mysql_service01 then ast_VIP01
pcs -f clust_cfg constraint
pcs -f clust_cfg resource show
pcs cluster cib-push clust_cfg