---
name: "ocf_heartbeat_ovsmonitor"
section: "7"
platform: "linux"
package: "resource-agents"
version: "1:4.16.0-3+deb13u2"
release: "Debian 13 (Trixie)"
platforms: ["linux"]
url: "https://new.carta.tech/ocf_heartbeat_ovsmonitor"
---

# ocf\_heartbeat\_ovsmonitor(7)

Monitors ovs bonding bonds

## NAME

ocf\_heartbeat\_ovsmonitor - Monitors ovs bonding bonds

## SYNOPSIS

**ovsmonitor** \[start \| stop \| status \| monitor \| meta-data \| validate-all\]

## DESCRIPTION

Monitor the vitality of a local ovs bond.

You may set up this RA as a clone resource to monitor the network bonds on different nodes, with the same bond name. This is not related to the IP address or the network on which a bond is configured. You may use this RA to move resources away from a node, which has a faulty bond or prevent moving resources to such a node. This gives you independent control of the resources, without involving cluster intercommunication. But it requires your nodes to have more than one network bond.

The resource configuration requires a monitor operation, because the monitor does the main part of the work. In addition to the resource configuration, you need to configure some location constraints, based on a CIB attribute value. The name of the attribute value is configured in the 'name' option of this RA.

Example constraint configuration using crmsh location loc\_connected\_node my\_resource\_grp rule ="rule\_loc\_connected\_node" -INF: ovsmonitor-bond-public eq 0

Example constraint configuration using pcs. Only allow 'my\_resource' to run on nodes where eth0 ethernet device is available. pcs constraint location my\_resource rule score=-INFINITY ovsmonitor-bond-public ne 1

The ethmonitor works in 3 different modes to test the bond vitality. 1. call ovs-appctl to see if at least one of the bonding's link status is up (if link is down -\> error) 2. call ovs-ofctl and watch the RX counter (if packages come around in a certain time -\> success) 3. return error

## SUPPORTED PARAMETERS

**bond**

The name of the network bond which should be monitored (e.g. bond-public).

(unique, required, string, no default)

**bridge**

The name of the ovs bridge that contains the bridge.

(unique, required, string, no default)

**name**

The name of the CIB attribute to set. This is the name to be used in the constraints. Defaults to "ovsmonitor-'bond\_name'".

(unique, optional, string, no default)

**multiplier**

Multiplier for the value of the CIB attriobute specified in parameter name.

(optional, integer, default 1)

**repeat\_count**

Specify how often the bond will be monitored, before the status is set to failed. You need to set the timeout of the monitoring operation to at least repeat\_count \* repeat\_interval

(optional, integer, default 5)

**repeat\_interval**

Specify how long to wait in seconds between the repeat\_counts.

(optional, integer, default 10)

**pktcnt\_timeout**

Timeout for the RX packet counter. Stop listening for packet counter changes after the given number of seconds.

(optional, integer, default 5)

**link\_status\_only**

Only report success based on link status. Do not perform RX counter related connectivity tests.

(optional, boolean, default false)

## SUPPORTED ACTIONS

This resource agent supports the following actions (operations):

**start**

Starts the resource. Suggested minimum timeout: 60s.

**stop**

Stops the resource. Suggested minimum timeout: 20s.

**status**

Performs a status check. Suggested minimum timeout: 60s. Suggested interval: 10s.

**monitor**

Performs a detailed status check. Suggested minimum timeout: 60s. Suggested interval: 10s.

**meta-data**

Retrieves resource agent metadata (internal use only). Suggested minimum timeout: 5s.

**validate-all**

Performs a validation of the resource configuration. Suggested minimum timeout: 20s.

## EXAMPLE CRM SHELL

The following is an example configuration for a ovsmonitor resource using the [**crm**(8)](/crm/8.md) shell:

```
primitive p_ovsmonitor ocf:heartbeat:ovsmonitor \
  params \
    bond=string \
    bridge=string \
  op monitor depth="0" timeout="60s" interval="10s"
```

## EXAMPLE PCS

The following is an example configuration for a ovsmonitor resource using [**pcs**(8)](/pcs/8.md)

```
pcs resource create p_ovsmonitor ocf:heartbeat:ovsmonitor \
  bond=string \
  bridge=string \
  op monitor OCF_CHECK_LEVEL="0" timeout="60s" interval="10s"
```

## SEE ALSO

**http://clusterlabs.org/**

## AUTHOR

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