一、 准备工作
1. 节点分配和硬件信息
该环境使用了1台物理服务器,分配了4个节点(由于资源不足,使用VMware ESXI 5.5进行all in one部署)
节点 | CPU | 内存 | 硬盘 | 网卡 | 操作系统(无需手动安装) |
---|---|---|---|---|---|
Controller x 1 | Intel(R) Xeon(R) CPU E5-2650 v4 @ 2.20GHz | 16G | 240G | 3*1G | Ubuntu 14.04 |
contrail-controller x 1 | Intel(R) Xeon(R) CPU E5-2650 v4 @ 2.20GHz | 16G | 360G | 3*1G | Ubuntu 14.04 |
Contrail-analytics-DB x 1 | Intel(R) Xeon(R) CPU E5-2650 v4 @ 2.20GHz | 32G | 700G | 3*1G | Ubuntu 14.04 |
Compute x 1 | Intel(R) Xeon(R) CPU E5-2650 v4 @ 2.20GHz | 120G | 2T | 3*1G | Ubuntu 14.04 |
2. 网络拓扑
Note: 这个是单纯的ESXI环境,不包含外网交换机、路由器等。各个节点的网络都是通过ESXI的VSwitch网桥桥接出来,到服务器的物理网卡。
3. 网络规划
网络类型 | IP | VLAN | 备注 | 网桥 |
---|---|---|---|---|
Admin/PXE | 10.20.0.0/24 | 无 | 无 | ESXI-VSwitch-01 |
Public | 192.105.0.0/16 | 无 | GW: 192.105.35.200 | ESXI-VSwitch-02 |
Managerment | 192.168.0.0/24 | 101 tagged | GW: 192.168.0.1 Trunk mode | ESXI-VSwitch-03 |
Storage | 192.168.1.0/24 | 102 tagged | GW: 192.168.1.1 Trunk mode | ESXI-VSwitch-03 |
Private | 192.168.2.0/24 | 103 tagged | GW: 192.168.2.1 Trunk mode | ESXI-VSwitch-03 |
4. 部署工具
我们使用的是Mirantis的Fuel 9.1来进行OpenStack+Contrail环境的部署。配合OpenStack的M版和Fuel Contrai Plugin的5.0.0版本插件,Contrail软件包的版本为3.1.0.0
Fuel Contrail Plugins:
Contrail软件包 3.1.0.0:
二、 部署FUEL
1. 开始安装
将MirantisOpenStack9.0.iso上传到ESXI的datastore01,创建虚机,挂载镜像,开始部署:
选择 “1” 进行安装,无需人工干预,自动安装Fuel节点的系统(CentOS 7.2)和所需要的软件包,直到安装完系统重启之后,会自动进入到Fuel Menu。
Note: Fuel 9.0之前的版本需要进行人工干预进入到Fuel Menu
这时可以修改Fuel的用户名和密码,并且最主要的是修改Bootstarp Image,修改为skip building bootstarp image,因为Fuel要去官网更新,如果网速不好的话时间会很长,所以我们取消,使用我们制作好的bootstrap(当然这个网上也有)。
Note: 最好修改一下ssh,改为0.0.0.0/0,允许所有地址段访问,要不然后期特别尬
如果不做其它修改,保存退出即可。
选择 Save and quit
接下来等待一段时间,大概2-3小时安装完成。
Note: 安装完使用ssh登录fuel节点,如果出现ssh登不上的问题,将/etc/sysconfig/iptables.save文件中ssh的条目改为0.0.0.0/0, 使用iptables-save保存,最后iptables-restore /etc/sysconfig/iptables.save重新加载一下配置文件就好了
2. 部署本地源
安装完成之后,进入到Fuel字符界面,将fuel9.0_repo_0926.tar.gz导入到/var/www/nailgun/文件夹中,将fuel9.0_repo_0926.tar.gz解压,执行fuel-createmirror,设置为本地源启动(中间可能会报错,忽略即可)
Note: 大家注意啊,这个"fuel9.0_repo_0926.tar.gz"是制作好的本地源,也就是一些OpenStack的软件包都集成在里面了
会解压出mirrors文件夹
部署完本地源之后,会发现Fuel web UI的软件源选项都变成了本地(10.20.0.2)
3. 部署Bootstrap
将制作好的ubuntu bootstrap上传到fuel节点
执行 fuel-bootstrap import 操作
将ubuntu bootstrap激活
查看bootstrap列表
4. 部署OpenContrail插件
将Contrail插件上传到fuel节点
执行 fuel plugins 安装操作
这时,在/var/www/naligun/目录里面会出现一个plugins目录,进入到contrail-5.0目录,将contrail-install-packages_3.1.0.0-25-ubuntu-14-04mitaka_all.deb上传到该目录
执行./install.sh
出现done字符时结束
Note: 执行./install.sh操作fuel节点必须要连外网
三、 部署OpenStack+OpenContrail环境
1. 新建环境
登陆 FUEL WEB UI https://10.20.0.2:8443
用户名:admin 密码:admin
Note: 登陆地址可以是其他网段地址,比如Public网段
网络部分选择contrail
创建完成
新建虚机,将所有节点的第一块网卡改为PXE网络,把启动模式改为网卡启动,我们使用的PXE网卡是一块单独的千兆电口网卡,这时Fuel 节点将会发现该主机。
Fuel一旦发现各节点,可以在Fuel Web界面可以看到所有节点信息:
2. 配置网络
使用Fuel部署OpenStack+Contrail环境共用了5套网络,其中包括公共、存储、管理、私有、PXE;
每个网段都需合理规划,都需配置网关,并且都需要通过连通性检查
网络规划详情,请看网络规划章节
Note: 需要注意的有几点:
- Public网段不能有DHCP服务器,并且Float IP也需要Public网段IP
- DHCP分配的地址不可和网关冲突,任何网段都不可
全局网络配置好之后,需要在接口上应用:
Note: 关于网卡的分配情况并不固定,看应用需求,一般情况如下:
Eth1: PXE
Eth2: 共开
Eth3: 私有+存储+管理
检查网络是否正确:
3. 开始部署
所有节点和网络环境准备完成之后,就可以开始进行部署了
部署一般是先给所有节点安装系统,再进行OpenStack和Contrail包的分发和安装,一般静等待3-4H安装完成(看节点数量而定)
Note: 期间如果有报错,可以通过Fuel查看log信息
4. 部署完成
部署完成之后,Fuel Web界面会提示” successful”
可以通过Fuel 界面登陆OpenStack和Contrail,也可以直接输入:
http://controller_address -- OpenStack
https:// controller_address:8143 -- Contrail
OpenStack界面:
OpenContrail界面:
好了,文档就到这里结束了,谢谢大家!