(1).Kolla概述
Kolla是OpenStack下用于自动化部署的一个项目,它基于docker和ansible来实现,其中docker主要负责镜像制作和容器管理,ansible主要负责环境的部署和管理。
Kolla实际上分为两部分:Kolla部分提供了生产环境级别的镜像,涵盖了OpenStack用到的各个服务;Kolla-ansible部分提供了自动化的部署。最开始这两部分是在一个项目中的(即Kolla),OpenStack从O开头的版本开始被独立开来,这才有了用于构建所有服务镜像的Kolla项目,以及用于执行自动化部署的Kolla-ansible。
(2).Linux系统硬件配置
需要一台高配VMware虚拟机,内存12G,硬盘200G(swap分区4G,boot分区200M,剩下全给根目录),CPU开启虚拟化支持,双网卡桥接模式。
(3).准备工作
如果是最小化安装,那么按<Tab>键是不会自动补全的,所以此时需要安装bash-completion。另外还需要安装vim和net-tools工具
1 |
|
关闭SELinux和firewalld
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 |
|
配置/etc/hosts
1 2 |
|
下载epel源
1 |
|
配置网卡信息
IP地址 | 网络类型 | 网卡 | 在OpenStack网络中的作用 |
192.168.128.240 | bridge(桥接) | ens32 | OpenStack内部管理网络(management network),Horizon web界面访问就是通过该网卡 |
无(不能配置IP地址) | bridge(桥接) | ens33 | 外部网络(external network),让neutron(OpenStack中的网络组件)的br-ex绑定使用,OpenStack中的虚拟机是通过该网卡与外网通信 |
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 |
|
安装基础包
1 2 3 4 5 6 7 8 9 10 11 12 |
|
(4).安装kolla-ansible
1)使用pip安装ansible,注意不要使用yum安装,否则会与kolla中的YAML包冲突
1 |
|
2)使用pip安装kolla-ansible
1 |
|
如果出现如下错误
1 2 3 4 5 6 7 |
|
3)复制kolla-ansible的相关配置文件
1 2 3 4 5 6 |
|
文件说明:all-in-one是安装单节点OpenStack的ansible自动安装配置文件;multinode是安装多节点OpenStack的ansible自动安装配置文件;globals.yml是OpenStack部署的自定义配置文件;passwords.yml是OpenStack中各个服务的密码文件。
(5).编辑kolla-ansible的配置文件,用于自定义安装OpenStack
生成OpenStack各个服务的密码文件,并修改Web页面登录密码
1 2 3 4 |
|
编辑/etc/kolla/global.yml自定义OpenStack中的部署事项
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 |
|
(6).基于kolla-ansible安装OpenStack私有云
生成ssh key,并给自己授权
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 |
|
配置单节点清单文件
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 |
|
开始部署OpenStack。注意:我在使用阿里云的epel源时,在安装bootstrap-server时会卡在TASK [baremetal : Install yum packages]这一步。而系统安装的epel源只等待了5分钟左右。
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 |
|
报错1:拉取镜像失败。
首先重复尝试几次拉取镜像操作。如果还是失败,先检测/etc/kolla/globals.yml中第21行版本号是否正确。在版本号正确的情况下再次拉取镜像还是报错,那么向前退一个版本尝试拉取镜像。(我就是train版本无法使用,退回到stein版本)注意清理其他版本的镜像
报错2:部署失败(我没遇到,有待测试)
如果部署时报以下错误:
1 2 3 4 5 |
|
可以尝试重新部署,会自动解决该问题。
使用内网的Windows测试
(7).重启服务器后来带的问题
kolla部署的OpenStack-allinone云平台自带开机自启,就是启动稍微有点慢。 但是在我重启过后发现少启动了一个镜像,一番查找之下发现缺少了kolla/centos-source-nova-scheduler:stein镜像(nova-scheduler)。以下为重启之后的操作,如有不能启动的镜像可以照此操作
1 2 3 4 |
|
然后再重启就又可以开机自启了