57 lines
1.2 KiB
HCL
57 lines
1.2 KiB
HCL
job "consul-cluster" {
|
|
datacenters = ["dc1"]
|
|
type = "service"
|
|
|
|
group "consul-servers" {
|
|
count = 3
|
|
|
|
constraint {
|
|
attribute = "${node.unique.name}"
|
|
operator = "regexp"
|
|
value = "(master|ash3c|hcp)"
|
|
}
|
|
|
|
task "consul" {
|
|
driver = "podman"
|
|
|
|
config {
|
|
image = "hashicorp/consul:latest"
|
|
ports = ["server", "serf_lan", "serf_wan", "ui"]
|
|
args = [
|
|
"agent",
|
|
"-server",
|
|
"-bootstrap-expect=3",
|
|
"-data-dir=/consul/data",
|
|
"-ui",
|
|
"-client=0.0.0.0",
|
|
"-bind={{ env `NOMAD_IP_server` }}",
|
|
"-retry-join=100.117.106.136",
|
|
"-retry-join=100.116.80.94",
|
|
"-retry-join=100.76.13.187"
|
|
]
|
|
}
|
|
|
|
volume_mount {
|
|
volume = "consul-data"
|
|
destination = "/consul/data"
|
|
read_only = false
|
|
}
|
|
|
|
resources {
|
|
network {
|
|
mbits = 10
|
|
port "server" { static = 8300 }
|
|
port "serf_lan" { static = 8301 }
|
|
port "serf_wan" { static = 8302 }
|
|
port "ui" { static = 8500 }
|
|
}
|
|
}
|
|
}
|
|
|
|
volume "consul-data" {
|
|
type = "host"
|
|
read_only = false
|
|
source = "consul-data"
|
|
}
|
|
}
|
|
} |