练习 - 使用网络观察程序指标和日志对网络进行故障排除

已完成

在 Azure 网络观察程序中,指标和日志可以诊断复杂的配置问题。

假设有两个无法通信的虚拟机(VM)。 你想要获取尽可能多的信息来诊断问题。

在本单元中,你将使用网络观察程序指标和日志进行故障排除。 若要诊断两个 VM 之间的连接问题,请使用网络安全组(NSG)流日志。

注册 Microsoft.Insights 提供程序

NSG 流日志记录要求使用 Microsoft.Insights 提供程序。 若要注册 Microsoft.Insights 提供程序,请完成以下步骤。

  1. 登录到 Azure 门户,并登录到有权访问在其中创建资源的订阅的目录。

  2. 在 Azure 门户中,搜索、选择 “订阅”,然后选择订阅。 此时会显示 “订阅 ”窗格。

  3. 在“订阅”菜单中的 “设置”下,选择 “资源提供程序”。 此时会显示订阅的资源 提供程序 窗格。

  4. 在筛选器栏中,输入 microsoft.insights

  5. 如果 microsoft.insights 提供程序的状态为 NotRegistered,请在命令栏中选择 “注册 ”。

    屏幕截图显示已注册的 Microsoft.Insights 提供程序。

创建存储帐户

现在,为 NSG 流日志创建存储帐户。

  1. 在 Azure 门户菜单上或在门户主页中,选择“创建资源”。

  2. 在资源菜单上,选择“ 存储”,然后搜索并选择 “存储帐户”。 随即将显示“存储帐户”窗格

  3. 选择 创建。 此时会显示 “创建存储帐户 ”窗格。

  4. 在“基本信息”选项卡上,为每个设置输入以下值。

    设置 价值
    项目详细信息
    订阅 选择订阅
    资源组 选择你的资源组
    实例详细信息
    存储帐户名称 创建唯一名称
    区域 选择与资源组相同的区域
  5. 选择“ 下一步:高级 ”选项卡,并确保设置了以下值。

    设置 价值
    Blob 存储
    访问层 热(默认)
  6. 选择“查看 + 创建”,然后在验证通过后选择“创建”。

创建 Log Analytics 工作区

若要查看 NSG 流日志,请使用 Log Analytics。

  1. 在 Azure 门户菜单或 主页 上,搜索并选择 Log Analytics 工作区。 此时会显示 Log Analytics 工作区 窗格。

  2. 在命令栏中,选择“创建”。 此时会显示“ 创建 Log Analytics 工作区 ”窗格。

  3. 在“基本信息”选项卡上,为每个设置输入以下值。

    设置 价值
    项目详细信息
    订阅 选择订阅
    资源组 选择你的资源组
    实例详细信息
    名称 testsworkspace
    区域 选择与资源组相同的区域
  4. 选择“审阅并创建”,然后在通过验证后选择“创建”

启用流日志

若要设置流日志,必须将 NSG 配置为连接到存储帐户,并为 NSG 添加流量分析。

  1. 在 Azure 门户菜单上,选择“所有资源”。 然后选择 MyNsg 网络安全组。

  2. 在“MyNsg”菜单中的 “监视”下,选择 “NSG 流日志”。 MyNsg |此时会显示“NSG 流日志”窗格。

  3. 选择 创建。 此时会显示“ 创建流日志 ”窗格。

  4. “基本信息 ”选项卡上,选择或输入以下值。

    设置 价值
    项目详细信息
    订阅 从下拉列表中选择订阅。
    + 选择资源 “选择网络安全组 ”窗格中,搜索并选择“MyNsg”,然后 确认选择
    实例详细信息
    订阅 从下拉列表中选择订阅。
    存储帐户 选择唯一的存储帐户名称。
    保留期(天数) 1
  5. 选择 “下一步:分析”,然后选择或输入以下值。

    设置 价值
    流日志版本 版本 2
    流量分析 “启用流量分析”已勾选。
    流量分析处理间隔 每 10 分钟
    订阅 从下拉列表中选择订阅。
    Log Analytics 工作区 从下拉列表中选择 testworkspace
  6. 选择“查看 + 创建”

  7. 选择 创建

  8. 部署完成后,选择转到资源

生成测试流量

现在,可在 VM 之间生成一些网络流量,以便在流日志中捕获这些流量。

  1. 在资源菜单上,选择 “所有资源”,然后选择 “FrontendVM”。

  2. 在命令栏中,依次选择 “连接”、“ RDP”、“ 下载 RDP 文件”。 如果看到有关远程连接的发布者的警告,请选择 “连接”。

  3. 启动 FrontendVM.rdp 文件,然后选择“ 连接”。

  4. 当系统要求输入凭据时,请选择 “更多选择 ”,并使用用户名 azureuser 和创建 VM 时指定的密码登录。

  5. 当系统要求使用安全证书时,请选择“ ”。

  6. 在 RDP 会话中,如果出现提示,则仅允许在专用网络上发现设备。

  7. 打开 PowerShell 提示符并运行以下命令。

    Test-NetConnection 10.10.2.4 -port 80
    

TCP 连接测试在几秒钟后失败。

诊断问题

现在,让我们使用日志分析来查看 NSG 流日志。

  1. Azure 门户 资源菜单上,选择 “所有服务”,选择“ 网络”,然后选择“ 网络观察程序”。 此时会显示 “网络观察程序 ”窗格。

  2. 在资源菜单中的 “日志”下,选择 “流量分析”。 网络观察程序 |此时会显示“流量分析”窗格。

  3. FlowLog 订阅 下拉列表中,选择订阅。

  4. Log Analytics 工作区 下拉列表中,选择 testworkspace

  5. 使用不同的视图来诊断阻止从前端 VM 到后端 VM 通信的问题。

修复问题

NSG 规则阻止从端口 80、443 和 3389 到后端子网的入站流量,而不只是阻止来自 Internet 的入站流量。 现在让我们重新配置该规则。

  1. 在 Azure 门户资源菜单上,选择 “所有资源”,然后从列表中选择 “MyNsg ”。

  2. 在“MyNsg”菜单中的 “设置”下,选择“ 入站安全规则”,然后选择 “MyNSGRule”。 此时会显示 “MyNSGRule ”窗格。

  3. “源 ”下拉列表中,选择 “服务标记”,然后在 “源服务标记 ”下拉列表中选择“ Internet”。

  4. 在 MyNSGRule 命令栏中,选择“ 保存 ”以更新安全规则。

重新测试连接

端口 80 上的连接现在应该正常工作,不会出现问题。

  1. 在 RDP 客户端中,连接到 FrontendVM。 在 PowerShell 提示符下运行以下命令。

    Test-NetConnection 10.10.2.4 -port 80
    

连接测试现在应成功。