Skip to content

Example nomad job #24

@vacquah

Description

@vacquah

Hi there - I have read through the blog post and everything here but still not clear to me exactly how the nomad job should be set up - or the overall integration with a nomad / consul cluster. I'd like to test this to enable external access to services running in a nomad cluster, but not sure how to how to do that. Providing an example nomad job here and pointers as to how to integrate this with, for instance, bgp on pfsense will be great!

For the nomad job below, I get this error message:

Failed to create container configuration for image "mayuresh82/gocast:latest" ("sha256..."): driver does not allow the following capabilities: net_admin

Nomad Job: ( my volumes setup is wrong but not sure what it should be )

job "gocast" {
  datacenters = ["dc1"] 
  type        = "system"   

  update {
    stagger      = "30s"
    max_parallel = 2
  }  

  group "gocast" {

    network {
      port "tcp" {
        static  = 9080
      }
    }

    task "gocast-container" {
      driver = "docker"

      config {
        image = "mayuresh82/gocast:latest"
        ports = ["tcp"]
        force_pull = true
        network_mode = "host"
        privileged   = true
        cap_add      = ["net_admin"]

        args = [
          "--config=local/config.yml",
        ]
      }

      resources {
        cpu    = 500   # CPU resources (in MHz)
        memory = 256   # Memory resources (in MB)
      }

      service {
        provider = "consul"
      }

      template {
        change_mode   = "signal" 
        change_signal = "SIGHUP" 
        destination   = "local/config.yml" 
        data = <<EOH
---
agent:
  listen_addr: :9080
  monitor_interval: 10s
  cleanup_timer: 15m
  consul_addr: http://localhost:8500/v1
  consul_query_interval: 1m

bgp:
  local_as: 65000
  remote_as: 64999
  communities:
    - 64999:65000
  origin: igp

EOH
      }
    }
  }
}


And for an MQTT server I have running on the nomad cluster I have:

enable_gocast=true
gocast_vip=10.1.1.1/32
gocast_monitor=consul

Now do I need to do anything on my pfsense router?

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions