On 17/09/14 01:23 PM, aTTi wrote:
Hi!
I want build a DRBD cluster, with no special primary/primary function,
just a normal primary and passive secondary node, as standard.
I will use XFS file system with Centos 7 with 2 NIC: eth0 for switch and
for internet, eth1 for direct cable (crosslink) to other server.
I will define 2 ring: ring 0: eth1 crosslink connection, ring1: eth0
connection. I hope normally never will use the ring1, just the ring0.
If I had just this 2 server with extra direct cable connection, 'split
brain' can happen (someone unplug all network cable from server 1 or
from server 2, for example).
I had more normal servers. I want to find the best solution, because I
don't want split brain and lost data. Also I don't want fix manually the
problems if I can find a solution what helps to (near) never happing
split brain, or other DRBD killer disaster...
My 3. server is near same hardware as server 1 and server 2 with a low
load. If needed I had server 4 too, with a little bigger load with same
hardware as server 3. I just want a safe, clear and simple DRBD solution.
My 4 ideas / plans:
1. use 3. server as virtual node (arbiter). Question: how? Using server
3 helps to avoid split brain situation?
2. use 3. server as backup server with iSCSI. (3. server also in same
gigabit switch) It's good idea? This solution can helps to avoid split
brain?
3. use the server 3 as stacked node with DRBD, I found this:
http://www.drbd.org/users-guide-8.3/s-pacemaker-floating-peers.html
It helps to avoid split brain?
4. I add as normal passive node my 3. server for DRBD. It will be
problem for me because no direct connection for all 3 servers. I don't
want this way.
What is the best? I don't want make any new solution. I just want a
safe, working DRBD. If 3. server not needed for that, I also not will
use this, just 2. But I think 3. server can help to be more safe this
DRBD cluster. Please help me to make that.
My plan:
using my server 3 for make safer my DRBD (in server 1 and server 2) and
make backup from that 2 server.
I just want real safe my data from server 1 + server 2.
For 2 node, Stonith recommended. I also want to use that.
I knows Stonith mechanism: it kills the server if needed. It's good...
if really needed.
I will use Pacemaker + Corosync to manage DRBD and services.
Quorum needed for me if I had +1 node for DRBD?
I used DRBD few times, but not I installed for servers.
Please describe me what is the best if I want use a normal active /
passive DRBD and I want to be the most safe solution, using server 3 for
that.
I want the simplest / safest solution what works for most scenarios. I
just want to be a happy DRBD user.
Thank you,
aTTi
Hi aTTi,
The only way to prevent split-brains is with fencing, full stop.
Quorum deals with a different issue. Whether you have 2-nodes and
disable quorum or have three nodes with quorum, you will still need
fencing (aka stonith).
The best plan is to configure stonith in pacemaker (IPMI or the like
is the most common method, switched PDUs is another options). Then when
that is working properly, configure DRBD and use the crm-fence-peer.sh
fence handler and set the fencing policy to resource-and-stonith.
With this, should communication break, both nodes will block and call
a fence. The faster node will power off the slower node. Then, and only
then, storage will unblock and recovery will begin, if needed. You can
control which node wins in a race like this by assigning 'delay="15"'
fence method configuration for to the node you want to live.
--
Digimer
Papers and Projects: https://alteeve.ca/w/
What if the cure for cancer is trapped in the mind of a person without
access to education?
_______________________________________________
drbd-user mailing list
[email protected]
http://lists.linbit.com/mailman/listinfo/drbd-user