mirror of
https://github.com/sadoyan/aralez.git
synced 2026-10-23 06:01:35 +08:00
Rewrite of Consul integration.
This commit is contained in:
@@ -0,0 +1,67 @@
|
||||
job "apache" {
|
||||
meta {
|
||||
uuid = uuidv4()
|
||||
}
|
||||
datacenters = ["eu-ams-1"]
|
||||
type = "service"
|
||||
constraint {
|
||||
attribute = node.unique.name
|
||||
operator = "regexp"
|
||||
value = "consul[0-9]"
|
||||
}
|
||||
update {
|
||||
max_parallel = 1
|
||||
min_healthy_time = "10s"
|
||||
healthy_deadline = "3m"
|
||||
progress_deadline = "10m"
|
||||
auto_revert = false
|
||||
canary = 0
|
||||
}
|
||||
migrate {
|
||||
max_parallel = 1
|
||||
health_check = "checks"
|
||||
min_healthy_time = "10s"
|
||||
healthy_deadline = "5m"
|
||||
}
|
||||
group "Apache" {
|
||||
network {
|
||||
port "apache" { to = 80 }
|
||||
}
|
||||
constraint {
|
||||
operator = "distinct_hosts"
|
||||
value = "true"
|
||||
}
|
||||
count = 3
|
||||
restart {
|
||||
attempts = 2
|
||||
interval = "30m"
|
||||
delay = "15s"
|
||||
mode = "fail"
|
||||
}
|
||||
task "health" {
|
||||
service {
|
||||
port = "apache"
|
||||
tags = [
|
||||
"aralez.service=yes",
|
||||
"aralez.host=apache.blablabla.com",
|
||||
"aralez.path=/"
|
||||
]
|
||||
check {
|
||||
type = "http"
|
||||
port = "apache"
|
||||
path = "/"
|
||||
interval = "5s"
|
||||
timeout = "2s"
|
||||
}
|
||||
}
|
||||
|
||||
driver = "docker"
|
||||
|
||||
config {
|
||||
image = "httpd:latest"
|
||||
force_pull = true
|
||||
ports = ["apache"]
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,72 @@
|
||||
job "echo" {
|
||||
meta {
|
||||
uuid = uuidv4()
|
||||
}
|
||||
datacenters = ["eu-ams-1"]
|
||||
type = "service"
|
||||
constraint {
|
||||
attribute = node.unique.name
|
||||
operator = "regexp"
|
||||
value = "consul[0-9]"
|
||||
}
|
||||
update {
|
||||
max_parallel = 1
|
||||
min_healthy_time = "10s"
|
||||
healthy_deadline = "3m"
|
||||
progress_deadline = "10m"
|
||||
auto_revert = false
|
||||
canary = 0
|
||||
}
|
||||
migrate {
|
||||
max_parallel = 1
|
||||
health_check = "checks"
|
||||
min_healthy_time = "10s"
|
||||
healthy_deadline = "5m"
|
||||
}
|
||||
group "Echo" {
|
||||
network {
|
||||
port "echo" { to = 80 }
|
||||
}
|
||||
constraint {
|
||||
operator = "distinct_hosts"
|
||||
value = "true"
|
||||
}
|
||||
count = 3
|
||||
restart {
|
||||
attempts = 2
|
||||
interval = "30m"
|
||||
delay = "15s"
|
||||
mode = "fail"
|
||||
}
|
||||
task "server" {
|
||||
service {
|
||||
port = "echo"
|
||||
tags = [
|
||||
"aralez.service=yes",
|
||||
"aralez.host=echo.blablabla.com",
|
||||
"aralez.path=/",
|
||||
"aralez.rate=100",
|
||||
"aralez.4xx_rate=50",
|
||||
"aralez.to_https=false",
|
||||
"aralez.client_headers=WyJYLUVjaG8tU2VuZDpIb29vb29vb29vb29vIiwiWC1FY2hvLVJlY3Y6WW9vb29vb29vb29vbyJdCg==",
|
||||
"aralez.server_headers=WyJYLVByb3h5LUZyb206IEFyYWxleiIsIlgtQmFyaS1MdXlzOiBBcGVyIEphbiIsIlgtQW5rYXAtSGVhZGVyOiBCZXNhbXAgQW5rYXAgSGVhZGVyIl0K"
|
||||
]
|
||||
check {
|
||||
type = "http"
|
||||
port = "echo"
|
||||
path = "/"
|
||||
interval = "5s"
|
||||
timeout = "2s"
|
||||
}
|
||||
}
|
||||
|
||||
driver = "docker"
|
||||
|
||||
config {
|
||||
image = "ealen/echo-server:latest"
|
||||
force_pull = true
|
||||
ports = ["echo"]
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,73 @@
|
||||
job "nginx" {
|
||||
meta {
|
||||
uuid = uuidv4()
|
||||
}
|
||||
datacenters = ["eu-ams-1"]
|
||||
type = "service"
|
||||
constraint {
|
||||
attribute = node.unique.name
|
||||
operator = "regexp"
|
||||
value = "consul[0-9]"
|
||||
}
|
||||
update {
|
||||
max_parallel = 1
|
||||
min_healthy_time = "10s"
|
||||
healthy_deadline = "3m"
|
||||
progress_deadline = "10m"
|
||||
auto_revert = false
|
||||
canary = 0
|
||||
}
|
||||
migrate {
|
||||
max_parallel = 1
|
||||
health_check = "checks"
|
||||
min_healthy_time = "10s"
|
||||
healthy_deadline = "5m"
|
||||
}
|
||||
group "NginX" {
|
||||
network {
|
||||
port "nginx" { to = 80 }
|
||||
}
|
||||
constraint {
|
||||
operator = "distinct_hosts"
|
||||
value = "true"
|
||||
}
|
||||
count = 3
|
||||
restart {
|
||||
attempts = 2
|
||||
interval = "30m"
|
||||
delay = "15s"
|
||||
mode = "fail"
|
||||
}
|
||||
task "server" {
|
||||
service {
|
||||
port = "nginx"
|
||||
tags = [
|
||||
"aralez.service=yes",
|
||||
"aralez.host=nginx.blablabla.com",
|
||||
"aralez.path=/",
|
||||
"aralez.rate=20",
|
||||
"aralez.4xx_rate=10",
|
||||
"aralez.to_https=true",
|
||||
"aralez.auth=basic root:toor",
|
||||
"aralez.client_headers=WwogICAgIlgtU29tZS1IZWFkZXI6QUFBQUFBQUFBQUFBQUFBIiwKICAgICJYLUVtb3MtSGVhZGVyOlpaWlpaWlpaWlpaWlpaWiIsCiAgICAiWC1PdGhlci1oZWFkZXI6VmF5VmF5VmF5IiwKICAgICJYLVJlaHRvLWhlYWRlcjpaYXlaYXlaYXkiCl0KCg==",
|
||||
"aralez.server_headers=WyJYLVByb3h5LUZyb206IEFyYWxleiIsIlgtQmFyaS1MdXlzOiBBcGVyIEphbiIsIlgtQW5rYXAtSGVhZGVyOiBCZXNhbXAgQW5rYXAgSGVhZGVyIl0K"
|
||||
]
|
||||
check {
|
||||
type = "http"
|
||||
port = "nginx"
|
||||
path = "/"
|
||||
interval = "5s"
|
||||
timeout = "2s"
|
||||
}
|
||||
}
|
||||
|
||||
driver = "docker"
|
||||
|
||||
config {
|
||||
image = "nginx:latest"
|
||||
force_pull = true
|
||||
ports = ["nginx"]
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user