Show Table of Contents
A.7. 设置自定义属性
Red Hat Virtualization Manager 接受的自定义属性(可以作为参数传递给定制 hook)是通过
engine-config 命令设置的。您需要在 Red Hat Virtualization Manager 所在的主机上以 root 用户身份运行这个命令。
UserDefinedVMProperties 和 CustomDeviceProperties 这两个配置项被用来保存自定义属性的名称。每个自定义属性的有效值可以使用正则表达式来定义,它们也被保存在这些配置项中。
多个自定义属性可以被分号分隔。请注意,在设置配置项时,这个项的当前值会被覆盖。如需在当前值的基础上添加新的值,在配置命令中需要输入新的值以及当前的值。
当配置项被更新后,新的值在
ovirt-engine 服务被重新启动后才会有效。
例 A.1. 虚拟机属性 - 定义 smartcard 自定义属性
- 使用以下命令显示
UserDefinedVMProperties配置项所定义的自定义属性:# engine-config -g UserDefinedVMProperties
从下面的输出可以看到,自定义属性memory已经被定义。其中的正则表达式^[0-9]+$限定了这个定制属性只能包括数字。# engine-config -g UserDefinedVMProperties UserDefinedVMProperties: version: 3.6 UserDefinedVMProperties: version: 4.0 UserDefinedVMProperties : memory=^[0-9]+$ version: 4.0
- 因为
memory自定义属性已经在UserDefinedVMProperties配置项中被定义,新的自定义属性(smartcard)就需要添加到它的上面。这个新的自定义属性的值只能是true或false。# engine-config -s UserDefinedVMProperties='memory=^[0-9]+$;smartcard=^(true|false)$' --cver=4.0
- 运行以下命令检查
UserDefinedVMProperties配置项所定义的自定义属性是否已经被正确更新。# engine-config -g UserDefinedVMProperties UserDefinedVMProperties: version: 3.6 UserDefinedVMProperties: version: 4.0 UserDefinedVMProperties : memory=^[0-9]+$;smartcard=^(true|false)$ version: 4.0
- 最后,重新启动
ovirt-engine服务来使所做的配置改变有效。# systemctl restart ovirt-engine.service
例 A.2. 设备属性 - 定义 interface 自定义属性
- 使用以下命令显示
CustomDeviceProperties配置项所定义的定制属性:# engine-config -g CustomDeviceProperties
从下面的输出可以看到,没有任何自定义属性被定义。# engine-config -g CustomDeviceProperties CustomDeviceProperties: version: 3.6 CustomDeviceProperties: version: 4.0
- 因为
interface自定义属性还不存在,新的自定义属性可以被简单地添加。在这个例子中,speed属性的有效值是 0 到 99999,duplex属性的有效值是full或half。# engine-config -s CustomDeviceProperties="{type=interface;prop={speed=^([0-9]{1,5})$;duplex=^(full|half)$}}" --cver=4.0 - 运行以下命令检查
CustomDeviceProperties配置项已经被正确更新。# engine-config -g CustomDeviceProperties UserDefinedVMProperties: version: 3.6 UserDefinedVMProperties: version: 4.0 UserDefinedVMProperties : {type=interface;prop={speed=^([0-9]{1,5})$;duplex=^(full|half)$}} version: 4.0 - 最后,重新启动
ovirt-engine服务来使所做的配置改变有效。# systemctl restart ovirt-engine.service

Where did the comment section go?
Red Hat's documentation publication system recently went through an upgrade to enable speedier, more mobile-friendly content. We decided to re-evaluate our commenting platform to ensure that it meets your expectations and serves as an optimal feedback mechanism. During this redesign, we invite your input on providing feedback on Red Hat documentation via the discussion platform.