为 Azure 优化引擎配置工作区

本文介绍如何为 Azure 优化引擎(AOE)配置 Log Analytics 工作区。


配置性能计数器

如果想要充分利用虚拟机(VM)大小正确的扩充建议,则需要将日志发送到 Log Analytics 工作区的 VM。 Tt 通常应该是你在 AOE 安装时选择的,但它可以是不同的,并且需要它们发送特定的性能计数器。 所需的计数器列表在文件(AOE 根文件夹中可用)中perfcounters.json定义。 AOE 提供了一些工具,可帮助你验证和修复配置的 Log Analytics 性能计数器。 它们取决于用于从计算机收集日志的代理类型。

Azure Monitor 代理(首选方法)

Setup-DataCollectionRules.ps1借助脚本,可以创建几个数据收集规则(DCR)(每个 OS 类型一个),该规则配置为将性能计数器流式传输到所选的 Log Analytics 工作区。 使用以下脚本创建 DCR 后,只需手动或自动(例如,使用 Azure Policy)将 VM 关联到相应的 DCR。

要求

Install-Module -Name Az.Accounts
Install-Module -Name Az.Resources
Install-Module -Name Az.OperationalInsights

使用情况

./Setup-DataCollectionRules.ps1 -DestinationWorkspaceResourceId <Log Analytics workspace ARM resource ID> [-AzureEnvironment <AzureChinaCloud|AzureUSGovernment|AzureCloud>] [-IntervalSeconds <performance counter collection frequency - default 60>] [-ResourceTags <hashtable with the tag name/value pairs to apply to the DCR>]

# Example 1 - create Linux and Windows DCRs with the default options
./Setup-DataCollectionRules.ps1 -DestinationWorkspaceResourceId "/subscriptions/aaaa0a0a-bb1b-cc2c-dd3d-eeeeee4e4e4e/resourceGroups/myResourceGroup/providers/Microsoft.OperationalInsights/workspaces/myWorkspace"

# Example 2 - create DCRs using a custom counter collection frequency and assigning specific tags
./Setup-DataCollectionRules.ps1 -DestinationWorkspaceResourceId "/subscriptions/aaaa0a0a-bb1b-cc2c-dd3d-eeeeee4e4e4e/resourceGroups/myResourceGroup/providers/Microsoft.OperationalInsights/workspaces/myWorkspace" -IntervalSeconds 30 -ResourceTags @{"tagName"="tagValue";"otherTagName"="otherTagValue"}

Log Analytics 代理(2024 年 8 月 31 日弃用的旧版Microsoft监视代理)

如果仍在使用旧 Log Analytics 代理,请迁移到 Azure Monitor 代理


性能日志成本估算

表中每个性能计数器条目 Perf 的大小各不相同,具体取决于每个 OS 类型的 7 个所需计数器。 下表枚举每个性能计数器条目的大小(以字节为单位)。

OS 类型 Object 计数器 大小 每个间隔/VM 的集合数
Windows 处理器 处理器时间百分比 200 1 + vCPU 计数
Windows 内存 可用兆字节数 220 1
Windows LogicalDisk Disk Read Bytes/sec 250 3 + 数据磁盘计数
Windows LogicalDisk Disk Write Bytes/sec 250 3 + 数据磁盘计数
Windows LogicalDisk 磁盘读取数/秒 250 3 + 数据磁盘计数
Windows LogicalDisk 磁盘写入数/秒 250 3 + 数据磁盘计数
Windows 网络适配器 字节总数/秒 290 网络适配器计数
Linux 处理器 处理器时间百分比 200
Linux 内存 已用内存百分比 200
Linux 逻辑磁盘 磁盘读取字节数/秒 250 3 + 数据磁盘计数
Linux 逻辑磁盘 磁盘写入字节数/秒 250 3 + 数据磁盘计数
Linux 逻辑磁盘 磁盘读取数/秒 250 3 + 数据磁盘计数
Linux 逻辑磁盘 磁盘写入数/秒 250 3 + 数据磁盘计数
Linux 网络 字节数总计 200 网络适配器计数

总之,Windows VM 平均为每个性能计数器条目生成 245 个字节,而 Linux 每个条目消耗的字节更少 230 字节。 但是,根据 CPU 核心数、数据磁盘或网络适配器的数量,VM 会生成或多或少的 Log Analytics 条目。 例如,具有 4 个 vCPU、1 个数据磁盘和 5 个网络适配器的 Windows VM 会为每个收集间隔生成 5 * 200 + 220 + 4 * 250 + 4 * 250 + 4 * 250 + 5 * 290 = 6670 字节(6.5 KB)。 如果将性能计数器间隔设置为 60 秒,则每月有 60 * 24 * 30 * 6.5 = 280800 KB (274 MB) 的引入数据。 这意味着它的成本低于 0.70 欧元/月,以 Log Analytics 零售价格(即用即付)进行引入。


对性能日志使用多个工作区

若要在 VM 大小正确的建议报表中包含来自多个 Log Analytics 工作区的 VM,请将新变量添加到 AOE Azure 自动化 帐户。 在“自动化帐户 共享资源 - 变量 ”菜单选项中,选择“ 添加变量”按钮 并输入 AzureOptimization_RightSizeAdditionalPerfWorkspaces 为变量名称,并填写以逗号分隔的工作区 ID 列表(请参阅以下示例)。 最后,选择“创建”。

显示添加自动化帐户变量的屏幕截图,其中包含其他工作区 ID VM 大小建议的列表。


相关产品:

相关解决方案: