Geo cluster with pacemaker - quorum vs booth
I configured a geo cluster using pacemaker and DRBD. The cluster has 3 different nodes, each node is in a different geographic location. The locations are pretty close to one another and the communication between them is fast enough for our requirements (around 80MB/s).
I have one master node, one slave node and the third node is an arbitrator. I use aws route 53 fail over dns record to do fail over between the nodes in the different sites.
A fail over will happen from the master to the slave only if the slave has quorum, thus ensuring it has communication to the outside world.
I have read that using booth is advised to perform fail over between clusters/nodes in different locations - but having a quorum between different geographic locations seems to work very well.
I want to emphasize that I don't have a cluster of clusters - it is a single cluster, with each node in a different geo location.
My question is - do I need booth in my case? If so - why? Am I missing something?
Thanks.
See also questions close to this topic
-
HBase regions not fail over correctly, stuck in "OPENING" RIT
I am using the hbase-2.2.3 to setup a small cluster with 3 nodes. (both hadoop and HBase are HA mode) node1: NN, JN, ZKFC, ZK, HMaster, HRegionServer node2: NN, JN, ZKFC, DN, ZK, Backup HMaster, HRegionServer node3: DN, JN, ZK, HRegionServer
When I reboot node3, it cause the regions-in-transaction (some regions are in OPENING). In the master log, I can see: master.HMaster: Not running balancer because 5 region(s) in transition
Anyone know how to fix this issue? Great thanks
-
Is there a redis pub/sub replacement option, with high availability and redundancy, or, probably p2p messaging?
I have an app with hundreds of horizontally scaled servers which uses redis pub/sub, and it works just fine.
The redis server is a central point of failure. Whenever redis fails (well, it happens sometimes), our application falls into inconsistent state and have to follow recovery process which takes time. During this time the entire app is hardly useful.
Is there any messaging system/framework option, similar to redis pub/sub, but with redundancy and high availability so that if one instance fails, other will continue to deliver the messages exchanged between application hosts?
Or, better, is there any distributed messaging system in which app instances exchange the messages in a peer-to-peer manner, so that there is no single point of failure?
-
Apache flink high availability not working as expected
Tried to test High availability by bringing down Task manager along with Job manager and yarn Node manager at same time, I thought yarn will automatically assign that application to other node but it's not happening 😔😔 How this can be achieved?
-
Pacemaker Postgresql Master-Master State
I am using Pacemaker with Centos 8 and Postgresql 12. Failover master/slave states successfully run. But if all nodes are masters, pacemaker can't repair its unlikely send command 'pcs resources cleanup'. Wheras I set 60s in resource config. How can I fix it?
State video: https://kerteriz.net/depo/Pacemaker-Fail-1.m4v
<video style="width:80%" controls> <source src="https://kerteriz.net/depo/Pacemaker-Fail-1.m4v" type="video/mp4"> </video>
-
on resource timeout corosync/pacemaker node kill
Is there any option I can kill the node when the resource timeouts on stop action (alternatively on failure of any action)? I do not have any fencing / stonith device.
Thanks in advance
-
repmgr managed by pacemaker
I'm looking for solution how to connect repmgr to the pacemaker on RedHat. There are applications configured for pacemaker sending data to postgres managed by repmgr. When issue occures then pacemaker switch virtual ip to standby server and aplications too, but repmgr does not switch DB to standby node. If there is issue with repmgr, then repmgr can also call pacemaker to switch everytinh over to standby node. Is there a way how to manage repmgr with pacemaker ?
Thanks
-
Failed to install DRBD9 in debian-9
I need to upgrade drbd8 to drbd9. for that I following this documentation.
https://www.linbit.com/drbd-user-guide/drbd-guide-9_0-en/#s-upgrading-drbd
step 1
root@oreo:~# add-apt-repository ppa:linbit/linbit-drbd9-stack This PPA contains DRBD9, drbd-utils, LINSTOR (client, python API, server). This differs from official, production grade LINBIT repositories in several ways, including: - We push RCs immediately to the PPA - We don't push hotfixes, these usually have to wait until the next RC/release - We only keep 2 LTS versions up to date (Bionic and Focal, but not Xenial) For support and access to official repositories see: https://www.linbit.com or write an email to: sales AT linbit.com More info: https://launchpad.net/~linbit/+archive/ubuntu/linbit-drbd9-stack Press [ENTER] to continue or ctrl-c to cancel adding it gpg: keybox '/tmp/tmp68jovxd3/pubring.gpg' created gpg: keyserver receive failed: No keyserver available
step 2 Next you will want to add the DRBD signing key to your trusted keys
wget -O- http://packages.linbit.com/gpg-pubkey-53B3B037-282B6E23.asc | apt-key add -
step 3 Lastly perform an apt update so Debian recognizes the updated repository.
apt update
I got error like this
apt-get update Ign:1 http://ftp.debian.org/debian stretch InRelease Hit:2 http://security.debian.org stretch/updates InRelease Hit:3 http://download.virtualbox.org/virtualbox/debian stretch InRelease Hit:4 http://apt.postgresql.org/pub/repos/apt stretch-pgdg InRelease Hit:5 http://ftp.debian.org/debian stretch-updates InRelease Ign:6 http://ppa.launchpad.net/linbit/linbit-drbd9-stack/ubuntu hirsute InRelease Hit:7 http://ftp.debian.org/debian stretch-backports InRelease Hit:8 http://ftp.debian.org/debian stretch Release Ign:9 http://ppa.launchpad.net/linbit/linbit-drbd9-stack/ubuntu hirsute Release Ign:10 http://ppa.launchpad.net/linbit/linbit-drbd9-stack/ubuntu hirsute/main amd64 Packages Ign:11 http://ppa.launchpad.net/linbit/linbit-drbd9-stack/ubuntu hirsute/main all Packages Ign:12 http://ppa.launchpad.net/linbit/linbit-drbd9-stack/ubuntu hirsute/main Translation-en Ign:10 http://ppa.launchpad.net/linbit/linbit-drbd9-stack/ubuntu hirsute/main amd64 Packages Ign:11 http://ppa.launchpad.net/linbit/linbit-drbd9-stack/ubuntu hirsute/main all Packages Ign:12 http://ppa.launchpad.net/linbit/linbit-drbd9-stack/ubuntu hirsute/main Translation-en Ign:10 http://ppa.launchpad.net/linbit/linbit-drbd9-stack/ubuntu hirsute/main amd64 Packages Ign:11 http://ppa.launchpad.net/linbit/linbit-drbd9-stack/ubuntu hirsute/main all Packages Ign:12 http://ppa.launchpad.net/linbit/linbit-drbd9-stack/ubuntu hirsute/main Translation-en Ign:10 http://ppa.launchpad.net/linbit/linbit-drbd9-stack/ubuntu hirsute/main amd64 Packages Ign:11 http://ppa.launchpad.net/linbit/linbit-drbd9-stack/ubuntu hirsute/main all Packages Ign:12 http://ppa.launchpad.net/linbit/linbit-drbd9-stack/ubuntu hirsute/main Translation-en Ign:10 http://ppa.launchpad.net/linbit/linbit-drbd9-stack/ubuntu hirsute/main amd64 Packages Ign:11 http://ppa.launchpad.net/linbit/linbit-drbd9-stack/ubuntu hirsute/main all Packages Ign:12 http://ppa.launchpad.net/linbit/linbit-drbd9-stack/ubuntu hirsute/main Translation-en Err:10 http://ppa.launchpad.net/linbit/linbit-drbd9-stack/ubuntu hirsute/main amd64 Packages 404 Not Found Ign:11 http://ppa.launchpad.net/linbit/linbit-drbd9-stack/ubuntu hirsute/main all Packages Ign:12 http://ppa.launchpad.net/linbit/linbit-drbd9-stack/ubuntu hirsute/main Translation-en Reading package lists... Done W: The repository 'http://ppa.launchpad.net/linbit/linbit-drbd9-stack/ubuntu hirsute Release' does not have a Release file. N: Data from such a repository can't be authenticated and is therefore potentially dangerous to use. N: See apt-secure(8) manpage for repository creation and user configuration details. E: Failed to fetch http://ppa.launchpad.net/linbit/linbit-drbd9-stack/ubuntu/dists/hirsute/main/binary-amd64/Packages 404 Not Found E: Some index files failed to download. They have been ignored, or old ones used instead.
please help me
-
Setup DRBD with 3 server (master/slave)
I currently work with pacemaker DRBD setup. I have 3 Debian 9 server and I want to synchronize drive with all server. unfortunately I get error while installing DRBD to my server.
drbd configuration
global { usage-count no; } common { protocol C;} resource r0 { on oreo { device /dev/drbd0; disk /dev/sda3; address 10.xxx.xxx.205:7788; meta-disk internal; } on cupcone { device /dev/drbd0; disk /dev/sda3; address 10.xxx.xxx.206:7788; meta-disk internal; } on twinkie { device /dev/drbd0; disk /dev/sda3; address 10.xxx.xxx.207:7788; meta-disk internal; } }
Step I followed
root@oreo:~# sudo modprobe drbd root@oreo:~# sudo drbdadm create-md r0 You want me to create a v08 style flexible-size internal meta data block. There appears to be a v08 flexible-size internal meta data block already in place on /dev/sda3 at byte offset 6291453898752 Do you really want to overwrite the existing meta-data? [need to type 'yes' to confirm] yes initializing activity log NOT initializing bitmap Writing meta data... New drbd meta data block successfully created.
Error I get
root@oreo:~# sudo drbdadm up r0 /etc/drbd.conf:3: in resource r0: There are multiple host sections for the peer node. Use the --peer option to select which peer section to use. resource r0: cannot configure network without knowing my peer.
I think error is config file, I don't know how to fix this
please help me
-
Stacked DRBD (DR Node) not Syncing Back to Primary Site
We have following Situation here,
We have 3 nodes with DRBD Setup. 2 Nodes are part of pacemaker clustering and 1 node is DR Node. As part of DR testing we have shutdown 2 Nodes (Pacemaker), and mounted DRBD drive on DR Node. We can see all the data which was there on Primary Site and also we have written new data on DR node. However, after few days, we brought one node on primary site but whatever the data written on DR node was replicated back to primary node.
Replicated back to primary site is automatic or do we need to follow any additional steps
We are using SLES 12.4 Trail Version for this POC