open-nomad/e2e/consul/input/namespaces/connect_sidecars.nomad

168 lines
2.5 KiB
Plaintext
Raw Normal View History

job "connect_sidecars" {
datacenters = ["dc1"]
type = "service"
constraint {
attribute = "${attr.kernel.name}"
value = "linux"
}
group "api" {
consul {
namespace = "apple"
}
network {
mode = "bridge"
}
service {
name = "count-api"
port = "9001"
connect {
sidecar_service {}
}
check {
expose = true
name = "api-health"
type = "http"
path = "/health"
interval = "5s"
timeout = "3s"
}
}
task "web" {
driver = "docker"
config {
image = "hashicorpnomad/counter-api:v3"
}
}
}
group "api-z" {
# consul namespace not set
network {
mode = "bridge"
}
service {
name = "count-api-z"
port = "9001"
connect {
sidecar_service {}
}
check {
expose = true
name = "api-health"
type = "http"
path = "/health"
interval = "5s"
timeout = "3s"
}
}
task "web-z" {
driver = "docker"
config {
image = "hashicorpnomad/counter-api:v3"
}
}
}
group "dashboard" {
consul {
namespace = "apple"
}
network {
mode = "bridge"
port "http" {
static = 9002
to = 9002
}
}
service {
name = "count-dashboard"
port = "9002"
connect {
sidecar_service {
proxy {
upstreams {
destination_name = "count-api"
local_bind_port = 8080
}
}
}
}
}
task "dashboard" {
driver = "docker"
env {
COUNTING_SERVICE_URL = "http://${NOMAD_UPSTREAM_ADDR_count_api}"
}
config {
image = "hashicorpnomad/counter-dashboard:v3"
}
}
}
group "dashboard-z" {
# consul namespace not set
network {
mode = "bridge"
port "http" {
static = 9003
to = 9002
}
}
service {
name = "count-dashboard-z"
port = "9003"
connect {
sidecar_service {
proxy {
upstreams {
destination_name = "count-api-z"
local_bind_port = 8080
}
}
}
}
}
task "dashboard" {
driver = "docker"
env {
COUNTING_SERVICE_URL = "http://${NOMAD_UPSTREAM_ADDR_count_api-z}"
}
config {
image = "hashicorpnomad/counter-dashboard:v3"
}
}
}
}