Jul 262015
 

Mirantis Fuel 6.1,应该是6月24号左右发布,经过了一个月的测试,其实发现做的还是非常不错的。很多朋友估计没有时间,条件去测试,我这里就整理一下使用Fuel的总结。

Fuel 7.0,正式发布时间是9月份,集成Kilo版本,应该也就是在Kilo版本发布后4个月,发布Mirantis自己的版本。其实红帽也差不多,OpenStack的版本,也是差不多4个月后正式发布,这个时候Kilo版本经过2个小版本的升级后,应该是基本可用。

对于红帽的操作系统,应该是CentOS7.1以后的版本,才能算对Openstack实现很好的支持,真的能和Ubuntu进行PK。所以我对Fuel集成Kilo版本还是非常期待。国内的企业客户,其实都是使用CentOS,到时候好好学习一下Fuel的7.0.

 

打包

Fuel同时支持CentOS6.5和Ubuntu 14.04。不过OpenStack的包,并不是发行版自带的,都是Mirantis自己打包的。RabbitMQ,ovs的版本,应该都会和官方有不少区别。

这个做法,其实是很大胆的,用户用的Mirantis的Openstack,其实和红帽,Ubuntu其实是没太多关系,有问题,就只能找Mirantis解决。

安装

在Fuel6.0的时候,Fuel Master安装是比较慢的,好像需要2,3个小时。现在已经半个小时就可以搞定。这里面有一个原因,就是现在光盘的容量减小,不存放Ubuntu的包,你需要从公网去下载。技术上,他应该也是做了些工作,导致整个安装工作,平滑很多。

只支持HA模式

控制节点其实提供两种选择:HA模式和非HA模式。非HA的模式是无法切换到HA模式的。所以在6.1的版本,就去掉的非HA模式。

在HA模式下,你的控制节点的数量,并不是必须是3个,可以是1个,HA Ready,当你规模不大的时候,可以只跑一个控制节点。这样还是非常灵活的。

支持Ubuntu14.04

6.0的时候,ubuntu12.04和Ubuntu14.04,都支持Juno版本,不过Mirantis认为当时的Ubuntu14.04,稳定性无法满足需求,所以发布的时候,还是Ubuntu12.04跑的Juno版本。到了6.1,操作系统才改成14.04.2

其实这也说明一个新版本的操作系统,也是需要1年的时候,才能相对稳定下来。

Fuel对Ubuntu的支持的改变在于已经不集成Ubuntu的安装包,这样导致安装的过程必须联网,其实在国内的环境下,其实用户体验非常不好。Fuel是可以让开发者去定制ISO,把你需要的东西集成进去,希望有开发者站出来,把Ubuntu的包都集成到Fuel里,方便很多用户。

插件机制

Fuel已经变成一个平台,各个硬件厂商,软件厂商都希望集成进来,这就要求插件机制,让用户选择启用那些插件。这其实就是Fuel走向成熟的一个标志。

这个真的是一个非常聪明的做法。厂商希望把自己软件集成进去,那么你就开发插件,测试通过,我就公布出去,让用户选择。作为厂商,你也可以帮助用户在fuel下使用你开发的插件。

下面是Mirantis官方页面发布的插件,下载,直接就可以在fuel的master里进行安装。

  • FWaaS – Firewall-as-a-Service,
  • VPNaaS – VPN-as-a-Service
  • ElasticSearch/Kibana – Log Search, Filtration and Analysis
  • LMA Collector – LMA Toolchain Data Aggregation Client
  • InfluxDB/Grafana – Time-Series Event Recording and Analysis
  • Zabbix – Monitoring

这几个插件我都测试过,非常不错。Grafana,应该还有很多地方需要用户自己进行设置,目前Mirantis还没发布文档。

超融合架构

这个是比较时髦的话题,就是把计算,存储放在一台机器上,通过Ceph,实现nova,glance和cinder的整合。目前Fuel也支持这种设计。只是Juno版本对Ceph的整合还是有点不完善,不过Mirantis应该是把一些代码,merge到Juno版本里,整合的效果应该是不错。

