1. fuel简介

fuel是Mirantis公司提供的一款开源的自动化安装部署OpenStack的工具。为OpenStack相关的社区项目和插件的部署和管理提供了一种直观的GUI驱动体验。

  Fuel带来了消费者级的简单,以简化和加快耗时、往往复杂容易出错的过程部署以及测试和维护各种配置风格的OpenStack的规模。与其他特定于平台的部署或管理工具不同,FUSE是一个上游OpenStack项目,专注于OpenStack和一系列第三方选项的自动化部署和测试,因此它不会受到硬捆绑或供应商锁定的影响。

  2013年,该安装程序在戴尔(C 6220&R 320)、惠普(DL 380)、超级微(6027 TR-HTRF)、联想ThinkServer(RD 530)和思科UCS-C等平台上进行了多次部署测试。

主要特点:

  硬件发现

  UI中的硬件配置(网络和磁盘分区)

  能够拆分和管理多个OpenStack集群

  支持非HA和HA OpenStack部署配置

  部署前检查和网络验证

  部署后检查和运行一组测试以验证已部署的OpenStack。

  通过ui实时查看日志

  对CentOS和Ubuntu的支持,它也可以扩展到支持其他发行版。

  支持多个OpenStack发行版

Fuel结构

  Fuel不是单一的。它由几个独立的组成部分组成。其中一些组件是燃料专用组件,而另一些组件是第三方服务,如Cobler、Puppet、M8.4等。一些组件可以与燃料分开使用,无需任何修改,有些将需要很少的调整。

  UI是用JavaScript编写的单页应用程序。它在底层使用引导和主干框架。检查视频它演示了4.0版燃料的UI和基本功能(这是Mirantis发行版,它仅与Mirantis徽标不同)。

  Nailgun是燃料项目的核心。像其他OpenStack项目一样,Nailgun是用Python编程语言编写的。它实现了RESTAPI以及部署数据管理。它管理磁盘卷、配置数据、网络配置数据和任何其他特定于环境的数据,这些数据是成功部署所必需的。它需要编制逻辑来构建按正确顺序提供和部署的指令。Nailgun使用SQL数据库存储其数据,并使用AMQP服务与工人进行交互。Fuel CLI提供比UI更可能的操作。

  Astute 是它的另一个重要组成部分是代表Nailgun的工人,其功能是根据Nailgun提供的指令执行某些操作。事实上,Astute只不过是一个层,它封装了与各种服务(如Cobler、Puppet、shell脚本等)交互的所有细节,并为这些服务提供了通用的异步接口。根据我们需要做的事情,我们可以直接通过服务的本机协议来管理服务(例如,XMLRPC协议是用于Cobler的),或者我们可以使用MgroupAgent来执行特定的任务,比如在远程节点上启动“傀儡应用”或运行脚本。通过AMQP精明地与Nailgun交换数据。

  Cobbler目前用作供应服务。现在有一个POC可以使用讽刺的方式,并且正在实施一个生产版本。

  Puppet是目前唯一的部署服务。可以创建MCollection代理来管理其他配置管理框架,如Chef、SaltStack等。

  MCollective agents允许我们执行特定的任务,如硬盘清除,网络连接探测等。

  OSTF (OpenStack Testing Framework, or Health Check) 是一个单独的组件,无需fuel就可以轻松地删除和重用。它实现了OpenStack的部署后验证。它的主要目标是验证最大的功能,花费最少的时间。

安装 fuel openstack

  Fuel9.0将会搭载Openstack_Mitaka 版本,这个版本是2016年出的最新版本。Fuel在早先的版本中已经去掉了利用Centos来搭建Openstack的环境;在9.0中只使用Ubuntu和Ubuntu + UCA的部署方式。

2. 利用Oracle VM VirtualBox部署安装fuel

fuel部署OpenStack是需要先有个master节点,再通过master节点来部署OpenStack的控制节点和计算节点等,同时各节点需要部署mon和osd进行ceph存储。

