[ClusterLabs] Is 20 seconds to complete redis switchover to be expected?
Andrei Borzenkov
arvidjaar at gmail.com
Tue Mar 31 06:30:06 EDT 2020
31.03.2020 09:27, steven prothero пишет:
> Hello,
>
> I am new with Pacemaker (new to redis also) and appreciate the info shared here.
>
> I believe with Redis sentinel a switchover is about 2 seconds.
> Reading a post about Pacemaker with Redis, the author said he was
> doing it in 3 seconds. For me, it takes about 20 seconds and I am
> wondering what I am doing wrong.
>
> Example timeline from looking at the logs:
>
> :00 - node1 crash (redis-server killed)
> :02 - Pacemaker knows there is a problem.
> :02 - STONITH/fence starts. (fence_ipmilan power off)
> :09 - STONITH/fence finished.
> :18 - Redis switched.
> :19 - VIP switched.
>
> During the time of the stonith/ fencing action nothing else is
> happening. It is the fence_ipmilan which does a poweroff. Can the
> fencing be started on node1 while node2 works in parallel to take care
> of the redis & VIP?
No. This would invalidate the very reason to perform stonith - ensure
node does not run any resources that are being switched over.
> Also, after the stonith/fence is finished for 9
> seconds or so it is just pacemaker trying to invite the dead node1
> back (I think).
No, it does not. Full logs for this period would be necessary to answer
what happens.
> Be great if I could skip that and go directly to
> redis switch & vip switchovers.
> > I have been researching & testing with various configurations and
> would appreciate any pointers and advice.
>
> I am using pacemaker 1.1.10, with 2 nodes.
>
> my (edited) crm configure show :
>
> node $id="1" example1.com \
> attributes standby="off"
> node $id="2" example2.com
> primitive fence_example1 stonith:fence_ipmilan \
> params pcmk_host_list="example1.com" ipaddr="10.24.x.xxx"
> login="user" passwd="password" pcmk_action_limit="-1"
> concurrent-fencing="true" lanplus="true" action="off" \
> op monitor interval="20s" \
> meta target-role="Started"
> primitive fence_example2 stonith:fence_ipmilan \
> params pcmk_host_list="example2.com" ipaddr="10.24.x.yyy"
> login="user" passwd="password" concurrent-fencing="true"
> pcmk_action_limit="-1" lanplus="true" action="off" delay="10" \
> op monitor interval="20s" \
> meta target-role="Started"
> primitive redis ocf:heartbeat:redis \
> params bin="/usr/local/bin/redis-server"
> client_bin="/usr/local/bin/redis-cli" port="6379"
> config="/etc/redis/redis.conf" socket_name="redis.sock"
> pidfile_name="redis.pid" \
> meta target-role="Started" is-managed="true" \
> op monitor interval="1s" role="Master" timeout="1s" on-fail="fence"
> primitive res_vip ocf:heartbeat:IPaddr2 \
> params ip="10.24.x.zzz" nic="bond0.xx" cidr_netmask="22" \
> op monitor interval="10" \
> meta target-role="Started"
> ms redis_clone redis \
> meta notify="true" is-managed="true" ordered="false"
> interleave="true" globally-unique="false" target-role="Started"
> migration-threshold="1"
> colocation redis-first inf: redis_clone:Master res_vip
> order redis-before-vip inf: redis_clone:promote res_vip:start
> property $id="cib-bootstrap-options" \
> dc-version="1.1.10-42f2063" \
> cluster-infrastructure="corosync" \
> stonith-enabled="true" \
> no-quorum-policy="ignore" \
> default-resource-stickiness="200" \
> batch-limit="300" \
> migration-limit="-1"
> property $id="redis_replication" \
> redis_REPL_INFO="example1.com"
> rsc_defaults $id="rsc-options" \
> migration-threshold="1"
>
> Thank you very much
> _______________________________________________
> Manage your subscription:
> https://lists.clusterlabs.org/mailman/listinfo/users
>
> ClusterLabs home: https://www.clusterlabs.org/
>
More information about the Users
mailing list