OCF_HEARTBEAT_LVM-A(7)

πŸ’– OCF_HEARTBEAT_LVM-A(7) β€” the LVM-activate glow-up πŸŽ€

okay bestie, sit down, because this is the OCF_HEARTBEAT_LVM-A(7) page and it's actually kind of a big deal β€” it's all about ocf_heartbeat_LVM-activate, an agent that activates and deactivates logical volumes. yes, LVM. yes, in a cluster. yes, you're gonna slay it. ✨


🌸 NAME 🌸

ocf_heartbeat_LVM-activate β€” literally the agent that activates/deactivates logical volumes. that's the whole vibe. πŸ’…


πŸ¦‹ SYNOPSIS πŸ¦‹

LVM-activate [start | stop | monitor | meta-data | validate-all]

five actions, pick your fighter, iykyk 🫢


✨ DESCRIPTION ✨

so this agent handles all the LVM activation/deactivation work for a given volume group. it's giving "backstage crew for your VG" energy, honestly.

it supports the following modes, and the ~vibes~ are controlled by the vg_access_mode parameter:

  • lvmlockd
  • system_id
  • clvmd
  • tagging

Notes, and please read these, bestie, they're not decoration: πŸ‘‘

  1. There are two possible configuration combinations: lvmlockd+LVM-activate and clvm+LVM-activate. However, it is not possible to use both at the same time! pick one. not both. i'm serious. πŸ’€
  2. Put all "lvmlockd"/"clvmd" volume groups into auto management by the agent if using the cluster to manage at least one of them. If you manage some manually, the stop action of the lvmlockd agent may fail and the node may get fenced, because some DLM lockspaces might be in use and cannot be closed automatically. that is a whole situation. don't create that situation. 😭
  3. The autoactivation property of volume group will be disabled when vg_access_mode is set to system_id.

Option: OCF_CHECK_LEVEL πŸ”

the standard monitor operation of depth 0 checks if the VG or LV is valid. if you want deeper tests (main character monitor energy), set OCF_CHECK_LEVEL to 10:

  • 10: read first 1 byte of the underlying device (raw read)

ngl, if there are many underlying devs in VG, it will only read one of the devs. This is not perfect solution for detecting underlying devices livable. e.g. iscsi SAN IO timeout will return EIO, and it makes monitor failed. so like… it's a vibe check, not a full physical. πŸ™ˆ


πŸŽ€ SUPPORTED PARAMETERS πŸŽ€

  • vgname β€” The volume group name. (required, string, no default) the whole point, honestly.
  • lvname β€” If set, only the specified LV will be activated. (optional, string, no default) leave it empty and the agent's like "all of them? okay bestie πŸ’…"
  • vg_access_mode β€” This option decides which solution will be used to protect the volume group in cluster environment. Optional solutions are: lvmlockd, clvmd, system_id and tagging. (required, string, no default) required required, no default, you must choose. πŸ‘‘
  • activation_mode β€” The activation mode decides the visibility of logical volumes in the cluster. There are two different modes: "shared" for cluster filesystem and "exclusive" for local filesystem. With "shared", an LV can be activated concurrently from multiple nodes. With "exclusive", an LV can be activated by one node at a time. This option only has effect on "lvmlockd"/"clvmd" vg_access_mode. For "system_id" and "tagging", they always mean exclusive activation. (optional, string, default "exclusive") so if you picked those two modes, don't come crying to activation_mode, it's not even listening. 🫢
  • tag β€” The tag used for tagging activation mode. (optional, string, default "pacemaker") cute little label, iconic. 🏷️
  • partial_activation β€” If set, the volume group will be activated partially even with some physical volumes missing. It helps to set to true when using mirrored logical volumes. (optional, string, default "false") missing PVs but still showing up to the function? that's the energy. ✨
  • degraded_activation β€” Activate RAID LVs using the "degraded" activation mode. This allows RAID LVs to be activated with missing PVs if all data can be provided with RAID redundancy. The RAID level determines the number of PVs that are required for degraded activation to succeed. If fewer PVs are available, then degraded activation will fail. Also enable majority_pvs. (optional, string, default "false") so close bestie, but the math has to math. πŸ”₯
  • majority_pvs β€” If set, the VG system ID can be reassigned to a new host if a majority of PVs in the VG are present. Otherwise, VG failover with system ID will fail when the VG is missing PVs. Also enable degraded_activation when RAID LVs are used. (optional, string, default "false") majority rules, that's democracy, periodt. πŸ—³οΈ

🌈 SUPPORTED ACTIONS 🌈

this resource agent supports the following actions (operations). and yes, the suggested minimum timeouts are literally non-negotiable, they're in the data:

  • start β€” Starts the resource. Suggested minimum timeout: 90s.
  • stop β€” Stops the resource. Suggested minimum timeout: 90s.
  • monitor β€” Performs a detailed status check. Suggested minimum timeout: 90s. Suggested interval: 30s.
  • meta-data β€” Retrieves resource agent metadata (internal use only). Suggested minimum timeout: 10s. internal use only, don't touch, iykyk πŸ™ˆ
  • validate-all β€” Performs a validation of the resource configuration. Suggested minimum timeout: 20s.

⭐ EXAMPLE CRM SHELL ⭐

The following is an example configuration for a LVM-activate resource using the crm(8) shell:

primitive p_LVM-activate ocf:heartbeat:LVM-activate \
  params \
    vgname=string \
    vg_access_mode=string \
  op monitor timeout="90s" interval="30s" depth="0"

copy it, paste it, feel gorgeous 🫢


🧚 EXAMPLE PCS 🧚

The following is an example configuration for a LVM-activate resource using pcs(8)

pcs resource create p_LVM-activate ocf:heartbeat:LVM-activate \
  vgname=string \
  vg_access_mode=string \
  op monitor timeout="90s" interval="30s" OCF_CHECK_LEVEL="0"

two whole examples, we ate. πŸ’…


πŸ”₯ SEE ALSO πŸ”₯


πŸ‘‘ AUTHOR πŸ‘‘

ClusterLabs contributors (see the resource agent source for information about individual authors)

take a bow, contributors, you're collectively the main character πŸ’œ


okay and finally, the sign-off, because we always credit the source: this gorgeous little manpage comes from resource-agents UNKNOWN and it's dated 10/01/2026. now go activate some logical volumes, bestie β€” you're literally built for this βœ¨πŸ’–πŸŽ€πŸ¦‹πŸŒΈ

πŸ“¦ where this page comes from