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 SUSE Manager Proxy and SUSE Manager 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
SUSE Manager 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 SUSE Manager Server.
In the Web UI, on the page of the registered system, you must enable 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 page.
As an inventory path, you can use the standard Ansible inventory path /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 SUSE Manager to inspect its contents.
-
In the SUSE Manager 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 page.
After selecting the playbook you wish to execute, you can select the inventory file for the 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, SUSE Manager executes the playbook as an action on the Control Node. You can see the result of the operation on the action details page.