Ceph整合OpenStack,已经持续了快2年,目前离完美,还是有一段距离。按照现在的进度,估计真的要明年的M版本。

目前Fuel的超融合架构,应该是没有对存储和cpu进行隔离,在私有云里使用,应该还是可以接受。

监控

这个可以说是Fuel 6.1最大改进的地方,也是最引人注目的地方。通过插件机制,不仅仅集成了Zabbix,并且把日志监控ELK,性能分析InfluxDB/Grafana集成起来。

过去用户一直都比较头疼,如何维护Openstack,不知道那天突然出现一个啥错误,这个错误是什么原因引起的,如何去汇报问题。有了这些工具,看到全部绿色,你就基本可以睡个好觉。

目前Zabbix,需要安装在控制节点上,自动实现高可用。不过我是有点担心性能是否可以扛住。

ELK和InfluxDB/Grafana,你需要安装在一台单独的机器上,目前还没有实现高可用。

最小规模

经常有朋友问,Fuel的安装,需要多少台机器,我研究了一下,Fuel master装在虚拟机里的话,

  • 控制节点,装在一台机器上,
  • 计算节点一台机器,Fuel是不允许控制节点和计算节点一起安装的。
  • 存储节点,你可以选择装在控制节点上,还是计算节点上,都是可以的。我都是选择Ceph。
  • ELK和InfluxDB/Grafana,装在一台机器上,这是可选。

所以我们至少是需要2台机器,就可以构建一个OpenStack环境,3台机器,基本就可以领略到Fuel的基本功能。如果是按照生产设计,3台控制节点,3台计算节点,3台存储节点,1台监控,那么就刚好10台机器的规模,可以验证Fuel里的各种HA配置。

其实fuel还是可能支持all in one,有朋友通过修改js实现。

修改web界面角色复选,
fuel-web/nailgun/static/js/views/cluster_page_tabs/nodes_tab_screens/node_list_screen.js

具体代码

https://github.com/stackforge/fuel-web/blob/stable/6.1/nailgun/static/js/views/layout.jsx

好吧,让同事学习一下,如何实现all in one。

网络

以前Fuel的一个特点就是安装过程,不需要联网,不过由于fuel的设计的改变,如果是选择Ubuntu,你是必须联网才能完成安装。如果你选择CentOS,那么他默认是需要连接到Mirantis的update里,日后如果有更新,能从这里安装,其实对于现在的安装,是根本用不上,如果去掉这两个源,那么你是可以不联网安装。

Fuel的安装,最麻烦的地方,就是网络的设置,网络验证不通过,你就无法安装。让同事整理一个交换机配置的例子,到时候分享给大家。

单网卡也可以安装,这应该是Fuel的一个很重要的特性。用户经常用台式机来测试,网卡只有一块。所有机器一块网卡也是可以安装的,估计是千兆的,效果好点吧。

Fuel是支持网卡绑定,但是pxe网络,就是admin网络,是不支持bonding的。

