kolla部署openstack多region
openstack多region基础知识
我们都知道Region
是OpenStack
里面用于隔离资源的一个重要概念。简单来说,一个Region
对应一套完整的OpenStack
环境,而Region
和Region
之间可以是跨机房的集群,也可以是一个大规模物理机集群分割后的集群。OpenStack
在设计之初就是支持多Region
的情况,由于Region
之间资源(Mariadb
,RabbitMQ
等)的独立的,所以他们之间并不存在资源交互开销的情况。
简单的讲所谓openstack
多region
,就是多套openstack
共享一个keystone
和horizon
。每个区域一套openstack
环境,可以分布在不同的地理位置,只要网络可达就行。个人认为目的就是为了提供环境隔离的功能,选择启虚拟机的时候可以根据自己所处的位置就近选择。
环境准备
我这里有两台kolla
环境的部署节点分别是172.18.24.150
,172.18.24.130
两个台虚拟机。
| column | column |
|——–|————|
|RegionOne|172.18.24.150|
|RegionTWO|172.18.24.130|kolla
环境部署节点安装请参考kolla搭建,这次我用kolla
部署openstack
的queens
版本。
部署
用Keystone
和Horizon
部署第一个区域
我这这里把keystone
,horizon
这两个服务放到RegionOne
虚拟机上。修改配置/etc/kolla/globals.yml
文件
部署RegionOne
部署其他区域
修改RegionTWO
的/etc/kolla/globals.yml
文件
RegionTWO上的openstack组件连接RegionOne上的keystone
需要修改cinder
,nova
,neutron
,glance
等配置文件才能联系RegionOne
的Keystone
。在RegionTWO
虚拟机上创建/etc/kolla/config/
目录,然后穿件需要连接Keystone
服务的配置文件。
更新配置文件
部署RegionTWO
Dashboard
如果以上过程顺利,恭喜你,你的OpenStack
现在也支持多区域了。
Ocata版本多region搭建
如果您用的是openstack
的Ocata
版本,需要打一下patch
,在部署,这里可以看到所有多region相关bug,除了下面这个没放进去,都merge
到ocata
。需要把这个patch
自己打进去即可。
https://review.openstack.org/#/c/431658/