Azure Stack Hub 部署前网络规划:Deployment Worksheet 完整指南
未经同意,请勿转载!
系列:第 1 篇(共 5 篇)— 部署前 4-6 周必读 对应 PPT:slide 4-5(部署概述 + Worksheet 简介) 主题:Deployment Worksheet 的安装、填写、网络规划决策何时使用:在购买 Azure Stack Hub 集成系统后、OEM 工程师到场前 4-6 周 责任团队:网络架构师 + Azure Stack Hub SME + 数据中心基础设施经理 输出:
ConfigurationData.json(Worksheet 导出文件)
0. 这篇解决什么
问题:Azure Stack Hub 是一个集成系统(14G/16G PowerEdge + Dell OEM 认证 + Azure Stack Hub 软件),不能像普通服务器那样自由采购 + 自由组网。部署前必须完成网络规划的 12 个核心决策,这些决策:
- 一旦写入
ConfigurationData.json后部分字段部署后无法修改(Stamp Identity / Region / External FQDN / Identity Store 等基础身份参数) - 节点数量可以按官方 Scale-out 流程扩容,但不能低于最初部署规模
- 直接影响 BGP / VLAN / ToR 交换机配置
- 网络团队、SME、CA 工程师需要并行工作 4-6 周才能就绪
传统解法的失败模式:
| 失败模式 | 后果 |
|---|---|
| OEM 工程师到场当天才开始规划 | 部署延期 4-12 周 |
| 用错 Deployment Worksheet 版本 | 生成的ConfigurationData.json与 OEM 自动化脚本不兼容 |
| Network Settings 字段留空或留默认值 | 实际部署的 IP 段与现有网络冲突 |
| 公共 IP 段未提前与上游 ISP / BGP 协商 | Public VIP Network 无法对外路由 |
| DNS 集成未提前在企业 DNS 上做配置 | 部署后 Azure Stack Hub 公共终结点无法解析 |
本文解法:用 Dell 提供的AzureStack Deployment Worksheet工具(PowerShell Gallery 的Azs.Deployment.Worksheet模块),按 3 个标签页(Customer Settings / Network Settings / Scale Unit)系统化完成所有决策,导出为官方ConfigurationData.json——它是 OEM 自动化部署的重要输入(并非唯一输入:还包含 BMC 信息、Firmware Inventory、Switch Config、Certificate、OEM Parameters 等)。
1. ⭐ L1 / L2 / L3 三层决策框架
| 层 | 含义 | 本文涵盖范围 |
|---|---|---|
| L1 微软硬要求 | 不可调整的约束 | Region Name 字符限制、外部域名不可与 Azure 公共域冲突、Stamp 规模上下界、Stamp Identity / Region / External FQDN 部署后不可改 |
| L2 OEM 实现 | Dell 集成系统特有路径 | Worksheet 工具版本、Dell 自动化镜像路径示例D:\Install\Tools\(具体版本号以 OEM 镜像为准) |
| L3 最佳实践 | 推荐做法但可选 | 两个 NTP 服务器、ReadinessChecker 提前一周跑 |
本文中明确标注
[L1][L2][L3],便于跨团队对账。
2. Deployment Worksheet 工具安装
2.1 安装 PowerShell 模块
[L2]Dell OEM 集成系统内置的自动化镜像已包含 Worksheet 模块。如果在自有机器上规划:
# 以管理员身份打开 PowerShell(**不要**用 PowerShell ISE) Install-Module -Name Azs.Deployment.Worksheet -Repository PSGallery # 若提示"未受信存储库",按 Y 继续2.2 启动 Worksheet
# 普通 PowerShell 即可(无需管理员) Import-Module AzS.Deployment.Worksheet Start-DeploymentWorksheet # 启用详细日志(推荐,排查问题时使用) Start-DeploymentWorksheet -EnableLogging日志位置:C:\Users\<you>\AppData\Local\Temp\Microsoft\_AzureStack\DeploymentWorksheet\_Log.txt
2.3 工具界面
工具是 Windows Forms 应用,包含 3 个核心标签页 + 2 个生成后标签页:
| 标签 | 何时填写 | 输出 |
|---|---|---|
| Customer Settings | 第一步 | 身份 + 客户基本信息 |
| Network Settings | 第二步 | 网络拓扑、IP 段、DNS、VLAN |
| Scale Unit # | 第三步 | 节点数、硬件配置 |
| Subnet Summary(生成后) | 自动 | 子网划分预览 |
| IP Assignments(生成后) | 自动 | 各节点 / 服务的 IP 分配 |
3. 标签页 1:Customer Settings(客户设置)
3.1 必填字段清单
[L1]Microsoft Entra ID 作为身份提供者时必填:
| 字段 | 类型 | 示例 | 说明 |
|---|---|---|---|
| Identity Store | 下拉 | AzureAD或ADFS | 关键决策——部署后不可改 |
| Company Name | 文本 | Contoso Ltd. | 客户全称 |
| External Domain | 文本 | cloud.fabrikam.com | 公共 FQDN 后缀,关键决策 |
| Private Domain | 文本 | azstack.local | 内部 AD 域 |
| Region Name | 文本 | east | 公共 VIP 区域名,关键决策 |
| Deployment Prefix | 文本 | azs | 主机名前缀 |
| Physical Prefix | 文本 | r | 物理机名前缀 |
字段名
AzureAD是 Worksheet 工具内部值,实际指向 Microsoft Entra ID(原 Microsoft Azure AD已于 2023 年起统一更名为 Microsoft Entra ID)。
3.2 关键决策点
决策 1:身份提供者(L1)
| 选项 | 适用场景 | 备注 |
|---|---|---|
| Microsoft Entra ID | 联网部署、有 Azure 订阅 | Identity Provider 一旦选择,部署后不能简单切换租户;迁移到其他 Entra ID 租户通常需要重新部署或按 Microsoft 官方支持流程执行,不属于常规运维操作 |
| ADFS | 离线部署、严格合规、企业 AD 联邦 | 部署后不可切换到 Microsoft Entra ID,必须重部署 |
⚠️ 部署后切换身份提供者的代价:
- Microsoft Entra ID → ADFS:完整重部署
- ADFS → Microsoft Entra ID:完整重部署
- 不同 Microsoft Entra ID 租户间切换:通常需要联系 OEM 服务商重部署或走 Microsoft 官方支持流程(客户自费),不属于常规运维操作
决策 2:Region Name + External Domain(L1)
[L1]命名规则:
- Region Name:仅字母 + 数字 0-9,不能包含
-#.等特殊字符 - 组合 FQDN:
https://<region>.<external-domain> - 端口门户地址:
https://portal.<region>.<external-domain> - 管理门户地址:
https://adminportal.<region>.<external-domain>
示例:
- Region
east+ Externalcloud.fabrikam.com - 公共门户:
https://portal.east.cloud.fabrikam.com - 管理门户:
https://adminportal.east.cloud.fabrikam.com
[L3]最佳实践:
- Region Name 短(≤ 10 字符),避免在证书 SAN、URL 中过长
- External Domain 用企业拥有的真实 DNS 域(不能用
azurestack.external/azure.com/microsoft.com等保留域) - 提前与企业 DNS 团队确认该子域可委派
决策 3:部署前缀与物理前缀(L1)
- Deployment Prefix:租户 VM、存储账户等 Azure 资源名称的前缀
- Physical Prefix:物理机名前缀(如
r640node01中的r) - 长度建议 2-3 字符,避免与现有企业命名冲突
3.3 部署准备 Checklist
- 身份提供者决策(Entra ID vs ADFS)已签字
- Region Name 已确认(合规审查:不得含敏感词)
- External Domain 已与企业 DNS 团队确认可委派
- Company Name 与商业合同一致
- Private Domain 与现有 AD 域无冲突
4. 标签页 2:Network Settings(网络设置核心)
这是全篇最关键的网络规划决策点。Worksheet 的 Network Settings 决定整个 Azure Stack Hub Stamp 的网络骨架。
4.1 必填字段(按子表分组)
[L1] 子表 1:Public VIP Network
| 字段 | 类型 | 示例 | 规划要点 |
|---|---|---|---|
| Public VIP Network | CIDR | 23.102.49.64/27 | 可路由的公共 IP 段;Microsoft 未给出固定大小限制,需满足部署规模及未来扩容需求;常见规划为/27(32 地址)或更大;提前与 ISP / 上游 BGP 协商 |
| Upstream BGP Router Peer IP | IP | 10.0.1.4 | ToR 交换机上的 BGP 对端地址 |
| Upstream BGP Router ASN | 整数 | 65001 | 数据中心 BGP ASN(私有 64512-65534,公共 1-64511) |
| Switch ASN | 整数 | 65002 | Azure Stack Hub 内部交换机 ASN |
[L3]推荐:
- Public VIP Network 大小需满足部署规模及未来扩容需求,应以官方容量规划及实际环境为准;预留空间避免后期扩容 IP 不够
- ASN 用私有范围(64512-65534),避免与上游 ASN 冲突
[L1] 子表 2:Infrastructure Network
| 字段 | 类型 | 示例 | 规划要点 |
|---|---|---|---|
| Infrastructure Subnet | CIDR | 172.21.0.0/22 | Azure Stack Hub 内部管理 / BMC / iDRAC 网络,不可路由到企业网 |
| Gateway | IP | 172.21.0.1 | ToR 交换机 VLAN 接口 |
| DNS Servers | IP 列表 | 10.1.1.10, 10.1.1.11 | 企业 DNS 服务器(不是Azure Stack Hub 内部的 DNS) |
| Static IP Pool | 范围 | 172.21.0.10 - 172.21.0.200 | OEM 部署期间使用的静态 IP 池 |
[L1] 子表 3:Internal VIP Network(可选)
| 字段 | 类型 | 说明 |
|---|---|---|
| Internal VIP Network | CIDR | Azure Stack Hub 内部服务终结点(管理平面);默认从 Infrastructure Subnet 自动派生 |
[L1] 子表 4:Storage / RDMA Network(可选,由 Stamp 大小决定)
- 4-8 节点:默认配置即可
- 12-16 节点:需校验 ToR 交换机 RDMA / DCB 配置
4.2 关键决策点
决策 4:Public VIP 网络规划(L1)
Internet │ ▼ ┌─────────┐ │ ToR 1 │ (BGP Peer IP: 10.0.1.4) │ ASN:65002│ └────┬────┘ │ ┌─────────┴─────────┐ │ │ 23.102.49.64/27 公共 VIP 范围(32 地址) (Public VIP Network) │ ├─ VIP 1: 23.102.49.65 (adminportal) ├─ VIP 2: 23.102.49.66 (portal) └─ VIP 3..31: 其他公共终结点规划 Checklist:
- Public VIP 段是 ISP 已分配的可路由段(不是保留 / 测试段)
- Public VIP 段与 Azure Stack Hub 内部网络不重叠
- BGP Router Peer IP 与企业 BGP 路由器在同一子网且路由可达
- ASN 在企业 ASN 规划表内(私有范围或公网范围,无冲突)
决策 5:基础设施网络与 BMC / iDRAC(L1)
Azure Stack Hub 内部网络组成:
| 网络 | 用途 | 可路由? |
|---|---|---|
| Infrastructure Network | OEM 部署、内部管理 | ❌ 不路由到企业网 |
| BMC Network | 带外管理(iDRAC) | ❌ 不路由到企业网 |
| Tenant Network | 租户 VM | ✅ 路由到企业网 |
| Public VIP Network | 公共终结点 | ✅ 可路由到 Internet |
| Storage Network | S2D / RDMA | ❌ 内部专用 |
[L1] 硬要求:
- BMC 网络与 Infrastructure 网络不能与企业用户网络重叠
- BMC 网络与 Infrastructure 网络不能与 Azure Stack Hub 内部其他子网重叠
- 通常用 RFC 1918 私有段:
172.21.0.0/22(Infrastructure)、192.168.0.0/24(BMC)
决策 6:BGP vs 静态路由(L1)
| 选项 | 适用场景 | 故障转移 |
|---|---|---|
| BGP(推荐) | 多 ToR、ECMP 部署 | 自动(依赖 ECMP) |
| 静态路由 + ECMP | 仅 2 ToR 部署 | 静态配置手动切换 |
[L3]推荐:双 ToR + BGP + ECMP,提供最佳冗余。
4.3 边缘部署 vs 数据中心部署(L1)
[L1]Azure Stack Hub 部署有两种边缘模式(对应 PPT slide 8):
Scenario 1:防火墙在边缘之上
Internet │ ├─ Firewall 1 ─┐ │ ├─ Border 1 ─┐ └─ Firewall 2 ─┤ ├─ TOR 1 ─┐ └─ Border 2 ─┤ ├─ Azure Stack Hub └─ TOR 2 ─┘ - 支持主动-主动 / 主动-被动防火墙 - 适合大型数据中心Scenario 2:边缘路由器作为入口
Internet │ ▼ Edge Router │ ├─ Firewall 1 ─┐ └─ Firewall 2 ─┤ ├─ TOR 1 ─┐ └─ TOR 2 ─┤ └─ Azure Stack Hub - 仅支持主动-主动防火墙 - 依赖 ECMP 和 BGP 故障转移 - 适合中小型 / 简化部署[L1]Microsoft 官方文档:不得修改已验证的 Azure Stack Hub 网络配置(防火墙、ToR、BGP)。简单调整可能允许,但任何重大修改都可能破坏 OEM 认证。
4.4 DNS 集成策略(多种方式)
[L1]微软文档并未限定必须用 DNS Delegation。企业可结合自己的 DNS 架构选择合适的集成方式:
| 方式 | 适用场景 | 企业 DNS 侧配置 | Azure Stack Hub 侧 |
|---|---|---|---|
| DNS Delegation(NS 记录) | 企业 DNS 拥有 External Domain 时 | 企业 DNS 添加 NS 记录指向 Azure Stack Hub 内部 DNS | Azure Stack Hub 成为子域权威 |
| Conditional Forwarder | 企业 DNS 不想委派整个子域时 | 企业 DNS 添加 Conditional Forwarder 指向 Azure Stack Hub 内部 DNS | Azure Stack Hub 处理来自企业 DNS 的查询 |
| Split DNS | 企业内网与外网 DNS 视图分离 | 内网 Conditional Forwarder + 外网 Delegation | 根据来源路由不同 |
| External DNS(云端) | 企业 DNS 在 Azure / 其他云上 | 在云 DNS 服务中配置指向 Azure Stack Hub | 适用边缘部署 |
至少需要满足以下一项(否则公共终结点无法解析):
- 企业 DNS 已将
<region>.<external-domain>子域委派 / 条件转发到 Azure Stack Hub 内部 DNS - 验证:企业外部
nslookup adminportal.<region>.<external-domain>能解析到 Public VIP Network 中的某个地址
4.5 网络规划 Checklist(部署前 4 周完成)
- Public VIP Network 段已向 ISP 申请 / 已审批
- DNS 集成方式(Delegation / Conditional Forwarder / Split DNS / External DNS)已选定并配置
- BGP ASN 在企业 ASN 表内,无冲突
- Upstream BGP Router Peer IP 与企业路由器路由可达
- Infrastructure Subnet 在 ToR 交换机上已配置 VLAN + SVI
- BMC / iDRAC 子网已规划(建议单独 VLAN)
- 防火墙策略已规划并提交审批(参考 doc 02 §4 边缘部署)
- Network Settings 字段全部填入 Worksheet,ExportJSON
5. 标签页 3:Scale Unit(规模单元)
5.0 Worksheet Build 兼容性(踩坑必读)
[L1]Deployment Worksheet 版本必须与目标 Azure Stack Hub Build 兼容。Worksheet 字段、Azure Stack Hub Stamp 部署架构会随 Build 升级演进;不兼容的组合部署会失败:
| Worksheet 版本 | Azure Stack Hub Build | 兼容性 |
|---|---|---|
| 2206 | 2301 | ❌ 不兼容 |
| 2301 | 2301 | ✅ 兼容 |
| 2406 | 2406 | ✅ 兼容 |
| 2301 | 2206 | ❌ 不兼容 |
实际兼容性以 Microsoft Learn 官方 Worksheet 发布说明为准;下载 Worksheet 前先确认目标 Build 接受的 Worksheet 版本。
5.1 必填字段
| 字段 | 类型 | 说明 |
|---|---|---|
| Scale Unit Name | 文本 | 如SU1(多 Stamp 时区分) |
| Number of Nodes | 整数 | [L1]4-16(14G)/ 4-16(16G) |
| BMC IP Range | 范围 | BMC / iDRAC IP 范围 |
| Hardware Profile | 下拉 | 通常由 OEM 提供认证 Hardware Profile(Worksheet 中不一定提供所有型号选项) |
5.2 关键决策点
决策 7:节点数(L1)
[L1]Stamp 节点数约束:
- 最小:4 节点
- 最大:16 节点(14G)/ 16 节点(16G)
- 可按官方 Scale-out 流程扩容(Add Node),但不能低于最初部署规模
- 添加节点时必须与现有节点同规格同 firmware baseline
[L3]推荐:
- 生产部署:≥ 8 节点(保障容错 + 性能)
- PoC / 测试:4 节点起步
5.3 OEM Hardware Profile
[L2]Dell Azure Stack Hub 集成系统 SKU(参考 OEM Support Matrix):
- 14G:PowerEdge R640 / R740xd + Dell EMC Azure Stack Hub 认证配置
- 16G:PowerEdge AS760 + Dell EMC Azure Stack Hub 认证配置
[L2]Worksheet 中 Hardware Profile 通常由 OEM 提供认证 Profile 选项;具体可用列表以 Worksheet 当前版本界面为准。不要自行填写非认证配置。
6. 部署前 4 周:填写 Worksheet 并导出
6.1 完整填写流程
- Customer Settings:身份提供者决策 + 命名决策(第 1 周完成)
- Network Settings:Public VIP / BGP / 子网 / 边缘模式(第 2-3 周完成)
- Scale Unit #:节点数 + BMC 范围(第 3 周完成)
- 保存进度:菜单
File → Save(允许部分填写) - 生成预览:菜单
Action → Generate(验证数据完整)→ 出现 Subnet Summary / IP Assignments 标签 - 导出 JSON:菜单
Action → Export→ 生成官方ConfigurationData.json
6.2 Action 菜单详解
| 动作 | 何时使用 | 输出 |
|---|---|---|
| File → Save / Open | 工作中保存进度 | 部分填写的 .json(不用于部署) |
| Action → Import | 导入已有 ConfigurationData.json | 重新填写表单 |
| Action → Export | 部署前最终输出 | ConfigurationData.json(官方格式) |
| Action → Generate | 验证数据 + 预览 IP 分配 | Subnet Summary / IP Assignments 标签 |
| Action → Clear All | 重置 | 表单全部清空 |
6.3 关键警告:Generate vs Export 的双层验证
⚠️Generate 与 Export 行为不同:
- Generate检查输入是否合法(初步 Validation),生成 Subnet Summary / IP Assignments 预览标签,不生成部署文件
- Export在生成
ConfigurationData.json之前会再次检查(最终 Validation)才会输出文件即使 Generate 成功,Export 仍可能因 Validation 失败而拒绝输出。两者不是等价关系。
6.4 完整流程(Worksheet → ReadinessChecker → OEM)
Worksheet 填写(Customer / Network / Scale Unit) │ ▼ Action → Generate(初步 Validation + IP 预览) │ ▼ Action → Export(最终 Validation + 生成 ConfigurationData.json) │ ▼ AzsReadinessChecker 运行(参考 doc 02 §7 / doc 03 §2) │ ▼ OEM 工程师使用 ConfigurationData.json 执行 InstallDellEMCAzureStack.ps16.5 ConfigurationData.json 生命周期
规划阶段 │ ▼ Worksheet 填写(文档化决策) │ ▼ ConfigurationData.json(OEM 重要输入之一) │ ▼ OEM Deployment 引擎 │ ▼ Azure Stack Hub ERCS(特权终结点) │ ▼ Azure Stack Hub Infrastructure Role │ ▼ Azure Stack Hub Stamp 交付ConfigurationData.json 是规划决策的"凝固点"——它决定了 Stamp 的初始 Identity / Region / FQDN / 网络骨架,是 OEM 部署引擎的起点。
7. 输出文件与下游交接
7.1 导出文件清单
WorksheetExport后产出:
| 文件 | 用途 | 谁用 |
|---|---|---|
ConfigurationData.json | OEM 部署的重要输入之一 | OEM 工程师 |
Network.json | ToR / 防火墙配置参考 | 网络团队 |
StampParameters.json | BMC / 物理机参数 | OEM 工程师 |
TenantWorkload.json(可选) | 租户网络预配置 | OEM / 运维 |
OEM 实际部署还需要 BMC 信息、Firmware Inventory、Switch Config、Certificate、OEM Parameters 等输入——
ConfigurationData.json是最重要的规划输入,但不是唯一输入。
7.2 交接 Checklist(部署前 1 周)
ConfigurationData.json已生成且 Review 通过- 网络团队已收到
Network.json并在 ToR / 防火墙配置中应用 - DNS 集成已生效(从企业 DNS 解析到 Azure Stack Hub 内部 DNS)
- BGP 邻居建立成功(
show ip bgp summary能看到 Azure Stack Hub ASN) - NTP 服务器 IP 已就绪(参考 doc 02 §8)
- 身份提供者就绪:Entra ID 租户已分配 / ADFS 联邦已建立(参考 doc 02 §5, §6)
- ReadinessChecker 通过(参考 doc 02 §7)
8. 常见错误与排查
8.1 字段被标红(红框)怎么办
Worksheet 用红框标注未填 / 错误字段。常见原因:
| 字段 | 常见错误 | 修正 |
|---|---|---|
| Region Name | 含特殊字符(-、#) | 改为仅字母 + 数字 |
| External Domain | 与azurestack.external冲突 | 改用企业拥有的 DNS 域 |
| Public VIP Network | 与 Infrastructure Network 重叠 | 重新规划 IP 段 |
| BGP Router Peer IP | 与 Infrastructure Gateway 冲突 | 重新规划 |
| Number of Nodes | 4 节点 Stamp 用了不支持的 VM Size | 升级到 ≥ 8 节点,或换 VM Size |
8.2 Export 失败
| 错误 | 原因 | 解决 |
|---|---|---|
| "Critical validation error" | 必填字段缺失或 IP 冲突 | 红色字段全填 + 子网不重叠 |
| "BGP ASN out of range" | ASN 不在 1-65534 | 改用私有 ASN(64512-65534) |
| "Public VIP not routable" | Public VIP 是 RFC 1918 段 | 改用 ISP 分配的公共段 |
8.3 Subnet Summary / IP Assignments 显示异常
Generate 后 IP 分配不合理:
- 节点数 × 每节点 IP 数 > IP 池容量 → 扩大 IP 池或减少节点
- BMC IP 与 Infrastructure IP 重叠 → Worksheet 会自动校验并报错
9. 一句话总结
Deployment Worksheet 是 Azure Stack Hub 网络规划的核心官方入口——Worksheet 的 Export 产物
ConfigurationData.json是 OEM 自动化脚本的重要输入之一;网络架构师提前 4-6 周在 Worksheet 上完成 12 项核心决策,把 JSON 交给 OEM 是部署成功的必要条件。
10. 下一步
完成 Worksheet 并导出ConfigurationData.json后,进入部署准备,覆盖:
- §2 终结点与 DNS 集成(为 Public VIP 准备 DNS)
- §3 Public IP 添加策略
- §4 边缘部署网络拓扑
- §5 身份提供者选择
- §6 AD FS / Graph 联邦
- §7 AzsReadinessChecker 工具
- §8 NTP 时间服务器
附录 A:参考链接
- 官方文档:Deployment worksheet for Azure Stack Hub - Azure Stack Hub | Microsoft Learn
- 数据中心集成:Plan datacenter integration for Azure Stack Hub integrated systems - Azure Stack Hub | Microsoft Learn
- PowerShell Gallery:PowerShell Gallery | Azs.Deployment.Worksheet 1.2604.3424.152
- Dell 部署自动化镜像:
D:\Install\Tools\DELLEMCDeploymentAutomation_2.17.2204.28