cluster / ha
23 operations.
GET /cluster/ha
proxmox.cluster.ha.$get()Directory index.
Returns an array of object.
GET /cluster/ha/groups
proxmox.cluster.ha.groups.$get()Get HA groups. (deprecated in favor of HA rules)
Returns an array of object.
POST /cluster/ha/groups
proxmox.cluster.ha.groups.$post()Create a new HA group. (deprecated in favor of HA rules)
Returns nothing.
| Parameter | Type | Required | Notes |
|---|---|---|---|
comment | string | Description. — ≤ 4096 chars | |
group | string | yes | The HA group identifier. — format pve-configid |
nodes | string | yes | List of cluster node names with optional priority. — format pve-ha-node-list |
nofailback | boolean | The CRM tries to run services on the node with the highest priority. If a node with higher priority comes online, the CRM migrates the service to that node. Enabling nofailback prevents that behavior. — default 0 | |
restricted | boolean | Resources bound to restricted groups may only run on nodes defined by the group. — default 0 | |
type | group | Group type. |
GET /cluster/ha/groups/{group}
proxmox.cluster.ha.groups.$(group).$get()Read ha group configuration. (deprecated in favor of HA rules)
Returns any.
| Parameter | Type | Required | Notes |
|---|---|---|---|
group | string | yes | The HA group identifier. — format pve-configid |
PUT /cluster/ha/groups/{group}
proxmox.cluster.ha.groups.$(group).$put()Update ha group configuration. (deprecated in favor of HA rules)
Returns nothing.
| Parameter | Type | Required | Notes |
|---|---|---|---|
comment | string | Description. — ≤ 4096 chars | |
delete | string | A list of settings you want to delete. — format pve-configid-list, ≤ 4096 chars | |
digest | string | Prevent changes if current configuration file has a different digest. This can be used to prevent concurrent modifications. — ≤ 64 chars | |
group | string | yes | The HA group identifier. — format pve-configid |
nodes | string | List of cluster node names with optional priority. — format pve-ha-node-list | |
nofailback | boolean | The CRM tries to run services on the node with the highest priority. If a node with higher priority comes online, the CRM migrates the service to that node. Enabling nofailback prevents that behavior. — default 0 | |
restricted | boolean | Resources bound to restricted groups may only run on nodes defined by the group. — default 0 |
DELETE /cluster/ha/groups/{group}
proxmox.cluster.ha.groups.$(group).$delete()Delete ha group configuration. (deprecated in favor of HA rules)
Returns nothing.
| Parameter | Type | Required | Notes |
|---|---|---|---|
group | string | yes | The HA group identifier. — format pve-configid |
GET /cluster/ha/resources
proxmox.cluster.ha.resources.$get()List HA resources.
Returns an array of object.
| Parameter | Type | Required | Notes |
|---|---|---|---|
type | ct | vm | Only list resources of specific type |
POST /cluster/ha/resources
proxmox.cluster.ha.resources.$post()Create a new HA resource.
Returns nothing.
| Parameter | Type | Required | Notes |
|---|---|---|---|
auto-rebalance | boolean | HA resource may be migrated during automatic rebalancing — default 1 | |
comment | string | Description. — ≤ 4096 chars | |
failback | boolean | Automatically migrate HA resource to the node with the highest priority according to their node affinity rules, if a node with a higher priority than the current node comes online. — default 1 | |
group | string | The HA group identifier. — format pve-configid | |
max_relocate | number | Maximal number of resource relocate tries when a resource fails to start. — min 0, default 1 | |
max_restart | number | Maximal number of tries to restart the resource on a node after its start failed. When reached, the HA manager will try to relocate the resource to an eligible node. — min 0, default 1 | |
sid | string | yes | HA resource ID. This consists of a resource type followed by a resource specific name, separated with colon (example: vm:100 / ct:100). For virtual machines and containers, you can simply use the VM or CT id as a shortcut (example: 100). — format pve-ha-resource-or-vm-id |
state | started | stopped | enabled | disabled | ignored | Requested resource state. — default "started" | |
type | ct | vm | Resource type. |
GET /cluster/ha/resources/{sid}
proxmox.cluster.ha.resources.$(sid).$get()Read resource configuration.
Returns object.
| Parameter | Type | Required | Notes |
|---|---|---|---|
sid | string | yes | HA resource ID. This consists of a resource type followed by a resource specific name, separated with colon (example: vm:100 / ct:100). For virtual machines and containers, you can simply use the VM or CT id as a shortcut (example: 100). — format pve-ha-resource-or-vm-id |
PUT /cluster/ha/resources/{sid}
proxmox.cluster.ha.resources.$(sid).$put()Update resource configuration.
Returns nothing.
| Parameter | Type | Required | Notes |
|---|---|---|---|
auto-rebalance | boolean | HA resource may be migrated during automatic rebalancing — default 1 | |
comment | string | Description. — ≤ 4096 chars | |
delete | string | A list of settings you want to delete. — format pve-configid-list, ≤ 4096 chars | |
digest | string | Prevent changes if current configuration file has a different digest. This can be used to prevent concurrent modifications. — ≤ 64 chars | |
failback | boolean | Automatically migrate HA resource to the node with the highest priority according to their node affinity rules, if a node with a higher priority than the current node comes online. — default 1 | |
group | string | The HA group identifier. — format pve-configid | |
max_relocate | number | Maximal number of resource relocate tries when a resource fails to start. — min 0, default 1 | |
max_restart | number | Maximal number of tries to restart the resource on a node after its start failed. When reached, the HA manager will try to relocate the resource to an eligible node. — min 0, default 1 | |
sid | string | yes | HA resource ID. This consists of a resource type followed by a resource specific name, separated with colon (example: vm:100 / ct:100). For virtual machines and containers, you can simply use the VM or CT id as a shortcut (example: 100). — format pve-ha-resource-or-vm-id |
state | started | stopped | enabled | disabled | ignored | Requested resource state. — default "started" |
DELETE /cluster/ha/resources/{sid}
proxmox.cluster.ha.resources.$(sid).$delete()Delete resource configuration.
Returns nothing.
| Parameter | Type | Required | Notes |
|---|---|---|---|
purge | boolean | Remove this resource from rules that reference it, deleting the rule if this resource is the only resource in the rule — default 1 | |
sid | string | yes | HA resource ID. This consists of a resource type followed by a resource specific name, separated with colon (example: vm:100 / ct:100). For virtual machines and containers, you can simply use the VM or CT id as a shortcut (example: 100). — format pve-ha-resource-or-vm-id |
POST /cluster/ha/resources/{sid}/migrate
proxmox.cluster.ha.resources.$(sid).migrate.$post()Request resource migration (online) to another node.
Returns object.
| Parameter | Type | Required | Notes |
|---|---|---|---|
node | string | yes | Target node. — format pve-node |
sid | string | yes | HA resource ID. This consists of a resource type followed by a resource specific name, separated with colon (example: vm:100 / ct:100). For virtual machines and containers, you can simply use the VM or CT id as a shortcut (example: 100). — format pve-ha-resource-or-vm-id |
POST /cluster/ha/resources/{sid}/relocate
proxmox.cluster.ha.resources.$(sid).relocate.$post()Request resource relocation to another node. This stops the service on the old node, and restarts it on the target node.
Returns object.
| Parameter | Type | Required | Notes |
|---|---|---|---|
node | string | yes | Target node. — format pve-node |
sid | string | yes | HA resource ID. This consists of a resource type followed by a resource specific name, separated with colon (example: vm:100 / ct:100). For virtual machines and containers, you can simply use the VM or CT id as a shortcut (example: 100). — format pve-ha-resource-or-vm-id |
GET /cluster/ha/rules
proxmox.cluster.ha.rules.$get()Get HA rules.
Returns an array of object.
| Parameter | Type | Required | Notes |
|---|---|---|---|
resource | string | Limit the returned list to rules affecting the specified resource. | |
type | node-affinity | resource-affinity | Limit the returned list to the specified rule type. |
POST /cluster/ha/rules
proxmox.cluster.ha.rules.$post()Create HA rule.
Returns nothing.
GET /cluster/ha/rules/{rule}
proxmox.cluster.ha.rules.$(rule).$get()Read HA rule.
Returns object.
| Parameter | Type | Required | Notes |
|---|---|---|---|
rule | string | yes | HA rule identifier. — format pve-configid |
PUT /cluster/ha/rules/{rule}
proxmox.cluster.ha.rules.$(rule).$put()Update HA rule.
Returns nothing.
DELETE /cluster/ha/rules/{rule}
proxmox.cluster.ha.rules.$(rule).$delete()Delete HA rule.
Returns nothing.
| Parameter | Type | Required | Notes |
|---|---|---|---|
rule | string | yes | HA rule identifier. — format pve-configid |
GET /cluster/ha/status
proxmox.cluster.ha.status.$get()Directory index.
Returns an array of object.
POST /cluster/ha/status/arm-ha
proxmox.cluster.ha.status["arm-ha"].$post()Request re-arming the HA stack after it was disarmed.
Returns nothing.
GET /cluster/ha/status/current
proxmox.cluster.ha.status.current.$get()Get HA manager status.
Returns an array of object.
POST /cluster/ha/status/disarm-ha
proxmox.cluster.ha.status["disarm-ha"].$post()Request disarming the HA stack, releasing all watchdogs cluster-wide.
Returns nothing.
| Parameter | Type | Required | Notes |
|---|---|---|---|
resource-mode | freeze | ignore | yes | Controls how HA managed resources are handled while disarmed. The current state of resources is not affected. 'freeze': new commands and state changes are not applied. 'ignore': resources are removed from HA tracking and can be managed as if they were not HA managed. |
GET /cluster/ha/status/manager_status
proxmox.cluster.ha.status.manager_status.$get()Get full HA manager status, including LRM status.
Returns object.