管理 OpenStack 服务器的 5 大开源工具

利用这些开源工具高效管理OpenStack。

在云计算领域,最核心的原则是在按需云服务出现时实现一切自动化。 软件开发工作通常涉及持续部署和操作遍布全球的环境,特别是当使用按需云服务时。

OpenStack 是一个开源平台,允许你构建运行在通用硬件上的基础设施即服务 (IaaS) 云。 OpenStack 背后的技术由一系列相关项目组成,这些项目为云基础设施解决方案提供不同的组件。 它可以作为独立云在数据中心内部处理大量的存储和网络资源,也可以在外部作为公共云处理。

为了管理OpenStack云基础设施,你需要管理各个云服务的配置。 OpenStack的主要优势在于其横向可扩展性,因此,随着时间的推移,增加网络和存储系统来扩展云变得非常容易。

若想学习OpenStack,不妨看看这个必备课程

云可扩展性的重要部分是设置和运行云所需的时间成本,以实现扩展,并降低运营成本。 所有这些都需要一个包含配置管理系统的自动化部署和配置基础设施。

有很多开源工具可以用来安装、管理和运行OpenStack云。 最重要的问题是如何选择最适合的工具。

Chef

Chef是一个强大的自动化框架,无论基础设施的规模如何,都可以轻松地将服务器和应用程序部署到任何真实的、虚拟的或云端的位置。 Chef 是一款专注于开发者用户群的产品。 Chef 包含处理OpenStack不同偏好的“食谱”。

它使用Ruby作为编程语言,并由一个可搜索的门户组成,用户可以在其中获取社区贡献的技术和“食谱”。 Chef 自动处理配置管理,确保系统配置正确且一致。

Chef 采用基于代理的架构,每个虚拟机或服务器实例上都有一个客户端,并由中央主代理进行管理。 Chef 还因其丰富的“食谱”和文档而得到广泛支持。 它的一些功能包括:

  • 使用简单的声明式定义来处理简单的管理任务。
  • 配置多种基于云的SaaS服务,并集成云供应API。
  • 它提供了一个管理本地和云资产的统一流程。
  • 使基础设施高度灵活、可版本化和可准确测试。
  • 确保整个开发生命周期的配置一致性。
  • 自动纠正配置漂移。
  • 它由Chef Development Kit组成,该工具包具有强大的测试工具,用于验证基础设施的变更。

这种 IT 自动化和配置工具非常适合以开发为中心的基础设施项目。 它使用“食谱”来提供配置管理和许多基础设施管理任务。

Ansible

Ansible 是一种基础设施自动化工具,支持配置系统、部署软件以及设置更高级的 IT 密集型任务,例如一致的部署和安装更新时的零停机时间。 Ansible 的 OpenStack 模块可用于管理各种云操作。

Ansible 不仅仅是简单的部署工具。

Ansible 的主要目标是简单易用。它还非常注重安全性和可靠性。 Ansible 提供了强大的工具,用于设置和管理 OpenStack,包括配置、部署应用程序以及在云端运行。

它基于简单的无代理架构,因此无需在安装前配置虚拟机或工作站。 通常,可以通过命令行来使用Ansible。 它的一些功能包括:

  • 它为所有配置管理问题提供了简洁的解决方案。
  • 允许可靠且可重复的 IT 基础设施配置。
  • 其设计目的是让管理员和开发人员易于学习。
  • 为系统管理员提供一个最安全的远程配置管理系统,通过使用模块或例程在节点上执行各种任务的控制语言。
  • 它拥有超过 1300 个模块,并拥有活跃的支持和开发社区。

Fuel

Fuel 是一个基于 GUI 的工具,供系统管理员设置和管理 OpenStack 云。 Fuel 是一个上游 OpenStack 项目,专注于自动化 OpenStack 的部署和测试以及一系列第三方选项。

Fuel 会自动检测从网络连接的所有虚拟节点。 它由几个独立的组件组成。 有些组件可以独立于 Fuel 重复使用而无需任何修改,而另一些则需要稍作调整。 以下是它的一些特点。

  • 它执行部署后检查并运行测试,以验证已部署的 OpenStack 云。
  • 它可以启动和管理多个 OpenStack 集群。
  • 它包括对 CentOS 和 Ubuntu 的支持。
  • 它帮助系统管理员通过 OpenStack 云的 GUI 跟踪实时日志。

Puppet

Puppet 是一种声明式语言,用于按需进行 OpenStack 配置和版本管理的“一次编写,多次部署”包。 Puppet 部署在客户端/服务器模式或无服务器模式下,其中客户端定期轮询服务器以获取所需状态并将状态记录返回给服务器。

Puppet 可以在节点的整个生命周期内规划、升级和管理节点。 所有模块和配置都是使用基于 Ruby 或 Ruby 本身的 Puppet 特定语言生成的,因此,在扩展系统管理技能方面需要编程方面的专业知识。 它包括 Web UI 和报告工具。

Puppet Enterprise 允许使用主服务器上的预构建模块实时管理节点。 报告工具已经完全开发,提供了有关代理如何执行以及进行了哪些更改的深入详细信息。 它的一些功能包括:

  • 它支持具有特定报告和合规因素的全面自动化。
  • 它具有来自 Forge 的集成和模块。
  • 使修补和更新变得轻松。
  • 创建强化的基准配置,以满足监管标准。
  • 自动化和强制执行补丁管理并减少潜在的漏洞。

Compass

Compass 用于 OpenStack 的自动化部署和管理。

它降低了数据中心服务器管理中的复杂性、管理时间并控制了各种错误。 它支持从裸机节点引导与任何云平台相关的服务器池。

Compass 协助系统管理员识别硬件、部署操作系统和管理程序,并提供全面的配置管理。 更多功能如下。

  • 允许通过元数据实现不同的配置风格。
  • 协助基础设施引导准备,并为操作员提供可编程性。
  • 通过集成多个工具实现 OpenStack 集群配置的可扩展性。
  • Compass 核心与许多其他工具结合使用,用于资源发现、操作系统规划和软件包部署。

结论

您应该从最终检查和测试每个工具入手,以确保哪些工具满足您的要求。 谈到 OpenStack,有足够的工具和技术来减少安装和设置的麻烦; 如果您正在考虑建立私有云,我们建议使用 Fuel 或 Ansible。 您还可以阅读 8 个云对象存储来存储公共和私有数据。