tags: | openstack, systemd_service, cloud, ansible |
---|---|
category: | *nix |
This role will configure Systemd units:
# This is the default path for a given service. Set this for general service lookups or
# define "program_override" option in the systemd_services dictionary.
systemd_bin_path: /usr/local/bin
system_user_name: root
system_group_name: root
system_slice_name: system
system_lock_path: /var/lock
# This is the prefix used for all temp files of a given type.
systemd_tempd_prefix: tempd
# Give a reasonable amount of time for the server to start up/shut down
systemd_TimeoutSec: 120
systemd_Restart: on-failure
systemd_RestartSec: 2
# Set accounting on systemd service
system_CPUAccounting: true
system_BlockIOAccounting: true
system_MemoryAccounting: true
system_TasksAccounting: true
# Start service after a given target. This is here because we want to define common
# after targets used on most services. This can be overridden or agumented using
# the "systemd_services" dictionary option "config_overrides".
systemd_after_targets:
- syslog.target
- network.target
# Set the service state. Valid options are: [started, stopped, restarted, reloaded].
systemd_service_state: started
# Set the service enabled state. Valid options are: [yes, no]
systemd_service_enabled: yes
# The systemd services dictionary is a set of services that will be created. The dictionary
# can contain the following options:
# `service_name` -- (required) used to define the name of the service. This is typically the name of the executable.
# `config_overrides` -- (optional) This allows any section or key=value pair to be set within the systemd unit file.
# `program_config_options` -- (optional) Provides the ability to pass in flags to a given service for execution.
# `program_override` -- (optional) sets the full path to the executable that will be run by the service file.
# `enabled` -- (optional) Set the enabled state of the service.
# `state` -- (optional) Set the running state of the service.
# Examples:
# systemd_services:
# ServiceW:
# service_name: ServiceW
# config_overrides: {} # This is used to add in arbitratry unit file options
# ServiceX:
# service_name: ServiceX
# config_overrides: {} # This is used to add in arbitratry unit file options
# program_config_options: '--flag1 things --flag2 other'
# ServiceY:
# service_name: ServiceY
# config_overrides: {} # This is used to add in arbitratry unit file options
# program_override: '/usr/bin/ServiceY'
# ServiceZ:
# service_name: ServiceZ
# config_overrides: {} # This is used to add in arbitratry unit file options
# enabled: no
# state: stopped
systemd_services: {}
.. code-block:: yaml
- name: Create a systemd unit file for ServiceX
hosts: localhost
become: true
roles:
- role: "systemd_service"
systemd_services:
service_name: ServiceX
config_overrides: {}
program_config_options: '--flag1 things --flag2 other'
tags:
- servicex-init
This role supports one tag: systemd-init
.
Except where otherwise noted, this document is licensed under Creative Commons Attribution 3.0 License. See all OpenStack Legal Documents.