$ oc edit hyperconverged kubevirt-hyperconverged -n openshift-cnv
作为管理员,您可以首先启用downwardMetrics
功能网关,然后配置downwardMetrics
设备,从而将有限的宿主机和虚拟机 (VM) 指标集公开给访客 VM。
用户可以使用命令行或vm-dump-metrics
工具查看指标结果。
在 Red Hat Enterprise Linux (RHEL) 9 上,请使用命令行查看下行指标。请参见 使用命令行查看下行指标。 vm-dump-metrics 工具在 Red Hat Enterprise Linux (RHEL) 9 平台上不受支持。 |
您可以通过执行以下任一操作来启用或禁用downwardMetrics
功能网关
在默认编辑器中编辑超融合自定义资源 (CR)
使用命令行
要公开宿主机虚拟机的下行指标,您可以通过编辑 YAML 文件来启用downwardMetrics
功能网关。
您必须具有管理员权限才能启用功能网关。
通过运行以下命令在默认编辑器中打开超融合自定义资源 (CR)
$ oc edit hyperconverged kubevirt-hyperconverged -n openshift-cnv
选择启用或禁用 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
# ...
要公开宿主机虚拟机的下行指标,您可以使用命令行启用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}]'
您可以通过创建一个包含downwardMetrics
设备的配置文件来启用对主机虚拟机下行指标的捕获。添加此设备将建立通过virtio-serial
端口公开指标。
您必须首先启用downwardMetrics
特性开关。
编辑或创建一个包含downwardMetrics
设备的YAML文件,如下例所示
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 用户的密码。 |
您可以使用以下任一选项查看下行指标
命令行界面 (CLI)
vm-dump-metrics
工具
在 Red Hat Enterprise Linux (RHEL) 9 上,使用命令行查看下行指标。 |
您可以从访客虚拟机 (VM) 内部输入命令来查看下行指标。
运行以下命令
$ 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
要查看下行指标,请安装vm-dump-metrics
工具,然后使用该工具公开指标结果。
在 Red Hat Enterprise Linux (RHEL) 9 上,使用命令行查看下行指标。 |
运行以下命令安装vm-dump-metrics
工具
$ sudo dnf install -y vm-dump-metrics
运行以下命令检索指标结果
$ 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>