DEFAULT

access

scopable

True

required

False

provisioning

False

default

rwo

inheritance

head

scope order

specific > generic

candidates

rwo | roo | rwx | rox

depends

kind in vol

The access mode of the volume. rwo is Read Write Once, roo is Read Only Once, rwx is Read Write Many, rox is Read Only Many. rox and rwx modes are served by flex volume services.

app

scopable

False

required

False

provisioning

False

default

default

inheritance

leaf > head

scope order

specific > generic

Used to identify who is responsible for this service, who is billable and provides a most useful filtering key. Better keep it a short code.

aws

scopable

True

required

False

provisioning

False

default

None

inheritance

leaf > head

scope order

specific > generic

The aws cli executable fullpath. If not provided, aws is expected to be found in the PATH.

aws_profile

scopable

True

required

False

provisioning

False

default

default

inheritance

leaf > head

scope order

specific > generic

The profile to use with the AWS api.

blocking_post_provision

scopable

True

required

False

provisioning

False

default

None

inheritance

leaf > head

scope order

specific > generic

A command or script to execute after the resource provision action. Errors interrupt the action.

blocking_post_run

scopable

True

required

False

provisioning

False

default

None

inheritance

leaf > head

scope order

specific > generic

A command or script to execute after the resource run action. Errors interrupt the action.

blocking_post_start

scopable

True

required

False

provisioning

False

default

None

inheritance

leaf > head

scope order

specific > generic

A command or script to execute after the resource start action. Errors interrupt the action.

blocking_post_startstandby

scopable

True

required

False

provisioning

False

default

None

inheritance

leaf > head

scope order

specific > generic

A command or script to execute after the resource startstandby action. Errors interrupt the action.

blocking_post_stop

scopable

True

required

False

provisioning

False

default

None

inheritance

leaf > head

scope order

specific > generic

A command or script to execute after the resource stop action. Errors interrupt the action.

blocking_post_sync_drp

scopable

True

required

False

provisioning

False

default

None

inheritance

leaf > head

scope order

specific > generic

A command or script to execute after the resource sync_drp action. Errors interrupt the action.

blocking_post_sync_nodes

scopable

True

required

False

provisioning

False

default

None

inheritance

leaf > head

scope order

specific > generic

A command or script to execute after the resource sync_nodes action. Errors interrupt the action.

blocking_post_sync_restore

scopable

True

required

False

provisioning

False

default

None

inheritance

leaf > head

scope order

specific > generic

A command or script to execute after the resource sync_restore action. Errors interrupt the action.

blocking_post_sync_resync

scopable

True

required

False

provisioning

False

default

None

inheritance

leaf > head

scope order

specific > generic

A command or script to execute after the resource sync_resync action. Errors interrupt the action.

blocking_post_sync_update

scopable

True

required

False

provisioning

False

default

None

inheritance

leaf > head

scope order

specific > generic

A command or script to execute after the resource sync_update action. Errors interrupt the action.

blocking_post_unprovision

scopable

True

required

False

provisioning

False

default

None

inheritance

leaf > head

scope order

specific > generic

A command or script to execute after the resource unprovision action. Errors interrupt the action.

blocking_pre_provision

scopable

True

required

False

provisioning

False

default

None

inheritance

leaf > head

scope order

specific > generic

A command or script to execute before the resource provision action. Errors interrupt the action.

blocking_pre_run

scopable

True

required

False

provisioning

False

default

None

inheritance

leaf > head

scope order

specific > generic

A command or script to execute before the resource run action. Errors interrupt the action.

blocking_pre_start

scopable

True

required

False

provisioning

False

default

None

inheritance

leaf > head

scope order

specific > generic

A command or script to execute before the resource start action. Errors interrupt the action.

blocking_pre_startstandby

scopable

True

required

False

provisioning

False

default

None

inheritance

leaf > head

scope order

specific > generic

A command or script to execute before the resource startstandby action. Errors interrupt the action.

blocking_pre_stop

scopable

True

required

False

provisioning

False

default

None

inheritance

leaf > head

scope order

specific > generic

A command or script to execute before the resource stop action. Errors interrupt the action.

blocking_pre_sync_drp

scopable

True

required

False

provisioning

False

default

None

inheritance

leaf > head

scope order

specific > generic

A command or script to execute before the resource sync_drp action. Errors interrupt the action.

blocking_pre_sync_nodes

scopable

True

required

False

provisioning

False

default

None

inheritance

leaf > head

scope order

specific > generic

A command or script to execute before the resource sync_nodes action. Errors interrupt the action.

blocking_pre_sync_restore

scopable

True

required

