ansible-pull
вытягивает playbook из репозитория VCS и выполняет их для локального хоста
Синтаксис
ansible-pull -U <repository> [options] [<playbook.yml>]
Описание
используется для установки удаленной копии ansible на каждом управляемом узле, каждый из которых настроен на запуск через cron и обновление исходного playbook через репозиторий исходных кодов. Это инвертирует стандартную архитектуру push ansible в архитектуру pull, которая имеет практически неограниченные возможности масштабирования.
Настройка playbook может быть настроена для изменения частоты cron, расположения журналов и параметров для ansible-pull. Это полезно как для экстремального масштабирования, так и для периодических исправлений. Использование модуля «fetch» для извлечения журналов из запусков ansible-pull было бы отличным способом сбора и анализа удаленных журналов ansible-pull.
Общие параметры
-
--accept-host-key -
добавляет хост-ключ для URL репозитория, если он еще не добавлен
-
--ask-vault-pass -
запрос пароля vault
-
--check -
не вносить никаких изменений; вместо этого попытаться предсказать некоторые из возможных изменений
-
--clean -
измененные файлы в рабочей ветке репозитория будут удалены
-
--diff -
при изменении (небольших) файлов и шаблонов показывать отличия в этих файлах; отлично работает с –check
-
--full -
Выполнить полное клонирование, вместо поверхностного.
-
--list-hosts -
выводит список соответствующих хостов; ничего больше не выполняет
-
--private-key, --key-file -
использовать этот файл для аутентификации подключения
-
--purge -
очистить рабочую копию после выполнения playbook
-
--scp-extra-args <SCP_EXTRA_ARGS> -
указать дополнительные аргументы для передачи только scp (например, -l)
-
--sftp-extra-args <SFTP_EXTRA_ARGS> -
указать дополнительные аргументы для передачи только sftp (например, -f, -l)
-
выполнить только те plays и tasks, теги которых не совпадают с этими значениями
-
--ssh-common-args <SSH_COMMON_ARGS> -
указать общие аргументы для передачи sftp/scp/ssh (например, ProxyCommand)
-
--ssh-extra-args <SSH_EXTRA_ARGS> -
указать дополнительные аргументы для передачи только ssh (например, -R)
-
--track-subs -
подмодули будут отслеживать последние изменения. Это эквивалентно указанию флага –remote для git submodule update
-
--vault-id -
идентификатор vault, который использовать
-
--vault-password-file -
файл пароля vault
-
--verify-commit -
проверить подпись GPG проверяемой коммита, если проверка завершается неудачей, прервать выполнение playbook. Это требует, чтобы соответствующий модуль VCS поддерживал такую операцию
-
--version -
показать номер версии программы, расположение файла конфигурации, настроенный путь поиска модулей, расположение модуля, расположение исполняемого файла и завершить
-
-C <CHECKOUT>, --checkout <CHECKOUT> -
ветка/тег/коммит для коммита. По умолчанию поведение модуля репозитория.
-
-K, --ask-become-pass -
запрос пароля для повышения привилегий
-
-M, --module-path -
добавить двоеточием разделенные пути к библиотеке модулей (по умолчанию=~/.ansible/plugins/modules:/usr/share/ansible/plugins/modules)
-
-T <TIMEOUT>, --timeout <TIMEOUT> -
переопределить таймаут подключения в секундах (по умолчанию=10)
-
-U <URL>, --url <URL> -
URL репозитория playbook
-
-c <CONNECTION>, --connection <CONNECTION> -
тип подключения для использования (по умолчанию=smart)
-
-d <DEST>, --directory <DEST> -
директория для коммита репозитория
-
-e, --extra-vars -
установить дополнительные переменные в виде ключ=значение или YAML/JSON, если имя файла начинается с @
-
-f, --force -
выполнить playbook даже если репозиторий не был обновлен
-
-h, --help -
показать это сообщение справки и завершить
-
-i, --inventory, --inventory-file -
указать путь к инвентари хостов или список хостов через запятую. –inventory-file устарел
-
-k, --ask-pass -
запрос пароля подключения
-
-l <SUBSET>, --limit <SUBSET> -
дальнейшее ограничение выбранных хостов дополнительным шаблоном
-
-m <MODULE_NAME>, --module-name <MODULE_NAME> -
Имя модуля репозитория, который ansible будет использовать для коммита репозитория. Доступные варианты: (‘git’, ‘subversion’, ‘hg’, ‘bzr’). По умолчанию используется git.
-
-o, --only-if-changed -
выполнить playbook только если репозиторий был обновлен
-
-s <SLEEP>, --sleep <SLEEP> -
подождать случайный интервал (между 0 и n секундами) перед запуском. Это полезный способ рассеивания запросов git
-
выполнить только те plays и tasks, которые помечены этими значениями
-
-u <REMOTE_USER>, --user <REMOTE_USER> -
подключиться как этот пользователь (по умолчанию=None)
-
-v, --verbose -
режим подробного отображения (-vvv для большего, -vvvv для включения отладки подключения)
Окружение
Могут быть указаны следующие переменные окружения.
ANSIBLE_CONFIG – Переопределение файла конфигурации ansible по умолчанию
Для большинства параметров в ansible.cfg доступно много других.
Файлы
/etc/ansible/ansible.cfg – Файл конфигурации, используется при наличии
~/.ansible.cfg – Файл конфигурации пользователя, переопределяет конфигурацию по умолчанию, если имеется
Автор
Ansible был первоначально написан Майклом ДеХанном.
См. файл AUTHORS для получения полного списка участников.
Лицензия
Ansible распространяется на условиях лицензии GPLv3+.
См. также
ansible(1), ansible-config(1), ansible-console(1), ansible-doc(1), ansible-galaxy(1), ansible-inventory(1), ansible-playbook(1), ansible-pull(1), ansible-vault(1),
© 2012–2018 Michael DeHaan
© 2018–2019 Red Hat, Inc.
Licensed under the GNU General Public License version 3.
https://docs.ansible.com/ansible/2.8/cli/ansible-pull.html