Im about to setup a failover-setup for our Kannel service using hardbeat and DRBD. One machine is the primary one, when that one dies/goes down, it switches to the secondary.

Kannel is using a spool directory for temporary (track/DLR) files. In order to don't loose tracking data when the primary server goes down, the data is being synced by DRBD. But with DRBD it's not possible to mount the synced partition on both servers at the same time. Therefore I need to create a up-/down-script which (un)mount partitions, (re)starts Kannel etc to make kannel work in case of a switch. That is possible but also a potential risk when switching primary server (starting and stopping of Kannel could take some time sometimes).

Because once I've setup the installation described above, the system is handling a lot of SMS traffic and load, and its hard to change afterwards. So I'm investigating other options to achieve the same in order to make a stable and sustain decision.

Anyone has any alternative options?


PS. I know its possible for Kannel to save that tracking/dlr data in a database, but we're not able to use that because we're also using other kannel boxes/processes which don't have that database feature.


Not sure if this helps with your scenario but DRBD does work with dual-primary volumes if you use a cluster file system like GFS2 or something like that.

  • 1
    At the cost of ridiculous amounts of complexity and really bad performance and scalability. I wouldn't recommend it.
    – womble
    Jul 5 '12 at 13:47
  • @Womble: Me neither, it was meant more as an information that this could work if really, really necessary.
    – Sven
    Jul 5 '12 at 13:50
  • I thought it was important to make the situation clear, lest someone mistake your answer as some sort of strong endorsement.
    – womble
    Jul 5 '12 at 13:52

You're going to have to suck it up and wait for Kannel to shutdown when migrating. There's no reliable way to know when it's safe to start up Kannel on the other node before it's shutdown on the leaving node -- so there's no point flipping DRBD before Kannel's shut down anyway (and the time to flip from secondary to primary in DRBD is milliseconds).

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.