设为首页 收藏本站
查看: 1838|回复: 0

[经验分享] Fuel 30 分钟快速安装OpenStack

[复制链接]

尚未签到

发表于 2017-6-26 21:10:36 | 显示全部楼层 |阅读模式
  一直以来,对于openstack 的初学者来讲,安装往往是入门的头大难题。在E版本之前,要搭建一个基本能用的openstack 环境那是相当麻烦,自己要装机,自己搞源,自己照着文档敲命令,又没有靠谱的文档,官方给出的文档依旧有好多坑,还有语言问题往往用上好几天时间都装不起来,慢慢地就丧失了学习openstack 的信心!
  不过后来情况有了很大改观,从E版本开始,以后安装过程简化许多,文档质量提高不少。尽管如此对于初学者还讲还是比较复杂,其实很多时候,很多人只是想体会一下openstack,完全不关注安装这门子事情。还好openstack社区足够活跃,很快就有公司做出了比较友好的安装工具,比如今天要向大家介绍的Fuel这个工具,其实这里还可以叫她mirantis openstack,由Mirantis 公司开发。
DSC0000.jpg

关于 Mirantis
  Mirantis,一家很牛逼的openstack服务集成商,他是社区贡献排名前5名中唯一一个靠软件和服务吃饭的公司(其他分别是Red Hat, HP, IBM, Rackspace)。相对于其他几个社区发行版,Fuel的版本节奏很快,平均每两个月就能提供一个相对稳定的社区版。
Fuel 是什么?
  Fuel 是一个为openstack 端到端”一键部署“设计的工具,其功能含盖自动的PXE方式的操作系统安装,DHCP服务,Orchestration服务 和puppet 配置管理相关服务等,此外还有openstack 关键业务健康检查和log 实时查看等非常好用的服务。
  Fuel 3.2基于Grizzly版本,而最新将发布的4.0版本是基于Havana版本的技术预览版,不可用作生产环境使用,同时,4.0版本仍然不包含Heat和Ceilometer组件。
Fuel 的优势
  总结一下,Fuel 有以下几个优点:

  • 节点的自动发现和预校验
  • 配置简单、快速
  • 支持多种操作系统和发行版,支持HA部署 × 对外提供API对环境进行管理和配置,例如动态添加计算/存储节点 × 自带健康检查工具 × 支持Neutron,例如GRE和namespace都做进来了,子网能配置具体使用哪个物理网卡等
Fuel 的架构是怎样的呢?
DSC0001.png

  Fuel 主节点:用于提供PXE方式操作系统安装服务由开源软件Cobbler 提供,另外由Mcollective和puppet 分别提供orchestration服务和配置管理服务。Fuel iso 包发部的时候已经一同打包了Centos6.4 和ubuntu 12.04 安装包,如果需要使用红帽子企业版RHEL6.4 需要自己手动上传。
  目前可以支持openstack SA 或者HA 的安装。现在我们已经对Fuel 有了大致了解,现在来看看用她来安装openstack有多么的方便!
Fuel openstack 安装
  首先要说明的是Fuel 针对目标就是生产环境openstack部署,这里为了讲解安装过程就在虚拟机上演示说明。我的环境是HP笔记本Folio 9470 ,其实是办公用的普通笔记本,读者可以根据实际机器情况自行修改虚拟机配置,我给出了我的配置仅供参考。
DSC0002.jpg

安装说明
  硬件要求

  • 启用虚拟化技术支持:开启BIOS设置里的虚拟化技术支持相关选项,这个会很大程度上影响你的虚拟机性能。
  • 最低硬件配置:cpu:双核2.6GHZ+;内存:4g+;磁盘:80G+
  • 虚拟化工具:Oracle Virtualbox 4.2.18
  安装包准备

  • 下载virtualbox 包 https://www.virtualbox.org/wiki/Downloads/
  • 下载fuel ios包,先要注册一个mirantis 用户账户,目前最新版本是3.2.1 这个版本, MirantisOpenStack-3.2.1.iso (1.8G)http://www.openstack.cn/p383.html
  安装步骤

  • 虚拟环境设置
  • 安装Fuel 主节点
  • 部署openstack节点
  • 部署结果检查
  • 虚拟环境设置
  网络拓扑
  首先在virtualbox 里面自定义如下3个网络:

  • ›Net1:
  • –Network name: VirtualBox host-only Ethernet Adapter#2
  • –Purpose: Fuel administrator network
  • –IP block: 10.20.0.0/24
  • –Linux device: eth0

  • ›Net2:
  • –Network name: VirtualBox host-only Ethernet Adapter#3
  • –Purpose: public/ floating network
  • –IP block: 172.16.0.0/24
  • –Linux device: eth1

  • ›Net3
  • –Network name: VirtualBox host-only Ethernet Adapter#4
  • –Purpose: Storage/ management/ internal network
  • –IP block: 192.168.4.0/24
  • –Linux device: eth2
  虚拟机创建

  • ›VM1
  • –Name: Fuel_3.2.1
  • –vCPU:1
  • –Memory :1G
  • –Disk:30G
  • –Networks: net1

  • ›VM2
  • –Name : Fuel_3.2.1_controller
  • –vCPU:1
  • –Memory :1G
  • –Disk:30G
  • –Network:net1,net2,net3

  • ›VM3
  • –Name: Fuel_3.2.1_compute1
  • –vCPU:2
  • –Memory :2G
  • –Disk:30G
  • –Networks:net1,net2,net3
  网络拓扑
