为群集设置 Azure Monitor 日志

要监视群集级别的事件,建议使用 Azure Monitor 日志。 可以通过 Azure 资源管理器、PowerShell 或 Azure 市场设置 Log Analytics 工作区。 对于你的部署,如果你维护其更新后的资源管理器模板供将来使用,请使用同一模板来设置 Azure Monitor 日志环境。 如果部署的群集已启用诊断,则通过市场部署更方便。 如果你在要部署到的帐户中没有订阅级别访问权限,请通过 PowerShell 或资源管理器模板进行部署。

注意

若要设置 Azure Monitor 日志来监视群集,需要启用诊断来查看群集级别事件或平台级别事件。 有关详细信息,请参阅如何在 Windows 群集中设置诊断如何在 Linux 群集中设置诊断

注意

本文最近已更新,从使用术语“Log Analytics”改为使用术语“Azure Monitor 日志”。 日志数据仍然存储在 Log Analytics 工作区中,并仍然由同一 Log Analytics 服务收集并分析。 我们正在更新术语,以便更好地反映 Azure Monitor 中的日志的角色。 有关详细信息,请参阅 Azure Monitor 术语更改

注意

建议使用 Azure Az PowerShell 模块与 Azure 交互。 请参阅安装 Azure PowerShell 以开始使用。 若要了解如何迁移到 Az PowerShell 模块,请参阅 将 Azure PowerShell 从 AzureRM 迁移到 Az

使用 Azure 资源管理器部署 Azure Monitor 日志

使用资源管理器模板部署群集时,该模板还会新建一个 Log Analytics 工作区,向其添加 Service Fabric 解决方案,并将其配置为读取相应存储表中的数据。

可使用此示例模板,还可进行修改,使其满足你的要求。 此模板执行以下操作

  • 创建一个 5 节点 Service Fabric 群集
  • 创建 Log Analytics 工作区和 Service Fabric 解决方案
  • 配置 Log Analytics 代理以收集 2 个示例性能计数器并将其发送到工作区
  • 配置 WAD 以收集 Service Fabric 并将其发送到 Azure 存储表 (WADServiceFabric*EventTable)
  • 配置 Log Analytics 工作区以从这些表中读取事件

[!注意] 必须修改从 GitHub 存储库“Azure-Samples”下载或参考的模板,以适应由世纪互联运营的 Microsoft Azure 环境。 例如,替换某些终结点(将“blob.core.windows.net”替换为“blob.core.chinacloudapi.cn”,将“cloudapp.azure.com”替换为“cloudapp.chinacloudapi.cn”);必要时更改某些不受支持的位置、VM 映像、VM 大小、SKU 以及资源提供程序的 API 版本。

在本文中,请在运行 powershell 命令之前更改以下项。

  1. 更改 computeLocationomsRegion 参数的以下属性。
    • defaultValue 的属性更新为 chinaeast2
    • allowedValues 的属性更新为 ["chinaeast","chinaeast2","chinanorth","chinanorth2"]
  2. 将所有终结点后缀从 windows.net 更改为 chinacloudapi.cn

可以通过使用 Azure PowerShell 模块中的 New-AzResourceGroupDeployment API,将该模板作为资源管理器升级部署到群集。 示例命令如下:

New-AzResourceGroupDeployment -ResourceGroupName "<resourceGroupName>" -TemplateFile "<templatefile>.json" 

Azure 资源管理器可检测出此命令要更新到现有资源。 它仅处理驱动现有部署的模板和提供的新模板之间的变化。

使用 Azure PowerShell 部署 Azure Monitor 日志

也可以使用 New-AzOperationalInsightsWorkspace 命令,通过 PowerShell 来部署日志分析资源。 要使用此方法,请确保已安装 Azure PowerShell。 使用此脚本新建 Log Analytics 工作区,并向其添加 Service Fabric 解决方案:


$SubID = "<subscription ID>"
$ResourceGroup = "<Resource group name>"
$Location = "<Resource group location>"
$WorkspaceName = "<Log Analytics workspace name>"
$solution = "ServiceFabric"

# Sign in to Azure and access the correct subscription
Connect-AzAccount -Environment AzureChinaCloud
Select-AzSubscription -SubscriptionId $SubID 

# Create the resource group if needed
try {
    Get-AzResourceGroup -Name $ResourceGroup -ErrorAction Stop
} catch {
    New-AzResourceGroup -Name $ResourceGroup -Location $Location
}

New-AzOperationalInsightsWorkspace -Location $Location -Name $WorkspaceName -Sku Standard -ResourceGroupName $ResourceGroup
Set-AzOperationalInsightsIntelligencePack -ResourceGroupName $ResourceGroup -WorkspaceName $WorkspaceName -IntelligencePackName $solution -Enabled $true

完成后,请按照前一部分中的步骤将 Azure Monitor 日志连接到相应的存储帐户。

还可添加其他解决方案或使用 PowerShell 对 Log Analytics 工作区进行其他修改。 有关详细信息,请参阅使用 PowerShell 管理 Azure Monitor 日志

后续步骤