安装环境:
1、 所需物理主机的要求如下
内存:8GB+,推荐16GB;(少于8GB的就免谈了)
磁盘:500GB+;
物理机OS:ubuntu-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网络设置:
3.2、云环境物理网络规划:
网卡名称 IP地址 描述
adapter2 10.20.0.1/24 PXE网络
adapter3 192.168.10.1/24 管理网络
adapter4 192.168.20.1/24 存储网络
adapter5 192.168.30.1/24 私有网络
adapter6 172.168.0.1/24 外部网络
SSH+PXE网络:用来通过ssh连接到controller node、compute 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进行安装。
安装过程不用人为干预,一直等待安装便可,注意:安装master的过程强烈推荐使用默认配置,不要更改任何配置,以免安装完毕出问题。
3、大概10分钟左右进入setup界面,如下
4、fuel网卡配置
5、设置允许ssh的网段
6、设置PXE地址池
7、配置DNS
8、选择Bootstrap Image为Skip building bootstrap image,否则会报错
9、设置ntp服务器地址,一般选择fuelmaster节点自己
10、保存退出
注意:如果安装过程中没有出现上面设置界面输入fuelmenu命令,进入配置。
配置完成选择
Quit setup > Save and Quit
继续等待半个小时左右提示安装ok即可
通过浏览器访问:https://10.20.0.2:8443(用户名和密码都是admin)
注意:如果不进行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环境
登陆到控制台http://172.16.1.2
点击创建openstack环境
点击下一步,选择虚拟化类型
点击下一步,选择网络类型
点击下一步,选择存储类型
选择附加服务
点击新建
2、设置openstack环境
选择firewalld驱动
设置计算类型
选择要安装的服务
设置公开网络(该网络如果要部署高可用环境会在三个控制节点配置br-ex网桥并配置业务网络IP地址,包括创建float网络时创建router网关也会绑定一个业务IP地址,需要合理的分配IP地址即可)
设置存储网络
设置管理网络
设置私有网络
设置浮动IP地址段
设置虚拟机网络(admin用户创建的租户网络)
其他设置,设置完成后点击保存
3、添加节点
至少需要一个控制节点和三个计算节点,计算节点需要虚拟机添加2块100GB磁盘
查看节点
分配控制节点
分配计算节点
配置控制节点网卡
网卡顺序:PXE、存储、管理、私有、公开(部分截图)
配置计算节点网卡
网卡顺序:PXE、存储、管理、私有、公开(部分截图)
查看角色
检测网络连通性
点击部署
部署成功
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后不update到9.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目录文件
2、将下载的mirrors文件上传到/var/www/nailgn目录下并解压。
unzip mirrors.zip
mv mirrors /var/www/nailgun/
运行fuel-createmirror将fuel源地址变为本地源,在执行的过程中可能需要联网,如果您的fuel master节点不能访问外网在createmirror的时候会报错,这个错误可以忽略。
fuel-createmirror
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-bootstrap list
显示为空
3.3、把root目录下的bootstrps文件覆盖到/var/www/nailgun/
cp -rf bootstraps /var/www/nailgun/
再次查看
fuel-bootstrap list
3.4、激活bootstrap,并验证bootstrap
fuel-bootstrap activate d01c72e6-83f4-4a19-bb86-6085e40416e6
还可以使用在线创建bootstrap
fuel-bootstrap build --activate