Указание файлов SLS на солевой каталог

Я немного запутался в использовании file_roots. В настоящее время мы настраиваем наш солевой каталог следующим образом.

srv/salt/<folder-connected-to-git>: содержит все папки, которые мы хотим использовать, такие как win (repo/repo-ng), /scripts/states и т. д. для нашей сборки соли. Но в нем нет нашей папки с бинарниками (содержит установщики программ).

Главный файл конфигурации использует следующее:

file_roots:
  base:
    - /srv/salt/<folder-connected-to-git>

Поэтому при настройке установщиков пакетов SLS мы будем использовать salt:// для указания на базовую папку. Поскольку папка с двоичными файлами находится за пределами этого пути (в /srv/salt), я указал абсолютный путь (т.е. /srv/salt/binaries). Кажется, что при его запуске соль не распознает этот путь как абсолютный путь (возможно, вместо этого он ищет его на миньоне).

Есть ли способ указать на каталог вне base. Если нет, я мог бы изменить свой file_roots на:

file_roots:
  base:
    - /srv/salt/
  prod:
    - /srv/salt/<git-folder>

Но тогда будет ли соль искать репозиторий (для кэширования миньона) внутри /srv/salt/ вместо /srv/salt/<git-folder>? Могу ли я изменить то, на что указывает salt://, не изменяя file_roots?


person dwr123123d12    schedule 12.12.2016    source источник


Ответы (1)


Существует встроенный файловый сервер, который работает вместе с salt '*' cp.get_file или salt '*' cp.get_dir. Чтобы использовать это с file_roots, вы можете создать отдельную среду для двоичных файлов.

Я не уверен, предназначен ли он для такого использования. Особенно среда file_roots. Но недавно я узнал, что среды делаются максимально гибкими, чтобы вы могли использовать их для всего, что вам может понадобиться.

Возможно, вы захотите взглянуть на gitfs, который позволяет вам нужно монтировать репозитории git в свое дерево состояний. Это сделало бы окружающую среду ненужной. Мы используем этот подход для формул.

В настоящее время мы решаем эту проблему с помощью частной сети и веб-сервера, который делает файлы большего размера доступными для всех миньонов внутри этой сети. Это работает довольно хорошо, так как все наши миньоны подключены к этой частной сети. Запуск такой сети заставляет вас следить за безопасностью связи миньонов и мастеров внутри этой сети. Для этого мы используем локальные брандмауэры на всех подключенных миньонах.

person dahrens    schedule 19.12.2016