加载中...
Ansible 是红帽开发的无代理(agentless)自动化运维工具,通过 SSH 连接目标主机执行 Playbook,用 YAML 描述配置和部署任务,以简单易读著称,是中小型团队服务器配置管理的热门选择。

| 类型 | IT 自动化工具 |
| 首发年份 | 2012 |
| 开发者 | Michael DeHaan,现为 Red Hat 维护 |
Ansible 不需要在被管理机器上安装任何 Agent,只要目标主机开启 SSH(Linux)或 WinRM(Windows),控制机就能推送任务。这比 Puppet、Chef 需要维护 Agent 服务简单得多,适合快速上手和混合环境管理。
执行单位是模块(Module):ansible.builtin.apt 安装包,ansible.builtin.copy 复制文件,ansible.builtin.service 管理服务。模块是幂等的——重复执行不会产生副作用,已安装的包不会重装,内容相同的文件不会被覆盖。[1]
Playbook 是 Ansible 的主要工作单元,用 YAML 描述「在哪些主机上按什么顺序执行哪些任务」。变量、条件(when)、循环(loop)、标签(tags)让 Playbook 有足够的表达力。
Role 是可复用的 Playbook 组件,按约定目录结构组织任务、变量、模板、文件。Ansible Galaxy 是官方的 Role 共享平台,有数万个社区贡献的角色(如配置 Nginx、PostgreSQL、Docker)。Ansible 的推模式(控制机推送)与 Puppet 的拉模式(节点自行拉取)在大规模(数千节点)场景下各有取舍:推模式控制精确,拉模式扩展性更好。

| 类型 | IT 自动化工具 |
| 首发年份 | 2012 |
| 开发者 | Michael DeHaan,现为 Red Hat 维护 |
登录 后参与讨论
暂无讨论,来发表第一条评论吧