У меня есть два ключа ssh, которые я пытаюсь развернуть на одном из моих миньонов. Но я не могу заставить его развернуться. Это ошибки. Вот init.sls
картинка в столбах:
/xxx/yyy/zzz/id_rsa:
file.managed:
- source: salt://private/id_rsa
/xxx/yyy/zz/id_rsa.pub:
file.managed:
- source: salt://private/id_rsa.pub
Вот мое init.sls
состояние:
ssh:
file.managed:
- name: {{ pillar['private'] }}
Должно быть, я что-то делаю не так (очевидно), но я не уверен, что. Какие-либо предложения?
ssh
deployment
ssh-keys
saltstack
secure212
источник
источник
Ответы:
Система Salt Pillar не имеет файла init.sls. И у состояний, и у столбов есть файл top.sls. Состояния, которые являются подкаталогами, могут иметь файл init.sls.
Шаг 1. Определите своих пользователей в /srv/pillar/users.sls
Шаг 2: Добавьте новый столб в /srv/pillar/top.sls
Шаг 3: Используйте jinja, чтобы отобразить столб к состояниям в /srv/salt/user/init.sls
Не забудьте синхронизировать миньонов с новыми колоннами!
источник
{% for user, data in salt['pillar.get']('users', {}).iteritems() %}
это значительно изменит файл sls; если я придумаю рабочий пример, я опубликую его.Вероятно, следует отметить, что в отношении исходного вопроса, есть другое простое решение, если
source: salt://...
формат не работает сfile.managed
- как это все-таки произошлоsalt-ssh
из-за ошибки https://github.com/saltstack/salt/issues/38458, которая была после исправления - и это переключается наcontents:
внешний столбец файлового дерева, который также поддерживается файлами на ведущем устройстве.В
file_tree
ext_pillar
настоящее время документально подтверждено на странице https://docs.saltstack.com/en/latest/ref/pillar/all/salt.pillar.file_tree.html#module-salt.pillar.file_tree . Он существует с версии 2015.5.0, поэтому он новее, чем первоначальный вопрос и ответ, но это решение, которое достаточно доступно сегодня.Действительно, это также в FAQ по адресу https://docs.saltstack.com/en/latest/faq.html#is-it-possible-to-deploy-a-file-to-a-specific-minion-without -другие-миньоны-имея доступ к его
источник