一、安装环境:

1、 所需物理主机的要求如下

内存:8GB+,推荐16GB;(少于8GB的就免谈了)

磁盘:500GB+

SRE实战 互联网时代守护先锋,助力企业售后服务体系运筹帷幄!一键直达领取阿里云限量特价优惠。

物理机OSubuntu-desktop-amd64 14.04(推荐) 或windows64

物理机安装软件:安装virtualBox4.3.36及以上版本以及相应扩展包(推荐

4.3.36for ubuntu 5.0.20for windows)。系统需要支持IVT即虚拟化。

2、 如何查看IVT

开机进入系统主板,Advance->Intel Virtualization Tech->设置为enable

3、网络环境

3.1、Vmware网络设置:

 fuel一键部署openstack 随笔 第1张

 

3.2、云环境物理网络规划:

网卡名称

IP地址

描述

vmnet2

10.20.0.0/24

PXE网络

vmnet3

10.0.0.0/24

外部网络

vmnet4

192.168.10.0/24

管理网络

vmnet5

192.168.20.0/24

存储网络

vmnet6

192.168.30.0/24

私有网络

SSH+PXE网络:用来通过ssh连接到controller nodecompute node操作管理物理服务器

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

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

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

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

二、安装fule

1、fule下载地址:

http://9f2b43d3ab92f886c3f0-e8d43ffad23ec549234584e5c62a6e24.r60.cf1.rackcdn.com/MirantisOpenStack-9.0.iso

注意:安装fule时系统盘的大小最少需要50GB

2、启动fule-master虚拟机

(如果使用vmware虚拟机创建磁盘的类型为IDE,否则在安装fuel的时候报错),看到如下画面,选择第一项,如果要更改PXE网络的IP地址和子网掩码等信息,按tab键更改,更改完成后按enter进行安装;推荐默认的IP地址和子网掩码,这里直接enter进行安装。

fuel一键部署openstack 随笔 第2张

 

 

安装过程不用人为干预,一直等待安装便可,注意:安装master的过程强烈推荐使用默认配置,不要更改任何配置,以免安装完毕出问题。

 

3、大概10分钟左右进入setup界面,如下

 fuel一键部署openstack 随笔 第3张

 

4、fuel网卡配置

 fuel一键部署openstack 随笔 第4张

 

5、设置允许ssh的网段

 fuel一键部署openstack 随笔 第5张

 

6、设置PXE地址池

 fuel一键部署openstack 随笔 第6张

 

7、配置DNS

 fuel一键部署openstack 随笔 第7张

 

8、选择Bootstrap Image为Skip building bootstrap image,否则会报错

 fuel一键部署openstack 随笔 第8张

 

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

 fuel一键部署openstack 随笔 第9张

 

10、保存退出

 

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

配置完成选择

Quit setup > Save and Quit

继续等待个小时左右提示安装ok即可

 

通过浏览器访问:https://10.20.0.2:8443(用户名和密码都是admin

 fuel一键部署openstack 随笔 第10张

 

注意:如果不进行9.0升级9.2,请转到第五章节

三、更新fuel9.0版本到fuel9.2

参考连接:

https://docs.mirantis.com/openstack/fuel/fuel-9.2/release-notes/update-product/update-limitations-9-2.html

1、安装fuel9.2的源

yum install -y \

http://mirror.fuel-infra.org/mos-repos/centos/mos9.0-centos7/9.2-updates/x86_64/Packages/mos-release-9.2-1.el7.x86_64.rpm

yum clean all

yum makecache

yum install -y mos-updates

2、更新fuelmaster以下playbook必须在指定路径执行

cd mos_playbooks/mos_mu

ansible-playbook playbooks/mos9_prepare_fuel.yml

ansible-playbook playbooks/update_fuel.yml  \

-e '{"rebuild_bootstrap":false}'

ansible-playbook playbooks/update_fuel.yml

ansible-playbook \

playbooks/mos9_fuel_upgrade_kernel_4.4.yml

验证版本更新成功

fuel2 fuel-version

3、制作本地MOS和mirrors源

修改配置文件/usr/share/fuel-mirror/ubuntu.yaml

ubuntu_baseurl http://mirrors.aliyun.com/ubuntu

开始在线同步mirrors源到本地

fuel-createmirror

4、制作bootstrap源

创建bootstrap配置 文件

cd /usr/share/fuel_bootstrap_cli/

cp fuel_bootstrap_cli.yaml.sample fuel_bootstrap_cli.yaml

修改配置文件取消配置文件95~115行注释;修改源地址为http://mirrors.aliyun.com

sed –i ‘s/archive.ubuntu.com/mirrors.aliyun.com/g \

fuel_bootstrap_cli.yaml

在线制作bootstraps

fuel-bootstrap build

fuel-bootstrap import /tmp/$uuid.tar.gz

fuel-bootstrap activate

验证bootstrap制作完成

fuel-bootstrap list

四、创建部署openstack环境

1、创建一个openstack环境

登陆到控制台https://10.20.0.2:8443

 fuel一键部署openstack 随笔 第11张

 

点击创建openstack环境

 fuel一键部署openstack 随笔 第12张

 

点击下一步,选择虚拟化类型

 fuel一键部署openstack 随笔 第13张

 

点击下一步,选择网络类型

 fuel一键部署openstack 随笔 第14张

 

点击下一步选择存储类型

 fuel一键部署openstack 随笔 第15张

 

