74 lines
1.3 KiB
HCL
74 lines
1.3 KiB
HCL
job "mysql" {
|
|
datacenters = ["alo"]
|
|
|
|
meta {
|
|
uuid = uuidv4()
|
|
}
|
|
|
|
group "db" {
|
|
network {
|
|
port "db" {
|
|
static = 3306
|
|
}
|
|
port "exporter" {
|
|
}
|
|
}
|
|
|
|
task "mysqld" {
|
|
driver = "docker"
|
|
|
|
config {
|
|
image = "mysql:8.3"
|
|
args = [
|
|
# 300M, up from default of 100M
|
|
"--innodb-redo-log-capacity=314572800",
|
|
]
|
|
ports = ["db"]
|
|
volumes = [
|
|
"/data/compute/appdata/mysql:/var/lib/mysql",
|
|
]
|
|
}
|
|
|
|
env {
|
|
MYSQL_ROOT_PASSWORD = "{{ with nomadVar \"secrets/mysql\" }}{{ .root_password }}{{ end }}"
|
|
}
|
|
|
|
service {
|
|
name = "mysql"
|
|
port = "db"
|
|
check {
|
|
type = "tcp"
|
|
port = "db"
|
|
interval = "30s"
|
|
timeout = "2s"
|
|
}
|
|
}
|
|
|
|
resources {
|
|
cpu = 3000
|
|
memory = 1500
|
|
}
|
|
}
|
|
|
|
task "exporter" {
|
|
driver = "docker"
|
|
|
|
config {
|
|
image = "prom/mysqld-exporter"
|
|
ports = ["exporter"]
|
|
args = [
|
|
"--mysqld.address=mysql.service.consul:3306",
|
|
"--mysqld.username=exporter:Veeng0Yei5haesheagai",
|
|
"--web.listen-address=0.0.0.0:${NOMAD_PORT_exporter}",
|
|
]
|
|
}
|
|
|
|
service {
|
|
name = "mysql-exporter"
|
|
port = "exporter"
|
|
tags = ["metrics"]
|
|
}
|
|
}
|
|
}
|
|
}
|