Рекомендуемая структура каталогов
Где хранятся плейбуки, инвентарь и vars.
«Рекомендуемая структура каталогов» — бесплатный урок DevOps Bootcamp на CoddyKit. Это урок 1 из 4. Ты можешь прочитать весь урок бесплатно ниже — а потом практиковать его прямо в браузере с встроенным редактором кода и ИИ-репетитором 24/7. Это часть пути обучения DevOps Bootcamp, и твой прогресс синхронизируется между веб-версией и приложением CoddyKit. Курс DevOps Bootcamp содержит 4 уроков всего.
Почему важна структура
По мере роста проектов разрозненные файлы превращаются в хаос. Стандартная структура каталогов точно показывает Вашей команде, где что находится. 📁
Точка входа site.yml
По соглашению site.yml — это плейбук верхнего уровня, который связывает всю инфраструктуру и подключает остальные компоненты.
# site.yml
- import_playbook: webservers.yml
- import_playbook: dbservers.ymlИнвентарь в корне
Ваш файл инвентаря (или каталог) находится ближе к верхнему уровню, поэтому расположенные рядом плейбуки всегда знают, какими хостами они управляют.
myproject/
inventory
site.ymlПлейбуки для отдельных функций
Разделяйте большие плейбуки на целевые файлы, например webservers.yml и dbservers.yml, а затем объединяйте их из site.yml.
Каталог group_vars
Каталог group_vars содержит переменные, применяемые ко всем группам хостов; они автоматически загружаются по имени группы.
group_vars/
webservers.yml
dbservers.ymlКаталог host_vars
Каталог host_vars делает то же самое для отдельных машин: для каждого хоста используется один файл с его именем.
host_vars/
web01.example.com.ymlКаталог roles
Повторно используемая автоматизация хранится в каталоге roles. Ansible сначала ищет роли здесь, когда плейбук ссылается на роль по имени.
roles/
common/
nginx/Пользовательская библиотека и плагины
Папка library содержит пользовательские модули, а module_utils и filter_plugins — общий вспомогательный код, который Ansible обнаруживает автоматически.
Держите ansible.cfg рядом
Разместите ansible.cfg в корне проекта. Ansible подхватит конфигурацию из текущего каталога, сохраняя настройки локальными для проекта.
# ansible.cfg
[defaults]
inventory = ./inventory
roles_path = ./rolesОдин репозиторий — полная картина
При такой структуре одного клонирования git достаточно, чтобы товарищ по команде получил плейбуки, инвентарь, переменные и роли в одной согласованной структуре. 🎯
Полный каркас
Вот рекомендуемый каркас, который предлагают официальные документы. Запомните структуру, а не каждый файл.
myproject/
ansible.cfg
inventory
site.yml
group_vars/
host_vars/
roles/Быстрая проверка
Какой файл по соглашению является точкой входа верхнего уровня для всего проекта?
Повторение
Вы изучили стандартную структуру: site.yml, инвентарь, group_vars, host_vars и roles в одном репозитории. Предсказуемая структура масштабируется вместе с Вашей командой. ✅
Часто задаваемые вопросы
Урок «Рекомендуемая структура каталогов» бесплатный?
Да — полный текст урока «Рекомендуемая структура каталогов» бесплатно доступен здесь в веб-версии. Чтобы практиковать его интерактивно (встроенный редактор кода и ИИ-репетитор 24/7) и разблокировать остальной курс DevOps Bootcamp, подпишись на CoddyKit PRO. Курс DevOps Bootcamp содержит 4 уроков всего.
Чему я научусь в уроке «Рекомендуемая структура каталогов»?
Где хранятся плейбуки, инвентарь и vars. Ты практикуешь DevOps Bootcamp с помощью реального кода, который запускаешь прямо в браузере, и ИИ-репетитор 24/7 отвечает на твои вопросы во время урока.
Нужен ли мне опыт, чтобы начать DevOps Bootcamp?
Предыдущий опыт не требуется. DevOps Bootcamp на CoddyKit структурирован для всех уровней — от новичков до продвинутых, поэтому ты можешь начать отсюда или с самого начала и учиться в своем темпе. Это урок 1 из 4.
Сколько времени занимает урок «Рекомендуемая структура каталогов»?
Большинство уроков CoddyKit занимают около 5–10 минут. Каждый из них компактный и интерактивный, поэтому ты постоянно делаешь прогресс и продолжаешь с того же места в веб-версии и приложении.
Можно ли писать и запускать код в этом уроке DevOps Bootcamp?
Да. Каждый урок DevOps Bootcamp включает встроенный редактор кода, поэтому ты пишешь и запускаешь реальный код прямо в браузере и получаешь моментальную обратную связь от AI — локальная установка не требуется.
Все уроки этого курса
- Рекомендуемая структура каталогов
- Каталоги group_vars и host_vars
- Разделение плейбуков с помощью import и include
- Именование, комментарии и стиль для масштабирования