当 NSX Edge 虚拟机失效或需要更改其在数据中心中的放置位置时,您想要重新部署该虚拟机。例如,当 NSX Edge 必须移动到另一个数据存储或计算资源时,请重新部署 NSX Edge 节点。也可以将节点移动到另一个网络。不过,可能还有其他原因需要重新部署,具体取决于您的网络要求。
您只能使用 NSX Edge 虚拟机设备重新部署现有的 NSX Edge 节点(物理服务器或 NSX Edge 虚拟机设备)。
前提条件
-
虽然您可以更改 NSX Edge 传输节点负载的某些配置,但不要在现有 NSX Edge 节点(将由新节点重新部署)上更改这些配置:
- 故障域
- 传输节点连接
- 物理网卡配置
- 逻辑路由器
- 负载均衡器分配
-
如果现有 NSX Edge 节点是物理服务器或通过 vSphere Client 手动部署的虚拟机,请确保 NSX Edge 节点和 NSX Manager 之间的连接已断开。如果连接处于“已启动”状态,则 NSX-T 不允许将现有 NSX Edge 节点替换为新节点。
过程
- (物理服务器或通过 vSphere Client 部署的 NSX Edge)打开 SSH 会话并连接到 NSX Edge 控制台。
- 通过在 CLI 控制台运行 get logical-routers 命令验证在 NSX Edge 节点上配置的逻辑路由。
- 关闭 NSX Edge 节点电源。
- 运行以下 API 命令,确认已从 NSX Manager 断开 NSX Edge 节点的连接。
GET api/v1/transport-nodes/<edgenode>/state
"node_deployment_state": {"state": MPA_Disconnected"}
node_deployment_state
值为 MPA 已断开连接,这表示您可以继续重新部署 NSX Edge 节点。注: 如果node_deployment_state
为 节点就绪, NSX Manager 将显示错误 78006 - 管理器与 Edge 节点的连接必须已断开。否则,不允许替换/重新部署硬件。 - 或者,从 Edge 传输节点页面中查看 NSX Edge 节点和 NSX Manager 之间的连接状态。断开连接的 NSX Edge 节点将显示以下系统消息:配置错误,Edge 虚拟机 MPA 连接已断开。
- 如果 NSX Edge 节点是自动部署的节点,请运行 GET /<NSX-Manager-IPaddress>/api/v1/transport-nodes/<edgenode>。复制此 API 的输出负载。
"resource_type": "EdgeNode", "id": "9f34c0ea-4aac-4b7f-a02c-62f306f96649", "display_name": "Edge_TN2", "description": "EN", "external_id": "9f34c0ea-4aac-4b7f-a02c-62f306f96649", "ip_addresses": [ "10.170.94.240" ], "_create_user": "admin", "_create_time": 1600106319056, "_last_modified_user": "admin", "_last_modified_time": 1600106907312, "_system_owned": false, "_protection": "NOT_PROTECTED", "_revision": 2 }, "is_overridden": false, "failure_domain_id": "4fc1e3b0-1cd4-4339-86c8-f76baddbaafb", "resource_type": "TransportNode", "id": "9f34c0ea-4aac-4b7f-a02c-62f306f96649", "display_name": "Edge_TN2", "_create_user": "admin", "_create_time": 1600106319399, "_last_modified_user": "admin", "_last_modified_time": 1600106907401, "_system_owned": false, "_protection": "NOT_PROTECTED", "_revision": 1 }
- 您可以从以下重新部署方案中进行选择:
选项 操作 使用 NSX Edge 虚拟机节点(通过 NSX Manager API 部署)重新部署现有 NSX Edge 节点(物理服务器或手动部署的节点)
运行 API 命令 /api/v1/transport-nodes/<transport-node-id>?action=redeploy 以执行以下操作: - 将负载粘贴到重新部署 API 的正文中。
-
验证
deployment_config
部分是否引用要在其中重新部署节点的计算管理器、数据存储和网络详细信息。确保这些值与node_settings
部分中使用的值一致。 -
在
deployment_config
部分中添加登录密码。
NSX Manager 会根据
deployment_config
部分中提供的详细信息重新部署 NSX Edge 节点。更改现有 NSX Edge 节点的放置位置
运行 API 命令 /api/v1/transport-nodes/<transport-node-id>?action=redeploy 以执行以下操作: - 将负载粘贴到重新部署 API 的正文中。
- 在
deployment_config
部分中,引用新的计算管理器、数据存储、网络、CPU、内存或延迟敏感度详细信息。
POST https://<manager-ip>/api/v1/transport-nodes/<transport-node-id>?action=redeploy 示例{ "node_id": "9f34c0ea-4aac-4b7f-a02c-62f306f96649", "host_switch_spec": { "host_switches": [ { "host_switch_name": "nsxvswitch_overlay", "host_switch_id": "c0a4a83e-c8b8-4324-a4d7-dbbc07b30b53", "host_switch_type": "NVDS", "host_switch_mode": "STANDARD", "host_switch_profile_ids": [ { "key": "UplinkHostSwitchProfile", "value": "f9a2a2fa-b49d-498f-abaf-2fdc81917716" }, { "key": "LldpHostSwitchProfile", "value": "9e0b4d2d-d155-4b4b-8947-fbfe5b79f7cb" } ], "pnics": [ { "device_name": "fp-eth0", "uplink_name": "uplink1" } ], "is_migrate_pnics": false, "ip_assignment_spec": { "ip_pool_id": "647d9b0d-0143-4903-91f5-930d9ab011e8", "resource_type": "StaticIpPoolSpec" }, "cpu_config": [], "transport_zone_endpoints": [ { "transport_zone_id": "0b33b078-6438-4d9b-a1ec-33211fd36822", "transport_zone_profile_ids": [ { "resource_type": "BfdHealthMonitoringProfile", "profile_id": "52035bb3-ab02-4a08-9884-18631312e50a" } ] }, { "transport_zone_id": "a0133574-48de-4e3a-9407-7db1a68bae41", "transport_zone_profile_ids": [ { "resource_type": "BfdHealthMonitoringProfile", "profile_id": "52035bb3-ab02-4a08-9884-18631312e50a" } ] } ], "vmk_install_migration": [], "pnics_uninstall_migration": [], "vmk_uninstall_migration": [], "not_ready": false } ], "resource_type": "StandardHostSwitchSpec" }, "transport_zone_endpoints": [], "maintenance_mode": "DISABLED", "node_deployment_info": { "deployment_type": "VIRTUAL_MACHINE", "deployment_config": { "vm_deployment_config": { "vc_id": "cc82da39-b119-4869-a7fe-a54621cb4d3d", "compute_id": "domain-c9", "storage_id": "datastore-14", "host_id": "host-12", "compute_folder_id": "group-v5", "management_network_id": "network-16", "hostname": "EdgeSmallFactor", "data_network_ids": [ "5638c577-e142-4a50-aed3-a7079dc3b08c", "5638c577-e142-4a50-aed3-a7079dc3b08c", "5638c577-e142-4a50-aed3-a7079dc3b08c" ], "search_domains": [ "eng.vmware.com", "vmware.com" ], "enable_ssh": true, "allow_ssh_root_login": true, "reservation_info": { "memory_reservation": { "reservation_percentage": 100 }, "cpu_reservation": { "reservation_in_shares": "HIGH_PRIORITY", "reservation_in_mhz": 0 } }, "resource_allocation": { "cpu_count": 4, "memory_allocation_in_mb": 8192 }, "placement_type": "VsphereDeploymentConfig" }, "form_factor": "MEDIUM", "node_user_settings": { "cli_username": "admin", "root_password":"Admin!23Admin", "cli_password":"Admin!23Admin" } }, "node_settings": { "hostname": "EdgeSmallFactor", "search_domains": [ "eng.vmware.com", "vmware.com" ], "enable_ssh": true, "allow_ssh_root_login": true }, "resource_type": "EdgeNode", "id": "9f34c0ea-4aac-4b7f-a02c-62f306f96649", "display_name": "Edge_TN2", "description": "EN", "external_id": "9f34c0ea-4aac-4b7f-a02c-62f306f96649", "ip_addresses": [ "10.170.94.240" ], "_create_user": "admin", "_create_time": 1600106319056, "_last_modified_user": "admin", "_last_modified_time": 1600106907312, "_system_owned": false, "_protection": "NOT_PROTECTED", "_revision": 2 }, "is_overridden": false, "failure_domain_id": "4fc1e3b0-1cd4-4339-86c8-f76baddbaafb", "resource_type": "TransportNode", "id": "9f34c0ea-4aac-4b7f-a02c-62f306f96649", "display_name": "Edge_TN2", "_create_user": "admin", "_create_time": 1600106319399, "_last_modified_user": "admin", "_last_modified_time": 1600106907401, "_system_owned": false, "_protection": "NOT_PROTECTED", "_revision": 1 }
注: 如果旧节点是通过 NSX Manager UI 部署的 NSX Edge 虚拟机节点,则不需要在 API 负载的有关负载的详细信息,请参见 《NSX-T Data Center API 指南》。node_user_settings
部分中提供登录凭据。 - 在 NSX Manager 中,确认新 NSX Edge 节点的配置状态。
- 或者,通过运行 API 命令 Get api/v1/transport-nodes/<node-id>/state 来确认新准备的 NSX Edge 传输节点的状态。
- 通过运行 get logical-routers CLI 命令,验证是否已将逻辑路由器配置迁移到新的 NSX Edge 节点。
- 确认 TEP 地址在替换的 NSX Edge 节点上保持不变。
- 确认 NSX Edge 集群状态是否为“已启动”。API 为 GET api/v1/edge-clusters/<cluster>。如果将 NSX-T 配置为使用 NSX 联合,请验证站点间状态是否为“已启动”。
- 检查 NSX Edge 传输节点和集群状态 API 以验证状态是否为“已启动”。
- 故障排除错误消息:
-
(78006) NSX Manager 与 Edge 节点的连接必须已断开。否则,不允许更换硬件:确保 NSX Edge 节点未连接到 NSX Manager。
-
(16064) 缺少部署配置:在重新部署 API 的过程中,输入 deployment_config 部分的详细信息。
-
(16066) 缺少登录密码:提供登录凭据。
-
(15019) 节点上的资源不足,无法分配给负载均衡器池:新 NSX Edge 节点的规格可能小于旧 NSX Edge 节点的规格。新规格的资源可能不足,无法分配给负载均衡器池。
-
下一步做什么
在主机上运行 del nsx 后,将释放逻辑路由器、VTEP IP 地址和上行链路 IP 地址的旧条目。现在,您可以将替换的物理服务器准备为新的 NSX-T 传输节点。