12.5. 为虚拟机公开下限指标


作为管理员,您可以通过首先启用 DownwardMetrics 功能门,然后配置 DownwardMetrics 设备,来向客户虚拟机公开一组有限的主机和虚拟机(VM)指标。

用户可以使用命令行或 vm-dump-metrics 工具来查看指标结果。

注意

在 Red Hat Enterprise Linux (RHEL) 9 中,使用命令行查看 Downward 指标。请参阅使用命令行查看 Downward指标

Red Hat Enterprise Linux (RHEL) 9 平台上不支持 vm-dump-metrics 工具。

12.5.1. 启用或禁用 DownwardMetrics 功能门

您可以通过执行以下操作之一启用或禁用 DownwardMetrics 功能门:

  • 在默认编辑器中编辑 HyperConverged 自定义资源 (CR)
  • 使用命令行

12.5.1.1. 在 YAML 文件中启用或禁用 Downward 指标功能门

要为主机虚拟机公开下限指标,您可以通过编辑 YAML 文件来启用 DownwardMetrics 功能门。

先决条件

  • 您必须具有管理员特权才能启用功能门。

流程

  1. 运行以下命令,在默认编辑器中打开 HyperConverged 自定义资源 (CR):

    $ oc edit hyperconverged kubevirt-hyperconverged -n openshift-cnv
  2. 选择启用或禁用 DownwardMetrics 功能门,如下所示:

    • 要启用 DownwardMetrics 功能门,请将 spec.featureGates.downwardMetrics 设置为 true。例如:

      apiVersion: hco.kubevirt.io/v1beta1
      kind: HyperConverged
      metadata:
        name: kubevirt-hyperconverged
        namespace: openshift-cnv
      spec:
          featureGates:
            downwardMetrics: true
      # ...
    • 要禁用 DownwardMetrics 功能门,请将 spec.featureGates.downwardMetrics 设置为 false。例如:

      apiVersion: hco.kubevirt.io/v1beta1
      kind: HyperConverged
      metadata:
        name: kubevirt-hyperconverged
        namespace: openshift-cnv
      spec:
          featureGates:
            downwardMetrics: false
      # ...

12.5.1.2. 从命令行启用或禁用 Downward 指标功能门

要为主机虚拟机公开下限指标,您可以使用命令行启用 DownwardMetrics 功能门。

先决条件

  • 您必须具有管理员特权才能启用功能门。

流程

  • 选择启用或禁用 DownwardMetrics 功能门,如下所示:

    • 运行以下命令启用 DownwardMetrics 功能门:

      $ oc patch hco kubevirt-hyperconverged -n openshift-cnv \
        --type json -p '[{"op": "replace", "path": \
        "/spec/featureGates/downwardMetrics" \
        "value": true}]'
    • 运行以下命令,禁用 DownwardMetrics 功能门:

      $ oc patch hco kubevirt-hyperconverged -n openshift-cnv \
        --type json -p '[{"op": "replace", "path": \
        "/spec/featureGates/downwardMetrics" \
        "value": false}]'

12.5.2. 配置 Downward 指标设备

您可以通过创建一个包含 downwardMetrics 设备的配置文件,为主机虚拟机启用 downward 指标。添加此设备会建立指标通过 virtio-serial 端口公开。

先决条件

  • 您必须首先启用 DownwardMetrics 功能门。

流程

  • 编辑或创建包含 DownwardMetrics 设备的 YAML 文件,如下例所示:

    DownwardMetrics 配置文件示例

    apiVersion: kubevirt.io/v1
    kind: VirtualMachine
    metadata:
      name: fedora
      namespace: default
    spec:
      dataVolumeTemplates:
        - metadata:
            name: fedora-volume
          spec:
            sourceRef:
              kind: DataSource
              name: fedora
              namespace: openshift-virtualization-os-images
            storage:
              resources: {}
              storageClassName: hostpath-csi-basic
      instancetype:
        name: u1.medium
      preference:
        name: fedora
      running: true
      template:
        metadata:
          labels:
            app.kubernetes.io/name: headless
        spec:
          domain:
            devices:
              downwardMetrics: {} 1
          subdomain: headless
          volumes:
            - dataVolume:
                name: fedora-volume
              name: rootdisk
            - cloudInitNoCloud:
                userData: |
                  #cloud-config
                  chpasswd:
                    expire: false
                  password: '<password>' 2
                  user: fedora
              name: cloudinitdisk

    1
    downwardMetrics 设备。
    2
    fedora 用户的密码。

12.5.3. 查看 downward 指标

您可以使用以下选项之一查看 downward 指标:

  • 命令行界面 (CLI)
  • vm-dump-metrics 工具
注意

在 Red Hat Enterprise Linux (RHEL) 9 中,使用命令行查看 Downward 指标。Red Hat Enterprise Linux (RHEL) 9 平台上不支持 vm-dump-metrics 工具。

12.5.3.1. 使用命令行查看下限指标

您可以通过从客户虚拟机(VM) 内输入命令来查看 downward 指标。

流程

  • 运行以下命令:

    $ sudo sh -c 'printf "GET /metrics/XML\n\n" > /dev/virtio-ports/org.github.vhostmd.1'
    $ sudo cat /dev/virtio-ports/org.github.vhostmd.1

12.5.3.2. 使用 vm-dump-metrics 工具查看 downward 指标

要查看 downward 指标,请安装 vm-dump-metrics 工具,然后使用该工具公开指标结果。

注意

在 Red Hat Enterprise Linux (RHEL) 9 中,使用命令行查看 Downward 指标。Red Hat Enterprise Linux (RHEL) 9 平台上不支持 vm-dump-metrics 工具。

流程

  1. 运行以下命令安装 vm-dump-metrics 工具:

    $ sudo dnf install -y vm-dump-metrics
  2. 运行以下命令来检索指标结果:

    $ sudo vm-dump-metrics

    输出示例

    <metrics>
      <metric type="string" context="host">
        <name>HostName</name>
        <value>node01</value>
    [...]
      <metric type="int64" context="host" unit="s">
        <name>Time</name>
        <value>1619008605</value>
      </metric>
      <metric type="string" context="host">
        <name>VirtualizationVendor</name>
        <value>kubevirt.io</value>
      </metric>
    </metrics>

Red Hat logoGithubRedditYoutubeTwitter

学习

尝试、购买和销售

社区

关于红帽文档

通过我们的产品和服务,以及可以信赖的内容,帮助红帽用户创新并实现他们的目标。

让开源更具包容性

红帽致力于替换我们的代码、文档和 Web 属性中存在问题的语言。欲了解更多详情,请参阅红帽博客.

關於紅帽

我们提供强化的解决方案,使企业能够更轻松地跨平台和环境(从核心数据中心到网络边缘)工作。

© 2024 Red Hat, Inc.