选择附加服务

 fuel一键部署openstack 随笔 第16张

 

点击新建

 

 fuel一键部署openstack 随笔 第17张

 

 

2、设置openstack环境

选择firewalld驱动

 fuel一键部署openstack 随笔 第18张

 

设置计算类型

 fuel一键部署openstack 随笔 第19张

 

选择要安装的服务

 fuel一键部署openstack 随笔 第20张

 

设置公开网络(该网络如果要部署高用环境会在三个控制节点配置br-ex网桥并配置业务网络IP地址,包括创建float网络时创建router网关也会绑定一个业务IP地址,需要合理的分配IP地址即可)

 fuel一键部署openstack 随笔 第21张

 

设置存储网络

 fuel一键部署openstack 随笔 第22张

 

设置管理网络

 fuel一键部署openstack 随笔 第23张

 

设置私有网络

 fuel一键部署openstack 随笔 第24张

 

设置浮动IP地址段

 fuel一键部署openstack 随笔 第25张

 

设置虚拟机网络(admin用户创建的租户网络)

 fuel一键部署openstack 随笔 第26张

 

其他设置设置完成后点击保存

 fuel一键部署openstack 随笔 第27张

 

3、添加节点

至少需要一个控制节点和两个计算节点(因为ceph至少要三个监视器Monitors),计算节点需要虚拟机添加2100GB磁盘

 fuel一键部署openstack 随笔 第28张

 

查看节点

 fuel一键部署openstack 随笔 第29张

 

分配控制节点

 fuel一键部署openstack 随笔 第30张

 

分配计算节点

 fuel一键部署openstack 随笔 第31张

 

配置控制节点网卡

网卡顺序:PXE、存储、管理、私有公开(部分截图)

 fuel一键部署openstack 随笔 第32张

 

配置计算节点网卡

网卡顺序:PXE、存储、管理、私有公开(部分截图)

 fuel一键部署openstack 随笔 第33张

 

查看角色

 fuel一键部署openstack 随笔 第34张

 

检测网络连通性

 fuel一键部署openstack 随笔 第35张

 

点击部署

 fuel一键部署openstack 随笔 第36张

 

部署成功

 fuel一键部署openstack 随笔 第37张

 

4、部署报错记录

ERR (/Stage[main]/Main/Exec[sync_time_shell]/returns) change from notrun to 0 failed: /bin/bash "/etc/puppet/shell_manifests/sync_time_command.sh" returned 1 instead of one of [0]

测试节点使用ntpdate命令无法与fuelmaster节点同步时间,解决ntp-server即可。

 

ERROR: Unable to communicate with at least one of NTP server, checked the following host(s): ["0.fuel.pool.ntp.org", "1.fuel.pool.ntp.org", "2.fuel.pool.ntp.org"] on node node-1.domain.tld

在openstack各个节点添加host

172.16.1.2 1.fuel.pool.ntp.org

172.16.1.2 0.fuel.pool.ntp..org

172.16.1.2 2.fuel.pool.ntp.org

或者fuelmaster ntp配置文件中删除server

 

Option "verbose" from group "DEFAULT" is deprecated for removal.  Its value may be silently ignored in the future.

每个控制节点:

vim /etc/cinder/cinder.conf

注释掉verbose = true

执行su -s /bin/bash cinder -c "cinder-manage db sync"

 

五、配置本地源1(可选)

如果安装完成miranits 9.0后不update9.2时,从完成第二章节(安装fule)后,直接开始此章节

1、由于网络等各种原因需要配置本地源

下载下面2个连接的文件包,传输到/var/www/nailgun目录下

Bootstraps:链接:http://pan.baidu.com/s/1nu7lY6P密码:b3qt

Mirrors :链接:http://pan.baidu.com/s/1kVwaZJ5 密码:hhsc

查看/var/www/nalign目录文件

 fuel一键部署openstack 随笔 第38张

 

2、将下载的mirrors文件上传到/var/www/nailgn目录下并解压。

unzip mirrors.zip

mv mirrors /var/www/nailgun/

运行fuel-createmirror将fuel源地址变为本地源执行的过程中可能需要联网,如果fuel master节点不能访问外网createmirror的时候会报错,这个错误可以忽略。

fuel-createmirror

 fuel一键部署openstack 随笔 第39张

 

3、导入Bootstrap

3.1、先将bootstrap.tar.gz拷贝至master节点的/root目录下。

[root@fuel ~]# ls

anaconda.cmdline.vars                         anacondapost-configure-repos.log

anaconda-ks.cfg                                 anaconda-post-configure-sysconfig.log

anaconda-parse-cmdline.log                  anaconda-post-interface-settings.log

anaconda-post-before-chroot.log            anaconda-post-partition.log

anaconda-post-configure-autologon.log    bootstrap.tar.gz

3.2、查看是否有激活的bootstrap

 fuel一键部署openstack 随笔 第40张

 

3.3、如果没有使用其他bootstrp文件覆盖

cp -rf bootstraps /var/www/nailgun/

再次查看

 fuel一键部署openstack 随笔 第41张

 

3.4、激活bootstrap

 fuel一键部署openstack 随笔 第42张

 

还可以使用在线创建bootstrap

fuel-bootstrap build --activate

3.5、验证bootstrap

 fuel一键部署openstack 随笔 第43张

 

扫码关注我们
微信号:SRE实战
拒绝背锅 运筹帷幄