LINUX.ORG.RU

Управление конфигами + Ansible

 , , , ,


0

3

Нужнен совет от девопсов.
Есть проект в вакууме с конфигами
С помощью чего лучше организовать управление конфигами для проекта в гите чтобы это было модульно, просто и понятно?
Конфиги деляться на dev, test, prod.
Есть список серверов на которые нужно уметь ставить какую либо из конфигураций выше. Например:

ansible deploy my_server conf=dev
Это команда берет проперти из гита и устанавливает проект на my_server в соответсвии с dev конфигурацией.


Это хорошо группируется в inventory:

[dev]
one.example.com

[test]
two.example.com

[prod]
three.example.com


Далее в group_vars описываешь параметры для группы dev, test и prod. Так сразу видно какая версия на каком хосте.

vrutkovs ★★
()
Ответ на: комментарий от vrutkovs

Если я правильно понял вопрос, то вариант с инвентаризацией предпочтительнее, чем деление dev/test/prod ролями.

LeNiN ★★
()
Ответ на: комментарий от rusich

Не уверен. :) Лучше попробуй и реши, что для тебя лучше.

DALDON ★★★★★
()

В общем тут ничего сложного нет - пишешь сценарий, который раскидывает конфиги, предварительно вытащив их из vcs. Какие конфиги на какой хост описываешь в инвентаре (или в group_vars).

Конфиги деляться на dev, test, prod.

У меня конфиги нескольки стендов одного проекта храняться отдельно друг от друга, но в основном потому что в конфигах есть нюансы. Если у тебя нормальный процесс разработки и конфиги идут dev -> test -> prod с правкой только каких-то стендоспецифичных адресов - тут можно организовать все на гитовых ветках - коммитишь в ветку dev, заливаешь конфиг, потом мержишь изменения в test, заливаешь конфиг, ну и потом мержишь в мастер.

В общем сами сценарии показать не обещаю, но если опишешь проблемы расскажу как я их решал.

alozovskoy ★★★★★
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.