We have two physical servers and we want to use KVM to create some VMs.

One of the VMs will contain an Oracle 12 database and we want to make it highly available.

We thought of using DRBD to synchronize the VM to the second server and combine all using Pacemaker/Corosync to have HA.

The question is : is it a good idea to synchronize an Oracle database using DRBD? I didn't find any relevant article on the net talking about this, all I found is about Mysql not Oracle.

I am not an expert of Oracle, but my concern is about the block replication and oracle databases.



As long as you're using DRBD in synchronous mode, protocol C (default), it should be safe to use. You would end up with a "crash consistent copy" of the VM on the Secondary node in the event of a host system crashing or otherwise abruptly failing over the VM to the peer. Same as you would on an unclustered server that crashed and was rebooted.

That said, you should definitely still test everything you're concerned about before moving to production, and come back to StackExchange if anything funny happens.

  • I know noting about DRBD, but Oracle writes out checkpoint information and updates control files every 3 seconds or less. Would those parms you mention for DRBD handle that? – Mark Stewart Mar 22 '19 at 14:34
  • 1
    Sure. DRBD doesn't care what you're writing to it. It simply replicates anything that hits the block device. There are considerations though: when you're replicating synchronously over a network, your network latency becomes your replicated disk's write latency. For that reason, it's beneficial to replicate fast storage (SSD/NVMe) over low latency links. – Matt Kereczman Mar 25 '19 at 14:11

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.