深挖Openstack Nova - Scheduler调度策略(2)

当OpenStack自带的调度算法无法满足自己的业务需求时,这时我们可以增加自定义调度器


现在有如下需求:

需求1. 同一项目的多个实例分散到不同的计算节点上;

需求2. 机柜感知 - 同一项目的多个实例分散到不同的机柜上;

需求3. 要求实例B不放在与实例A相同的节点上。


思路:

需求1:

(1)自带的ServerGroupAntiAffinityFilter过滤器可解决,创建实例时指定scheduler_hints -> group_hosts = [host1, host2],那么实例不能创建在这些host上。创建时,需要获取指定项目的其他实例所在的host,将其放入这过滤列表中。

缺点:每一次创建实例的请求都强依赖于上一次实例创建后的host,导致只能串行的一个一个创建实例。(当然可以采用预分配后创建的方式优化)

(2)采用hash算法对实例将要分配到的host节点进行预分配


需求2:

(1)客户端创建实例时指定机柜ID,机柜参数可以在Flavor里面的extra_specs中设置(key-value值)。同时,nova的instances表需要新增机柜ID字段:cabinet_id

ÿ

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值