官方推荐的方法需要使用新tag,且nova和ironic都需要操作且保证一致,太繁琐。compute node入库时,都会记录自己的hypervisor_type。因此flavor上直接打hypervisor_type tag即可。[code class=\"lang-Command\" lang=\"Command\"]# add spec for all nova flavorvm_flavor_ids...
显示全部官方推荐的方法需要使用新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:”,否则不认。
收起