简述Ansible概念及架构
Ansible 是一种开源的自动化运维工具,其核心是无代理、声明式的 IT 自动化。它通过 SSH 连接受管主机,以易于阅读的 YAML 格式定义任务,实现配置管理、应用部署和编排的幂等操作,从而简化运维流程、减少人工操作失误和环境差异。
·
什么是Ansible?
Ansible是一种开源的自动化平台,旨在解决传统手工运维操作的局限性:
如容易出错、容易跳过某些操作,后续验证困难,不同机器上容易出现环境差异,且可能累积差异等问题。
设计宗旨:
1.复杂性会破坏效率:程序简单可靠,减少运维人员的工作量
2.专为易读性优化:便于后续调试和更改
3.声明式思维:实现了操作的幂等性
优点:
1.简单:易于人类阅读,理解和修改
2.强大:能够高效的解决自动化部署、运维、修改的功能。
3.无代理:通过ssh向受管主机发送小程序,无需代理软件,小程序在运行结束后自动销毁,提供了更高的效率和安全性。
常见术语:
场景(play)、剧本(playbook)、任务(task)和模块(module):Ansible通过play指定的顺序对指定的主机或主机组进行一系列任务,包含多个play的文件称为playbook,task通过使用模块来执行自动化任务。
控制节点(control node)和受管主机(managed hosts):Ansible架构的两种计算机类型,Ansible程序只在前者上安装和维护。
清单文件(inventory):用来存储受管主机名、所属组和对应的ip。
工件(Artifact):Ansible运行过程中的日志文件。
事实(facts):受管主机的具体信息和状态,可以被注入成变量,实现对特殊主机的配置。
更多推荐
所有评论(0)