设置 Ansible 控制节点
要设置 Ansible 控制节点,请在 SUSE Multi-Linux Manager Web UI 中执行以下步骤。
|
要将客户端配置为 Ansible 控制节点,必须在该系统上安装 Ansible 软件包。
通常,Ansible 软件包应从操作系统供应商的官方软件库中获取。
例如,在 SUSE Linux Enterprise 15 SP6 和 SP7 上,Ansible 可通过 |
在 SUSE Multi-Linux Manager Web UI 中,导航到 ,验证是否已选择并同步了
SUSE Linux Enterprise Server 15 SP6 x86_64(或更高版本)以及Systems Management Module和所需的Python 3 Module。部署 SUSE Linux Enterprise 15 SP6(或更高版本)客户端。
在 SUSE Multi-Linux Manager Web UI 中,导航到客户端的 页面。 选择 ,并将客户端订阅到
SUSE Linux Enterprise Server 15 SP6 x86_64(或更高 SP 版本)、Systems Management Module和Python 3 Module频道。选择 。 从
Add-On System Types列表中启用Ansible Control Node并单击 更新属性。导航到客户端概览页面,选择 ,然后单击 应用 Highstate。
选择 事件 选项卡并验证 Highstate 的状态。
如果您想在 SUSE Linux Enterprise 15 SP4 或 SP5 客户端上安装更新版本的 Ansible,必须启用 Python 3 Module。
|
更新版本的 Ansible 不再支持管理使用过时 Python 版本的节点。 如果受管节点仍默认使用旧版 Python,您可能会在运行剧本时遇到连接错误或故障。 为了解决此问题,用户应在受管节点上升级 Python(如果可能),并在 Ansible 清单或配置中设置正确的 Python 解释器。 |
1. 创建 Ansible 清单文件
Ansible 集成工具将剧本部署为清单文件。 为 表 1 中列出的每个操作系统创建一个清单文件。
创建并将您的主机添加到由 Ansible 管理的清单文件中。 Ansible 清单的默认路径是
/etc/ansible/hosts。Listing 1. 清单示例client240.mgr.example.org client241.mgr.example.org client242.mgr.example.org client243.mgr.example.org ansible_ssh_private_key_file=/etc/ansible/some_ssh_key [mygroup1] client241.mgr.example.org client242.mgr.example.org [mygroup2] client243.mgr.example.org [all:vars] ansible_ssh_public_key_file=/etc/ansible/my_ansible_private_key在 SUSE Multi-Linux Manager Web UI 中,从
Ansible选项卡导航到 以将清单文件添加到控制节点。在
Playbook Directories部分下,将/usr/share/scap-security-guide/ansible添加到Add a Playbook Directories字段,然后单击 保存。在
Inventory Files下,将您的清单文件位置添加到Add an Inventory file字段,然后单击 保存。Listing 2. 示例/etc/ansible/sles15 /etc/ansible/sles12 /etc/ansible/centos7有关更多剧本示例,请参见 https://github.com/ansible/ansible-examples.
-
创建您要在清单中使用的 SSH 密钥。
ssh-keygen -f /etc/ansible/my_ansible_private_key
-
将生成的 SSH 密钥复制到 Ansible 受管客户端。 示例:
ssh-copy-id -i /etc/ansible/my_ansible_public_key root@client240.mgr.example.org
-
按如下方式在
/etc/ansible/ansible.cfg中声明私钥:private_key_file = /etc/ansible/my_ansible_private_key
将
my_ansible_private_key替换为包含私钥的文件名。 -
通过从控制节点执行以下命令来测试 Ansible 是否正常运行:
ansible all -m ping ansible mygroup1 -m ping ansible client240.mgr.example.org -m ping
现在您可以运行修复。 有关更多信息,请参见 合规性即代码。