False

provisioning

False

default

None

inheritance

leaf > head

scope order

specific > generic

A command or script to execute before the resource sync_restore action. Errors interrupt the action.

blocking_pre_sync_resync

scopable

True

required

False

provisioning

False

default

None

inheritance

leaf > head

scope order

specific > generic

A command or script to execute before the resource sync_resync action. Errors interrupt the action.

blocking_pre_sync_update

scopable

True

required

False

provisioning

False

default

None

inheritance

leaf > head

scope order

specific > generic

A command or script to execute before the resource sync_update action. Errors interrupt the action.

blocking_pre_unprovision

scopable

True

required

False

provisioning

False

default

None

inheritance

leaf > head

scope order

specific > generic

A command or script to execute before the resource unprovision action. Errors interrupt the action.

bwlimit

scopable

False

required

False

provisioning

False

default

None

inheritance

leaf > head

scope order

specific > generic

convert

speed_kps

Bandwidth limit in KB applied to all rsync transfers. Leave empty to enforce no limit.

children

scopable

True

required

False

provisioning

False

default

inheritance

head

scope order

specific > generic

convert

list_lower

List of services that must be avail down before allowing this service to be stopped by the daemon monitor. Whitespace separated.

comment

scopable

False

required

False

provisioning

False

default

inheritance

leaf > head

scope order

specific > generic

Helps users understand the role of the service and resources, which is nice to on-call support people having to operate on a service they are not usually responsible for.

comp_schedule

scopable

True

required

False

provisioning

False

default

~00:00-06:00

inheritance

leaf > head

scope order

specific > generic

The service compliance run schedule. See usr/share/doc/schedule for the schedule syntax.

constraints

scopable

True

required

False

provisioning

False

default

None

inheritance

head

scope order

specific > generic

depends

orchestrate in ha

An expression evaluating as a boolean, constraining the service instance placement by the daemon monitor to nodes with the constraints evaluated as True.

The constraints are not honored by manual start operations. The constraints value is embedded in the json status.

Supported comparison operators are ==, !=, >, >=, <=, in (e1, e2), in [e1, e2].

Supported arithmetic operators are *, +, -, /, **, //, %.

Supported binary operators are &, |, ^.

The negation operator is not.

Supported boolean operators are and, or.

References are allowed.

Strings, and references evaluating as strings, containing dots must be quoted.

container_data_dir

scopable

True

required

False

provisioning

False

default

None

inheritance

leaf > head

scope order

specific > generic

If the service has lxc, docker or podman-type container resources and this keyword is set, the service configures a service-private containers data store. This setup is allows stateful service relocalization.

create_pg

scopable

True

required

False

provisioning

False

default

True

inheritance

leaf > head

scope order

specific > generic

candidates

True | False

convert

boolean

Use process containers when possible. Containers allow capping memory, swap and cpu usage per service. Lxc containers are naturally containerized, so skip containerization of their startapp.

disable

scopable

True

required

False

provisioning

False

default

False

inheritance

leaf

scope order

specific > generic

candidates

True | False

convert

boolean

A disabled resource will be ignored on service startup and shutdown. Its status is always reported n/a.

Set in DEFAULT, the whole service is disabled. A disabled service does not honor start and stop actions. These actions immediately return success.

om <path> disable only sets DEFAULT.disable. As resources disabled state is not changed, om <path> enable does not enable disabled resources.

docker_daemon_args

scopable

True

required

False

provisioning

False

default

[]

inheritance

leaf > head

scope order

specific > generic

convert

shlex

If the service has docker-type container resources, the service handles the startup of a private docker daemon. OpenSVC sets the socket and data dir parameters. Admins can set extra parameters using this keyword. For example, it can be useful to set the –ip parameter for a docker registry service.

docker_daemon_private

scopable

True

required

False

provisioning

False

default

<true if container_data_dir is set, else false>

inheritance

leaf > head

scope order

specific > generic

convert

boolean

If set to false, this service will use the system’s shared docker daemon instance. This is parameter is forced to false on non-Linux systems.

docker_exe

scopable

True

required

False

provisioning

False

default

None

inheritance

leaf > head

scope order

specific > generic

If you have multiple docker versions installed and want the service to stick to a version whatever the PATH definition, you should set this parameter to the full path to the docker executable.

dockerd_exe

scopable

True

required

False

provisioning

False

default

None

inheritance

leaf > head

scope order

specific > generic

If you have multiple docker versions installed and want the service to stick to a version whatever the PATH definition, you should set this parameter to the full path to the docker daemon executable.

drp_flex_primary

scopable

True

required

False

provisioning

False

default