fuel-master是通过pxe的网络来部署各节点的。fuel-master通过pxe实现自动网络装机,将三个节点装上操作系统,一次三个节点只需准备机器,不需要安装操作系统。

利用Oracle VM VirtualBox部署安装的fuel-master操作系统版本为centos7.2,每个操作节点的操作系统为ubantu14.04版本。部署的OpenStack为M版,fuel版本为fuel9.0或者fuel9.2。

2.1 安装fuel节点

1> 打开virtualbox,新建虚拟机

分配内存,为了使能够顺利安装,先将master节点内存给大点

创建新的硬盘,选择默认的硬盘文件类型,动态分配物理硬盘存储。指定虚拟机存放位置和磁盘大小

2> 设定virtualbox网络环境

打开管理→全局设置→网络,选择仅主机模式,点击加号添加网络

3> 给每个网卡配置网段

网络创建成功后,在windows网络线查看创建的网络,确认创建成功

网段规划:

网卡名称

IP地址

描述

adapter2

10.20.0.1/24

PXE网络

adapter3

192.168.10.1/24

管理网络

adapter4

192.168.20.1/24

存储网络

adapter5

192.168.30.1/24

私有网络

adapter6

172.168.0.1/24

外部网络

SSH+PXE网络:用来通过ssh连接到controller node、compute node操作管理物理服务器,自动部署网络;

外部网络:controller每个节点需要一个外网IP地址,该网络还用于虚拟机外部网络访问(例如:float网络);

管理网络:管理网络OpenStack api网络;

存储网络:机访问ceph的网络;

私有网络:租户网络(vm网络)。

  双击新建的网络,进行网卡设置。每个网络设置都必须关掉DHCP,不让自动获取网络,adapter2必须设置成10.20.0网段,因为pxe网络在进行部署时该软件默认配置DHCP用的是该网段。

其他网卡类似。

4> 安装fuel节点

选择新创建的虚拟机,点击设置→启动顺序,勾选掉软驱,利用光驱启动

点击存储→盘片,选择准备好的光盘文件

  点击网络,选择一块网卡,选择第二块部署网络的网卡;控制芯片选择倒数第二个,混杂模式(允许多个VLAN通过)选择拒绝。

点击启动,开始安装fuel-master节点

漫长的安装过程

进入如下界面

fuel网卡配置

设置允许ssh的网段,允许所有的网段

设置pxe地址池,可以自定义,默认DHCP池从10.20.0.3~10.20.0.254

配置DNS,外网DNS设置为8.8.8.8

选择Bootstrap Image为Skip building bootstrap image(使用本地的镜像),否则会报错(无法访问谷歌)

设置ntp服务器地址,一般选择fuelmaster节点自己

保存退出

注意:如果安装过程中没有出现上面设置界面输入fuelmenu命令,进入配置。

配置完成选择

Quit setup > Save and Quit

继续等待半个小时左右提示安装ok即可。UI界面用户和密码均为admin。

安装完成后亦可以使用xshell等远程连接工具进行连接。

5> 在浏览器输入fuel-master的地址进行登录访问,用户密码均为admin,

  \

3. 部署本地源

直接下载会跑到外网去下载,因此需要配置本地源。

1> 上传文件bootstraps和mirrors,并移动到目录/var/www/nailgun/

