如何在OpenStack环境中实现多Region

OpenStack很早的版本就支持多Region,所谓多Region,就是多个区域,每个区域一套OpenStack,共享Keystone和Horizon。

如何在OpenStack环境中实现多Region

如何在OpenStack环境中实现多Region

用户登录Dashboard以后,可以多个Region切换。

如何在OpenStack环境中实现多Region

Horizon项目做的还是很不错的,当检测到Keystone的Endpoint有多个Region存在,UI上就可以支持。

作为用户,如果想测试多个Region,有什么好的办法吗?最简单的就是用devstack

http://blog.zhaw.ch/icclab/how-to-install-a-multi-region-devstack-part-1/

还有一个办法,就是利用RDO来实现。

目前红帽的RDO,只支持一个Region,默认都是Regionone,不过Region的名字,你是可以修改,假设你搭建两套Openstack,一套是RegionOne,一套是RegionTwo。那么稍微调整一下,就支持多Region。

在RegionTwo的控制节点上,把keystone的数据库里,Endpoint,service,Region的表的数据导出来,再到RegionOne上,把这些数据导入,那么就基本搞定,这个时候,你登录Horizon,就可以看到多个Region。

剩下的你需要搞定RegionTwo的所有组件配置文件,让他们采用RegionOne的Keytone来做身份验证。

有两个问题,可能需要注意的

1:在RegionTwo上,publicurl,adminurl,internal,必须在RegionOne可以访问,因为Horizon。

2:乐视分享过,如果Region数量超过3,那么建议使用UUID,而不是PKI。


本文作者:陈沙克

来源:51CTO