您的位置:首页 > 产品设计 > UI/UE

VMWare12 部署安装Mirantis OpenStack Fuel 9.0

2017-06-14 00:00 453 查看
参考:1.http://download.csdn.net/download/gamers/9596542

2.http://weibo.com/p/230418936291410102wi29

3.http://blog.csdn.net/wiborgite/article/details/52953822

4.http://blog.csdn.net/titan0427/article/details/51982609

vmware网络配置:











0、前言

不想搭建环境,官方提供测试Fuel9.0的demo环境 http://demo.fuel-infra.org:8000(只要你电脑能上外网)默认用户名、密码admin


一、提前准备

Fuel9.0将会搭载Openstack_Mitaka 版本,这个版本是2016年出的最新版本。

Fuel在早先的版本中已经去掉了利用Centos来搭建Openstack的环境;

在9.0中只使用Ubuntu和Ubuntu + UCA的部署方式。

1.1 下载 Fuel 镜像

说明:Fuel镜像用于部署fuel-master,一般为BT文件,利用下载工具下载即可。

方法一:从官网-注册下载iso https://www.mirantis.com/software/openstack/releases/#supporte




方法二:第三方分享的iso直接下载连接 http://9f2b43d3ab92f886c3f0-e8d43ffad23ec549234584e5c62a6e24.r60.cf1.rackcdn.com/MirantisOpenStack-9.0.iso

1.2下载Fuel本地源

说明:Fuel镜像不同于Fuel本地源,本地源涉及共2个压缩大文件mirrors9.zip(3.01GB)和bootstraps.zip(580MB)

MOS9.0 本地源下载:http://pan.baidu.com/s/1gfe69iV 密码:b2m5

MOS9.0 bootstrap下载:http://pan.baidu.com/s/1gfc4w6n 密码:o9x4

1.3总体架构




1.4软件选择

官方推荐使用Virtual-box来安装部署Fuel-master节点.本实验验证选用VMware来部署效果不理想,反应用VMware来装会产生一些问题部署失败无法解决,所以在这里选择Virtual-box来进行安装部署.

虚拟机软件VirtualBox5.1.22官网下载 https://www.virtualbox.org/wiki/Downloads

1.5硬件环境

1、官方推荐使用CPU:4核,以及内存:4G以上、10G网卡、500G物理磁盘.

2、但是在自己玩耍实验环境下,双核CPU,4G内存,1000M网卡和60G以上硬盘足够了,

3、切记的是硬盘不得小于50G,会导致安装失败.

4、当然实验环境下,如果设置为2G内存会导致安装速度缓慢、而导致最后会失败,

所以建议条件容许的情况下加大设备资源.

部署之前,先要配置VirtualBox三块虚拟网卡,信息如下:

VirtualBox--全局设置--网络--仅主机(Host-Only)网络(H)--

Host-Only Ethernet Adapter

IPv4: 10.20.0.10

Mask:255.255.255.0

DHCP: Unable

Host-Only Ethernet Adapter#2

IPv4: 172.16.0.1

Mask:255.255.255.0

DHCP: Unable

Host-Only Ethernet Adapter#3

IPv4: 192.168.0.1

Mask:255.255.255.0

DHCP: Unable

网卡信息和Fuel的网络信息要一致。如果自定义,则需要在Fuel设置里同步更改(改NetworkSetup 和 SecuritySetup 和 PXESetup),不然会部署openstack失败。

Fuel-master 2C+ 60GB +3网卡+2GB以上内存

Fuel-Controller 1C+120GB+3网卡+4GB

Fuel-Compute 1C+120GB+3网卡+4GB

二、部署Fuel-Master

2.1 创建Fuel-master虚拟机

新建一个虚拟机名称为Fuel-master,可自定义。设置内存大小2G

因为Fuel的底层使用的是CentOS7.2 64位,故操作系统版本选择Red Hat 64-bit



设置磁盘大小60GB+以上为好



创建之后,点击设置--系统--处理器2核



设置光驱引导iso镜像,设置--存储--没有盘片--光盘图标--选择一个虚拟光盘文件--弹窗选择下载的MirantisOpenStack-9.0.iso



网卡芯片选择Intel的PRO/1000,切记混杂模式一定要设置为Allowall.并且禁用DHCP.

以前尝试过芯片选择为PCnet-PCI结果失败了。

网卡1、网卡2、网卡3都配置仅主机,混杂模式:全部允许





接下来运行虚拟机,

几秒钟后会进入Fuel安装选择界面,这里选择第一项,然后系统会自动加载和安装Fuel.





