你当前正在访问 Microsoft Azure Global Edition 技术文档网站。 如果需要访问由世纪互联运营的 Microsoft Azure 中国技术文档网站,请访问 https://docs.azure.cn

用于故障排除的网络结构只读命令

对网络设备进行故障排除是高效管理网络的关键方面。 确保基础结构的运行状况和最佳性能需要及时诊断和解决问题。 本指南提供了使用只读 (RO) 命令对 Azure 运营商关系设备进行故障排除的综合性方法。

了解只读命令

RO 命令充当网络管理员的基本工具。 与修改设备配置的读写(RW) 命令不同,RO 命令允许管理员在不更改设备状态的情况下收集诊断信息。 这些命令提供有关设备状态、配置和操作数据的宝贵见解。

只读诊断 API

只读诊断 API 使用户能够通过 API 调用在网络设备上执行 show 命令。 通过这种高效的方法,管理员可以跨所有网络结构设备远程运行诊断查询。 只读诊断 API 的主要功能包括:

  • 效率 - 在不直接访问设备控制台的情况下执行 show 命令。

  • 与 AZCLI 的无缝集成:用户可以利用常规的 Azure 命令行接口 (AZCLI) 传递所需的“show 命令”。之后,API 促进命令在目标设备上的执行,从而提取输出。

  • JSON 输出:已执行命令的结果以 JSON 格式显示,因而便于解析和分析。

  • 安全存储:输出数据存储在客户拥有的存储帐户中,从而确保数据的安全性和合规性。

通过使用只读诊断 API,网络管理员可以在其 Azure 运营商关系设备上高效地排查问题、验证配置和监视设备运行状况。

先决条件

若要使用 Network Fabric 只读命令,请完成以下步骤:

  • 成功预配 Nexus Network Fabric。

  • 生成存储 URL。

    请参阅创建容器来创建容器。

    注意

    仅使用小写字母输入容器的名称。

    请参阅生成共享访问签名以创建容器的 SAS URL。 为 SAS 提供写入权限。

    注意

    SAS URL 的有效期较短。 默认情况下,它设置为在 8 小时后过期。 如果 SAS URL 过期,则必须重新修补结构。

  • 通过支持工单提供具有写入访问权限的存储 URL。

    注意

    存储 URL 必须位于与 Network Fabric 不同的区域。 例如,如果 Fabric 托管在美国东部,则存储 URL 应位于美国东部之外。

命令限制

为了确保安全性和合规性,RO 命令必须遵循以下特定规则:

  • 仅应提供绝对命令作为输入。 不支持简短形式和提示。 例如:
    • 输入 show interfaces Ethernet 1/1 status
    • 不要输入 sh int statsh int e1/1 status
  • 名称不得为 null 或空,也不得只包含单个词。
  • 命令不得包含竖线 (|) 字符。
  • Show 命令不受限制,但此限制列表中特别提到的 CPU 使用率过高的密集型命令除外。
  • 命令不得以 tech-supportagent logsip routeip route vrf all 结尾。
  • 在特定设备上一次只能使用一个 show 命令。
  • 可以在另一个 CLI 窗口中并行运行 show 命令。
  • 可以同时在不同的设备上运行 show 命令。

使用只读命令进行故障排除

若要使用只读命令进行故障排除,请执行以下步骤:

  1. 开具 Microsoft 支持工单。 支持工程师进行必要的更新。

  2. 执行以下 Azure CLI 命令:

    az networkfabric device run-ro --resource-name "<NFResourceName>" --resource-group "<NFResourceGroupName>" --ro-command "show version"
    

    预期输出:

    { }

  3. 输入以下命令:

    az networkfabric device run-ro --resource-group Fab3LabNF-6-0-A --resource-name nffab3-6-0-A-AggrRack-CE1 --ro-command "show version" --no-wait --debug
    

    显示以下(截断的)输出。 通过个人预览版复制 URL。 在以下步骤中使用 URL 的此部分来检查操作的状态。

    https://management.azure.com/subscriptions/aaaa0a0a-bb1b-cc2c-dd3d-eeeeee4e4e4e/providers/Microsoft.ManagedNetworkFabric/locations/EASTUS2EUAP/operationStatuses/aaaa0a0a-bb1b-cc2c-dd3d-eeeeee4e4e4e*A9E6DB3DF5C58D67BD395F7A608C056BC8219C392CC1CE0AD22E4C36D70CEE5C?api-version=2022-01-15-privatepreview***&t=638485032018035520&c=MIIHHjCCBgagAwIBAgITfwKWMg6goKCq4WwU2AAEApYyDjANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDIwHhcNMjQwMTMwMTAzMDI3WhcNMjUwMTI0MTAzMDI3WjBAMT4wPAYDVQQDEzVhc3luY29wZXJhdGlvbnNpZ25pbmdjZXJ0aWZpY2F0ZS5tYW5hZ2VtZW50LmF6dXJlLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBALMk1pBZQQoNY8tos8XBaEjHjcdWubRHrQk5CqKcX3tpFfukMI0_PVZK-Kr7xkZFQTYp_ItaM2RPRDXx-0W9-mmrUBKvdcQ0rdjcSXDek7GvWS29F5sDHojD1v3e9k2jJa4cVSWwdIguvXmdUa57t1EHxqtDzTL4WmjXitzY8QOIHLMRLyXUNg3Gqfxch40cmQeBoN4rVMlP31LizDfdwRyT1qghK7vgvworA3D9rE00aM0n7TcBH9I0mu-96JE0gSX1FWXctlEcmdwQmXj_U0sZCu11_Yr6Oa34bmUQHGc3hDvO226L1Au-QsLuRWFLbKJ-0wmSV5b3CbU1kweD5LUCAwEAAaOCBAswggQHMCcGCSsGAQQBgjcVCgQaMBgwCgYIKwYBBQUHAwEwCgYIKwYBBQUHAwIwPQYJKwYBBAGCNxUHBDAwLgYmKwYBBAGCNxUIhpDjDYTVtHiE8Ys-
    
  4. 使用以下 Azure CLI 命令以编程方式检查操作的状态:

    az rest -m get -u "<Azure-AsyncOperation-endpoint url>"
    

    操作状态指示 API 是成功还是失败,显示内容类似于以下输出:

    https://management.azure.com/subscriptions/xxxxxxxxxxx/providers/Microsoft.ManagedNetworkFabric/locations/EASTUS/operationStatuses/xxxxxxxxxxx?api-version=20XX-0X-xx-xx
    
  5. 查看并下载生成的输出文件。 下面显示了示例输出。

     {
     "architecture": "x86_64",
      "bootupTimestamp": 1701940797.5429916,
      "configMacAddress": "00:00:00:00:00:00",
      "hardwareRevision": "12.05",
      "hwMacAddress": "c4:ca:2b:62:6d:d3",
      "imageFormatVersion": "3.0",
      "imageOptimization": "Default",
      "internalBuildId": "d009619b-XXXX-XXXX-XXXX-fcccff30ae3b",
      "internalVersion": "4.30.3M-33434233.4303M",
      "isIntlVersion": false,
      "memFree": 3744220,
      "memTotal": 8107980,
      "mfgName": "Arista",
      "modelName": "DCS-7280DR3-24-F",
      "serialNumber": "JPAXXXX1LZ",
      "systemMacAddress": "c4:ca:2b:62:6d:d3",
      "uptime": 8475685.5,
      "version": "4.30.3M"
     }