ansible-roles/roles/nomad/templates/nomad.service.j2

38 lines
1.2 KiB
Django/Jinja

[Unit]
Description=Nomad
Documentation=https://nomadproject.io/docs/
Wants=network-online.target
After=network-online.target
After=vault.service
After=consul.service
After=nomad-vault-agent.service
ConditionFileNotEmpty={{ nomad_root_dir }}/etc/nomad.hcl
# Nomad version {{ nomad_current_version }}
[Service]
EnvironmentFile=-{{ nomad_root_dir }}/etc/nomad.env
EnvironmentFile=-/run/nomad/vault.env
EnvironmentFile=-/run/nomad/consul.env
{% if nomad_conf.consul.ssl and nomad_conf.client.enabled %}
Environment=CONSUL_HTTP_SSL=true
Environment=CONSUL_HTTP_ADDR=localhost:{{ (consul_services is defined) | ternary(consul_services.https.port, '8501') }}
Environment=CONSUL_CACERT={{ nomad_conf.consul.ca_file }}
Environment=CONSUL_CLIENT_CERT={{ nomad_conf.consul.cert_file }}
Environment=CONSUL_CLIENT_KEY={{ nomad_conf.consul.key_file }}
{% endif %}
User={{ nomad_user }}
Group={{ nomad_user }}
ExecStart=/usr/local/bin/nomad agent -config {{ nomad_root_dir }}/etc
ExecReload=/bin/kill --signal HUP $MAINPID
Restart=on-failure
LimitNOFILE=65536
LimitNPROC=infinity
Restart=on-failure
RestartSec=5
StartLimitInterval=0
TasksMax=infinity
OOMScoreAdjust=-1000
[Install]
WantedBy=multi-user.target