Ansible Integration
Currently, the supported version of Ansible is 2.9 (LTS) shipped in SUSE Linux Enterprise 15 Client Tools channels. The supported OS version for the Ansible Control Node is SUSE Linux Enterprise Server 15 SP3, or later. Ansible software is also available for Uyuni Proxy and Uyuni for Retail Branch Server. For Control Nodes running operating systems other than SUSE Linux Enterprise, use Ansible shipped together with your distribution.
1. Feature Overview
Uyuni enables system administrators to operate their Ansible Control Nodes. Supported features are:
-
inspection of inventory files
-
discovery of playbooks
-
execution of playbooks
For more information:
-
The inventory is a sorted list of managed Ansible nodes. For more information about organizing an inventory, see https://docs.ansible.com/ansible/latest/inventory_guide/intro_inventory.html.
-
Playbooks are a way to describe how the inventory is to be managed. For more information about playbooks, see https://docs.ansible.com/ansible/latest/playbook_guide/playbooks_intro.html.
2. Requirements and Basic Configuration
To use Ansible features, you need to register the already existing Ansible Control Node as a Salt client to the Uyuni Server.
In the Web UI, on the Ansible Control Node
system type of the Add-on System Types
list.
Enabling the Ansible Control Node
system type ensures that the ansible
package is installed on the system by adding it in the highstate and activates the Ansible features under the tab.
As the next step, configure the paths to your Ansible playbook directories and inventory files on the /etc/ansible/hosts
.
As a playbook directory, you can use any directory on the control node, where your playbook files are stored.
A playbook directory either contains .yml
files or subdirectories with .yml
files.
For installing and setting up an Ansible Control Node, see Setup Ansible Control Node.
3. Inventory Inspection
After defining an inventory path, you can use Uyuni to inspect its contents.
-
In the Uyuni Web UI, navigate to
-
Click an inventory path to execute the inventory inspection on the Control Node in real-time.
4. Playbook Discovery
After defining a playbook directory, you can discover playbooks on the
page.As with the inventory inspection, the playbook discovery operations run on the Control Node in real-time.
5. Playbook Execution
You can schedule a playbook execution from the Inventory Path
drop-down menu of the Schedule Playbook Execution
dialog.
If you do not select any item, the default inventory configured in your Control Node will be used.
The drop-down menu is populated with the inventories you defined in your Inventory paths and with inventories that have been locally discovered in your playbook directories.
These are displayed as Custom Inventory
items in the playbook details.
You can also enter an arbitrary inventory path.
Afterwards, you choose the time of the playbook execution or select an action chain. Eventually, Uyuni executes the playbook as an action on the Control Node. You can see the result of the operation on the action details page.