job "telemetry" { datacenters = ["neptune"] type = "service" group "grafana" { count = 1 constraint { attribute = "${attr.unique.hostname}" operator = "=" value = "carcajou" } network { port "otel_grpc" { static = 4317 } port "elastic" { static = 9200 } port "kibana" { static = 5601 } port "apm" { static = 8200 } port "grafana" { static = 3333 } } task "otel" { driver = "docker" config { image = "otel/opentelemetry-collector-contrib:0.44.0" args = [ "--config=/etc/otel-config.yaml", ] network_mode = "host" ports= [ "otel_grpc" ] volumes = [ "secrets/otel-config.yaml:/etc/otel-config.yaml" ] } template { data = file("../config/otel-config.yaml") destination = "secrets/otel-config.yaml" } resources { memory = 200 cpu = 100 } } task "elastic" { driver = "docker" config { image = "docker.elastic.co/elasticsearch/elasticsearch:7.17.0" network_mode = "host" volumes = [ "/mnt/ssd/telemetry/es_data:/usr/share/elasticsearch/data", ] ports = [ "elastic" ] } resources { memory = 2500 cpu = 500 } template { data = <