Как я могу «окропить» своих миньонов обычными зернами при развертывании солевого миньона с помощью Saltify (соленое облако)? - PullRequest
0 голосов
/ 28 ноября 2018

Я получил saltify, чтобы работать над новым миньоном.Я также могу указать профиль для миньона.Тем не менее, я не знаю, как назначить пользовательские зерна моему миньону во время этого процесса.

Вот мои настройки.

В /etc/salt/cloud.profiles.d/saltify.conf У меня есть:

salt-this-webserver:
  ssh_host: 10.66.77.99
  ssh_username: opsuser
  password: **********
  provider: web-saltify-config

salt-this-fileserver:
  ssh_host: 10.66.77.99
  ssh_username: opsuser
  password: **********
  provider: file-saltify-config

В /etc/salt/cloud/cloud.providers У меня есть:

web-saltify-config:
  minion:
    master: 10.66.77.44
  driver: saltify
  grains:
    layers:
      - infrastructure
    roles:
      - web-server

file-saltify-config:
  minion:
    master: 10.66.77.55
  driver: saltify
  grains:
    layers:
      - infrastructure
    roles:
      - file-server

Когда я запускаю свою команду от моего Мастера соли:

salt-cloud -p salt-this-fileserver slave-salttesting-01.eng.example.com

Мой /etc/salt/minion файл на моем миньоне выглядит так:

grains:
  salt-cloud:
    driver: saltify
    profile: salt-this-fileserver
    provider: file-saltify-config:saltify
hash_type: sha256
id: slave-salttesting-01.eng.example.com
log_level: info
master: 10.66.77.99

Мне бы очень хотелось, чтобы оно также имело:

grains:
  layers:
    - infrastructure
  roles:
    - file-server

Я бы хотел, чтобы это произошло на этапе засоления, а не на последующем этапе, потому что он просто очень хорошо вписывается вчто я пытаюсь сделать на этом шаге.

Есть ли способ окропить некоторыми зернами на моем миньоне во время "засоления"?

EDIT: параметр конфигурации sync_after_install может иметь какое-то отношение к нему, но я не уверен, куда поместить мои пользовательские модули, зерна, состояния и т. Д.

1 Ответ

0 голосов
/ 28 ноября 2018

Я обнаружил зерна из моего cloud.providers файла в /etc/salt/grains Похоже, это сработает, если вы создадите свой cloud.providers файл аналогично тому, как я построил мой (см. Выше).

Я включил отладку (в /etc/salt/cloud), и в выводе отладки на экране я вижу фрагмент кода, который предполагает, что в какой-то момент файл с именем «зерна» в каталоге conf в корне git также может быть передан через:

# Copy the grains file if found
if [ -f "$_TEMP_CONFIG_DIR/grains" ]; then
  echodebug "Moving provided grains file from $_TEMP_CONFIG_DIR/grains to $_SALT_ETC_DIR/grains"

Но я не уверен, потому что я больше не копался в этом, так как мои зерна опрыскиваются , как я и надеялся.

...