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