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

[经验分享] fuel9.0离线安装openstack,一个完整的openstack生态

[复制链接]

尚未签到

发表于 2018-5-31 06:52:14 | 显示全部楼层 |阅读模式
  前言:由于openstack框架的庞大,所以人工的源码安装基本只能适用于小规模的集群,而稍微上点规模的集群都是需要个安装工具的(只要你愿意,当然也可以源码安装。。。),fuel便是其中一员,但是尴尬的是,mirantis上面都找不到fuel9.0的相关文档了T_T,因为mirantis打算推自己的mcp,放弃fuel了,而mcp是什么呢?在k8s上面装openstack,虽然看起来更复杂了,但其实更"方便"了,这几乎也是一个趋势了。
  

正文

  我所说的openstack生态指啥?恩,这个词又是我杜撰的。
  如果只是搭一个openstack集群,其实很危险,特别是规模比较大的时候,因为靠手工的检查或者脚本的检查是很难感知整个openstack集群的状态的,所以要能时时刻刻感知到openstack集群的状态才算一个完整的生态。
  怎么感知呢?
  日志
  收集openstack节点的服务日志,由于排查,追溯错误。
  性能指标
  发现openstack的性能瓶颈,或者定位问题。
  监控报警
  用于及时响应openstack发现的错误,可以第一时间解决。
  

  

  关于上述的感知,其实fuel已经提供了比较完善的插件了,所以不需要一项一项的配置,虽然fuel有点被放弃的意思,但是还是能够用的。。。。
  无图无真相,感知效果如下
  日志
DSC0000.png

  服务状态
DSC0001.png

  性能指标
DSC0002.png

  虚拟机性能指标
DSC0003.png

  nagios监控报警
DSC0004.png

  值得说明的是,还有zabbix的监控报警可以选择。
  

  

  

  准备文件
  iso文件: MirantisOpenStack-9.0.iso
  离线源: fuel9.0-repo-0624.tar.gz
  bootstrap镜像: bc3e3b14-0845-4804-b913-7405751765f2.tar.gz
  下载链接:

  http://pan.baidu.com/s/1nuEWwxb 密码:njr4
  

  

  Lma插件:
  下载链接: https://www.mirantis.com/software/openstack/fuel-plugins/
  elasticsearch_kibana-0.10-0.10.2-1.noarch.rpm
  influxdb_grafana-0.10-0.10.2-1.noarch.rpm      
  lma_infrastructure_alerting-0.10-0.10.3-1.noarch.rpm
  

  
  virtualbox安装
  节点分配表

节点类型内存Cpu网卡1网卡2网卡3磁盘
(最低)
实际配置大小
Node1Fuel21Pxe/Adminmgmtn/a50GB50GB
Node2控制节点41Pxe/AdminmgmtPrv/stg/public50GB100GB
Node3计算节点21Pxe/AdminmgmtPrv/stg/public50GB100GB
Node4Lma节点41Pxe/AdminmgmtPrv/stg/public120GB300GB
  
  
  
  网络环境准备
  1.创建三个host-only网络
DSC0005.jpg

  
  

  依次将其ip地址设置为10.20.0.1172.16.0.1192.168.0.1并取消dhcp,示例如下。
DSC0006.jpg

DSC0007.jpg

  
  
  
  然后根据节点分配表,创建相应规格的虚拟机,并配置相应的网卡。
  示意如下。
DSC0008.jpg

  
  
  

  每个节点的第一块网卡中的混杂模式都设置为不允许,然后其他网卡设置成全允许,示例如下。
DSC0009.jpg

  
DSC00010.jpg

  
  
  
  

  将准备的iso镜像文件挂在到fuel虚拟机。
DSC00011.jpg

  
  
  注意:openstack节点的系统设置中的”启动顺序”里面要勾选”网络”
DSC00012.jpg

  
  
  
  

  启动fuel
  等待大概十五到二十分钟后fuel节点就会将fuel节点相关的服务安装完成,然后重启。
  重启之后就会在启动后跳转到以下界面。
DSC00013.jpg

  
  
  

  

配置fuel menu

  
  Fuel User
  配置fuel的用户名密码,默认是admin/admin,根据实际需求更改。
