Ansible inventory YAML vs INI. Что выбрать?

preview_player
Показать описание

ansible inventory yml vs ini

Ansible — система управления конфигурациями, написанная на языке программирования Python. Применяется для автоматизации настройки и развертывания программного обеспечения. Для конфигурирования сервера минимально нам нужен Python как на локальной машине так и на сервере. Составить требуемое состояния на серверах с помощью сценариев, которые принято называть плейбуками. И составить инвентарь, в который прописать список серверов к которым необходимо применить сценарии. Плейбуке составляются с помощью yaml, а вот инвентарь может быть помещен как в ini файл так и в yaml.

Давай сравним два этих формата составления инвентаря и какой формат выберу я.

Антон Павленко прошел путь от обычно эникея в маленькой государственной компании до Девопс и SRE в крупных международных и Российских компаниях.

#it #regexp #карьера #ityoutubersru #ityoutubers #devops
ХОТИТЕ ПОМОЧЬ РАЗВИТИЮ КАНАЛА?

КОНТАКТЫ:
Еще контакты:
Рекомендации по теме
Комментарии
Автор

Антон, привет! Пара корректировок:
1. Если у тебя заданы какие-то группы, то all: прописывать уже не нужно, группы можно задавать от корня. -2 строчки, -2 индентации, справедливости ради.
2. В yaml группа может входить в несколько других, как в ini, для этого достаточно в children: прописать имя уже заданной где-то группы.
В остальном да, ini отлично подходит для простых и плоских инвентарей, для остального ямл.
ps. Видео пишешь прикольные. Я хоть и перерос их все задолго до того, как нашел твой канал, а все равно приятно посмотреть иногда)

mmorev
Автор

Антон, благодарность за короткий и полезный материал!

Станислав-жя
Автор

Спасибо за короткий обзор надеюсь выйдет вторая часть, где можно будет подробно увидеть процесс запуска.

justfun-yguw
Автор

Давно оставил стезю сисадминства, не был девопсом;
однако, работая в разработке софта, с большим интересом смотрю твои видео.

Такой контент готов смотреть часами и экспериментировать, повторяя. Подтянуть автоматизацию деплоя -- всегда полезно.

ekosandal
Автор

Хороший видос. Проще ini, когда реально не так много серверов под управлением. P.S. Писать переменные в инвентори, сомнительное преимущество.))

VladimirIgnatov-cj
Автор

Когда-то, давным давно, ini использовался для хранения конфигов винды вместо реестра (ньюфаги не знают, олдфаги не помнят). ИМХО, для конфигураций без извращений - самое то.

wcr
Автор

Полностью перевел деплоймент/конфиг менеджмент машин (около 70 он премис и несчетное количество виртуалок в различных дата центрах) с ини инвентори на ямл, намного удобнее в моиум случае, когда специфических переменных для деплоймента много.

tarnad
Автор

Я пускай и не пользовался Ansible inventory, но если говорить о выборе среди файлов конфигурации, то я уже давно использую INI. Я знаком с другими форматами (XML, JSON, YAML, TOML), но, как по мне, INI самый простой.

nakamasama
Автор

Предложение писать какие бы то нибыло переменные (кроме ansible_host - потому что так удобно грепать ip, и еще одной... про порядок мержа групп - ибо только туда и можно) в inventory вызывает у меня улыбку.
Это должен быть очень небольшой проект так что в инвентори помещаются все переменные. Ведь если вдруг они не помещаются (например они объемные структуры данных), то будет использоваться host_vars и тогда помещение части переменных в инвентори = порождение сущностей без необходимости. А ввиду того что от использования host_vars отказаться на практике даже средних проектов невозможно, а их функционал равен (за исключением может быть несущественной очередности применения) inventory vars, использование последних должно быть всегда запрещено на уровне соглашений об кодировании.
Использую только ini формат. Потому что он максимально компактный и в нем удобно (выглядит адекватно) писать многострочечные комментарии.

Petyaumniy
Автор

Я все же продпочту использовать ini, он гораздо проще и более удобнее пишется. А переменные если необходимо создавать, предпочту хранить в yml в директории host_vars

posi
Автор

Запили бесплатные многосерийные курсы на ютубе по Ansible, Gitlab, системам мониторинга вроде Zabbix, Prometheus, ELK и прочему - будет очень полезно и очень приятно, так как у тебя как раз очень подходящая подача для данного формата. К тому же подписчиков увеличится, ибо в основном все приходят на айти каналы за качественными бесплатными онлайн курсами. Итог: тебе аудитория, аудитории - опыт. Взаимный профит :)

NatureFitSport
Автор

посоветуйте онлайн сервисы для изучения ansible

ЮраПивненко-им
Автор

выбор однако на ini. родной файл hosts из коробки ансибла по сути ини, в нем и пишем инвентари. Установил, заполнил, запустил-проверил, и на всегда)

Ustaskz_aka_ave_maria
Автор

Что за музыка играет фоном? Кто нибудь скажет?

MsUrsulus
Автор

Пайтон на ремоут не обязателен, есть много фишек как и без его можно выкрутиться
Как по мне ини удобнее не люблю много говнокода

vadim-et
Автор

На пятиминутное видео - пол минуты неотключаемой рекламы. Серьёзно?

makarov.m.m
Автор

И на работе и дома использую .ini
при чем сначала просто указываю хосты и ansible_ssh_host, потом отдельно по группам, подгруппам и объединяю, чтобы сократить инвентарь, переменная в инвентаре одна
[os.linux:vars]

как то так=) остальное отдельно для каждого хоста или группы=)

DemoriaN
join shbcf.ru