Ansible是什么
- Ansible是一款自动化运维工具,可以实现运维工作的自动化,降低人为操作失误,提高运维效率。
- Ansible常用于软件部署自动化、配置自动化、管理自动化、系统化系统任务、持续集成、零宕机平滑升级等
- Ansible丰富的内置模块,可以满足日常功能所需
在Ansible去中心化概念下,一个简单的复制操作即可完成管理配置中心迁移- Agentless(无客户端),客户端无需任何配置,由管理端配置好后即可使用.
Ansible工作原理
- Ansible无客户端,底层依赖于系统软件,Linux系统基于OpenSSH通信,Windows系统基于PowerShell,管理节点必须是Linux系统
- 根据Ansible使用过程中的不同角色,将其分成:
- 使用者
- Ansible工具箱
- 作用对象
- Ansible使用者分为:
- CMDB存储和管理着企业IT架构的各项配置信息,可以将CMDB与Ansible组合,通过CMDB直接下发指令调用Ansible工具集完成操作
- 基于PUBLIC(公有云)/PRIVATE(私有云),Ansible以API调用方式运行,Ansible提供了丰富的API接口语言
- 直接使用Ad-Hoc临时命令集调用Ansible工具集来完成任务执行
- 通过执行playbooks中预先编排好的任务集按序完成任务
- Ansible工具集(ansible命令是核心工具,总指挥)
- INVENTORY:命令执行的目标对象配置文件
- API:供第三方程序调用的应用程序编程接口
- MODULES:丰富的内置模块
- PLUGINS:内置和可自定义的插件
- 作用对象
- Ansible的作用对象,不仅仅是Linux和其他非Linux操作系统主机,同样也可以作用于各类公有/私有云,商业和非商业设备的网络设施