---
name: "ocf_heartbeat_Xen"
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_Xen"
---

# ocf\_heartbeat\_Xen(7)

Manages Xen unprivileged domains (DomUs)

## NAME

ocf\_heartbeat\_Xen - Manages Xen unprivileged domains (DomUs)

## SYNOPSIS

**Xen** \[start \| stop \| monitor \| migrate\_to \| migrate\_from \| meta-data \| validate-all\]

## DESCRIPTION

Resource Agent for the Xen Hypervisor. Manages Xen virtual machine instances by mapping cluster resource start and stop, to Xen create and shutdown, respectively.

A note on names

We will try to extract the name from the config file (the xmfile attribute). If you use a simple assignment statement, then you should be fine. Otherwise, if there's some python acrobacy involved such as dynamically assigning names depending on other variables, and we will try to detect this, then please set the name attribute. You should also do that if there is any chance of a pathological situation where a config file might be missing, for example if it resides on a shared storage. If all fails, we finally fall back to the instance id to preserve backward compatibility.

Para-virtualized guests can also be migrated by enabling the meta\_attribute allow-migrate.

This resource agent may be configured for *native migration* if available in the cluster manager. For Pacemaker, the *allow-migrate="true"* meta attribute enables native migration.

## SUPPORTED PARAMETERS

**xmfile**

Absolute path to the Xen control file, for this virtual machine.

(required, string, default "/etc/xen/vm/MyDomU")

**name**

Name of the virtual machine.

(optional, string, no default)

**shutdown\_timeout**

The Xen agent will first try an orderly shutdown using xl shutdown. Should this not succeed within this timeout, the agent will escalate to xl destroy, forcibly killing the node.

If this is not set, it will default to two-third of the stop action timeout.

Setting this value to 0 forces an immediate destroy.

(optional, string, no default)

**shutdown\_acpi**

Handle shutdown by simulating an ACPI power button event. Enable this to allow graceful shutdown for HVM domains without installed PV drivers.

(optional, boolean, default 0)

**allow\_mem\_management**

This parameter enables dynamic adjustment of memory for start and stop actions used for Dom0 and the DomUs. The default is to not adjust memory dynamically.

(optional, boolean, default 0)

**node\_ip\_attribute**

In case of a live migration, the system will default to using the IP address associated with the hostname via DNS or /etc/hosts.

This parameter allows you to specify a node attribute that will be queried instead for the target node, overriding the IP address. This allows you to use a dedicated network for live migration traffic to a specific node.

Warning: make very sure the IP address does point to the right node. Or else the live migration will end up somewhere else, greatly confusing the cluster and causing havoc.

(optional, string, no default)

**reserved\_Dom0\_memory**

In case memory management is used, this parameter defines the minimum amount of memory to be reserved for the dom0. The default minimum memory is 512MB.

(optional, string, default "512")

**autoset\_utilization\_cpu**

If set true, the agent will detect the number of domain's vCPUs from Xen, and put it into the CPU utilization of the resource when the monitor is executed. Before enabling make sure node utilization is also set (using NodeUtilization agent or manually) or the resource might not be able to start anywhere.

(optional, boolean, default false)

**autoset\_utilization\_hv\_memory**

If set true, the agent will detect the number of memory from Xen, and put it into the hv\_memory utilization of the resource when the monitor is executed. Before enabling make sure node utilization is also set (using NodeUtilization agent or manually) or the resource might not be able to start anywhere.

(optional, boolean, default false)

**monitor\_scripts**

To additionally monitor services within the unprivileged domain, add this parameter with a list of scripts to monitor.

(optional, string, no default)

## 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: 40s.

**migrate\_from**

Executes steps necessary for migrating the resource *away from* the node. Suggested minimum timeout: 120s.

**migrate\_to**

Executes steps necessary for migrating the resource *to* the node. Suggested minimum timeout: 120s.

**monitor**

Performs a detailed status check. Suggested minimum timeout: 30s. 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: 5s.

## EXAMPLE CRM SHELL

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

```
primitive p_Xen ocf:heartbeat:Xen \
  params \
    xmfile="/etc/xen/vm/MyDomU" \
  meta allow-migrate="true" \
  op monitor depth="0" timeout="30s" interval="10s"
```

## EXAMPLE PCS

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

```
pcs resource create p_Xen ocf:heartbeat:Xen \
  xmfile="/etc/xen/vm/MyDomU" \
  op monitor OCF_CHECK_LEVEL="0" timeout="30s" interval="10s"
```

## SEE ALSO

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

## AUTHOR

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