DSC00014.jpg

  
  
  
  Network Setup
  配置相应网卡的ip地址。
  eth0:
DSC00015.jpg

  
  eth1:
DSC00016.jpg

  
  
  

  Security Setup
  fuelssh连接设置,默认只有pxe网段的ip能够ssh连接。
  这里改成任意网段。
DSC00017.jpg

  

  PXE Setup
  可设置dhcp地址以及dhcp分配的ip地址范围。
DSC00018.jpg

  
  
  

  DNS & Hostname
  由于在内网,且没有内部dns服务器,所以不需要设置。
DSC00019.jpg

  注:这里dns可以设置成8.8.8.8或者留空。
  Fuel的配置文件更改,可用fuel settings更改
[root@fuel ~]# fuel settings -h
usage: fuel settings [-h] --env ENV (--download | --default | --upload)
                     [--dir DIR] [--force]
optional arguments:
  -h, --help            show this help message and exit
  --env ENV, --env-id ENV
                        environment id
  --download, -d        Modify current configuration.
  --default             Open default configuration.
  --upload, -u          Save current changes in configuration.
  --dir DIR             Directory with configuration data.
  --force, -f           Force settings upload.
Examples:
To upload settings for some environment from some directory:
            fuel --env 1 settings --upload --dir path/to/directory
To download default settings for some environment in some directory:
            fuel --env 1 settings --default --dir path/to/directory
To download settings for some environment in this directory:
            fuel --env 1 settings --download  

     
  Bootstrap Image
  选择 Skip building bootstrap image,后面会离线导入,再者内网没有网络连接,且软件源在国外,在线创建几乎不会成功。
DSC00020.jpg

  

  Time Sync
  将ntp服务器指向fuel服务器的ip地址
DSC00021.jpg

  注意:点击check的时候会失败,但是没关系。
  
  
  

  Root Password
  Fuel 服务器的root密码
DSC00022.jpg

  

  后面Feature groups,Shell Login,Restore settings都不需要设置。
  
  最后Quit Setup选择 Quit and Save
DSC00023.jpg

  

  

  至此,fuel会根据上面的配置项配置fuel的安装环境。
  根据虚拟机的硬件规格的不同,安装配置的时间不定,一个小时或者更长。
  
  安装完成后,会提示以下页面
DSC00024.jpg

  将准备的文件,除了iso镜像全部传入进去。
DSC00025.jpg

  

  新建本地源(openstack软件包之类的):
[root@fuel ~]# mv fuel9.0-repo-0624.tar.gz /var/www/nailgun/
[root@fuel nailgun]# ls
bootstraps  centos  dump  error.html  extra-repos  fuel9.0-repo-0624.tar.gz  index.html  mitaka-9.0  mos-centos  targetimages  ubuntu
[root@fuel nailgun]# tar xf fuel9.0-repo-0624.tar.gz
[root@fuel nailgun]# ls
bootstraps  centos  dump  error.html  extra-repos  fuel9.0-repo-0624.tar.gz  index.html  mirrors  mitaka-9.0  mos-centos  targetimages  ubuntu  

  
  可以看到,多了一个mirros的文件夹。
  执行fuel-createmirros命令。
DSC00026.jpg

  
  
  
  
  注:报错是正常的,因为fuel会试图去网上下载。
  
  
  

  导入bootstrap镜像(Openstack节点的系统镜像)并激活:
[root@fuel ~]# fuel-bootstrap import bc3e3b14-0845-4804-b913-7405751765f2.tar.gz
Try extract bc3e3b14-0845-4804-b913-7405751765f2.tar.gz to /tmp/tmp5zDunq
Bootstrap image bc3e3b14-0845-4804-b913-7405751765f2 has been imported.
[root@fuel ~]# fuel-bootstrap list
+--------------------------------------+--------------------------------------+--------+
| uuid                                 | label                                | status |
+--------------------------------------+--------------------------------------+--------+
| bc3e3b14-0845-4804-b913-7405751765f2 | bc3e3b14-0845-4804-b913-7405751765f2 |        |
+--------------------------------------+--------------------------------------+--------+
[root@fuel ~]# fuel-bootstrap activate bc3e3b14-0845-4804-b913-7405751765f2
Starting new HTTP connection (1): 10.20.0.2
Starting new HTTP connection (1): 10.20.0.2
Starting new HTTP connection (1): 10.20.0.2
Starting new HTTP connection (1): 10.20.0.2
Bootstrap image bc3e3b14-0845-4804-b913-7405751765f2 has been activated.  注意:一定要激活。

  
  

  

  安装插件