一段时间后进入Fuel-Menu界面你可以在这里修改默认密码和一些设置.

在BootstrapImage选项,选择Skip building bootstrap image,

因为如果不选择的话,默认Fuel会从国外获取源,速度很慢的,会导致安装失败.

选择以后会使用本地源进行部署,后面会说明关于本地源如何下载和加载.



选择Saveandquit,然后这里需要等待1分钟的样子,因为这里要检查更改是否合规,检查通过后系统就会继续安装Fuel了.



经过漫长的等待,具体多久无法统计了,大概2小时就可以进入Fuel的登录界面了.此过程中切勿关闭或者重启虚拟机.任何不必要的操作都可能导致安装失败.然后会出现下面的画面,到这里Fuel-master的安装就结束了.



在浏览器打开https://10.20.0.2:8443测试一下是否安装成功.默认用户名、密码admin

如果这里没有显示Fuel的登录界面,说明安装中忽略了一些步骤,或者资源分配不足



部署完Fuel-master建议保存快照,以便日后恢复.

2.2 增加本地源

打开 /var/www/nailgun 目录,用ls发现目录下现在是没有mirrors文件夹.

因为我采用的是离线模式安装,没有从官方的链接中下载一些必要的库,所

以从国外找了一些源下载了以后放置在网盘中了.

cd /var/www/nailgun

解压2个文件包,传输到/var/www/nailgun目录下覆盖,有冲突的部分直接替换掉.

mirrors文件夹下有两个文件夹,bootstraps文件夹下有三个文件夹。







使用XFTP软件将本地源文件mirrors和bootstraps传到Fuel,具体如下图.也可以自己在PC或者

服务器上建立FTP服务器,然后利用wget命令传输文件.总之不管用什么方法都可以,只要能把

文件上传到相应的文件夹内即可.



cd /var/www/nailgun
ln -s /var/www/bootstraps/d01c72e6-83f4-4a19-bb86-6085e40416e6 active_bootstrap
fuel-createmirror

fuel-bootstrap activate d01c72e6-83f4-4a19-bb86-6085e40416e6
fuel-bootstrap list

运行 Fuel-createmirror命令,此命令目的是让web后台管理界面的源地址变为本地地址.

[root@fuelnailgun]#fuel-createmirror

This script is DEPRECATED. Please usefuel-mirrorutility!

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

Failed to open url-http://mirror.fuel-infra.org/......

......

URLError:

Starting new HTTP connection(1):10.20.0.2

Starting new HTTPconnection (1):10.20.0.2

Starting new HTTPconnection (1):10.20.0.2

Starting new HTTPconnection (1):10.20.0.2

Updating theClusterrepositories...

Updating thereleaserepositories...

Try to update theRelease 'Mitaka on Ubuntu14.04'

Try to update theRelease 'Mitaka on Ubuntu+UCA14.04'

Operations have been completedsuccessfully

更换本地源后和bootstrp后,查看是否有已经激活的bootstrp.

[root@fuel na.]# fuel-bootstrap activated01c72e6-83f4-4a19-bb86-6085e40416e6



如果这里没有激活很可能是你下载的文件损坏了.可以尝试找其他bootstrp文件来覆盖.

三、部署Fuel-node节点虚拟机

新建两个子节点虚拟机 (controller/compute),设置4G内存,120G磁盘空间.

内存设置低于4G很可能会部署失败,并且要开启VT-x和AMD-V,以便支持intel和AMD的CPU开启硬件虚拟化.如果不开启很可能会部署失败.

PS:在VM下面曾经尝试用4G内存来进行部署,结果失败很多次,但是还是成功了,需要拼人品.建议如果在VM下部署失败建议加大内存.



3个网卡,网卡1、网卡2、网卡3都配置

仅主机,混杂模式:全部允许,网卡芯片选择Intel的PRO/1000,并且禁用DHCP.



开启虚拟机后选择ubuntu_bootstrap启动.



8.0版本搭载的是Centos7 bootstrap,但是在9.0使用的是Ubuntu 14.04.4的bootstrap.

使用bootstrap引导后,我们的Fuel-master 就可以发现节点了.



四、部署Openstack

4.1 登陆

下面开始使用Fuel部署Openstack

登录https://10.20.0.2:8443/#login



4.2 搭建部署Openstack

新建Openstack环境.



Fuel 9.0 版

本去除了Centos,只保存了Ubuntu的部署方式,但是比之前多出了一个模式叫做Ubuntu+UCA(UCAuse Ubuntucloud archive as a source of packages for Openstackcomponents)
在这里我们选择Mitakaon Ubuntu 14.04













