Note: "permalinks" may not be as permanent as we would like,
direct links of old sources may well be a few messages off.
What happened: One of a pair of servers (pig-app) hung (after several
months uptime), and had to be quickly rebooted.
What went wrong: On rebooting, pig-app insisted on waiting the 1.7 hours
for the "db" partition to sync, even though pig-app does not mount "db".
The configuration: two servers, pig-app and pig-db. Normally pig-app
mounts /home through drbd and pig-db mounts /db through drbd. The two
file systems are mirrored on the other server, so if one dies, the other
can take over services. The problem is that when pig-app rebooted, it
should (I think) have come up fully and synced it's copy of /db in the
background, not held up the boot process (and kept my users waiting!).
Is my configuration wrong? Details below.
-- George
/proc/version:
Linux version 2.4.24 (root at pig-app) (gcc version 3.3.2) #3 SMP Tue Jan 27 12:42:59 EST 2004
----------------------------------------------------------------------
/proc/drbd:
version: 0.6.10 (api:64/proto:62)
0: cs:Connected st:Primary/Secondary ns:38191332 nr:0 dw:1482840 dr:37059748 pe:0 ua:0
1: cs:Connected st:Secondary/Primary ns:0 nr:2569644 dw:2569644 dr:0 pe:0 ua:0
----------------------------------------------------------------------
/var/log/messages
Apr 8 10:30:55 pig-app kernel: drbd: initialised. Version: 0.6.10 (api:64/proto:62)
Apr 8 10:30:55 pig-app drbd: drbdsetup /dev/nb0 disk /dev/rd/c0d0p5 --disk-size=36708492
Apr 8 10:30:55 pig-app drbd: drbdsetup /dev/nb0 net 10.0.0.115:7788 10.0.0.114:7788 C --sync-nice=-15 --sync-min=10M --sync-max=100M --tl-size=5000 --timeout=60 --connect-int=10 --ping-int=10 --sync-group=1
Apr 8 10:30:55 pig-app drbd: drbdsetup /dev/nb1 disk /dev/rd/c0d0p3 --disk-size=1060290k
Apr 8 10:30:55 pig-app kernel: drbd0: Connection established. size=36708492 KB / blksize=4096 B
Apr 8 10:30:55 pig-app kernel: drbd0: Synchronisation started blks=15
Apr 8 10:30:55 pig-app drbd: drbdsetup /dev/nb1 net 10.0.0.115:7789 10.0.0.114:7789 C --sync-nice=-15 --sync-min=10M --sync-max=100M --tl-size=5000 --timeout=60 --connect-int=10 --ping-int=10 --sync-group=2
Apr 8 10:30:55 pig-app drbd: drbdsetup /dev/nb0 wait_connect -t 0
Apr 8 10:30:55 pig-app kernel: drbd1: Connection established. size=1060290 KB / blksize=4
096 B
Apr 8 10:30:55 pig-app drbd: drbdsetup /dev/nb1 wait_connect -t 0
Apr 8 10:30:55 pig-app drbd: 'drbd_home' SyncingAll, but I have the good data. No need to
wait.
Apr 8 10:30:55 pig-app drbd: WARNING: a cluster manager should not failover yet!
Apr 8 10:30:55 pig-app drbd: 'drbd_db' SyncPaused, waiting for this to finish
Apr 8 10:30:55 pig-app drbd: drbdsetup /dev/nb1 wait_sync
----------------------------------------------------------------------
/etc/drbd.conf (both machines identical):
resource drbd_home {
protocol = C
fsckcmd = /bin/true
disk {
disk-size = 36708492
}
net {
sync-nice = -15 # if synchronization is high priority for you
sync-min = 10M
sync-max = 100M # maximal average syncer bandwidth
tl-size = 5000 # transfer log size, ensures strict write ordering
timeout = 60 # 0.1 seconds
connect-int = 10 # seconds
ping-int = 10 # seconds
sync-group = 1
}
on pig-app {
device = /dev/nb0
disk = /dev/rd/c0d0p5
address = 10.0.0.115
port = 7788
}
on pig-db {
device = /dev/nb0
disk = /dev/sdc1
address = 10.0.0.114
port = 7788
}
}
resource drbd_db {
protocol = C
fsckcmd = /bin/true
disk {
disk-size = 1060290k
}
net {
sync-nice = -15 # if synchronization is high priority for you
sync-min = 10M
sync-max = 100M # maximal average syncer bandwidth
tl-size = 5000 # transfer log size, ensures strict write ordering
timeout = 60 # 0.1 seconds
connect-int = 10 # seconds
ping-int = 10 # seconds
sync-group = 2
}
on pig-app {
device = /dev/nb1
disk = /dev/rd/c0d0p3
address = 10.0.0.115
port = 7789
}
on pig-db {
device = /dev/nb1
disk = /dev/sdb1
address = 10.0.0.114
port = 7789
}
}
--
"Are the gods not just?" "Oh no, child.
What would become of us if they were?" (CSL)