DSC0003.png

  创建网络Net1,注意不要启用dhcp,这个会干扰fuel 自己的dhcp服务。
DSC0004.png

  创建网络net2
DSC0005.png

  创建网络net3
DSC0006.png

安装fuel 主节点
  创建fuel 主节点虚拟机,虚拟机名字为“fuel_3.2.1“。注意网卡选用net1,也就是virtualbox 的”VirtualBox host-only Ethernet Adapter#2“ 网络。
DSC0007.jpg

  设置完成后启动虚拟机,显示boot menu时候,如果需要修改ip地址可以自行修改,默认是不需要修改。
DSC0008.jpg

  开始安装操作系统
  出现该画面时按任意键进入修改fuel 主节点相关配置,可以不修改使用默认值,几秒后进行软件包安装。

  puppet 安装fuel 相关软件,比如Cobbler 等。
DSC0009.jpg

  fuel 主节点安装完成。
DSC00010.jpg

  看fuel 安装是否完成,就登录http://10.20.0.2:8000/ 显示如下页面。
DSC00011.jpg

  可能的问题

  • 如果web 页面不能正常访问,可能是你本机的防火墙把本地的网络拒掉,请先禁用防火墙再试。
  • 如果使用了浏览器http代理,请关闭代理直接访问。
  接下来就开始安装openstack 环境了。
安装openstack 环境
  首先在Fuel web 上创建一个openstack 环境,名字为”demo“,这个环境是可以创多个的,可见fuel可以同时管理多个openstack 环境。这里选择的os 有三种,这里默认选择centos,当然你也可以选择ubuntu 和rhle ,不过rhle 需要手动上传镜像或者提供红帽子官网用户名和密码,fuel 为你自动下载,不过时间比较长,不推荐。
DSC00012.jpg

  这里选择部署openstack 多节点非HA模式。
DSC00013.jpg

  由于我们是在虚拟机中再跑虚拟机,这里选择hypervisor类型为”qemu“。
DSC00014.jpg

  这里选择openstack 的网络部署模式,我们选最简单的方式也是目前最成熟的方式nova-network实现。
DSC00015.jpg

  最后一路使用default 配置,不做更改完成环境创建。 DSC00016.jpg
  创建openstack节点虚拟机VM2和VM3,分别命名为fuel_3.2.1_controller和fuel_3.2.1_compute1,注意计算节点多分配写cpu core ,至少2个,内存2G,当然如果机器配置不够也可以1个core 1G内存,至少后边创建openstack的instance比较慢。
DSC00017.jpg

  设置系统由network启动
DSC00018.jpg

  配置网卡1,接入net1,注意一定要选择 网卡类型为:Pcnet-PCI II,并且开启混杂模式:Allow All.node_vms_set_promiscuous.jpg
DSC00019.jpg

  配置网卡2,接入net2.
DSC00020.jpg

  配置网卡3,接入net3
DSC00021.jpg

  让后分别启动VM2和VM3 DSC00022.jpg
  画面出现bootstrap login 后,在fuel web 页面才可以看到节点被fuel发现。 DSC00023.jpg
  回到fuel web 可以看到两个节点被发现 DSC00024.jpg
  接下来开始针对这两个被发现的节点VM2,VM3配置openstack环境了。 DSC00025.jpg
  首先需要配置VM2和VM3在openstack 中的角色。点击”add nodes“ 添加VM2作为openstack 的控制节点。
DSC00026.jpg

  在点击”add nodes“ 添加VM3作为openstack 的计算节点。 DSC00027.jpg
  修改两个节点的物理网卡和openstack 逻辑网络的映射关系,这里只需要拖拽就搞定。admin 网络已经设置到eth0不能再作修改10.20.0.0/24,public和 instance floating 网络共用eth1 且共用同一个地址块172.16.0.0/24,而private ,management 和storage 共用eth2 但是网络ip不同,需要通过vlan tag 方式实现二层网络隔离。
DSC00028.jpg

  修改两个节点磁盘的分区情况,这里使用默认值,注意storage 分区不能小于10g,否则不能通过验证。 DSC00029.jpg
  再来配置openstack 最复杂的一块网络,其实按照我给的网络拓扑使用默认值就可以安装啦,是不是很方便?不过还是要啰嗦一下:
  public IP用于物理机器和外界通信,floating IP 用于动态分配给openstack instance 实现和外界通信。注意这里地址块不能重叠。 由于private,management和storage共用同一网卡且IP块不同,要实现二层隔离就需要打上vlan的tag,如果是接在真实的交换机,必须启用trunk 模式。 一旦网络配置完毕并安装完成,这个地址是永久不能改变的,所以生产环境下一定要先规划好在部署。 配置完成后点击 ”networking verification“ 按钮,检查网络设置是否正确。