配置节点属性,如下图所示.

在此定义我们之前发现的两个节点.





设置两个node节点网络接口

将网络接口配置改变为下图的状态,鼠标拖拽模块即可改变.

这里设置错误也会导致部署失败.



更改网络default 公开 – IPRange开始172.16.0.3网关172.16.0.2

配置Fuel-master网卡enp0s8一个静态ip为172.16.0.2



更改NTPserver地址为Fuel-master的地址.



设置完成后进行网络验证,如有错误信息就按照错误提示进行修改.



定义完节点后在fuel上使用fuel node命令可以发现Pending_roles已经发生改变.



点击DeployChanges 进行部署.



这时Fuel就开始自动部署Openstack了.

第一个步骤是利用CobblerServer安装Ubuntu系统.



安装过程中可以看到站点的Status变为了provisioning,含义为正在部署底层系统.

并且角色也从Pending转移到roles下面了.



部署完ubuntu14.04以后,Fuel会继续部署Openstack, 这里是使用Puppet Master利用SSH协议的SCP命令将Openstack组件部署到node的.



状态已经更新为deploying.



经过漫长的等待,如下图显示,已经成功安装部署了节点.



4.3 登陆DashBoard Horizon

点击Horizon 进行登录,默认用户名密码都是admin.



五、开始使用Openstack

(后续有时间再补充--新浪博客排版太难用了,费时费力)

5.1 创建实例一

5.2 使用平台虚拟化

六、排错1:MOS9.0 bootstrap 离线Bulid

错误现象:

Mirantis OpenStack Fuel 9.0已安装完成,但是在Web页面提示如下错误信息。

<span style="font-size:18px;">WARNING: Failed to build the bootstrap image, see /var/log/fuel-bootstrap-image-build.log for details. Perhaps your Internet connection is broken. Please fix the problem and run `fuel-bootstrap build --activate`. While you don't activate any bootstrap - new nodes cannot be discovered and added to cluster. For m

上述错误表面,缺少bootstrap镜像,在VirtualBox创建新虚拟机给Fuel使用时要通过该镜像启动,从而Fuel才可以收集到虚拟机的如内存、CPU等信息,并在Fuel将此虚拟机识别为一个可用的Node,然后才可以在此Node上部署Openstack的组件。

前期准备:

MOS9.0 bootstrap下载:http://pan.baidu.com/s/1gfc4w6n 提取码:o9x4

说明:上述网盘地址以及本文解决问题的思路来自博客http://blog.csdn.NET/qq_20154221/article/details/51906866,在参考该博客进行操作时,有一个软连接的问题导致执行失败,因此在这里更正下。

解决步骤

1、将上述网盘地址中的bootstrap下载到PC本地,并解压,解压后得到文件夹bootstraps

2、将本地bootstraps文件夹下的bootstrap_stub和d01c72e6-83f4-4a19-bb86-6085e40416e6文件夹上次到Fuel安装节点的/var/www/nailgun/bootstraps目录下。

3、将本地bootstraps文件夹下的active_bootstrap目录下的文件上传到Fuel安装节点的/var/www/nailgun/bootstraps/bootstrap_stub

4、创建软连接:ln -s /var/www/bootstraps/bootstrap_stub active_bootstrap(存在的话不需要此步骤)

5、激活bootsrtap

[root@fuel bootstraps]#<strong> fuel-bootstrap activate d01c72e6-83f4-4a19-bb86-6085e40416e6</strong>
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 d01c72e6-83f4-4a19-bb86-6085e40416e6 has been activated.

6.检查是否成功

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

踩过的坑

参考原先博客的中直接用解压的bootstraps目录替换Fuel节点上的bootstraps目录,结果出现了如下错误:

[root@fuel nailgun]# fuel-bootstrap activate d01c72e6-83f4-4a19-bb86-6085e40416e6
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
[Errno 21<strong>] Is a directory: '/var/www/nailgun/bootstraps/active_bootstrap'</strong>

查看操作之前备份的目录下的内容:

[root@fuel bootstraps.bak]# ll
total 4
lrwxrwxrwx. 1 root root   42 Oct 27 07:13 <strong>active_bootstrap -> /var/www/nailgun/bootstraps/bootstrap_stub</strong>
drwxr-xr-x. 2 root root 4096 Oct 27 07:13 bootstrap_stub


七、排错2:MOS9.0 bootstrap 离线Bulid

​