<first node of the drpnodes parameter>

inheritance

head

scope order

specific > generic

depends

topology in [‘flex’]

convert

lower

The drpnode in charge of syncing the other drpnodes. –cluster actions on the drp_flex_primary are executed on all drpnodes (ie, not pri nodes).

drpnode

scopable

True

required

False

provisioning

False

default

inheritance

head

scope order

specific > generic

convert

lower

The backup node where the service is activated in a DRP situation. This node is also a data synchronization target for sync resources.

drpnodes

scopable

True

required

False

provisioning

False

default

inheritance

head

scope order

specific > generic

convert

list_lower

Alternate backup nodes, where the service could be activated in a DRP situation if the ‘drpnode’ is not available. These nodes are also data synchronization targets for sync resources.

encap

scopable

True

required

False

provisioning

False

default

False

inheritance

leaf > head

scope order

specific > generic

candidates

True | False

convert

boolean

Set to true to ignore this resource in the nodes context and consider it in the encapnodes context. The resource is thus handled by the agents deployed in the service containers.

encapnodes

scopable

False

required

False

provisioning

False

default

inheritance

head

scope order

specific > generic

convert

list_lower

The list of containers handled by this service and with an OpenSVC agent installed to handle the encapsulated resources. With this parameter set, parameters can be scoped with the @encapnodes suffix.

env

scopable

False

required

False

provisioning

False

default

<same as node env>

inheritance

head

scope order

specific > generic

candidates

CERT | DEV | DRP | FOR | INT | MUS | POC | PRA | PRD | PRJ | PPR | PPRD | QUAL | RCT | REC | STG | TMP | TST | UAT

A non-PRD service can not be brought up on a PRD node, but a PRD service can be startup on a non-PRD node (in a DRP situation). The default value is the node env.

flex_cpu_high_threshold

scopable

False

required

False

provisioning

False

default

100

inheritance

head

scope order

specific > generic

depends

topology in [‘flex’]

convert

integer

Cluster-wide load average above which flex new service instances will be started.

flex_cpu_low_threshold

scopable

False

required

False

provisioning

False

default

0

inheritance

head

scope order

specific > generic

depends

topology in [‘flex’]

convert

integer

Cluster-wide load average below which flex service instances will be stopped.

flex_max

scopable

False

required

False

provisioning

False

default

<number of svc nodes>

inheritance

head

scope order

specific > generic

depends

topology in [‘flex’]

convert

integer

Maximum number of up instances in the cluster. Above this number the aggregated service status is degraded to warn. 0 means unlimited.

flex_min

scopable

False

required

False

provisioning

False

default

1

inheritance

head

scope order

specific > generic

depends

topology in [‘flex’]

convert

integer

Minimum number of up instances in the cluster. Below this number the aggregated service status is degraded to warn..

flex_primary

scopable

True

required

False

provisioning

False

default

<first node of the nodes parameter>

inheritance

head

scope order

specific > generic

depends

topology in [‘flex’]

convert

lower

The node in charge of syncing the other nodes. –cluster actions on the flex_primary are executed on all peer nodes (ie, not drpnodes).

flex_target

scopable

False

required

False

provisioning

False

default

<the value of flex_min>

inheritance

head

scope order

specific > generic

depends

topology in [‘flex’]

convert

integer

Optimal number of up instances in the cluster. The value must be between flex_min and flex_max. If orchestrate=ha, the monitor ensures the flex_target is met.

hard_affinity

scopable

True

required

False

provisioning

False

default

set()

inheritance

head

scope order

specific > generic

convert

set

A whitespace separated list of services that must be started on the node to allow the monitor to start this service.

hard_anti_affinity

scopable

True

required

False

provisioning

False

default

set()

inheritance

head

scope order

specific > generic

convert

set

A whitespace separated list of services that must not be started on the node to allow the monitor to start this service.

id

scopable

False

required

False

provisioning

False

default

<random uuid>

inheritance

head

scope order

specific > generic

A RFC 4122 random uuid generated by the agent. To use as reference in resources definitions instead of the service name, so the service can be renamed without affecting the resources.

lock_timeout

scopable

False

required

False

provisioning

False

default

60s

inheritance

leaf > head

scope order

specific > generic

convert

duration

A duration expression, like 1m30s. The maximum wait time for the action lock acquire. The –waitlock option overrides this parameter.

monitor

scopable

True

required

False

provisioning

False

default

False

inheritance

leaf > head

scope order

specific > generic

candidates

True | False

convert

boolean

A down monitored resource will trigger a node suicide if the monitor thinks it should be up and the resource can not be restarted.

monitor_action

