Spec-Zone.ru › Ansible 2.7
  • Включение плагинов кэширования фактов
  • Включение плагинов кэширования инвентаризации
  • Использование плагинов кэширования
  • Список плагинов

Плагины кэширования

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

По умолчанию используется плагин кэширования memory, который кэширует данные только для текущего выполнения Ansible. Другие плагины с постоянным хранилищем доступны для кэширования данных между запусками.

Можно использовать отдельный плагин кэширования для инвентаризации и фактов. Если плагин кэширования инвентаризации не указан и кэширование инвентаризации включено, для инвентаризации используется плагин кэширования фактов.

Включение плагинов кэширования фактов

Одновременно может быть активен только один плагин кэширования фактов.

Включить плагин кэширования можно в конфигурации Ansible, либо через переменную окружения:

export ANSIBLE_CACHE_PLUGIN=jsonfile

либо в файле ansible.cfg:

[defaults]
fact_caching=redis

Также потребуется настроить другие параметры, специфичные для каждого плагина. Обратитесь к документации по конкретному плагину или к Ansible конфигурации для получения дополнительных сведений.

Пользовательский плагин кэширования включается, поместив его в cache_plugins каталог, смежный с вашим плейбуком, внутри роли, или поместив его в один из каталогов, указанных в ansible.cfg.

Включение плагинов кэширования инвентаризации

Инвентаризация может быть кэширована с помощью плагина кэширования на основе файлов (например, jsonfile). Проверьте, поддерживает ли конкретный плагин кэширования. Если не указан плагин кэширования инвентаризации, Ansible использует опции плагина кэширования фактов.

Кэширование инвентаризации по умолчанию отключено. Его можно включить через переменную окружения:

export ANSIBLE_INVENTORY_CACHE=True

или в файле ansible.cfg:

[inventory]
cache=True

или, если плагин инвентаризации принимает в качестве источника конфигурации YAML, в файле конфигурации:

# dev.aws_ec2.yaml
plugin: aws_ec2
cache: True

Аналогично плагинам кэширования фактов, одновременно может быть активен только один плагин кэширования инвентаризации, который может быть задан через переменную окружения:

export ANSIBLE_INVENTORY_CACHE_PLUGIN=jsonfile

или в файле ansible.cfg:

[inventory]
cache_plugin=jsonfile

или, если плагин инвентаризации принимает в качестве источника конфигурации YAML, в файле конфигурации:

# dev.aws_ec2.yaml
plugin: aws_ec2
cache_plugin: jsonfile

Обратитесь к документации по конкретному плагину инвентаризации или к Ansible конфигурации для получения дополнительных сведений.

Использование плагинов кэширования

Плагины кэширования используются автоматически после их включения.

Список плагинов

Список доступных плагинов можно посмотреть с помощью ansible-doc -t cache -l. Документацию и примеры использования можно посмотреть с помощью ansible-doc -t cache <plugin name>.

  • jsonfile – файлы в формате JSON.
  • memcached – Использование memcached базы данных для кэширования
  • memory – Кэширование в оперативной памяти, непостоянное
  • mongodb – Использование MongoDB для кэширования
  • pickle – файлы в формате Pickle.
  • redis – Использование Redis базы данных для кэширования
  • yaml – файлы в формате YAML.

См. также

Плагины действий
Плагины действий Ansible
Плагины обратного вызова
Плагины обратного вызова Ansible
Плагины подключения
Плагины подключения Ansible
Плагины инвентаризации
Плагины инвентаризации Ansible
Плагины оболочки
Плагины оболочки Ansible
Плагины стратегии
Плагины стратегии Ansible
Плагины переменных
Плагины переменных Ansible
Список рассылки пользователей
У вас есть вопрос? Заходите на форум!
webchat.freenode.net
#ansible IRC чат-канал

© 2012–2018 Michael DeHaan
© 2018–2019 Red Hat, Inc.
Licensed under the GNU General Public License version 3.
https://docs.ansible.com/ansible/2.7/plugins/cache.html

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API