[root@fuel ~]# fuel plugins --install lma_infrastructure_alerting-0.10-0.10.3-1.noarch.rpm
[root@fuel ~]# fuel plugins --install elasticsearch_kibana-0.10-0.10.2-1.noarch.rpm
[root@fuel ~]# fuel plugins --install influxdb_grafana-0.10-0.10.2-1.noarch.rpm  

  
  
  列出已装插件
[root@fuel ~]# fuel plugins
id | name                        | version | package_version | releases                                    
---+-----------------------------+---------+-----------------+----------------------------------------------
1  | lma_infrastructure_alerting | 0.10.3  | 4.0.0           | ubuntu (liberty-8.0, liberty-9.0, mitaka-9.0)
2  | elasticsearch_kibana        | 0.10.2  | 4.0.0           | ubuntu (liberty-8.0, liberty-9.0, mitaka-9.0)
3  | influxdb_grafana            | 0.10.2  | 4.0.0           | ubuntu (liberty-8.0, liberty-9.0, mitaka-9.0)  

  
  
  

Fuel web界面创建opens tack环境

  点击 “新建openstack环境”
  填入环境名,环境名不能重复
DSC00027.jpg

  
DSC00028.jpg

DSC00029.jpg

  

  因为节点有限,所以选择lvm作为块存储。
DSC00030.jpg

  
DSC00031.jpg

DSC00032.jpg

  

  然后依次启动各个openstack节点。
  启动各个节点后,各个节点会通过pxe自动安装导入的bootstrap镜像,系统安装完成后,就在在fuel web页面看到节点加入的消息。
DSC00033.jpg

  
  
  

  命令行下查看
[root@fuel ~]# fuel nodes
id | status   | name             | cluster | ip        | mac               | roles | pending_roles | online | group_id
---+----------+------------------+---------+-----------+-------------------+-------+---------------+--------+---------
1 | discover | Untitled (9c:6b) |         | 10.20.0.3 | 08:00:27:50:9c:6b |       |               |      1 |         
2 | discover | Untitled (c1:b4) |         | 10.20.0.4 | 08:00:27:0b:c1:b4 |       |               |      1 |         
3 | discover | Untitled (d9:95) |         | 10.20.0.5 | 08:00:27:b5:d9:95 |       |               |      1 |     

  
  
  在添加节点之前
  在“设置”标签页面选择其他配置,将所装的插件,都启用并根据需要进行相关配置,如用户名密码,邮箱之类的。
  效果如下
DSC00034.jpg

  
  
  
  
  进入环境,添加节点,依次如下。
DSC00035.jpg

  
DSC00036.jpg

DSC00037.jpg

  
  
  
  

  选择所有节点,配置网络接口
DSC00038.jpg

  
  
  

  由于都只有一块磁盘,不用配置磁盘,不过也可以自定义各个部分的大小,fuel会自动的分配了。
  示例如下。
DSC00039.jpg

  
  
  
  
  

  在deploy changes之前先进行网络验证。
DSC00040.jpg

  

  

  最后点击Deploy Changes,当点击之后就是漫长的等待了。根据电脑的配置不同,一般两到三个小时不等。
  
DSC00041.jpg

  
  
  

  安装完后的效果

DSC00042.jpg

  

  后记:
  由于资源有限,失败乃兵家常事,再次deploy吧。。。。
  或者检查一下是否真的配置有问题。
  

  

如果觉得不错,并有所收获,请我喝杯茶呗


DSC00043.jpg DSC00044.jpg
  

运维网声明 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-483215-1-1.html 上篇帖子: 每天5分钟玩转 OpenStack 下篇帖子: openstack学习笔记:Kvm基础实验环境
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

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

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

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

扫描微信二维码查看详情

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


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


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


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



合作伙伴: 青云cloud

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