scopable

True

required

False

provisioning

False

default

None

inheritance

leaf > head

scope order

specific > generic

candidates

reboot | crash | freezestop | switch

The action to take when a monitored resource is not up nor standby up, and if the resource restart procedure has failed.

monitor_schedule

scopable

True

required

False

provisioning

False

default

None

inheritance

leaf > head

scope order

specific > generic

The service resource monitor schedule. See usr/share/doc/schedule for the schedule syntax.

no_preempt_abort

scopable

True

required

False

provisioning

False

default

False

inheritance

leaf > head

scope order

specific > generic

candidates

True | False

convert

boolean

If set to true, OpenSVC will preempt scsi reservation with a preempt command instead of a preempt and and abort. Some scsi target implementations do not support this last mode (esx). If set to false or not set, no_preempt_abort can be activated on a per-resource basis.

nodes

scopable

True

required

False

provisioning

False

default

<hostname of the current node>

inheritance

head

scope order

specific > generic

convert

nodes_selector

A node selector expression specifying the list of cluster nodes hosting service instances.

optional

scopable

True

required

False

provisioning

False

default

true for tasks, syncs and resources tagged ‘noaction’, else false

inheritance

leaf > head

scope order

specific > generic

convert

tristate

Action failures on optional resources are logged but do not stop the action sequence. Also the optional resource status is not aggregated to the instance ‘availstatus’, but aggregated to the ‘overallstatus’. Resource tagged noaction and sync resources are automatically considered optional. Useful for resources like dump filesystems for example.

orchestrate

scopable

True

required

False

provisioning

False

default

no

inheritance

head

scope order

specific > generic

candidates

ha | start | no

convert

string

If set to no, disable service orchestration by the OpenSVC daemon monitor, including service start on boot. If set to start failover services won’t failover automatically, though the service instance on the natural placement leader is started if another instance is not already up. Flex services won’t restart the flex_target number of up instances. Resource restart is still active whatever the orchestrate value.

parents

scopable

True

required

False

provisioning

False

default

inheritance

head

scope order

specific > generic

convert

list_lower

List of services or instances expressed as <path>[@<nodename>] that must be avail up before allowing this service to be started by the daemon monitor. Whitespace separated.

pg_blkio_weight

scopable

True

required

False

provisioning

False

default

None

inheritance

leaf

scope order

specific > generic

depends

create_pg in [True]

convert

integer

Block IO relative weight. Value: between 10 and 1000. Kernel default: 1000.

pg_cpu_quota

scopable

True

required

False

provisioning

False

default

None

inheritance

leaf

scope order

specific > generic

depends

create_pg in [True]

The percent ratio of one core to allocate to the process group if % is specified, else the absolute value to set in the process group parameter. For example, on Linux cgroups, -1 means unlimited, and a positive absolute value means the number of microseconds to allocate each period. 50%@all means 50% of all cores, and 50%@2 means 50% of two cores.

pg_cpu_shares

scopable

True

required

False

provisioning

False

default

None

inheritance

leaf

scope order

specific > generic

depends

create_pg in [True]

convert

integer

Kernel default value is used, which usually is 1024 shares. In a cpu-bound situation, ensure the service does not use more than its share of cpu ressource. The actual percentile depends on shares allowed to other services.

pg_cpus

scopable

True

required

False

provisioning

False

default

None

inheritance

leaf

scope order

specific > generic

depends

create_pg in [True]

Allow service process to bind only the specified cpus. Cpus are specified as list or range : 0,1,2 or 0-2

pg_mem_limit

scopable

True

required

False

provisioning

False

default

None

inheritance

leaf

scope order

specific > generic

depends

create_pg in [True]

convert

size

Ensures the service does not use more than specified memory (in bytes). The Out-Of-Memory killer get triggered in case of tresspassing.

pg_mem_oom_control

scopable

True

required

False

provisioning

False

default

None

inheritance

leaf

scope order

specific > generic

depends

create_pg in [True]

convert

integer

A flag (0 or 1) that enables or disables the Out of Memory killer for a cgroup. If enabled (0), tasks that attempt to consume more memory than they are allowed are immediately killed by the OOM killer. The OOM killer is enabled by default in every cgroup using the memory subsystem; to disable it, write 1.

pg_mem_swappiness

scopable

True

required

False

provisioning

False

default

None

inheritance

leaf

scope order

specific > generic

depends

create_pg in [True]

convert

integer

Set a swappiness value for the process group.

pg_mems

scopable

True

required

False

provisioning

False

default

None

inheritance

leaf

scope order

specific > generic

depends

create_pg in [True]

