FusionSphere 的标签有两处设置的地方,一个是主机组标签,一个是规格标签,这两个标签配置均在FusionSphere OpenStack OM上进行配置。
标签与虚拟机能发放的位置、热迁移和重建的范围息息相关。
一、主机组标签
主机组标签设置入口为 主机组>更多>标签
主机组常见标签如下:
主机组名称标签:主机组名称=true,如SRV_HA01=true,相当于给该主机组的每个主机都打上了SRV_HA01=true的标签。
主机组冗余标签:__redundancy=n(n为数字,表示该主机组冗余的主机数量),当主机组设置了__redundancy=n标签时,主机组会预留出n个主机作为冗余主机,nova调度主机时优先在非冗余主机中调度,当这些主机资源不足时,再去冗余主机中调度。
二、规格标签
主机组标签设置入口为 规格>更多>标签管理,也可以在新建规格时设置标签
上图设置表示a=aa
规格常见标签如下:
需要发放到的主机组名称=true,如SRV_HA01=true。在创建或迁移虚拟机时,nova会根据该标签过滤主机,将没有SRV_HA01标签的主机剔除,继续在有SRV_HA01标签的主机中过滤其他条件。
三、标签的作用
1、利用标签能实现资源隔离,比如现有SRV_HA01和SRV_HA02,需要部署mysql和nginx两个业务,要求两个业务使用不同的主机组,那么我们就可以通过标签实现该需求,确保mysql虚拟机不会发放到SRV_HA02上。
业务 | 所属主机组 | 虚拟机规格标签 |
mysql | SRV_HA01 | SRV_HA01 |
nginx | SRV_HA02 | SRV_HA02 |
2、实现资源冗余
通过__redundancy标签实现资源冗余,提高资源利用率,保障可靠性。
以下场景,当为设置冗余标签时,虚拟机的分布可能如下表,当Host1故障时,VM1无资源可迁移和重建,业务受损时间长。
主机(16C) | VM1 | VM2 | VM3 |
Host1 | 12C | 4C | |
Host2 | 8C | ||
Host3 | 8C |
当设置了__redundancy=1,虚拟机分布如下表,Host3作为冗余主机,主机组内其他资源满足虚拟机要求时,该主机上不承载虚拟机,当Host1 or Host2故障时,完全可以将虚拟机迁移到Host3上。
主机(16C) | VM1 | VM2 | VM3 |
Host1 | 12C | 4C | |
Host2 | 8C | 8C | |
Host3 |
3、值得注意的是,主机组标签不一定是主机组名称=true,也可以是自定义的,只要虚拟机规格的标签和主机组标签匹配即可通过nova的filter。
我是运维少年,如果文章对您有帮助,欢迎关注我的同名公众号~