导读 Ansible 是一个开源的配置管理工具,我们用于自动化任务、部署应用程序。使用 Ansible,您可以自动执行日常任务,例如更新系统、安装软件、和配置服务。

本文将介绍Ansible基本信息、为什么选择 Ansible 以及如何安装它。

基本信息

学习之前,我们先了解一下常用Ansible术语:

节点信息
  • Control node: 任何安装了 Ansible 的主机。Ansible 控制节点主要用于在托管主机上运行任务。
  • Managed nodes: 被Ansible管理的主机
  • Inventory: 受控节点的列表。
  • ansible.cfg: Ansible的配置文件
模块

模块是 Ansible 以执行常见任务的代码块,Ansible中有丰富的模块。

Task和Playbook

Task是 Ansible 在受控主机上执行的操作。还可以使用临时命令(AD-HOC)执行单个任务。Ansible playbook 是用 YAML 编写任务列表。

为什么使用Ansible?
无需安装agent

与 Chef 和 Puppet 不同,Ansible 是无代理的,这意味着你不必担心在受控节点上安装或配置任何包。由于 Ansible 不会在受控节点上安装任何软件或运行守护程序,因此对于如何升级 Ansible 毫无疑问。

Ansible 使用 SSH 进行通信

Ansible 默认使用 SSH 协议在控制节点和受控节点之间进行通信。然后,Ansible 可以使用 SFTP 与其托管节点进行安全通信,以实现安全的文件传输。

Ansible 并行执行任务

Ansible 与受控节点并行通信,使其能够更快地运行自动化任务。默认情况下,forks 值为 5,但可以在配置文件中更改此值。

安装Ansible

我创建了一个名为 Master 的控制节点和四个受控节点(node1、node2、node3 和 node4),它们都运行Centos8。

Ansible 可以安装在任何机器上,但对控制节点有要求。控制节点应安装 Python 2 (2.7) 或 Python 3(3.5 或更高版本)。不支持 Windows 控制节点。

下面在Master控制节点中使用dnf包管理器来安装ansible:

[root@Master ~]# yum -y install epel-release && yum -y install ansible

可以检查一下已安装的 Ansible 版本:

[root@Master ~]# ansible --version
ansible 2.9.27
  config file = /etc/ansible/ansible.cfg
  configured module search path = ['/root/.ansible/plugins/modules', '/usr/share/ansible/plugins/modules']
  ansible python module location = /usr/lib/python3.6/site-packages/ansible
  executable location = /usr/bin/ansible
  python version = 3.6.8 (default, Oct  7 2019, 17:58:22) [GCC 8.2.1 20180905 (Red Hat 8.2.1-3)]


通过ansible --version可以看到ansible的版本为:ansible 2.9.27,配置文件位置在/etc/ansible/ansible.cfg。下一篇文章介绍如何配置ansible。

本文原创地址:https://www.linuxprobe.com/centos8-ansible-one.html编辑:逄增宝,审核员:逄增宝