Openstack 对于主机的分布区域的划分主要方式主要有Zones,region,以及在g版新引入的概念cell。这些方式将主机进行了不同的化分。这些概念网上都有介绍这里我就不介绍了,感兴趣的朋友可以去网上搜一下。我在这里主要介绍一种逻辑划分方式Host aggregates。
Host aggregates 是对于availability zone的进一步的细分,availability zone是对于用户是可见的而Host aggregates是仅对管理员可见的,可以说是一种逻辑上的划分。那么Host aggregates究竟有什么用呢,其实他主要是针对scheduler调度使用的,通过他可以创建高级的调度策略。在g版中有AggregateInstanceExtraSpecsFilter,AggregateMultiTenancyIsolation两个定义好的调度过滤策略,当然你也可以根据自己的情况定义自己的策略。
AggregateInstanceExtraSpecsFilter 过滤器,主要是利用Flavor extra_specs扩展属性,来和aggregates 的metadata,通过各种操作符如!=,<=