VM 监视信号按逻辑分组到收集器套件中,可以分为两个组:核心组和可选组。 默认情况下,仅启用核心组收集器,并使用默认配置。 但是,可以使用 ARM 模板、Azure CLI 或 PowerShell 轻松覆盖vmWatchSettings
这些默认设置。
本文介绍如何配置 VM 监视以满足特定要求。
先决条件
本文假设你熟悉以下内容:
- VM 监视检查、指标和日志
- 将 VM 监视安装到虚拟机和规模集
- VM 监视收集器套件
在 Azure 虚拟机上访问 vmWatchSettings
重要
除了传递给扩展类型的参数 <application health extension type>
的值外,Windows 和 Linux 的代码段都是相同的。 将 <application health extension type>
替换为 Linux 使用的 ApplicationHealthLinux
和 Windows 使用的 ApplicationHealthWindows
。
- 导航到 Azure 门户 上的“概述”页,然后单击 VM 的 JSON 视图,找到下面的代码段。
- 将代码段复制到 IDE(如 Visual Studio Code),并根据需要进行自定义
{
"settings": {
"vmWatchSettings": {
"enabled": true
}
}
}
自定义 VM 监视配置
可以通过配置 vmWatchSettings
属性来自定义 VM 监视信号,以满足特定要求。 下表列出了vmWatchSettings
的属性。
vmWatchSettings 属性
名称 | 类型 | 说明 | 必需 |
---|---|---|---|
启用 | bool |
这允许启用或禁用 VM 监视 | 是 |
signalFilters | object |
这会按标记或收集器名称筛选已启用/禁用的信号。 | false |
parameterOverrides | object |
此属性指定可以为每次信号执行覆盖的参数。 在“VM 监视收集器套件”页面中可以找到可覆盖参数的完整列表。 | 否 |
environmentAttributes | object |
这指定任何有助于确定测试是否符合执行条件的环境属性。 | 否 |
重要
有关收集器的完整列表、关联的信号、标记、可覆盖的参数和环境属性,请访问“VM 监视收集器套件”页面
打开/关闭 VM 监视
可以通过配置 enabled
属性来打开/关闭 VM 监视,如代码段所示。
{
"vmWatchSettings": {
"enabled": true
}
}
注释
名称 | 说明 |
---|---|
true | 此设置启用 VM 监视 |
false | 此设置禁用 VM 监视 |
启用/禁用信号执行
默认情况下,仅启用核心组信号。 但是, signalFilters
该属性可用于控制和配置要执行的信号。 此属性包括以下子字段。
子领域 | 说明 |
---|---|
启用标签 | 这将启用由用户提供的标记指定的可选组中的信号 |
disabledTags | 这会禁用由用户提供的标记指定的核心组和可选组中的信号 |
enabledOptionalSignals | 此字段将启用在可选组中指定的信号。 提供收集器名称作为参数 |
已禁用信号 | 这会禁用核心组和可选组中指定的信号。 提供收集器名称作为参数 |
例如,若要在包含 Network
标记的可选组中启用信号并禁用包含 Disk
标记的信号,请在以下位置指定 enabledTags
此类标记,disabledTags
如下所示:
{
"vmWatchSettings": {
"enabled": true,
"signalFilters": {
"enabledTags": [
"Network"
],
"disabledTags": [
"Disk"
]
}
}
}
同样,若要启用具有名称 hardware_health_monitor
的可选组信号,并禁用具有名称 process
的信号,并在 dns
下面指定此类名称 enabledOptionalSignals
, disabledSignals
如下所示:
{
"vmWatchSettings": {
"enabled": true,
"signalFilters": {
"enabledOptionalSignals": [
"hardware_health_monitor"
],
"disabledSignals": [
"process",
"dns"
]
}
}
}
配置信号执行频率
可以通过调整 parameterOverrides
属性来自定义信号执行频率。
例如,若要将 outbound_connectivity
测试执行频率设置为 120 秒,请指定以下配置:
{
"vmWatchSettings": {
"enabled": true,
"parameterOverrides": {
"OUTBOUND_CONNECTIVITY_INTERVAL": "120s"
}
}
}
替代默认信号执行参数
可以通过设置 parameterOverrides
属性来覆盖信号执行参数。 例如,若要将信号装入点/mnt
设置为disk_io
,可以指定以下配置:
{
"vmWatchSettings": {
"enabled": true,
"parameterOverrides": {
"DISK_IO_MOUNT_POINTS": "/mnt"
}
}
}
环境属性扩充
除了标记外,VM 监视还会在执行之前检查信号是否合格。 environmentAttributes
可以指定它来帮助 VM 监视确定每个信号的执行资格。
例如,如果在 VM 上禁用了出站流量,则可以向 VM 监视提供此信息。 这可确保将任何与出站网络相关的信号执行标记为不合格。
{
"vmWatchSettings": {
"enabled": true,
"environmentAttributes": {
"OutboundConnectivityDisabled": true
}
}
}