Provision has failed. Failed to execute hook 'shell' Failed to run command cd / && fa_build_image --image_build_dir /var/lib/fuel/ibp --log-file /var/log/fuel-agent-env-1.log --data_driver nailgun_build_image --input_data '{"image_data": {"/boot": {"container": "gzip", "uri": "http://10.20.0.2:8080/targetimages/env_1_ubuntu_1404_amd64-boot.img.gz", "format": "ext2"}, "/": {"container": "gzip", "uri": "http://10.20.0.2:8080/targetimages/env_1_ubuntu_1404_amd64.img.gz", "format": "ext4"}}, "output": "/var/www/nailgun/targetimages", "repos": [{"name": "ubuntu", "section": "main multiverse restricted universe", "uri": "http://ftp.sjtu.edu.cn/ubuntu/", "priority": null, "suite": "trusty", "type": "deb"}, {"name": "ubuntu-updates", "section": "main multiverse restricted universe", "uri": "http://ftp.sjtu.edu.cn/ubuntu/", "priority": null, "suite": "trusty-updates", "type": "deb"}, {"name": "ubuntu-security", "section": "main multiverse restricted universe", "uri": "http://ftp.sjtu.edu.cn/ubuntu/", "priority": null, "suite": "trusty-security", "type": "deb"}, {"name": "mos", "section": "main restricted", "uri": "http://10.20.0.2:8080/mirrors/mos-repos/ubuntu/9.0", "priority": 1000, "suite": "mos9.0", "type": "deb"}, {"name": "mos-updates", "section": "main restricted", "uri": "http://10.20.0.2:8080/mirrors/mos-repos/ubuntu/9.0", "priority": 1000, "suite": "mos9.0-updates", "type": "deb"}, {"name": "mos-security", "section": "main restricted", "uri": "http://10.20.0.2:8080/mirrors/mos-repos/ubuntu/9.0", "priority": 1000, "suite": "mos9.0-security", "type": "deb"}, {"name": "mos-holdback", "section": "main restricted", "uri": "http://10.20.0.2:8080/mirrors/mos-repos/ubuntu/9.0", "priority": 1000, "suite": "mos9.0-holdback", "type": "deb"}, {"name": "Auxiliary", "section": "main restricted", "uri": "http://10.20.0.2:8080/mitaka-9.0/ubuntu/auxiliary", "priority": 1150, "suite": "auxiliary", "type": "deb"}], "packages": ["acl", "anacron", "bash-completion", "bridge-utils", "bsdmainutils", "build-essential", "cloud-init", "curl", "daemonize", "debconf-utils", "gdisk", "grub-pc", "hpsa-dkms", "hwloc", "i40e-dkms", "linux-firmware", "linux-firmware-nonfree", "linux-headers-generic-lts-trusty", "linux-image-generic-lts-trusty", "lvm2", "mcollective", "mdadm", "multipath-tools", "multipath-tools-boot", "nailgun-agent", "nailgun-mcagents", "network-checker", "ntp", "openssh-client", "openssh-server", "puppet", "python-amqp", "ruby-augeas", "ruby-ipaddress", "ruby-json", "ruby-netaddr", "ruby-openstack", "ruby-shadow", "ruby-stomp", "telnet", "ubuntu-minimal", "ubuntu-standard", "uuid-runtime", "vim", "virt-what", "vlan"], "codename": "trusty"}' (node master returned 255).

发现是因为Repositories里的mos镜像地址有问题, 修改如下 :

ubuntu:
deb http://ftp.sjtu.edu.cn/ubuntu/ trusty main multiverse restricted universe
ubuntu-updates:
deb http://ftp.sjtu.edu.cn/ubuntu/ trusty-updates main multiverse restricted universe
ubuntu-security:
deb http://ftp.sjtu.edu.cn/ubuntu/ trusty-security main multiverse restricted universe

mosmos:
deb http://mirror.fuel-infra.org/mos-repos/ubuntu/9.0 mos9.0 main restricted
mos-updates:
deb http://mirror.fuel-infra.org/mos-repos/ubuntu/9.0 mos9.0-updates main restricted
mos-security:
deb http://mirror.fuel-infra.org/mos-repos/ubuntu/9.0/ mos9.0-security main restricted
mos-holdback:
deb http://mirror.fuel-infra.org/mos-repos/ubuntu/9.0 mos9.0-holdback main restricted

回到控制台, 再次尝试部署.

错误处理:

问题1:

[root@node-2 ~]# nova list
ERROR: You must provide a username via either --os-username or env[OS_USERNAME]

解决方案:

[root@node-2 ~]# source ~/openrc
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  OpenStack