12.2. 将实例调度到节点
在创建实例之前,必须选择用于镜像实例化的主机。此选择由 nova-scheduler 执行,它决定了如何分配计算和卷请求。
FilterScheduler 是计算的默认调度程序,但存在其他调度程序。该功能适用于与 过滤器提示 协作,以确定应启动实例的位置。通过这种主机选择的过程,管理员可以满足许多不同的安全性和合规性要求。如果数据隔离是主要关注点,您可以选择让项目实例尽可能驻留在同一主机上。相反,出于可用性或容错的原因,您可以尝试让实例驻留在很多不同的主机上。
过滤器调度程序位于以下主要类别下:
- 基于资源的过滤器 - 根据虚拟机监控程序主机集的系统资源使用情况来确定实例放置,并可在空闲或已用的属性(如 RAM、IO 或 CPU 使用率)上触发。
- 基于镜像的过滤器 - 根据所使用的镜像元数据(如虚拟机操作系统或所用镜像类型)创建实例创建。
- 基于环境的过滤器 - 根据外部详细信息(如在一个特定 IP 范围内、跨可用性区域)或与其他实例在同一主机上确定实例放置。
- 自定义标准 - 根据用户或管理员提供的标准(如信任或元数据解析)来分离实例创建。
可以一次性应用多个过滤器。例如,serverGroupAffinity 过滤器检查某个实例是否在特定一组主机的成员上创建,而 ServerGroupAntiAffinity 过滤器会检查同一实例不在另一特定主机组上创建。请注意,这两个过滤器通常同时启用,永远不会相互冲突,因为它们每次检查给定属性值时不得相互冲突,且不能同时是 true。
DiskFilter 过滤器能够超订阅磁盘空间。虽然通常不是问题,但这可能会对精简配置的存储设备有问题。此过滤器应当与应用良好测试的配额一起使用。此功能已被弃用,在 Red Hat OpenStack Platform 12 后不应使用。
考虑禁用过滤器,用于解析用户提供的对象,或者可以操作(如元数据)。