Add docs for inventory caching (#46402)
* Add docs for inventory caching
* Fix subsection headers
* Fix top header
(cherry picked from commit c4d1f0d416
)
This commit is contained in:
parent
58cd460952
commit
ed5f0d5c45
1 changed files with 58 additions and 6 deletions
|
@ -2,20 +2,22 @@
|
|||
|
||||
|
||||
Cache Plugins
|
||||
-------------
|
||||
=============
|
||||
|
||||
Cache plugin implement a backend caching mechanism that allows Ansible to store gathered facts or inventory source data
|
||||
without the performance hit of retrieving them from source.
|
||||
|
||||
The default cache plugin is the :doc:`memory <cache/memory>` plugin, which only caches the data for the current execution of Ansible. Other plugins with persistent storage are available to allow caching the data across runs.
|
||||
|
||||
You can use a separate cache plugin for inventory and facts. If an inventory-specific cache plugin is not provided and inventory caching is enabled, the fact cache plugin is used for inventory.
|
||||
|
||||
.. _enabling_cache:
|
||||
|
||||
Enabling Cache Plugins
|
||||
++++++++++++++++++++++
|
||||
Enabling Fact Cache Plugins
|
||||
---------------------------
|
||||
|
||||
Only one fact cache plugin can be active at a time.
|
||||
|
||||
Only one cache plugin can be active at a time.
|
||||
You can enable a cache plugin in the Ansible configuration, either via environment variable:
|
||||
|
||||
.. code-block:: shell
|
||||
|
@ -35,10 +37,60 @@ or the Ansible :ref:`configuration <ansible_configuration_settings>` for more de
|
|||
A custom cache plugin is enabled by dropping it into a ``cache_plugins`` directory adjacent to your play, inside a role, or by putting it in one of the directory sources configured in :ref:`ansible.cfg <ansible_configuration_settings>`.
|
||||
|
||||
|
||||
Enabling Inventory Cache Plugins
|
||||
--------------------------------
|
||||
|
||||
Inventory may be cached using a file-based cache plugin (like jsonfile). Check the specific inventory plugin to see if it supports caching.
|
||||
If an inventory-specific cache plugin is not specified Ansible will fall back to caching inventory with the fact cache plugin options.
|
||||
|
||||
The inventory cache is disabled by default. You may enable it via environment variable:
|
||||
|
||||
.. code-block:: shell
|
||||
|
||||
export ANSIBLE_INVENTORY_CACHE=True
|
||||
|
||||
or in the ``ansible.cfg`` file:
|
||||
|
||||
.. code-block:: ini
|
||||
|
||||
[inventory]
|
||||
cache=True
|
||||
|
||||
or if the inventory plugin accepts a YAML configuration source, in the configuration file:
|
||||
|
||||
.. code-block:: yaml
|
||||
|
||||
# dev.aws_ec2.yaml
|
||||
plugin: aws_ec2
|
||||
cache: True
|
||||
|
||||
Similarly with fact cache plugins, only one inventory cache plugin can be active at a time and may be set via environment variable:
|
||||
|
||||
.. code-block:: shell
|
||||
|
||||
export ANSIBLE_INVENTORY_CACHE_PLUGIN=jsonfile
|
||||
|
||||
or in the ansible.cfg file:
|
||||
|
||||
.. code-block:: ini
|
||||
|
||||
[inventory]
|
||||
cache_plugin=jsonfile
|
||||
|
||||
or if the inventory plugin accepts a YAML configuration source, in the configuration file:
|
||||
|
||||
.. code-block:: yaml
|
||||
|
||||
# dev.aws_ec2.yaml
|
||||
plugin: aws_ec2
|
||||
cache_plugin: jsonfile
|
||||
|
||||
Consult the individual inventory plugin documentation or the Ansible :ref:`configuration <ansible_configuration_settings>` for more details.
|
||||
|
||||
.. _using_cache:
|
||||
|
||||
Using Cache Plugins
|
||||
+++++++++++++++++++
|
||||
-------------------
|
||||
|
||||
Cache plugins are used automatically once they are enabled.
|
||||
|
||||
|
@ -46,7 +98,7 @@ Cache plugins are used automatically once they are enabled.
|
|||
.. _cache_plugin_list:
|
||||
|
||||
Plugin List
|
||||
+++++++++++
|
||||
-----------
|
||||
|
||||
You can use ``ansible-doc -t cache -l`` to see the list of available plugins.
|
||||
Use ``ansible-doc -t cache <plugin name>`` to see specific documentation and examples.
|
||||
|
|
Loading…
Reference in a new issue