Red Hat Training

A Red Hat training course is available for Red Hat Virtualization

A.7. 定义自定义属性

Red Hat Virtualization Manager 接受的自定义属性 - 依次传递给自定义 hook - 使用 engine-config 命令定义。在安装了 Red Hat Virtualization Manager 的主机中以 root 用户身份运行此命令。
UserDefinedVMPropertiesCustomDeviceProperties 配置键用于存储支持的自定义属性的名称。定义每个命名自定义属性的有效值的正则表达式也包含在这些配置键中。
多个自定义属性由分号分隔。请注意,在设置配置键时,它包含的任何现有值都会被覆盖。在组合新的和现有的自定义属性时,必须包含用于设置键值的命令中的所有自定义属性。
更新配置密钥后,必须重启 ovirt-engine 服务,才能使新值生效。

例 A.1. 虚拟机属性 - 定义 智能卡 自定义属性

  1. 使用以下命令,检查 UserDefinedVMProperties 配置键定义的现有自定义属性:
    # engine-config -g UserDefinedVMProperties
    如以下输出所示,自定义属性 内存 已定义。正则表达式 ^[0-9]+$ 确保自定义属性仅包含数字字符。
    # engine-config -g UserDefinedVMProperties
    UserDefinedVMProperties:  version: 3.6
    UserDefinedVMProperties:  version: 4.0
    UserDefinedVMProperties : memory=^[0-9]+$ version: 4.0
  2. 由于 memory custom 属性已在 UserDefinedVMProperties 配置键中定义,新的自定义属性必须附加到其中。额外的自定义属性 smartcard 被添加到配置键的值中。新的自定义属性可以保存值 truefalse
    # engine-config -s UserDefinedVMProperties='memory=^[0-9]+$;smartcard=^(true|false)$' --cver=4.0
  3. 验证 UserDefinedVMProperties 配置键定义的自定义属性是否已正确更新。
    # engine-config -g UserDefinedVMProperties
    UserDefinedVMProperties:  version: 3.6
    UserDefinedVMProperties:  version: 4.0
    UserDefinedVMProperties : memory=^[0-9]+$;smartcard=^(true|false)$ version: 4.0
  4. 最后,必须重启 ovirt-engine 服务才能使配置更改生效。
    # systemctl restart ovirt-engine.service

例 A.2. 设备属性 - 定义 接口 自定义属性

  1. 使用以下命令,检查 CustomDeviceProperties 配置键定义的现有自定义属性:
    # engine-config -g CustomDeviceProperties
    如以下输出所示,还没有定义自定义属性。
    # engine-config -g CustomDeviceProperties
    CustomDeviceProperties:  version: 3.6
    CustomDeviceProperties:  version: 4.0
  2. 接口 自定义属性不存在,因此它可以附加为。在本例中,speed sub-property 的值设置为范围 0 到 99999,且 duplex 子的值被设置为 fullhalf 的选择。
    # engine-config -s CustomDeviceProperties="{type=interface;prop={speed=^([0-9]{1,5})$;duplex=^(full|half)$}}" --cver=4.0
  3. 验证 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
  4. 最后,必须重启 ovirt-engine 服务才能使配置更改生效。
    # systemctl restart ovirt-engine.service