还有一点,就是GEE网络下, 6.1已经实现虚拟机通讯的网络和管理网络分开。已经是非常另外。另外vxlan的支持,应该是7.0的重头戏。

  29 Responses to “Mirantis Fuel 6.1 介绍”

  1. 网络配置是很麻烦,我用了6个vmnetwork也不容易通过验证,期待你同事的网络配置最佳实践

    • 我是用物理机器做实验,这个倒是可以给出一个配置,大家参考。

      • 陈老师,单网卡如何安装,求一份交换机VLAN配置,还是说需要配trunk。我外网明明是通的,老是说外网不通,找不到下载源。

  2. all-in-one
    fuel-web/nailgun/static/js/views/cluster_page_tabs/nodes_tab_screens/node_list_screen.jsx

    446行 .map(function(role) {return roles.findWhere({name: role}).conflicts;})
    将{}内改为return []就好

  3. 您好,我在物理服务器上安装的,ToR交换机配置对了,因为“网络验证”是通过的,但是进度100%后总是报错如下,请问什么原因啊,谢谢!
    Deployment has failed. Method granular_deploy. Failed to execute hook ‘puppet’ Puppet run failed. Check puppet logs for details

    priority: 200
    fail_on_error: true
    type: puppet
    uids:
    – ‘1’
    – ‘3’
    – ‘4’
    parameters:
    puppet_modules: “/etc/puppet/modules”
    puppet_manifest: “/etc/puppet/modules/osnailyfacter/modular/virtual_ips/public_vip_ping.pp”
    timeout: 3600
    cwd: “/”
    .
    Inspect Astute logs for the details

    • 我没有碰到过,网络验证通过,安装有问题的。如果有问题,你可以反复多次。如果还是遇到相同的错误,那么你就只能提交bug。

    • 看了public_vip_ping.pp这个脚本,貌似是ToR物理交换机上没有配置Gateway的原因。

      notice(‘MODULAR: public_vip_ping.pp’)

      $run_ping_checker = hiera(‘run_ping_checker’, true)
      $network_scheme = hiera(‘network_scheme’)
      $ping_host_list = $network_scheme[‘endpoints’][‘br-ex’][‘gateway’]

      if $run_ping_checker {
      $vip = ‘vip__public’

      cluster::virtual_ip_ping { $vip :
      host_list => $ping_host_list,
      }

      }

  4. 陈老师,你好:
    由于在学习openstack,在网络验证时遇到些问题,还希望指教:
    我现在在PC上用Virtual Box 5.0.2作为虚拟环境,操作系统是win10家庭版,机子处理器是Intel Core i5, 安装内存8g,64位,采用的mirantis fuel版本是6.1,也就是去除掉非HA部署模式的那个版本。
    现在遇到的问题是,验证网络时,给出如下错误:
    验证失败。
    These nodes: “2”, “1” failed to connect to some of these repositories: “http://mirror.fuel-infra.org/mos/centos-6/mos6.1/security”, “http://mirror.fuel-infra.org/mos/centos-6/mos6.1/updates” Repo availability verification using public network failed on following nodes Untitled (8d:21), Untitled (8c:b0). Following repos are not available – http://mirror.fuel-infra.org/mos/centos-6/mos6.1/security, http://mirror.fuel-infra.org/mos/centos-6/mos6.1/updates . Check your public network settings and availability of the repositories from public network. Please examine nailgun and astute logs for additional details.
    我的public network对于打开”http://mirror.fuel-infra.org/mos/centos-6/mos6.1/“没有问题,Fuel Master和Controller以及Compute在Virtual Box里都有着相同的网络配置,网卡1到3分别对应虚拟机全局设定里的Host-Only Adapter#2到#4,网卡4为NAT。如果可以发图片的话我会把问题描述的更清楚,我正在尝试从官方文档找问题,但是进展缓慢,所以想请教一下,我的qq:947014464。谢谢您。

  5. hi:目前正在研究openstack中trove服务,官网上文档从icehouse,juno,kilo都说该文档正在开发中,昨天装了juno版,还是有不少问题的,目前不可用,请问您知道大概什么时候可以稳定。kilo到现在也有一段时间,等fule 9月出kilo版能稳定吗?

    • 一个软件需要3,5年才能稳定下来,目前看来还是有道理的。trove目前应该也就出来1年多,问题应该是很多的。

  6. 我使用Vmware Workstation 安装FUEL,到网卡 vlan tag那步总是验证不过去,提示node节点无法识别vlan tag,咨询下陈老师这里可能是什么问题?感谢!

  7. 陈老师,请教下第4楼中“把连接到外网的源删掉”,具体如何操作呢?谢谢!

  8. 陈老师,你好,我是使用vApp来搭测试环境的,配置的网络又五个,管理网、pxe、外网、内网、存储网,在网络验证的时候出现vlan未接收。这个是什么原因呢?有什么解决办法?

    • 我也遇到了同样的问题,把出现问题的网卡接口接入的交换机端口改成trunk模式,允许所有vlan试一下看

  9. 我想问一下关于网络插件是怎么进行配置的

 Leave a Reply

(required)

(required)