Allow service process to bind only the specified memory nodes. Memory nodes are specified as list or range : 0,1,2 or 0-2

pg_vmem_limit

scopable

True

required

False

provisioning

False

default

None

inheritance

leaf

scope order

specific > generic

depends

create_pg in [True]

convert

size

Ensures the service does not use more than specified memory+swap (in bytes). The Out-Of-Memory killer get triggered in case of tresspassing. The specified value must be greater than pg_mem_limit.

placement

scopable

False

required

False

provisioning

False

default

nodes order

inheritance

head

scope order

specific > generic

candidates

none | nodes order | load avg | shift | spread | score

Set a service instances placement policy:

  • none no placement policy. a policy for dummy, observe-only, services.

  • nodes order the left-most available node is allowed to start a service instance when necessary.

  • load avg the least loaded node takes precedences.

  • shift shift the nodes order ranking by the service prefix converter to an integer.

  • spread a spread policy tends to perfect leveling with many services.

  • score the highest scoring node takes precedence (the score is a composite indice of load, mem and swap).

pool

scopable

True

required

False

provisioning

False

default

None

inheritance

head

scope order

specific > generic

depends

kind in vol

The name of the pool this volume was allocated from.

post_provision

scopable

True

required

False

provisioning

False

default

None

inheritance

leaf > head

scope order

specific > generic

A command or script to execute after the resource provision action. Errors do not interrupt the action.

post_run

scopable

True

required

False

provisioning

False

default

None

inheritance

leaf > head

scope order

specific > generic

A command or script to execute after the resource run action. Errors do not interrupt the action.

post_start

scopable

True

required

False

provisioning

False

default

None

inheritance

leaf > head

scope order

specific > generic

A command or script to execute after the resource start action. Errors do not interrupt the action.

post_startstandby

scopable

True

required

False

provisioning

False

default

None

inheritance

leaf > head

scope order

specific > generic

A command or script to execute after the resource startstandby action. Errors do not interrupt the action.

post_stop

scopable

True

required

False

provisioning

False

default

None

inheritance

leaf > head

scope order

specific > generic

A command or script to execute after the resource stop action. Errors do not interrupt the action.

post_sync_drp

scopable

True

required

False

provisioning

False

default

None

inheritance

leaf > head

scope order

specific > generic

A command or script to execute after the resource sync_drp action. Errors do not interrupt the action.

post_sync_nodes

scopable

True

required

False

provisioning

False

default

None

inheritance

leaf > head

scope order

specific > generic

A command or script to execute after the resource sync_nodes action. Errors do not interrupt the action.

post_sync_restore

scopable

True

required

False

provisioning

False

default

None

inheritance

leaf > head

scope order

specific > generic

A command or script to execute after the resource sync_restore action. Errors do not interrupt the action.

post_sync_resync

scopable

True

required

False

provisioning

False

default

None

inheritance

leaf > head

scope order

specific > generic

A command or script to execute after the resource sync_resync action. Errors do not interrupt the action.

post_sync_update

scopable

True

required

False

provisioning

False

default

None

inheritance

leaf > head

scope order

specific > generic

A command or script to execute after the resource sync_update action. Errors do not interrupt the action.

post_unprovision

scopable

True

required

False

provisioning

False

default

None

inheritance

leaf > head

scope order

specific > generic

A command or script to execute after the resource unprovision action. Errors do not interrupt the action.

postsnap_trigger

scopable

False

required

False

provisioning

False

default

None

inheritance

leaf > head

scope order

specific > generic

convert

shlex

Define a command to run after snapshots are created. This is most likely what you need to use plug a script to undo the actions of presnap_trigger.

pre_monitor_action

scopable

True

required

False

provisioning

False

default

None

inheritance

leaf > head

scope order

specific > generic

A script to execute before the monitor_action. For example, if the monitor_action is set to freezestop, the script can decide to crash the server if it detects a situation were the freezestop can not succeed (ex. fs can not be umounted with a dead storage array).

pre_provision

scopable

True

required

False

provisioning

False

default

None

inheritance

leaf > head

scope order

specific > generic

A command or script to execute before the resource provision action. Errors do not interrupt the action.

pre_run

scopable

True

required

False

provisioning

False

default

None

inheritance

leaf > head

scope order

specific > generic

A command or script to execute before the resource run action. Errors do not interrupt the action.

pre_start

scopable

True

required

False

provisioning

False

default

None

inheritance

leaf > head

scope order

specific > generic

A command or script to execute before the resource start action. Errors do not interrupt the action.

pre_startstandby

scopable

True

required

False

provisioning

False

default

None

inheritance

