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_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.
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.