Prometheus 指标被引入到 Azure Monitor 工作区。 Azure Monitor 工作区对数据引入有默认限制和配额。 当达到引入限制时,可能会发生限制。 为避免限流,请监视工作区数据引入限制并针对其发出警报。
有关 Prometheus 和 Azure Monitor 工作区限制和配额的详细信息,请参阅 Azure Monitor 服务限制。
引入限制
下表汇总了Azure Monitor工作区的默认引入限制,以及通过引入限制增加 API 提供的最大可用限制。
| Limit | 默认 | 最大值 | 备注 |
|---|---|---|---|
| 每分钟的事件数 | 1 百万 | 2000 万(通过 API) | 超过 2000 万的增加需要支持票证。 |
| 活动时序 | 1 百万 | 2000 万(通过 API) | 超过 2000 万的增加需要支持票证。 |
最高达 200 万的限额提高会自动获批。 若要增加超过 200 万,当前引入使用量必须达到所需限制的 50%。 例如,当前限制为 500 万的工作区符合提升条件,最多可增至 1000 万。 有关详细信息,请参阅请求增加引入限制(预览版)。
先决条件
- Azure Monitor工作区上的“监视参与者”角色或等效角色,以创建建议的警报规则。
- 在Azure Monitor工作区上写入访问权限,以请求通过 API 增加引入限制。
查看限制并设置建议的警报
Azure Monitor工作区公开一组指标,用于深入了解引入限制和利用率。 在Azure门户中,转到Azure Monitor工作区,然后选择“监视”部分下的“指标”。
- 在 “选择指标 ”下拉列表中,选择“ 使用生成器查看标准指标”。
- 在“添加指标”下拉菜单中,选择“使用生成器添加”。
- 在“指标”下拉菜单中,选择“活动时序使用率百分比”和“每分钟接收事件数使用率百分比”,并验证这些使用率是否低于 100%。
门户中的指标显示名称对应于警报模板中使用的以下指标 ID:
| 门户指标 | 指标标识符 |
|---|---|
| 活跃时间序列利用率 (%) | ActiveTimeSeriesPercentUtilization |
| 每分钟接收事件数 利用率 % | EventsPerMinuteIngestedPercentUtilization |
若要监视引入限制,请设置建议的警报。 启用推荐的现用警报规则或手动创建新的警报规则。 为Azure Monitor工作区设置建议的警报时,会创建以下警报和默认阈值。 可以在设置窗格中更改默认阈值。
| 告警名称 | Description | 默认阈值 | 聚合时间窗口(分钟) |
|---|---|---|---|
| AMW 即将达到事件引入限制 | 每分钟事件摄取使用率已超过当前限制的 75%。 | >75% | 30 |
| AMW 即将达到活动时间序列摄取限制 | TimeSeries 引入利用率高于当前限制的 75%。 | >75% | 30 |
| AMW 面临超过事件引入限制的高风险 | 每分钟事件引入利用率超过当前限制的 95%,并且有被限制的风险。 请求增加。 | >95% | 30 |
| AMW 面临超过活动时间序列数据摄取限制的高风险 | 时序引入利用率高于当前限制的 95%,并且面临受到限制的风险。 请求增加。 | >95% | 30 |
警报每 5 分钟(评估频率)在 30 分钟的聚合窗口中评估一次。
请求增加摄取限制(预览版)
使用 Azure 资源管理器 API 请求增加引入限制。 此 API 处于预览状态,以下条件适用于此 API:
- 使用 API 更新(通过 CLI 或 ARM 模板部署)请求从默认的 100 万个事件或活动时序增加到每分钟最多 2000 万个事件或活动时序。 对于超过 2000 万的限制,请创建支持票证。
- 对于不超过 200 万的提高限额请求,该请求将自动获批。
- 对于超过 200 万的限制增加请求,当前引入使用量必须达到所需限制的 50%。 例如,如果当前限制为 500 万,则最大请求为 1000 万,总最大为 2000 万。
- 对于超过 2000 万的请求,请创建支持票证。
- 创建Azure Monitor工作区始终应用默认限制。 不支持创建具有自定义限制的Azure Monitor工作区。
本文介绍如何使用 Azure 资源管理器 API 更新Azure Monitor工作区的数据引入限制。
提高限额的前提条件
用于运行 ARM 模板命令的命令行工具,例如Azure PowerShell或Azure CLI。
步骤 1:下载 ARM 模板并更新参数
注释
如果你更倾向于使用 Bicep 而不是 ARM 模板(JSON),请反编译以下模板文件和参数文件。 有关详细信息,请参阅 将 JSON Azure 资源管理器 模板反编译为 Bicep。
下载 ARM 模板文件(AMWLimitIncrease-Template.json 和 AMWLimitIncrease-Parameters.json),并使用订阅 ID、包含Azure Monitor工作区的资源组名称、Azure Monitor工作区的名称、Azure Monitor工作区的位置以及所需的引入限制(最大值为 200000000)更新 Parameters.json 文件。
步骤 2:部署 ARM 模板
从下载的 ARM 模板文件夹运行以下命令:
Azure CLI
az cloud set -n AzureChinaCloud
az login
az account set --subscription <subscriptionId>
az deployment group create --name AmwLimits --resource-group <resourceGroupName> --template-file AMWLimitIncrease-Template.json --parameters AMWLimitIncrease-Parameters.json
Azure PowerShell
Connect-AzAccount
New-AzResourceGroupDeployment -Name AmwLimits -ResourceGroupName <resourceGroupName> -TemplateFile AMWLimitIncrease-Template.json -TemplateParameterFile AMWLimitIncrease-Parameters.json
步骤 3:验证限制是否已更新
若要验证限制是否已成功更新,请转到Azure门户,导航到Azure Monitor工作区,打开指标资源管理器,然后在“指标”下拉列表中选择“使用生成器查看标准指标”。 然后,验证更新的限制是否适用于 活动时序限制 和 每分钟引入限制的事件。
使用 Azure 资源管理器 API 排查提高引入限制时出现的问题
如果使用 API 请求增加限制时看到错误,请检查错误响应以查找错误的原因。
请求的限制超过 2000 万:
ActiveTimeSeries quota requested exceeds the maximum limit of {MaxAutoApprovedActiveTimeSeries}请求的限制超过每分钟或活动时序超过 2000 万个事件时,会发生此错误。 目前,API 仅支持增加到 2000 万。 若要请求更高的引入限制,请创建支持票证。与请求的限制相比,使用率较低:当前利用率不符合所请求的 MaxTimeSeries 配额的条件。 如果当前引入小于请求限制的 50%,则会发生此错误。 在请求增加之前,请先达到目标限制的 50% 使用阈值,或者请求将限制最多增加至当前使用量的 200%。 若要检查当前使用情况,请转到Azure门户,导航到Azure Monitor工作区,打开指标资源管理器,然后在“指标”下拉列表中选择“使用生成器查看标准指标”,然后选择“活动时序 % 利用率”和“每分钟收到的事件数 % 利用率”。
查询工作区引入指标并针对其发出警报
若要查询 Azure Monitor 工作区指标来监视引入限制,请使用以下步骤:
在 Azure 门户中导航到你的 Azure Monitor 工作区,然后在“监视”部分下选择“指标”。
在“添加指标”下拉菜单中,选择“使用生成器添加”。
选择“Azure Monitor 工作区”作为范围。
为“指标命名空间”选择“标准指标”。
在“指标”下拉菜单中,选择“活动时序使用率百分比”和“每分钟接收事件数使用率百分比”,并验证这些使用率是否低于 100%。
选择“新建预警规则”来创建 Azure 警报。 设置 Azure 警报来监视使用率,并在使用率大于特定阈值时发出警报。 有关详细信息,请参阅对 Azure 资源创建指标警报。
在 Azure 门户中,通过在 Azure Monitor 工作区的“监视”部分下选择“警报”,查看警报。
如果引入使用率超过阈值,则会触发警报。 通过创建支持工单来请求增加限额。