Ansible integration

This feature is a technology preview.

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 SLES 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:

  • introspection of inventory files

  • discovery of playbooks

  • execution of playbooks

2. Requirements

To use Ansible features, you need to register your Ansible Control Node system as a Salt client to your SUSE Manager Server. When registered, you must enable the Ansible Control Node system type in the Add-on System Types on the System Details  Properties page of that system.

Enabling this 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 System Details  Ansible page.

As the next step, configure the paths to your Ansible inventories and playbooks on the System Details  Ansible  Control Node page. As an inventory path, you can use the typical ansible inventory path /etc/ansible/hosts. As a playbook directory, you can use any directory on the control node, where your playbooks reside. A playbook directory either directly contains the site.yml or contains subdirectories with this file.

3. Inventory introspection

After defining an inventory path, you can use SUSE Manager to introspect its contents. You can do so on the System Details  Ansible  Inventories page. Clicking an inventory path in this page executes the inventory introspection on the Control Node in real-time.

4. Playbook discovery

After defining a playbook directory, you can discover playbooks on the System Details  Ansible  Playbooks page.

As with the inventory introspection, the playbook discovery operations run on the Control Node in real-time.

5. Playbook execution

You can schedule a playbook execution from the System Details  Ansible  Playbooks page. After selecting the playbook you wish to execute, you can select the inventory file for the execution from the drop-down menu. 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.