[root@fuel ~]# ls
...
bootstraps mirrors
[root@fuel ~]# cd /var/www/nailgun/
[root@fuel nailgun]# ls
bootstraps dump extra-repos mitaka-9.0 targetimages
centos error.html index.html mos-centos ubuntu
[root@fuel nailgun]# mv bootstraps bootstraps.bak
[root@fuel nailgun]# cd
[root@fuel ~]# mv bootstraps /var/www/nailgun/
[root@fuel ~]# mv mirrors /var/www/nailgun/
[root@fuel nailgun]# cd bootstraps
[root@fuel bootstraps]# ls
active_bootstrap bootstrap_stub d01c72e6-83f4-4a19-bb86-6085e40416e6
[root@fuel bootstraps]# mv active_bootstrap active_bootstrap.bak
[root@fuel bootstraps]# cd d01c72e6-83f4-4a19-bb86-6085e40416e6/
[root@fuel d01c72e6-83f4-4a19-bb86-6085e40416e6]# ln -s /var/www/nailgun/bootstraps/d01c72e6-83f4-4a19-bb86-6085e40416e6/ /var/www/nailgun/bootstraps/active_bootstrap #添加链接
[root@fuel d01c72e6-83f4-4a19-bb86-6085e40416e6]# cd -
[root@fuel bootstraps]# ll
lrwxrwxrwx root root Jul : active_bootstrap -> /var/www/nailgun/bootstraps/d01c72e6-83f4-4a19-bb86-6085e40416e6/
.....

2> 创建本地镜像

[root@fuel ~]# fuel-createmirror
URLError: <urlopen error [Errno -] Name or service not known>
<urlopen error [Errno -] Name or service not known>
Starting new HTTP connection (): 10.20.0.2
Starting new HTTP connection (): 10.20.0.2
Starting new HTTP connection (): 10.20.0.2
Starting new HTTP connection (): 10.20.0.2
Updating the Cluster repositories...
Updating the release repositories...
Try to update the Release 'Mitaka on Ubuntu 14.04'
Try to update the Release 'Mitaka on Ubuntu+UCA 14.04'
Operations have been completed successfully.

3> 将bootstrap后查看fuel-bootstrap

[root@fuel ~]# fuel-bootstrap list
+--------------------------------------+--------------------------------------+--------+
| uuid | label | status |
+--------------------------------------+--------------------------------------+--------+
| d01c72e6-83f4-4a19-bb86-6085e40416e6 | d01c72e6-83f4-4a19-bb86-6085e40416e6 | active |
+--------------------------------------+--------------------------------------+--------+

4> 激活bootstrap

[root@fuel ~]# fuel-bootstrap activate d01c72e6-83f4-4a19-bb86-6085e40416e6
Starting new HTTP connection (): 10.20.0.2
Starting new HTTP connection (): 10.20.0.2
Starting new HTTP connection (): 10.20.0.2
Starting new HTTP connection (): 10.20.0.2
Bootstrap image d01c72e6-83f4-4a19-bb86-6085e40416e6 has been activated.

5> 验证bootstrap

[root@fuel ~]# fuel-bootstrap list
+--------------------------------------+--------------------------------------+--------+
| uuid | label | status |
+--------------------------------------+--------------------------------------+--------+
| d01c72e6-83f4-4a19-bb86-6085e40416e6 | d01c72e6-83f4-4a19-bb86-6085e40416e6 | active |
+--------------------------------------+--------------------------------------+--------+

激活完成后部署节点已完成部署,可以打开UI界面创建OpenStack项目了。

