Ansible简介
1、选择Ansible的原因
1)Ansible基于python开发,而python被逐渐普及,方便对Ansible进行二次开发;
2)Ansible具有丰富的内置模块(甚至还有专门为商业平台开发的功能模块),满足日常功能所需;
3)Ansible去中心化概念,可以通过简单的复制操作完成管理配置中心的转移;
4)Ansible无客户端,管理端配置完成后即可使用。
2、Ansible工作方式
Ansible没有客户端,底层通信依靠系统软件,Linux系统基于OpenSSH通信,Windows系统基于PowerShell通信;管理端必须是Linux系统,使用者通过认证后,通过Ansible管理工具调用各种模块推送至管理端执行,执行完毕后自动删除产生的临时文件。
Ansible工作过程下分三种角色:
1)使用者
1. 通过CMDB(配置管理数据库)直接下发命令调用Ansible工具集完成对应所需操作;
2. Ansible基于PUBLIC(公有云)/ PRIVATE(私有云)以API调用的方式运行;
3. 使用者直接使用Ad-Hoc临时命令集调用Ansible工具集执行任务;
4. 使用者预先编写好Ansible PLAYBOOK(剧本),通过执行剧本中预先定义编排好的任务集顺序,执行任务
2)Ansible工具集
1. INVENTORY(清单)【命令执行的目标对象配置文件】
2. API(第三方程序调用的应用程序编程接口)
3. MODULES(内置模块)
4. PLUGINS(内置 / 可定义插件)
3)作用对象
Linux & 非Linux主机、各类公有 / 私有云、商业 / 非商业设备的网络设施

3、Ansible通信
Ansible通信方式是基于安全可靠的SSH安全连接,同时因为SSH是每一台Linux主机系统默认安装完成的,因此Ansible无需额外安装其它进程,实现无客户端,进而助力完成去中心化的思想。
1)Ansible SSH工作机制
Ansible是一款基于Python的自动化工具,以其丰富的内置模块、无客户端特性和去中心化设计受到青睐。它通过SSH通信与Linux系统交互,Windows系统则利用PowerShell。使用者可以通过CMDB、API或预定义的PLAYBOOK来调度任务,而Ansible通过INVENTORY、MODULES和PLUGINS管理目标对象。Ansible通信依赖安全的SSH连接,无需额外客户端,简化了管理流程。
960





