2022-08-08 05:53:35
Ansible是一款基于Python开发的自动化运维工具,集合了多种运维工具的优点,可实现批量系统配置、程序部署及命令运行等功能。其基于模块工作,通过连接插件、主机清单、各类模块、插件及Playbook(剧本)等组件协同完成任务,本身仅提供框架,真正具备批量部署能力的是所运行的模块。


安装Ansible的要求如下:
控制节点要求
系统类型:应为Linux或UNIX系统,不支持将Windows用作控制节点,但Windows系统可作为受管主机。
Python版本:需安装Python3(版本3.5或以上)或Python2(版本2.7或以上)。若操作系统为红帽8.0,Ansible 2.9可自动使用platform-python软件包,无需从AppStream安装python37或python27软件包。可通过命令yum list installed platform-python查看是否已安装platform-python。
受管主机要求
通用要求:Ansible的一大优势是受管主机无需安装特殊代理,控制节点使用标准网络协议连接受管主机以确保系统处于指定状态。但受管主机可能需满足一些要求,具体取决于控制节点的连接方式及运行的模块。
Linux和UNIX受管主机:需安装Python2(版本2.6或以上)或Python3(版本3.5或以上),以运行大部分模块。对于红帽8系统,可启用并安装python36应用流(或python27应用流),使用命令yum module install python36。若受管主机上启用了SELinux,还需安装python3-libselinux软件包才能使用与复制、文件或模板功能相关的模块,工作时建议关闭SELinux功能。
基于Windows的受管主机要求
模块与PowerShell版本:Ansible有许多专门为Windows系统设计的模块,这些模块需在受管主机上安装PowerShell 3.0或更高版本,而非Python。
PowerShell远程连接配置:受管主机需配置PowerShell远程连接。
.NET Framework版本:Ansible要求至少将.NET Framework 4.0或更高版本安装在Windows受管主机上。具体模块可查阅
受管网络设备要求
模块支持:Ansible可配置路由器和交换机等受管网络设备,包含大量专门设计的模块,支持Cisco IOS、IOS XR和NX-OS、Juniper Junos、Arsta EOS以及基于VyOS的网络设备等。
模块运行位置与连接方法:由于大多数网络设备无法运行Python,Ansible在控制节点上运行网络模块。特殊连接方法用于与网络设备通信,通常使用SSH上的CLI、SSH上的XML或HTTP(S)上的API。具体可查阅
安装步骤示例(以CentOS 8为例)
提供YUM源