open-nomad/demo/csi/portworx-csi-plugin/portworx-csi-plugin.hcl

105 lines
2.4 KiB
HCL

job "portworx" {
type = "service"
datacenters = ["dc1"]
group "portworx" {
count = 3
constraint {
operator = "distinct_hosts"
value = "true"
}
# restart policy for failed portworx tasks
restart {
attempts = 3
delay = "30s"
interval = "5m"
mode = "fail"
}
# how to handle upgrades of portworx instances
update {
max_parallel = 1
health_check = "checks"
min_healthy_time = "10s"
healthy_deadline = "5m"
auto_revert = true
canary = 0
stagger = "30s"
}
network {
port "portworx" {
static = "9015"
}
}
task "px-node" {
driver = "docker"
kill_timeout = "120s" # allow portworx 2 min to gracefully shut down
kill_signal = "SIGTERM" # use SIGTERM to shut down the nodes
# consul service check for portworx instances
service {
name = "portworx"
check {
port = "portworx"
type = "http"
path = "/health"
interval = "10s"
timeout = "2s"
}
}
# setup environment variables for px-nodes
env {
AUTO_NODE_RECOVERY_TIMEOUT_IN_SECS = "1500"
PX_TEMPLATE_VERSION = "V4"
CSI_ENDPOINT = "unix://var/lib/osd/csi/csi.sock"
}
csi_plugin {
id = "portworx"
type = "monolith"
mount_dir = "/var/lib/osd/csi"
}
# container config
config {
image = "portworx/oci-monitor:2.8.0"
network_mode = "host"
ipc_mode = "host"
privileged = true
args = [
"-c", "px-cluster-nomadv1",
"-a",
"-b",
"-k", "consul://127.0.0.1:8500",
"--endpoint", "0.0.0.0:9015"
]
volumes = [
"/var/cores:/var/cores",
"/var/run/docker.sock:/var/run/docker.sock",
"/run/containerd:/run/containerd",
"/etc/pwx:/etc/pwx",
"/opt/pwx:/opt/pwx",
"/proc:/host_proc",
"/etc/systemd/system:/etc/systemd/system",
"/var/run/log:/var/run/log",
"/var/log:/var/log",
"/var/run/dbus:/var/run/dbus"
]
}
# resource config
resources {
cpu = 1024
memory = 2048
}
}
}
}