HTML Diff
0 added 0 removed
Original 2026-01-01
Modified 2026-02-26
1 <p>Коллекции в Ansible - формат распространения связанного набора плейбуков, ролей, модулей и плагинов. Он появился после того, как количество встроенных модулей внутрь Ansible стало настолько огромным, что их поддержка резко усложнилась. Все встроенные модули перенесли в коллекции<a>Ansible Collections</a>. Часть этих модулей распространяются с Ansible сразу, другие же устанавливаются как роли через Ansible Galaxy.</p>
1 <p>Коллекции в Ansible - формат распространения связанного набора плейбуков, ролей, модулей и плагинов. Он появился после того, как количество встроенных модулей внутрь Ansible стало настолько огромным, что их поддержка резко усложнилась. Все встроенные модули перенесли в коллекции<a>Ansible Collections</a>. Часть этих модулей распространяются с Ansible сразу, другие же устанавливаются как роли через Ansible Galaxy.</p>
2 <p>Список установленных коллекций можно посмотреть так:</p>
2 <p>Список установленных коллекций можно посмотреть так:</p>
3 <p>Коллекция<em>ansible.builtin</em>здесь не указана, так как это единственная коллекция модулей, встроенная прямо в ядро Ansible.</p>
3 <p>Коллекция<em>ansible.builtin</em>здесь не указана, так как это единственная коллекция модулей, встроенная прямо в ядро Ansible.</p>
4 <p>Принцип именования коллекций такой же как и у ролей. Первая часть - неймспейс, вторая имя коллекции. Но в отличие от роли, у коллекций есть и третье имя, модуль, который используется. Посмотрим на примере базы данных PostgreSQL. Ниже задача, которая<a>управляет базой данных</a>:</p>
4 <p>Принцип именования коллекций такой же как и у ролей. Первая часть - неймспейс, вторая имя коллекции. Но в отличие от роли, у коллекций есть и третье имя, модуль, который используется. Посмотрим на примере базы данных PostgreSQL. Ниже задача, которая<a>управляет базой данных</a>:</p>
5 <p>Или другой пример - управление таблицами в существующей базе данных:</p>
5 <p>Или другой пример - управление таблицами в существующей базе данных:</p>
6 <p>PostgreSQL поставляется вместе с Ansible, поэтому его можно использовать напрямую, как и остальные коллекции из списка выше. Если коллекция не входит в стандартную поставку, то ее можно установить через ansible-galaxy. Ниже пример с<a>Nginx</a>.</p>
6 <p>PostgreSQL поставляется вместе с Ansible, поэтому его можно использовать напрямую, как и остальные коллекции из списка выше. Если коллекция не входит в стандартную поставку, то ее можно установить через ansible-galaxy. Ниже пример с<a>Nginx</a>.</p>
7 <p>Коллекция<em>nginxinc.nginx_core</em>содержит внутри набор ролей, для установки и настройки Nginx. Для примера:</p>
7 <p>Коллекция<em>nginxinc.nginx_core</em>содержит внутри набор ролей, для установки и настройки Nginx. Для примера:</p>
8 <p>Или более<a>сложный вариант</a>, с конфигурацией.</p>
8 <p>Или более<a>сложный вариант</a>, с конфигурацией.</p>
9 <h2>Автоматическая установка</h2>
9 <h2>Автоматическая установка</h2>
10 <p>Ansible поддерживает автоматическую установку коллекции по такому же принципу как это делается с ролями. Для этого создается файл<em>requirements.yml</em>, например, в том месте где запускается ansible. Туда добавляется список нужных коллекций:</p>
10 <p>Ansible поддерживает автоматическую установку коллекции по такому же принципу как это делается с ролями. Для этого создается файл<em>requirements.yml</em>, например, в том месте где запускается ansible. Туда добавляется список нужных коллекций:</p>
11 <p>Затем выполняется установка:</p>
11 <p>Затем выполняется установка:</p>
12  
12