3

I am studying up on HA Clusters using pacemaker and corosync. The Red Hat documentation treats LVM, HA-LVM and CLVM as separate topics.

I understand the added features and benefits of CLVM over HA-LVM. What I am not sure of is what HA-LVM is compared to just regular LVM?

Is it just a mater of how you use it? If you exclude the shared volume group from the volume_list in lvm.conf on each node to prevent the local system from activating the it and then use a pacemaker resource to manage the activation and deactivation of the shared volume group does that makes it HA-LVM. Or is there actually different code that constitutes HA-LVM.

When using clvm your actually installing additional packages to provide clvmd and dlm. With HA-LVM there does not appear to be any additional packages or directives you enable to claim you want HA-LVM mode. But the way the documentation treats it and uses the terminology I am a bit confused.

digitaladdictions
  • 1,505
  • 1
  • 12
  • 30

2 Answers2

1

LVM should only be used on a single system, if two nodes think they have exclusive access to an LVM volume corruption will occur.

HA-LVM allows for multiple nodes to read from a shared volume but assumes only one node can/should write - this is analogous to how Windows MSDTC clustering worked/works (not that up to speed with in today sorry) where a single MSCS node has rights to write.

CLVM allows all nodes to read or write at the same time, managing the file locking across all nodes.

So yes, it is very important how you use it as you say.

Chopper3
  • 101,299
  • 9
  • 108
  • 239
  • Thats not really what I am trying to ask. I know why one needs it. I am just confused if HA-LVM is its own version of LVM that adds additional features on top of LVM or if HA-LVM is more of a practice of administering LVM to achieve HA. Does using pacemaker to manage a volume group in the aforementioned way make it HA-LVM. Or is HA-LVM actual code that extends the functionality of LVM? Does the presence of volume_list in lvm.conf tell LVM to enable HA-LVM which otherwise is not enabled? Or is it always enabled. ect... – digitaladdictions Apr 27 '16 at 09:06
  • @Chopper3 Clvm allows only to synchronize the the lvm meta datata between all nodes in a cluster, clvm doesn't manage any read and write in the filesystem level on top of lvm, if you mean read and write of the application – c4f4t0r Feb 06 '19 at 12:49
0

LVM is just the way you define in /etc/lvm/lvm.conf. Set locking_type=1 and lvm2_lvmetad=0 1st one locks the handle on only one node. 2nd ensures lvm2's performance enhancement using cache disabled.

Also systemctl disable lvm2_lvmetad to ensure.

That's it. Now your LVM is HA-LVM