High-Available iSCSI Target
Netzwerkkonfiguration
Pakete:
drbd8-utils
pacemaker
patch
gawk
iscsitarget
iscsitarget-dkms
dkms
linux-headers-2.6-amd64
Konfiguration /etc/drbd.conf:
# You can find an example in /usr/share/doc/drbd.../drbd.conf.example
include "drbd.d/global_common.conf";
#include "drbd.d/*.res";
resource r0 {
protocol C;
syncer {
rate 1G;
}
on cl1n1.home.eisscholle.net {
device /dev/drbd0;
disk /dev/sdb;
address 1.0.10.10:7788;
meta-disk internal;
}
on cl1n2.home.eisscholle.net {
device /dev/drbd0;
disk /dev/sdb;
address 1.0.10.11:7788;
meta-disk internal;
}
}
resource r1 {
protocol C;
syncer {
rate 1G;
}
on cl1n1.home.eisscholle.net {
device /dev/drbd1;
disk /dev/sdc;
address 1.0.10.10:7789;
meta-disk internal;
}
on cl1n2.home.eisscholle.net {
device /dev/drbd1;
disk /dev/sdc;
address 1.0.10.11:7789;
meta-disk internal;
}
}
Konfiguration Corosync:
node cl1n1.home.eisscholle.net \
attributes standby="off"
node cl1n2.home.eisscholle.net \
attributes standby="off"
primitive drbd0 ocf:linbit:drbd \
params drbd_resource="r0" \
op monitor interval="5s" \
op start interval="0" timeout="240s" \
op stop interval="0" timeout="100s"
primitive drbd1 ocf:linbit:drbd \
params drbd_resource="r1" \
op monitor interval="5s" \
op start interval="0" timeout="240s" \
op stop interval="0" timeout="100s"
primitive ietd0 ocf:heartbeat:iSCSITarget \
params implementation="iet" iqn="iqn.cl1n1.home.eisscholle.net:drbd0" \
op monitor interval="5s" \
meta target-role="Started"
primitive ietd1 ocf:heartbeat:iSCSITarget \
params implementation="iet" iqn="iqn.cl1n2.home.eisscholle.net:drbd1" \
op monitor interval="5s" \
meta target-role="Started"
primitive ietu0 ocf:heartbeat:iSCSILogicalUnit \
params target_iqn="iqn.cl1n1.home.eisscholle.net:drbd0" lun="0" path="/dev/drbd0" scsi_sn="drbd0" additional_parameters="type=fileio" \
op monitor interval="5" timeout="10" depth="0" \
meta target-role="Started"
primitive ietu1 ocf:heartbeat:iSCSILogicalUnit \
params target_iqn="iqn.cl1n2.home.eisscholle.net:drbd1" lun="0" path="/dev/drbd1" scsi_sn="drbd1" additional_parameters="type=fileio" \
op monitor interval="5" timeout="10" depth="0" \
meta target-role="Started"
primitive ip0 ocf:heartbeat:IPaddr2 \
params ip="1.0.0.132" \
op monitor interval="5s" \
meta target-role="Started"
primitive ip1 ocf:heartbeat:IPaddr2 \
params ip="1.0.0.133" \
op monitor interval="5s" \
meta target-role="Started"
ms ms_drbd0 drbd0 \
meta master-max="1" master-node-max="1" clone-max="2" clone-node-max="1" notify="true" target-role="Started"
ms ms_drbd1 drbd1 \
meta master-max="1" master-node-max="1" clone-max="2" clone-node-max="1" notify="true" target-role="Started"
colocation ip0_on_drbd0 inf: ip0 ms_drbd0:Master ietd0 ietu0
colocation ip1_on_drbd1 inf: ip1 ms_drbd1:Master ietd1 ietu1
order ip0_after_drbd0 inf: ms_drbd0:promote ip0:start ietd0 ietu0
order ip1_after_drbd1 inf: ms_drbd1:promote ip1:start ietd1 ietu1
property $id="cib-bootstrap-options" \
dc-version="1.0.9-74392a28b7f31d7ddc86689598bd23114f58978b" \
cluster-infrastructure="openais" \
expected-quorum-votes="2" \
stonith-enabled="false" \
no-quorum-policy="ignore" \
default-resource-stickiness="1000" \
last-lrm-refresh="1288633229"
Ergebnis crm_mon:
============
Last updated: Mon Nov 1 16:04:38 2010
Stack: openais
Current DC: cl1n1.home.eisscholle.net - partition with quorum
Version: 1.0.9-74392a28b7f31d7ddc86689598bd23114f58978b
2 Nodes configured, 2 expected votes
8 Resources configured.
============
Online: [ cl1n1.home.eisscholle.net cl1n2.home.eisscholle.net ]
ip0 (ocf::heartbeat:IPaddr2): Started cl1n1.home.eisscholle.net
ip1 (ocf::heartbeat:IPaddr2): Started cl1n2.home.eisscholle.net
Master/Slave Set: ms_drbd0
Masters: [ cl1n1.home.eisscholle.net ]
Slaves: [ cl1n2.home.eisscholle.net ]
Master/Slave Set: ms_drbd1
Masters: [ cl1n2.home.eisscholle.net ]
Slaves: [ cl1n1.home.eisscholle.net ]
ietd0 (ocf::heartbeat:iSCSITarget): Started cl1n1.home.eisscholle.net
ietd1 (ocf::heartbeat:iSCSITarget): Started cl1n2.home.eisscholle.net
ietu0 (ocf::heartbeat:iSCSILogicalUnit): Started cl1n1.home.eisscholle.net
ietu1 (ocf::heartbeat:iSCSILogicalUnit): Started cl1n2.home.eisscholle.net