返回haichuan0227的回答

haichuan0227haichuan0227项目经理新浪云计算

官方推荐的方法需要使用新tag,且nova和ironic都需要操作且保证一致,太繁琐。

compute node入库时,都会记录自己的hypervisor_type。因此flavor上直接打hypervisor_type tag即可。

[code class=\"lang-Command\" lang=\"Command\"]# add spec for all nova flavor
vm_flavor_ids=`nova flavor-list|grep True|awk \'{print $2}\'`
for vm_flavor_id in $vm_flavor_ids; do nova flavor-key ${vm_flavor_id} set capabilities:hypervisor_type=QEMU; nova flavor-show ${vm_flavor_id}; done

# add spec for all baremetal flavor
nova flavor-create ${baremetal_flavor} auto $RAM_MB $DISK_GB $CPU
nova flavor-key ${baremetal_flavor} set capabilities:hypervisor_type=ironic
nova flavor-show ${baremetal_flavor}
[/code]


注意:

1)libvirt driver based compute入库时会记录自己的hypervisor_type为QEMU,注意是QEMU,不是qemu。

2)任何新增的flavor都需要指定自己的capabilities:hypervisor_type,否则可能会调度到错误的hypervisor type node上。nova flavors不指定capabilities:hypervisor_type,则创建vm可能会被调度到任意node上,包括ironic node上。

3)ComputeCapabilitiesFilter要求key必须使用前缀“capabilities:”,否则不认。

互联网服务 · 2017-04-05
浏览1564

回答者

haichuan0227
项目经理新浪云计算
擅长领域: 云计算一体化运维私有云

haichuan0227 最近回答过的问题

回答状态

  • 发布时间:2017-04-05
  • 关注会员:1 人
  • 回答浏览:1564
  • X社区推广