Initial role stuff
This commit is contained in:
71
nomad/templates/nomad.hcl.j2
Normal file
71
nomad/templates/nomad.hcl.j2
Normal file
@@ -0,0 +1,71 @@
|
||||
data_dir = "/opt/nomad"
|
||||
datacenter = "{{ datacenter }}"
|
||||
|
||||
|
||||
bind_addr = "0.0.0.0"
|
||||
|
||||
advertise {
|
||||
# Defaults to the first private IP address.
|
||||
#http = "1.2.3.4"
|
||||
#rpc = "1.2.3.4"
|
||||
#serf = "1.2.3.4:5648" # non-default ports may be specified
|
||||
}
|
||||
|
||||
{# TODO: Get interface-ip from hosts marked with type=server #}
|
||||
{% set server_hosts = ansible_play_batch | difference([inventory_hostname]) %}
|
||||
{% if type is defined and type == "server" %}
|
||||
server {
|
||||
enabled = true
|
||||
bootstrap_expect = {{ server_hosts | length }}
|
||||
|
||||
server_join {
|
||||
retry_join = [ "{{ server_hosts | join('", "') }}" ]
|
||||
retry_max = 6
|
||||
retry_interval = "15s"
|
||||
}
|
||||
|
||||
default_scheduler_config {
|
||||
scheduler_algorithm = "binpack"
|
||||
memory_oversubscription_enabled = true
|
||||
reject_job_registration = false
|
||||
pause_eval_broker = false # New in Nomad 1.3.2
|
||||
|
||||
preemption_config {
|
||||
batch_scheduler_enabled = true
|
||||
system_scheduler_enabled = true
|
||||
service_scheduler_enabled = true
|
||||
sysbatch_scheduler_enabled = true # New in Nomad 1.2
|
||||
}
|
||||
}
|
||||
}
|
||||
{% endif %}
|
||||
|
||||
client {
|
||||
enabled = true
|
||||
|
||||
{% if type != "server" %}
|
||||
servers = [ "{{ server_hosts | join('", "') }}" ]
|
||||
{% endif %}
|
||||
|
||||
meta {
|
||||
node_type = "{{ type }}"
|
||||
{% if storage is defined and storage %}
|
||||
seaweedfs_volume = "true"
|
||||
{% endif %}
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
plugin "raw_exec" {
|
||||
config {
|
||||
enabled = true
|
||||
}
|
||||
}
|
||||
|
||||
plugin "docker" {
|
||||
config {
|
||||
{% if type is defined and type == "server" %}
|
||||
allow_privileged = true
|
||||
{% endif %}
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user