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

类似文章