Ansible、Ansible Galaxy和Ansible Tower之间的区别是什么?
Ansible是一款开源的配置管理工具和IT自动化平台。它可以帮助自动化软件配置、配置管理和应用程序部署。
Ansible不像其他应用程序。这就是它与Chef、CFEngine、Salt和Puppet等其他配置管理工具的不同之处。
Ansible Tower提供了一个基于Web的界面来管理Ansible。Ansible用户希望有一个直观的界面,用于快速部署和配置监控。
Ansible Tower是Ansible管理的响应。每种语言和每个框架都有自己独特的能力和细微差别。本文将讨论Ansible、Ansible Tower和Ansible Tower之间的区别。
Ansible简介
Ansible是一款用于配置管理的开源工具,可以自动化软件配置和配置管理。您可以从一台服务器控制和配置多台机器。
它使用推送系统,将配置从主机推送到所有节点。
配置使用YAML编写。它们易于理解,对于服务器管理员来说足够简单。它通过SSH工作,并使用OpenSSH作为传输层。
所有的Ansible配置都可以在一组被称为playbook的YAML文件中找到。这个playbook包含了任务或play。为了配置节点,任务使用模块。
Playbooks是配置编写的地方。在同一顺序中执行playbook中编写的所有任务。它支持同步和异步执行。
您可以在上面的图像中看到几台主机机器。这些主机机器用于执行我们创建的所有配置。
Ansible的优点:
- 免费且开源
- 简单:设置Ansible没有任何问题
- 强大:使用Ansible,您可以同时配置数千台机器
- 灵活:它可以在多个环境中使用。
- 无Agent:不依赖代理节点,如Jenkins。
- 高效:不需要额外的软件来运行。
Ansible的缺点:
- 安装困难
- 不支持Windows
- 向后兼容性
Ansible Galaxy简介
Ansible Galaxy允许用户共享和获取角色。Ansible Galaxy鼓励在服务器配置中使用可重用的角色。Ansible Galaxy经常用于项目中。
Ansible Galaxy基本上是一个Ansible角色描述的公共存储库。所有角色都附带了README,提供了关于角色使用和变量的信息。
Ansible Galaxy拥有许多不断发展和壮大的角色。角色允许您拆分更大的playbook并创建一个结构化的结构。您可以修改自己的角色,然后按照您的意愿使用它们。
Ansible Galaxy角色结构
- README.md是描述角色的Readme文件。该readme文件包含有关角色输入参数和示例yml的所有详细信息。
- tasks – 所有任务可以通过Role在tasks中列出。Role的入口点是Main.yml。执行开始的地方。该文件可以包含其他文件。
- handlers – 此类别包括在此角色或任何其他角色中使用的处理程序。
- defaults – 角色的默认变量。
- vars – 比角色的默认变量更重要的变量。
- files – 可以使用Role部署这些文件。
- templates – 此部分包含可以通过Role使用的模板。
- meta – 元数据可用于在meta中定义角色。此文件还应包括任何角色依赖项。
- tests – 要执行的CI测试。
- library – 在角色中嵌入模块或插件。不由init命令创建。您还可以在此文件夹中创建一个自定义的Python模块,然后在任务中使用它。
Ansible Galaxy是一个允许您创建和管理角色的工具。您将看到Ansible的新版本,并且将会有变化。Ansible版本2.2.8具有集合功能。Ansible内容在集合中分发。它们用于打包和分发模块、playbook和插件。
Ansible Galaxy的优点:
- 集中定位、重用和共享与Ansible相关的内容
- 轻松下载可重用的角色以安装应用程序
- 提高部署速度
Ansible Galaxy的缺点:
- 它是社区驱动的,所以不能保证在模块上的工作
- 许多Ansible Galaxy角色的文档不好
- 大多数Ansible Galaxy角色不是幂等的
Ansible Tower介绍
Ansible Tower是Ansible的用户界面。它是一个基于Web的解决方案,可以由许多不同类型的IT团队使用。
Ansible Tower可以与汽车的仪表盘进行比较。仪表板显示有关您的汽车状况的所有信息:速度、油量、剩余汽油等。Ansible Tower看起来像一个仪表板,但Ansible是引擎。
Ansible Tower允许用户通过图形用户界面远程执行任务。可以使用playbook执行Ansible任务。这些playbook可以使用Ansible CLI执行。然而,Ansible Tower允许通过GUI进行playbook管理和执行。
您可以执行现有的playbook,也可以创建自己的playbook。Ansible Tower还提供集成通知。这允许在任务完成或失败时通知特定团队。这种跨团队的交流对于任何组织都是至关重要的。
它还提供基于角色的访问控制(RBAC),允许您验证谁有权运行作业。这样,只有特定用户才能在Ansible Tower上执行作业。这通常需要遵守行业安全规定。
它提供了RBAC,并显示了详细记录谁在任何给定时间负责什么工作的审计日志。这提供了额外的安全性,如果您只使用Ansible本身很难找到。
Ansible Tower允许在不同应用程序中进行远程代码执行。虚拟机可能处于错误的状态,需要重新启动,Ansible Tower使此操作变得简单和安全。
远程安装软件可用于快速修复安全漏洞或重置密码。通过Ansible部署的网络基础设施和虚拟机的一站式商店是Ansible Tower。
Ansible Tower(与Ansible不同,Ansible Tower需要付费。)有两个版本:高级版和标准版。根据您和公司的IT需求来决定哪个版本最适合。标准版适用于大多数IT操作。高级版适用于关键任务。
联系Red Hat后,他们将为您提供确切的信息。标准版每年约需花费1万美元用于100个节点。高级版每年约需花费1.4万美元用于相同数量的节点。
Ansible Tower的优点:
- 简单的布局
- 帮助您构建持续集成/持续交付(CI/CD)流水线
- 允许调度作业并在每个错误时通知
- 图形化库存管理
- 非常容易设置
Ansible Tower的缺点:
- 价格昂贵
- 基于订阅
- 无法解决或不清楚的合并冲突解决
- 调试复杂
Ansible vs Ansible Galaxy vs Ansible Tower
Ansible可以用作IT自动化工具。它可以部署软件和配置系统。它还可以编排更复杂的IT任务,如持续部署或零停机升级。Ansible的主要目标是简单和易用。
另一方面,Ansible Tower被描述为“Mac和Windows上最强大的GUI工具”。您可以在更高效的GUI中使用Git的所有强大功能。Ansible Galaxy可用于存储Ansible角色。Ansible Galaxy相当于Python的PyPI或Java的Maven。
无法单独使用Ansible Tower,需要与Ansible一起使用。Ansible Tower可以与Ansible Tower一起使用。Ansible是推动基础架构管理和部署的引擎。
Ansible Tower允许我们查看所有内部工作。它允许您查看和控制组织基础架构的安全合规性。
Ansible Tower可以为您的Ansible部署提供RBAC。如果您正在寻找不熟悉编码的专业人员来审查您的基础架构,Ansible Tower也是一个很好的选择。
Ansible vs Ansible Tower vs Ansible Galaxy的比较:
Ansible | Ansible Tower | Ansible Galaxy |
开源配置管理工具 | Ansible的用户界面 | 角色和集合的存储库 |
通过CLI执行playbook | 通过GUI执行playbook | 使用CLI运行ansible-galaxy |
2012年首次发布 | 2015年首次发布 | 2016年首次发布 |
免费使用 | 每年从5000美元开始,用于100个节点 | 免费使用 |
非常简单设置和使用 | 提供对整个Ansible环境的可见性 | 可以在不同的playbook中重用代码块 |
结论
所以,这就是关于Ansible、Ansible Tower和Ansible Galaxy以及Ansible、Ansible Galaxy和Ansible Tower之间的区别的全部内容。一个组织应该考虑其对Ansible Tower的需求,因为它非常昂贵。但总体而言,Ansible是任何类似Linux的环境中的优秀配置管理工具。
您可能还对使用Ansible自动化的内容感兴趣。 Sysadmin tasks