Fuel的更多相关文章

  1. Fuel快速安装OpenStack

    1 介绍 1.1 关于 Mirantis Mirantis,一家很牛逼的openstack服务集成商,他是社区贡献排名前5名中唯一一个靠软件和服务吃饭的公司(其他分别是Red Hat, HP, IBM ...

  2. fuel openstack 在 VirtualBox 上的部署

    搞了两天,终于搞好了.说说过程: 一开始用的6.1版本的Fuel.iso,按照国内外的教程装了几遍,但是网路验证始终不能通过.自己又不是很懂网络.后来在网上看到说6.1版的需要fuel-master连 ...

  3. mirantis fuel 学习

    这些天看了mirantis中puppet的使用,对puppet的认识有了更深入的理解.mirantis公司的fuel主要是为了方便部署生产环境的openstack的工具.主要是在集群中自动化的安装op ...

  4. fuel部署openStack

    https://code.launchpad.net/fuel [fuel项目] http://www.imgburn.com/ [各种镜像制作工具]

  5. mirantis fuel

    使用mirantis公司的openstack部署工具--fuel,迅速部署体验openStack云管理软件; 1,使用virtualbox虚拟化工具(此工具在此使用主要是为了简化新建虚机的网络规划,f ...

  6. Mirantis Fuel fundations

    Mirantis Nailgun is the most important service a RESTful application written in Python that contains ...

  7. fuel Explain

    http://docs.mirantis.com/openstack/fuel/fuel-5.1/ https://software.mirantis.com/quick-start/ https:/ ...

  8. Fuel 5.1安装openstack I版本号环境

    声明:本博客欢迎转载,但请保留原作者信息! 作者:傅斌杰 团队:华为杭州OpenStack团队 Fuel 简单介绍 Fuel是Mirantis公司开发的部署openstack集群工具,主要功能为裸机P ...

  9. 省钱加油(Fuel Economy)题解

    题目 农夫约翰决定去做一个环游国家旅行,为了不让他的奶牛们感到孤单,于是他决定租一辆货车带领他的奶牛们一起去旅行.这辆货车的油箱最多可以承载G 个单位的油,同时为了简化问题,规定每一个单位的油可以行使 ...

  10. 基于VirtualBox 安装和配置Fuel OpenStack(V6.1)

    1.环境准备 准备一台内存较大的主机,12G以上 下载安装VirtualBox及其匹配的扩展包 virtualbox: http://download.virtualbox.org/virtualbo ...

随机推荐

  1. Xcode 导出C++项目在其他电脑执行

    1.  先找到C++项目的可执行文件的位置 https://blog.csdn.net/qq_34759481/article/details/82700587 2.  关于存储和加载文件的目录,使用 ...

  2. 使用tuna源安装docker-ce

    原文链接:https://mirrors.tuna.tsinghua.edu.cn/help/docker-ce/ sudo add-apt-repository \ "deb [arch= ...

  3. 【NPDP笔记】第六章 市场研究

      6.1 产品市场研究 客户心声Voice of Customer,为了找出问题的解决方法,引导消费者经历一系列的情景并进行结构化的深度访谈,以提炼客户需求的过程 在产品开发决策中,需要获取的信息 ...

  4. mysql8.0 grant 创建账号及权限记录

    针对 42000错误 原文:https://stackoverflow.com/questions/50177216/how-to-grant-all-privileges-to-root-user- ...

  5. IntelliJ IDEA重新打开后把字母隐藏怎么办

    默认Font的字体melno不行,r会隐形 解决方案:更换idea字体,点击apply按钮即可正常显示 修改Font为的consoleas  Size:16   line spacing:1.25

  6. 浅析 Java 中的继承和重写

    浅析 Java 中的继承和重写 Java 中的构造方法不能被继承. Java 中 static 修饰的方法可以被继承,但不能被子类重写. Java 中 final 修饰方法不允许被子类重写,但是可以被 ...

  7. my97整合fineui例子,开始和结束时间

      <f: Toolbar runat ="server">                             <Items>             ...

  8. Linux基础(09)aio高级编程

    1.出于安全性 Linux有一个机制 应用层和内核层是无法互相直接读取内存的, 他们要互相读取数据是有一个拷贝过程的, 如: 应用层要读取内核层的数据就调用read(), 内核就会先把数据copy到一 ...

  9. ZYNQ笔记(1):PL端——led灯

    ZYNQ分为PS和PL,此博客实际上是FPGA中一个完整的FPGA工程的创建. PS:处理系统 (Processing System) 即ARM的Soc部分 PL:可编程逻辑(Programable ...

  10. linux端口映射

    参考文章: http://jingyan.baidu.com/article/ed15cb1b2a332e1be36981ed.html http://www.myhack58.com/Article ...