leaf > head

scope order

specific > generic

A command or script to execute before the resource startstandby action. Errors do not interrupt the action.

pre_stop

scopable

True

required

False

provisioning

False

default

None

inheritance

leaf > head

scope order

specific > generic

A command or script to execute before the resource stop action. Errors do not interrupt the action.

pre_sync_drp

scopable

True

required

False

provisioning

False

default

None

inheritance

leaf > head

scope order

specific > generic

A command or script to execute before the resource sync_drp action. Errors do not interrupt the action.

pre_sync_nodes

scopable

True

required

False

provisioning

False

default

None

inheritance

leaf > head

scope order

specific > generic

A command or script to execute before the resource sync_nodes action. Errors do not interrupt the action.

pre_sync_restore

scopable

True

required

False

provisioning

False

default

None

inheritance

leaf > head

scope order

specific > generic

A command or script to execute before the resource sync_restore action. Errors do not interrupt the action.

pre_sync_resync

scopable

True

required

False

provisioning

False

default

None

inheritance

leaf > head

scope order

specific > generic

A command or script to execute before the resource sync_resync action. Errors do not interrupt the action.

pre_sync_update

scopable

True

required

False

provisioning

False

default

None

inheritance

leaf > head

scope order

specific > generic

A command or script to execute before the resource sync_update action. Errors do not interrupt the action.

pre_unprovision

scopable

True

required

False

provisioning

False

default

None

inheritance

leaf > head

scope order

specific > generic

A command or script to execute before the resource unprovision action. Errors do not interrupt the action.

presnap_trigger

scopable

False

required

False

provisioning

False

default

None

inheritance

leaf > head

scope order

specific > generic

convert

shlex

Define a command to run before creating snapshots. This is most likely what you need to use plug a script to put you data in a coherent state (alter begin backup and the like).

priority

scopable

False

required

False

provisioning

False

default

100

inheritance

leaf > head

scope order

specific > generic

convert

integer

A scheduling priority (0 for top priority) used by the monitor thread to trigger actions for the top priority services, so that the node.max_parallel constraint doesn’t prevent high priority services to start first. The priority setting is dropped from a service configuration injected via the api by a user not granted the prioritizer role.

prkey

scopable

True

required

False

provisioning

False

default

None

inheritance

leaf > head

scope order

specific > generic

Defines a specific default persistent reservation key for the service. A prkey set in a resource takes priority. If no prkey is specified in the service nor in the DEFAULT section, the prkey in node.conf is used. If node.conf has no prkey set, the hostid is computed and written in node.conf.

provision

scopable

True

required

False

provisioning

False

default

True

inheritance

leaf > head

scope order

specific > generic

candidates

True | False

convert

boolean

Set to false to skip the resource on provision and unprovision actions. Warning: Provision implies destructive operations like formating. Unprovision destroys service data.

provision_requires

scopable

True

required

False

provisioning

False

default

inheritance

leaf > head

scope order

specific > generic

A whitespace-separated list of conditions to meet to accept running a ‘provision’ action. A condition is expressed as <rid>(<state>,...). If states are omitted, up,stdby up is used as the default expected states.

push_schedule

scopable

True

required

False

provisioning

False

default

~00:00-06:00

inheritance

leaf > head

scope order

specific > generic

The service configuration emission to the collector schedule. See usr/share/doc/schedule for the schedule syntax.

registry_creds

scopable

True

required

False

provisioning

False

default

None

inheritance

leaf > head

scope order

specific > generic

The name of a secret in the same namespace having a config.json key which value is used to login to the container image registry. If not specified, the node-level registry credential store is used.

resinfo_schedule

scopable

True

required

False

provisioning

False

default

@60

inheritance

leaf > head

scope order

specific > generic

The service resource info push schedule. See usr/share/doc/schedule for the schedule syntax.

restart

scopable

True

required

False

provisioning

False

default

0

inheritance

leaf > head

scope order

specific > generic

convert

integer

The agent will try to restart a resource <n> times before falling back to the monitor action. A resource restart is triggered if :the resource is not disabled and its status is not up, and the node is not frozen, and the service instance is not frozen and its local expect is set to started. If a resource has a restart set to a value >0, its status is evaluated at the frequency defined by DEFAULT.monitor_schedule instead of the frequency defined by DEFAULT.status_schedule. restart_delay defines the interval between two restarts. Standby resources have a particular value to ensure best effort to restart standby resources, default value is 2, and value lower than 2 are changed to 2.

restart_delay

scopable

True

required

False

provisioning

False

default

0

inheritance

leaf > head

scope order

specific > generic

convert

duration

