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:

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 System Details  Properties 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 System Details  Ansible tab.

As the next step, configure the paths to your Ansible playbook directories and inventory files on the System Details  Ansible  Control Node 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.

Procedure: Inspecting an inventory from the Web UI
  1. In the SUSE Manager Web UI, navigate to System Details  Ansible  Inventories

  2. 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 System Details  Ansible  Playbooks 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 System Details  Ansible  Playbooks 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.