将工作区配置转换为 DCR 配置
Azure Monitor 代理依赖数据收集规则 (DCR) 进行配置,而 Log Analytics 代理则是从 Log Analytics 工作区继承其配置
工作区配置到 DCR 配置生成器是一个 PowerShell,它根据工作区中存在的 MMA 配置从工作区中读取配置,生成多个 DCR ARM 模板。
先决条件
- 建议使用 PowerShell 7.1.3 或更高版本(最低版本 5.1)
- 拉取工作区代理配置信息 Az PowerShell 模块的 Az PowerShell 模块。 要安装 Az PowerShell 模块,请参阅在 Windows 上安装 Azure PowerShell 模块。
- 对指定的工作区资源的读/写访问权限
安装和执行
从 Git 中心下载 PowerShell 脚本。
该脚本会从工作区检索旧代理配置的配置,并为指定输出文件夹中每个受支持的 DCR 类型生成 DCR ARM 模板。 可以创建多个模板(每个 DCR 类型一个)。
对于配置了数据收集的多个工作区,必须为每个工作区运行该脚本。 IIS 将脚本记录为该配置的一部分,还会创建一个额外的数据收集角色。
脚本完成后,它会提示测试环境中模板的部署。 选择允许它为你部署模板,或将模板存储在指定的输出文件夹
注意
该脚本不会将 DCR 与工作区相关联。 必须创建自己的数据收集规则关联 (DCRA),才能将 DCR 与相关服务器相关联。 这样,你就可以控制 DCR 到服务器的部署,并在大规模部署之前在示例服务器上测试 DCR。
若要运行脚本,请复制以下命令,并将参数替换为你的值:
.\WorkspaceConfigToDCRMigrationTool.ps1 -SubscriptionId $subId -ResourceGroupName $rgName -WorkspaceName $workspaceName -DCRName $dcrName -OutputFolder $outputFolderPath
脚本参数
名称 | 必需 | 说明 |
---|---|---|
SubscriptionId |
是 | 工作区的订阅 ID |
ResourceGroupName |
是 | 工作区的资源组 |
WorkspaceName |
是 | 工作区名称(Azure 资源 ID 不区分大小写) |
DCRName |
是 | 将用于每个输出 DCR 的基础名称 |
OutputFolder |
NO | 输出文件夹路径。 如果未提供,则使用工作目录路径 |
输出:
- 对于每个受支持的
DCR type
,脚本将生成 DCR ARM 模板(准备好部署)和 DCR 有效负载(对于不需要 ARM 模板的用户)。
当前受支持的 DCR 类型:
- Windows 仅包含
WindowsPerfCounters
和WindowsEventLogs
数据源 - Linux 仅包含
LinuxPerfCounters
和Syslog
数据源 - 自定义日志仅包含
logFiles
数据源 - IIS 日志仅包含
iisLogs
数据源 - DependencyAgent 扩展
- 扩展仅包含
extensions
数据源以及任何关联的 perfCounters 数据源VMInsights
部署
有关部署 DCR 的信息,请参阅 Azure Monitor 中的数据收集规则和在 Azure Monitor 中创建和编辑数据收集规则 (DCR)
警告
不应使用 MMA 代理使用的现有自定义日志表。 一旦第一个 AMA 代理写入表,MMA 代理将无法写入表。 你应为 AMA 创建一个新表,以防止 MMA 数据丢失。
后续步骤
- Azure Monitor 代理迁移帮助程序工作簿
- 数据收集规则结构
- 不同数据收集场景下,示例 DCR 的示例数据收集规则 (DCR)。
- Azure Monitor 服务限制介绍了对于 DCR 实行的限制。