Define minimum delay between two triggered restarts of a same resource (used when :kw:`restart`is defined). Default value is 0 (no delay).

rollback

scopable

True

required

False

provisioning

False

default

True

inheritance

leaf > head

scope order

specific > generic

convert

boolean

If set to false, the default ‘rollback on action error’ behaviour is inhibited, leaving the service in its half-started state. The daemon also refuses to takeover a service if rollback is disabled and a peer instance is ‘start failed’.

run_requires

scopable

True

required

False

provisioning

False

default

inheritance

leaf > head

scope order

specific > generic

A whitespace-separated list of conditions to meet to accept running a ‘run’ action. A condition is expressed as <rid>(<state>,...). If states are omitted, up,stdby up is used as the default expected states.

run_schedule

scopable

True

required

False

provisioning

False

default

None

inheritance

leaf > head

scope order

specific > generic

The default task resources schedule. See usr/share/doc/schedule for the schedule syntax.

scale

scopable

True

required

False

provisioning

False

default

None

inheritance

head

scope order

specific > generic

convert

integer

If set, create and provision the necessary slave services, named <n>.<name>, to meet the target <scale> number of started instances.

scaler_slave

scopable

True

required

False

provisioning

False

default

False

inheritance

head

scope order

specific > generic

convert

boolean

Automatically set to true by the daemon monitor when creating new scaler slaves.

scsireserv

scopable

True

required

False

provisioning

False

default

False

inheritance

leaf > head

scope order

specific > generic

candidates

True | False

convert

boolean

If set to true, OpenSVC will try to acquire a type-5 (write exclusive, registrant only) scsi3 persistent reservation on every path to disks of every disk group attached to this service. Existing reservations are preempted to not block service start-up. If the start-up was not legitimate the data are still protected from being written over from both nodes. If set to false or not set, scsireserv can be activated on a per-resource basis.

shared

scopable

True

required

False

provisioning

False

default

False

inheritance

leaf > head

scope order

specific > generic

candidates

True | False

convert

boolean

Set to true to skip the resource on provision and unprovision actions if the action has already been done by a peer. Shared resources, like vg built on SAN disks must be provisioned once. All resources depending on a shared resource must also be flagged as shared.

show_disabled

scopable

True

required

False

provisioning

False

default

True

inheritance

head

scope order

specific > generic

candidates

True | False

convert

boolean

Specifies if the disabled resources must be included in the print status and json status output.

size

scopable

True

required

False

provisioning

False

default

None

inheritance

head

scope order

specific > generic

depends

kind in vol

convert

integer

The size of the volume allocated from its pool.

slaves

scopable

True

required

False

provisioning

False

default

[]

inheritance

head

scope order

specific > generic

convert

list

List of services to propagate the start and stop actions to.

soft_affinity

scopable

True

required

False

provisioning

False

default

set()

inheritance

head

scope order

specific > generic

convert

set

A whitespace separated list of services that must be started on the node to allow the monitor to start this service. If the local node is the only candidate ignore this constraint and allow start.

soft_anti_affinity

scopable

True

required

False

provisioning

False

default

set()

inheritance

head

scope order

specific > generic

convert

set

A whitespace separated list of services that must not be started on the node to allow the monitor to start this service. If the local node is the only candidate ignore this constraint and allow start.

standby

scopable

True

required

False

provisioning

False

default

None

inheritance

leaf > head

scope order

specific > generic

convert

tristate

Always start the resource, even on standby instances. The daemon is responsible for starting standby resources. A resource can be set standby on a subset of nodes using keyword scoping.

A typical use-case is sync’ed fs on non-shared disks: the remote fs must be mounted to not overflow the underlying fs.

Warning

Don’t set shared resources standby: fs on shared disks for example.

start_requires

scopable

True

required

False

provisioning

False

default

inheritance

leaf > head

scope order

specific > generic

A whitespace-separated list of conditions to meet to accept running a ‘start’ action. A condition is expressed as <rid>(<state>,...). If states are omitted, up,stdby up is used as the default expected states.

stat_timeout

scopable

True

required

False

provisioning

False

default

5

inheritance

leaf > head

scope order

specific > generic

convert

duration

The maximum wait time for a stat call to respond. When expired, the resource status is degraded is to warn, which might cause a TOC if the resource is monitored.

status_schedule

scopable

True

required

False

provisioning

False

default

@10

inheritance

leaf > head

scope order

specific > generic

The service status evaluation schedule. See usr/share/doc/schedule for the schedule syntax.

stonith

scopable

False

required

False

provisioning

False

default

False

inheritance

head

scope order

specific > generic

candidates

