为了提供规模化、分布式部署、资源优化利用和兼容 AWS 的功能,openstack 引入了 Region,Cell,Availability Zone(AZ) 和 Host Aggregates Zone(HAZ) 四个概念,其中 Region 和 AZ 是从公有云大哥 AWS 引入,Cell 是为了扩充一个 Region 下的集群的规模而引入的,Host Aggregates 是优化资源调度和利用引入的。这四个概念均和集群部署相关,某些地方含义有相近之处,对于初学 openstack 的童鞋来说容易混淆和模糊,本文将详细分析这四个概念。
从部署层次来说,它们有以下关系
Region > Cell > Availabiliy Zone > Host Aggregates
Region
顾名思义,Region 直译过来就是区域,地域的概念,而事实上,AWS 按地域(国家或者城市)设置一个 Region,每个 Region 下有多个 Availability Zone。Openstack 同样支持 Region 的概念,支持全球化部署,比如为了降低网络延时,用户可以选择特定的 Region 来部署服务。各个 Region 之间的计算资源、网络资源、存储资源都是独立的,但所有 Region 共享账户用户信息,因为 Keystone 是实现 openstack 租户用户管理和认证的功能的组件,所以 Keystone 全局唯一,所有 Region 共享一个 Keystone,Keystone endpoint 中存储了访问各个 Region 的 URL。