DSC00030.jpg

  验证通过后保持设置,开始部署节点。
DSC00031.jpg

  此时可以发现两个VM开始自动重启开始安装OS。 DSC00032.jpg
  这里比较古怪,安装进度到33%时需要等很久才能往下走。这个时候两个节点的OS都已经安装完成。
DSC00033.jpg

  有什么办法能看到安装的log呢?当然有,这时候可以去log 标签视图查看安装log,选取”other server“,在选对应节点的puppet log 看log 跳动。 DSC00034.jpg
  最后,一切顺利的话,大概20 几分钟安装就会完成了,不过具体时间取决于机器性能,这时候点击http://172.16.0.2 或者 http://10.20.0.4 都可以访问openstack 的dashboard .区别在于172.16.0.2 所谓的公网ip 地址,这个登后dashboard 可以直接使用vnc 访问instance,而10.20.0.4不能。
DSC00035.jpg

  点击链接进入openstack登录页面,输入admin/admin
DSC00036.jpg

  至此,openstack的环境部署完成,这里部署了一个计算节点,一个控制节点。没有部署cinder ,没有部署多计算节点。如果需要部署,请重复上述步骤即可。
  最后,就是验证一下openstack环境是否正确部署。其实fuel 有个非常好的而一个功能,可以快速检测openstack 环境”健康“情况。进入healthcheck 标签,可以一键安全检测,注意不会全部都通过,应为cinder 没有安装,所以create volume 相关的服务会失败。 DSC00037.png
  最后我们还是创个instance 来验证吧?
安装openstack环境验证
  先登录后进入openstack主管理界面,创建一个instance,进入project view – > 打开instances tab -> 点击右上方luanch 按钮。instance 名字为test0
DSC00038.jpg

  instance 创建成功后,同时点击相应instance test0右边的”more“ 按钮,选择”allocation floating ip“,为其分配一个floating ip 地址。
DSC00039.jpg

  直接在web 页面访问instance: 点击 右端 ”more“ -> “console” 按钮进入该页面,这是是用web socket 技术实现的VNC 客户端,用它可以做一些简单instance 管理,不足是不能粘贴拷贝比较麻烦。
DSC00040.jpg

  最后在笔记本上打开一个”cmd“ 终端看一下floating ip 是否通畅。

  至此fuel web openstack 安装介绍结束,如果要安装更多节点请重复上面操作即可。
  其他工具
  当然,openstack安装工具不只是有fuel ,还有红帽子的packstack 也是不错的,并且支持最新版本的openstack 安装。这里有篇文章对二者做了比较全面的介绍 http://www.openstack.cn/p383.html。
  参考文档
  http://openstack-huawei.github.io/mirantis-openstack/
  http://software.mirantis.com/quick-start/
  http://www.openstack.cn/p383.html

运维网声明 1、欢迎大家加入本站运维交流群:群②:261659950 群⑤:202807635 群⑦870801961 群⑧679858003
2、本站所有主题由该帖子作者发表,该帖子作者与运维网享有帖子相关版权
3、所有作品的著作权均归原作者享有,请您和我们一样尊重他人的著作权等合法权益。如果您对作品感到满意,请购买正版
4、禁止制作、复制、发布和传播具有反动、淫秽、色情、暴力、凶杀等内容的信息,一经发现立即删除。若您因此触犯法律,一切后果自负,我们对此不承担任何责任
5、所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其内容的准确性、可靠性、正当性、安全性、合法性等负责,亦不承担任何法律责任
6、所有作品仅供您个人学习、研究或欣赏,不得用于商业或者其他用途,否则,一切后果均由您自己承担,我们对此不承担任何法律责任
7、如涉及侵犯版权等问题,请您及时通知我们,我们将立即采取措施予以解决
8、联系人Email:admin@iyunv.com 网址:www.yunweiku.com

所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其承担任何法律责任,如涉及侵犯版权等问题,请您及时通知我们,我们将立即处理,联系人Email:kefu@iyunv.com,QQ:1061981298 本贴地址:https://www.yunweiku.com/thread-388396-1-1.html 上篇帖子: 7.openstack之mitaka搭建dashboard 下篇帖子: 【转】Openstack中oslo_config模块学习
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

扫码加入运维网微信交流群X

扫码加入运维网微信交流群

扫描二维码加入运维网微信交流群,最新一手资源尽在官方微信交流群!快快加入我们吧...

扫描微信二维码查看详情

客服E-mail:kefu@iyunv.com 客服QQ:1061981298


QQ群⑦:运维网交流群⑦ QQ群⑧:运维网交流群⑧ k8s群:运维网kubernetes交流群


提醒:禁止发布任何违反国家法律、法规的言论与图片等内容;本站内容均来自个人观点与网络等信息,非本站认同之观点.


本站大部分资源是网友从网上搜集分享而来,其版权均归原作者及其网站所有,我们尊重他人的合法权益,如有内容侵犯您的合法权益,请及时与我们联系进行核实删除!



合作伙伴: 青云cloud

快速回复 返回顶部 返回列表