Fuel 简介(wiki 翻译)

Fuel 是什么

Fuel 是一个开源的软件用来部署和管理 openstack ,并且与 openstck 社区息息相关有着自己的 GUI 界面来管理整个 openstack 平台。

值得注意的是,Fuel 是Mirantis 公司开发的部署 openstack 集群工具,主要功能为裸机 PXE 安装操作系统,master 节点提供 DHCP、TFTP 服务,能够实现 openstack 服务编排,通过 puppet 进行配置服务管理,此外还提供了 openstack 关键服务的健康检查和 log 实时查看等基础运维服务。支持 openstack 服务 HA 部署,有比较友好的交互式的 web 界面。

这里有一个在线 demo 传送门:http://demo.fuel-infra.org:8000/

Fuel关键功能

  • 硬件机器自动发现
  • 基于界面的网卡与磁盘配置
  • 多openstack集群管理
  • HA和非HA的部署方式
  • 安装前的环境检查和网络环境验证
  • 安装后的功能测试
  • 在界面上实时查看各节点的日志
  • 支持centos和ubuntu两种发行版, 亦可扩展来支持其它发行版
  • 支持多openstack版本

功能并不见奇, 不过在实际测试过程中发现,fuel所提供的这些功能的特点是其简明和稳定,在每一个功能上都是刚刚好把任务完成,并不去涉及更多内容,任务完成得也相当优秀。

Fuel 架构

Fuel架构图

Fuel不是巨大的单片,而是由几个相互依赖的组件构成的!其中有一些是fuel定义的组件,还有一些是第三方服务提供的比如cobbler、puppet、mcollective等等。一些组件可以被重复利用不需要任何更改,而一些则需调整。

  • UI 是一个用 JaveScript 写的页面应用,主要还是用 bootstrap 框架。
  • Nailgun 是 Fuel 的核心,当然是用 Python 写的。它实现了 REST API 以及部署数据管理。这些数据包括磁盘卷配置、网络配置和其他使之部署成功必要的数据。它需要有编制逻辑去建造指令使部署能顺序性地完成。Nailgun 主要是使用 SQL 存储数据和 AMQP 服务来关联其他 workers。Fuel 的命令行也是由它提供的。
  • Astute 是另外一个重要的组件,代表着 Nailgun 的 workers。它主要是根据 Nailgun 提供的指令运行着某些操作。Astute 实际上什么东西都没有只是一层封装着所有细节和相互影响的服务比如 cobbler、puppet、shell scripts 等等,和提供了异步通用接口给那些服务。它是通过其他基本本地协议(比如 XML-RPC 协议)来管理这些服务或者可以使用 Mcollective agents 去提供定义好的命令比如运行 ’ puppet apply ’ 在其他的远程节点上面或运行某些脚本。当然它是通过 AMQP 来与 Nailgun 交互数据。
  • Cobbler 被用来提供快速网络安装的 Linux 服务。
  • Puppet 仅仅是一个部署安装服务。当然它还创建了 mcollective agent 去管理其他配置管理框架比如 chef、saltstack 等
  • Mcollective agents 实现具体的任务像设备清理,网络连接性测试等等
  • OSTF (OpenStack Testing Framwork,or Health Check)主要执行在部署完成后验证 OpenStack

【原文地址】https://wiki.openstack.org/wiki/Fuel#What_is_Fuel.3F

你可能感兴趣的:(云softwrae)