Консул ACL и Номад - PullRequest
       37

Консул ACL и Номад

0 голосов
/ 07 октября 2018

У меня есть следующая проблема, и я не уверен, что делаю что-то не так или он работает не так, как ожидалось.

  1. У меня есть консольный кластер с включенным ACL.
  2. Для политики ACL по умолчанию установлено значение DENY ("acl_default_policy": "deny",)
  3. Пока яЯ всегда использую основной токен CONSUL для связи.
  4. У меня также есть VAULT и NOMAD, настроенные с токеном управления, а "vault.service.consul" и "nomad.service.consul" регистрируются в консуле
  5. Я специально настроил NOMAD с консуломСтанса с маркером управления консулом, чтобы иметь возможность общаться с консулом и зарегистрироваться.

consul { address = "127.0.0.1:8500" token = "management token" }

Я использую NOMAD для планирования контейнеров Docker.Этим док-контейнерам нужно заполнить конфигурационные файлы из хранилища CONSUL KV, и я сделал это, работая с шаблоном консула (когда ACL не включен).

Теперь моя проблема заключается в том, что, когда я включил ACL в CONSUL - контейнеры Docker НЕ могут получить значения из хранилища CONSUL KV с ошибками 403 (разрешение отклонено) из-за ACL.Я думал, что, поскольку я настроил консул в NOMAD, например:

consul {
  address = "127.0.0.1:8500"
  token   = "management token"
}

, все задания, запланированные с помощью NOMAD, смогут использовать этот токен управления, а контейнеры Docker смогут связываться с CONSUL KV?!

Если я помещаю токен управления в качестве переменной среды Docker в описании задания NOMAD - чем он работает:

env {
      "CONSUL_HTTP_TOKEN" = "management token"
    }

Однако я не хочу помещать этот токен управления в заданиеописание, как они будут проверены в Git.

Я что-то не так делаю или это просто так не работает?

Заранее спасибо.

...