web-dev-qa-db-ja.com

GaleraおよびCorosync / Pacemakerのリソースの構成

ペースメーカーにリソースを設定してGaleraクラスターを管理する適切な方法が見つからないようです。 5つのボックス間でフェイルオーバーするVIP(これは機能します))が必要ですが、これをmysqlも監視するリソースに結び付けたいと思います。mysqlインスタンスがダウンした場合、= VIPは、mysqlが実際に実行されている別のボックスに移動する必要があります。しかし、ペースメーカーにmysqlサービスを開始または停止させたくありません。現在の構成は次のとおりです。

node galera01
node galera02
node galera03
node galera04
node galera05
primitive ClusterIP IPaddr2 \
    params ip=10.10.10.178 cidr_netmask=24 \
    meta is-managed=true \
    op monitor interval=5s
primitive p_mysql mysql \
    params pid="/var/lib/mysql/mysqld.pid" test_user=root test_passwd=moo \
    meta is-managed=false \
    op monitor interval=5s OCF_CHECK_LEVEL=10 \
    op start interval=0 timeout=60s \
    op stop interval=0 timeout=60s on-fail=standby
group g_mysql p_mysql ClusterIP
order order_mysql_before_ip Mandatory: p_mysql ClusterIP
property cib-bootstrap-options: \
    dc-version=1.1.10-14.el6_5.3-368c726 \
    cluster-infrastructure="classic openais (with plugin)" \
    stonith-enabled=false \
    no-quorum-policy=ignore \
    expected-quorum-votes=5 \
    last-lrm-refresh=1401942846
rsc_defaults rsc-options: \
    resource-stickiness=100

私は何が間違っているのですか?

ありがとうございました。

1
Roncioiu

それで、テーブルの上で頭を何度も叩いた後、私たちのPercona契約がついに再び始まりました。新しいHAリソースの使用: https://github.com/percona/percona-pacemaker-agents/raw/master/agents/mysql_monitor

HAリソースを独自のフォルダーに作成します。これをPercona(/usr/lib/ocf/resource.d/percona)と呼びます。このリソースは、他のリソースのようにmysqlノードを強制終了しようとはしません。

Pxc_resource_agentも取得し、同じフォルダーに配置します。

新しいcrm設定は次のとおりです。

node galera01 \
    attributes standby=off
node galera02 \
    attributes standby=off
node galera03 \
    attributes standby=off
node galera04 \
    attributes standby=off
node galera05 \
    attributes standby=off
primitive ClusterIP IPaddr2 \
    params ip=10.10.10.178 cidr_netmask=24 \
    meta is-managed=true \
    op monitor interval=5s
primitive p_mysql_monit ocf:percona:mysql_monitor \
    params reader_attribute=readable_monit writer_attribute=writable_monit user=root     password=foo pid="/var/lib/mysql/mysqld.pid" socket="/var/run/mysqld/mysqld.sock"   max_slave_lag=5 cluster_type=pxc \
    op monitor interval=1s timeout=20s OCF_CHECK_LEVEL=1
clone cl_mysql_monitor p_mysql_monit \
    meta clone-max=5 clone-node-max=1
location loc-no-writer-vip ClusterIP \
    rule $id="loc-no-writer-vip-rule" -inf: writable_monit eq 0
property cib-bootstrap-options: \
    dc-version=1.1.10-14.el6_5.3-368c726 \
    cluster-infrastructure="classic openais (with plugin)" \
    stonith-enabled=false \
    no-quorum-policy=ignore \
    expected-quorum-votes=5 \
    default-resource-stickiness=1
1
Roncioiu