True | False

depends

topology in [‘failover’]

convert

boolean

Stonith the node previously running the service if stale upon start by the daemon monitor.

stop_requires

scopable

True

required

False

provisioning

False

default

inheritance

leaf > head

scope order

specific > generic

A whitespace-separated list of conditions to meet to accept running a ‘stop’ action. A condition is expressed as <rid>(<state>,...). If states are omitted, up,stdby up is used as the default expected states.

subset

scopable

True

required

False

provisioning

False

default

None

inheritance

leaf

scope order

specific > generic

Assign the resource to a specific subset.

sync_break_requires

scopable

True

required

False

provisioning

False

default

inheritance

leaf > head

scope order

specific > generic

A whitespace-separated list of conditions to meet to accept running a ‘sync_break’ action. A condition is expressed as <rid>(<state>,...). If states are omitted, up,stdby up is used as the default expected states.

sync_drp_requires

scopable

True

required

False

provisioning

False

default

inheritance

leaf > head

scope order

specific > generic

A whitespace-separated list of conditions to meet to accept running a ‘sync_drp’ action. A condition is expressed as <rid>(<state>,...). If states are omitted, up,stdby up is used as the default expected states.

sync_interval

scopable

False

required

False

provisioning

False

default

121

inheritance

leaf > head

scope order

specific > generic

convert

duration

Set the minimum delay between syncs in minutes. If a sync is triggered through a scheduler or manually, it is skipped if last sync occurred less than sync_min_delay ago. The mecanism is enforced by a timestamp created upon each sync completion in <pathvar>/services/<namespace>/<kind>/<name>/<rid>/last_sync_<node>

sync_max_delay

scopable

False

required

False

provisioning

False

default

1d3h

inheritance

leaf > head

scope order

specific > generic

convert

duration_minute

Unit is minutes. This sets to delay above which the sync status of the resource is to be considered down. Should be set according to your application service level agreement. The scheduler task frequency should be set between sync_min_delay and sync_max_delay.

sync_nodes_requires

scopable

True

required

False

provisioning

False

default

inheritance

leaf > head

scope order

specific > generic

A whitespace-separated list of conditions to meet to accept running a ‘sync_nodes’ action. A condition is expressed as <rid>(<state>,...). If states are omitted, up,stdby up is used as the default expected states.

sync_restore_requires

scopable

True

required

False

provisioning

False

default

inheritance

leaf > head

scope order

specific > generic

A whitespace-separated list of conditions to meet to accept running a ‘sync_restore’ action. A condition is expressed as <rid>(<state>,...). If states are omitted, up,stdby up is used as the default expected states.

sync_resync_requires

scopable

True

required

False

provisioning

False

default

inheritance

leaf > head

scope order

specific > generic

A whitespace-separated list of conditions to meet to accept running a ‘sync_resync’ action. A condition is expressed as <rid>(<state>,...). If states are omitted, up,stdby up is used as the default expected states.

sync_schedule

scopable

True

required

False

provisioning

False

default

04:00-06:00@121

inheritance

leaf > head

scope order

specific > generic

The default sync resources schedule. See usr/share/doc/schedule for the schedule syntax.

sync_update_requires

scopable

True

required

False

provisioning

False

default

inheritance

leaf > head

scope order

specific > generic

A whitespace-separated list of conditions to meet to accept running a ‘sync_update’ action. A condition is expressed as <rid>(<state>,...). If states are omitted, up,stdby up is used as the default expected states.

tags

scopable

True

required

False

provisioning

False

default

inheritance

leaf > head

scope order

specific > generic

convert

set

A list of tags. Arbitrary tags can be used to limit action scope to resources with a specific tag. Some tags can influence the driver behaviour. For example noaction avoids any state changing action from the driver and implies optional=true, nostatus forces the status to n/a.

topology

scopable

True

required

False

provisioning

False

default

failover

inheritance

head

scope order

specific > generic

candidates

failover | flex

failover the service is allowed to be up on one node at a time. flex the service can be up on flex_target nodes, where flex_target must be in the [flex_min, flex_max] range.

unprovision

scopable

True

required

False

provisioning

False

default

True

inheritance

leaf > head

scope order

specific > generic

candidates

True | False

convert

boolean

Set to false to skip the resource on unprovision actions. Warning: Unprovision destroys service data.

unprovision_requires

scopable

True

required

False

provisioning

False

default

inheritance

leaf > head

scope order

specific > generic

A whitespace-separated list of conditions to meet to accept running a ‘unprovision’ action. A condition is expressed as <rid>(<state>,...). If states are omitted, up,stdby up is used as the default expected states.