HTML Diff
0 added 0 removed
Original 2026-01-01
Modified 2026-02-26
1 <p>Переменные в Ansible можно устанавливать не только в плэйбуках и пользовательских файлах, но в inventory-файлах. Для того, чтобы установить переменную для конкретного хоста, достаточно после его имени написать название переменной и ее значение:</p>
1 <p>Переменные в Ansible можно устанавливать не только в плэйбуках и пользовательских файлах, но в inventory-файлах. Для того, чтобы установить переменную для конкретного хоста, достаточно после его имени написать название переменной и ее значение:</p>
2 <p>Если же эта переменная относится к группе хостов, то ее можно указать в отдельной секции, добавив к имени группы ключевое слово vars:</p>
2 <p>Если же эта переменная относится к группе хостов, то ее можно указать в отдельной секции, добавив к имени группы ключевое слово vars:</p>
3 <p>Если переменная относится ко всем хостам, то используется ключевое слово all:</p>
3 <p>Если переменная относится ко всем хостам, то используется ключевое слово all:</p>
4 <p>Это особенно полезно, если нужно поддерживать несколько сред развертывания с разной конфигурацией. Таким способом можно указывать разные хосты, пароли и другие конфигурационные параметры.</p>
4 <p>Это особенно полезно, если нужно поддерживать несколько сред развертывания с разной конфигурацией. Таким способом можно указывать разные хосты, пароли и другие конфигурационные параметры.</p>
5 <p>Полный список всех серверов, групп и переменных можно посмотреть с помощью команды ansible-inventory с флагами --list или --graph:</p>
5 <p>Полный список всех серверов, групп и переменных можно посмотреть с помощью команды ansible-inventory с флагами --list или --graph:</p>
6 <p>Если параметров становится слишком много, и они не зависят от среды, то их можно вынести из inventory-файла. Для этого создается директория group_vars с файлами, соответствующими названиям групп. Эти файлы не имеют расширения, но по факту являются yml-файлами. Поэтому в отличие от ini-файла пары параметр=значение записываются в них через двоеточие, например, root_dir: /var/tmp.</p>
6 <p>Если параметров становится слишком много, и они не зависят от среды, то их можно вынести из inventory-файла. Для этого создается директория group_vars с файлами, соответствующими названиям групп. Эти файлы не имеют расширения, но по факту являются yml-файлами. Поэтому в отличие от ini-файла пары параметр=значение записываются в них через двоеточие, например, root_dir: /var/tmp.</p>
7 <p>Так же можно поступать с переменными, которые принадлежат конкретному хосту. Только директория с файлами, соответствующими названиям хостов, будет именоваться host_vars.</p>
7 <p>Так же можно поступать с переменными, которые принадлежат конкретному хосту. Только директория с файлами, соответствующими названиям хостов, будет именоваться host_vars.</p>