验证 Azure Stack Hub 的数据中心网络集成
使用 Azure Stack Hub 就绪性检查器工具 (AzsReadinessChecker) 验证数据中心网络是否已准备好部署 Azure Stack Hub。 在 Azure Stack Hub 部署之前验证数据中心网络集成。
可在两种不同模式下运行就绪性检查器工具中的网络验证。 在接收 Azure Stack Hub 硬件之前,使用设备模式来验证数据中心网络准备情况。 设备模式要求使用包含本文后面所列硬件规范的物理服务器。 Azure Stack Hub 硬件到达并连接到数据中心网络后,通过在 Azure Stack Hub 的硬件生命周期主机上运行就绪性检查程序工具来使用 HLH 模式。 HLH 模式不需要额外的硬件。
就绪性检查器会验证下列项:
- 边界连接
- 交换机配置
- DNS 集成
- DNS 转发器
- 时间服务器
- Microsoft Entra 连接
- AD FS 和 Graph 连接性
- 重复的 IP 地址分配
有关 Azure Stack Hub 数据中心集成的详细信息,请参阅 Azure Stack 的网络集成规划。
获取就绪性检查器工具
从 PowerShell 库下载最新版本的 Azure Stack Hub 就绪性检查器工具 (AzsReadinessChecker)。
从 PowerShell 库下载最新版本的 Posh-SSH 模块。
获取虚拟路由器映像
Azure Stack Hub 就绪性检查程序工具使用基于 SONiC 交换机操作系统的虚拟路由器映像。 在 https://aka.ms/azssonic 下载适用于 Hyper-V 的 SONiC 虚拟交换机映像的最新版本。
硬件先决条件
硬件要求仅适用于在设备模式下运行就绪性检查程序。
可在满足以下最低要求的硬件设备上运行就绪性检查程序工具:
- 具有硬件虚拟化功能的单个 x64 CPU
- 8 GB RAM
- 64 GB 本地存储
- 网络接口的数量和类型等于边界交换机连接的数量和类型,例如 4 x SFP28 网络端口
- 标准 KVM 输入/输出
请注意,在使用 BGP 路由时,就绪性检查器设备中的网络接口数可少于边界连接的数量。 每次验证一个边框连接。 拥有四个单独的网络接口可提供最佳体验。 请参阅边界连接性,了解路由注意事项。
软件必备项
软件先决条件适用于在设备和 HLH 模式下运行就绪性检查程序。
运行该工具的计算机必须具有以下软件:
- Windows Server 2019 或 Windows Server 2016
- 已安装 Hyper-V 和 Hyper-V 管理工具功能
- 最新版本的 Microsoft Azure Stack Hub 就绪性检查器工具。
- SONiC 虚拟交换机映像的最新版本。
- Posh-SSH PowerShell 模块的最新版本。
- 部署工作表已填写并导出为 DeploymentData.json 文件。
在设备模式下验证数据中心网络集成
将符合先决条件的物理设备直接连接到为 Azure Stack Hub 指定的具有适当类型的网络电缆和收发器的边界交换机端口。
打开管理 PowerShell 提示符,然后运行以下命令以初始化 AzsReadinessChecker:
Import-Module Microsoft.AzureStack.ReadinessChecker
在 PowerShell 提示符下,运行以下命令开始验证。 为 -DeploymentDataPath 和 -VirtualRouterImagePath 参数指定正确的值。
Invoke-AzsNetworkValidation -DeploymentDataPath C:\DeploymentData.json -VirtualRouterImagePath C:\sonic-vs.vhdx
运行该工具后,查看输出。 确认所有测试的状态都为“正常”。 如果状态不为“正常”,请查看详细信息和日志文件以了解其他信息。
在 HLH 模式下验证数据中心网络集成
使用 HLHAdmin 帐户登录到 HLH。
打开管理 PowerShell 提示符,然后运行以下命令以初始化 AzsReadinessChecker:
Import-Module Microsoft.AzureStack.ReadinessChecker
在 PowerShell 提示符下,运行以下命令开始验证。 为 -DeploymentDataPath 和 -VirtualRouterImagePath 参数指定正确的值。
Invoke-AzsNetworkValidation -DeploymentDataPath C:\DeploymentData.json -VirtualRouterImagePath C:\sonic-vs.vhdx -HLH
运行该工具后,查看输出。 确认所有测试的状态都为“正常”。 如果状态不为“正常”,请查看详细信息和日志文件以了解其他信息。
语法
Invoke-AzsNetworkValidation
-DeploymentDataPath <String>
[-RunTests <String[]>]
[-SkipTests <String[]>]
[-VirtualRouterImagePath <String>]
[-DnsName <String>]
[-MtuTestDestination <String>]
[-CustomCloudArmEndpoint <Uri>]
[-CustomUrl <Uri[]>]
[-OutputPath <String>]
[-CleanReport]
[<CommonParameters>]
Invoke-AzsNetworkValidation
-DeploymentDataPath <String>
[-VirtualRouterImagePath <String>]
[-CustomCloudArmEndpoint <Uri>]
[-VirtualSwitchName <String>]
[-NoUplinksRequired]
[-NetworkToTest <String>]
[-HLH]
[-OutputPath <String>]
[-CleanReport]
[<CommonParameters>]
参数
-CleanReport
删除以前的所有进度并创建干净的报表。
Type: SwitchParameter
Parameter Sets: (All)
Position: Named
Default value: False
Accept pipeline input: False
Accept wildcard characters: False
-CustomCloudArmEndpoint
自定义云的 Azure 资源管理器终结点 URI。
Type: String
Parameter Sets: (All)
Position: Named
Default value: None
Accept pipeline input: False
Accept wildcard characters: False
-CustomUrl
要测试的其他 URL 的列表。
Type: String[]
Parameter Sets: Hub
Position: Named
Default value: None
Accept pipeline input: False
Accept wildcard characters: False
-DeploymentDataPath
由部署工作表创建的 Azure Stack Hub 部署配置文件的路径。
Type: String
Parameter Sets: (All)
Position: Named
Default value: None
Accept pipeline input: False
Accept wildcard characters: False
-DnsName
要为 DNS 测试解析的 DNS 名称。
Type: String
Parameter Sets: (All)
Position: Named
Default value: management.azure.com
Accept pipeline input: False
Accept wildcard characters: False
-HLH
指示就绪性检查程序的 HLH 模式。
Type: SwitchParameter
Parameter Sets: HLH
Position: Named
Default value: False
Accept pipeline input: False
Accept wildcard characters: False
-MtuTestDestination
用于网络路径 MTU 测试的 DNS 名称或 IP 地址。
Type: String
Parameter Sets: Hub
Position: Named
Default value: go.microsoft.com
Accept pipeline input: False
Accept wildcard characters: False
-NetworkToTest
允许仅对其中一种网络执行测试。 默认情况下,执行 BMC 和外部网络的测试。
Type: String
Parameter Sets: HLH
Accepted values: BmcNetworkOnly, ExternalNetworkOnly
Position: Named
Default value: False
Accept pipeline input: False
Accept wildcard characters: False
-NoUplinksRequired
指示应跳过 P2P 接口上的 ping 测试。
Type: SwitchParameter
Parameter Sets: HLH
Position: Named
Default value: False
Accept pipeline input: False
Accept wildcard characters: False
-OutputPath
日志和报表输出的目录路径。
Type: String
Parameter Sets: (All)
Position: Named
Default value: $env:TEMP\AzsReadinessChecker
Accept pipeline input: False
Accept wildcard characters: False
-RunTests
要运行的测试的列表。 默认情况下,运行所有测试。
Type: String[]
Parameter Sets: Hub
Accepted values: LinkLayer, PortChannel, BorderUplink, IPConfig, BgpPeering, BgpDefaultRoute, DnsServer, PathMtu, TimeServer, SyslogServer, AzureEndpoint, AdfsEndpoint, Graph, DuplicateIP, DnsDelegation
Position: Named
Default value: None
Accept pipeline input: False
Accept wildcard characters: False
-SkipTests
要跳过的测试的列表。 默认情况下,不会跳过任何测试。
Type: String[]
Parameter Sets: Hub
Accepted values: PortChannel, BorderUplink, IPConfig, BgpPeering, BgpDefaultRoute, DnsServer, PathMtu, TimeServer, SyslogServer, AzureEndpoint, AdfsEndpoint, Graph, DuplicateIP, DnsDelegation
Position: Named
Default value: None
Accept pipeline input: False
Accept wildcard characters: False
-VirtualRouterImagePath
sonic-vs.vhdx 映像的完整路径。
Type: String
Parameter Sets: (All)
Position: Named
Default value: None
Accept pipeline input: False
Accept wildcard characters: False
-VirtualSwitchName
HLH 上的外部 Hyper-V 交换机名称。
Type: String
Parameter Sets: HLH
Position: Named
Default value: None
Accept pipeline input: False
Accept wildcard characters: False
报表和日志文件
每次运行验证时,它都会将结果记录到 AzsReadinessChecker.log 和 AzsReadinessCheckerReport.json 中。 这些文件的位置会随验证结果一起显示在 PowerShell 中。
验证文件可以帮助你在部署 Azure Stack Hub 之前共享状态,或者调查验证问题。 这两个文件都会持久保留每个后续验证检查的结果。 报告将向部署团队提供标识配置确认。 日志文件可以帮助你的部署或支持团队调查验证问题。
这两个文件默认写入到 C:\Users\<username>\AppData\Local\Temp\AzsReadinessChecker\
。
使用:
-OutputPath
:在 run 命令末尾的 path 参数,指定不同的报告位置。-CleanReport
:在 run 命令末尾的参数,清除前述报告信息的 AzsReadinessCheckerReport.json。 有关详细信息,请参阅 Azure Stack Hub 验证报告。
验证失败
如果验证检查失败,则有关失败的详细信息将显示在 PowerShell 窗口中。 该工具还会将信息记录到 AzsReadinessChecker.log 中。