您可以将 VMware Integrated OpenStack (VIO) 部署从 NSX-V 迁移到 NSX。在迁移过程中,VIO 控制平面必须处于只读模式。

除了南北向切换和主机迁移期间会出现短暂中断,虚拟机的数据路径连接在迁移期间不受影响。此迁移必须在单个维护时段内执行。

迁移过程概览

  1. 安装 NSX
  2. 为 VIO 准备 NSX。这需要为外部网络设置 Tier-0 网关或 VRF-lite,还需要配置 Edge 集群、DHCP 服务器配置文件和元数据代理。有关详细信息,请参见https://docs.vmware.com/cn/VMware-Integrated-OpenStack/index.html
  3. 获取 Neutron 迁移器包,该迁移包是 VIO 交付内容的一部分。
  4. 配置 Neutron 迁移器。
  5. 部署 Neutron 迁移器 Pod。
  6. 在 NSX Manager UI 中执行以下操作:
    • 开始 Edge 切换迁移。
    • 处理反馈并完成迁移。
    • 开始主机迁移。
    • 处理反馈并完成迁移。
  7. 等待 Neutron 迁移器 Pod 完成。
  8. 删除 Neutron 迁移器部署。
  9. NSX-V 中移除 VIO 安装。

必备条件

  • VIO 7.2.0 或更高版本
  • NSX-V 6.4.11 或更高版本
  • vSphere 6.7 或更高版本(建议在迁移之前将 ESXi 主机升级到 7.0 或更高版本。)
Neutron 迁移器 Pod 将运行以下验证检查。可以通过 Neutron 迁移器配置绕过生成警告的检查。
  • Neutron 中允许的地址对数(手动地址绑定数量不得超过 128 个)
  • 每个逻辑交换机的具有 DHCP 的多个子网数(在 NSX 中仅允许一个)
  • 每个网络的路由器上行链路数(NSX 中只有一个)
  • 主机组 - 如果为 NSX Edge 节点启用了 HA,并为要放置的 Edge 节点指定主机组,这将生成警告。
  • Edge HA 在 NSX 中会被忽略,因为它不适用。这将生成警告。
  • NSX 插件不支持基于 DVS 端口组的提供商网络或外部网络。
  • 不支持多提供商 VLAN 网络。
  • NSX 插件不支持负载均衡拓扑(例如,成员来自多个子网的负载均衡器无法通过上行链路连接到同一 Edge 路由器,或者网络上的负载均衡器无法连接到 Neutron 路由器)。
  • NSX 使用无效的地址(例如,与转换网络重叠)。
  • 部署在外部网络上的虚拟机。它们在 NSX 上无法正常运行。
  • 负载均衡成员的子网可访问性。NSX 要求负载均衡器的所有子网都连接到同一网关。

NSX 上不得存在任何 openstack 拥有的资源(例如,NSX 实例上先前 VIO 部署中的资源)。

有关 Edge 切换迁移和主机迁移所需的任何准备,请参见NSX-V 特定部分的就地迁移

准备迁移 - 调整 NSX Edge 集群大小

NSX Edge 集群必须具有足够的插槽以供 OpenStack 负载均衡器 (Load Balancer, LB) 使用。要确定将托管 LB 服务的 Tier-1 网关列表,请执行以下操作:
  • 对于每个 OpenStack VIP,找到相应的子网,并检索通过上行链路链接到该子网的路由器,除非该子网位于外部网络上。
  • 对于每个 OpenStack LB 池,列出成员。查找其所属的子网,并检索通过上行链路链接到子网的路由器。

找到的路由器数量以及最大 OpenStack LB 的大小将决定 NSX Edge 集群上所需的 LB 插槽数。对于每个 LB,需要具有两个插槽以供活动和备用服务路由器使用。有关每个 NSX Edge 设备上可运行的负载均衡器的最大数量,请参阅 https://configmax.vmware.com

准备迁移 - 配置 TEP IP 池

在主机迁移期间,NSX-V 和 NSX TEP 必须能够相互访问以确保其连接性。您必须配置 NSX TEP IP 池,以便它可以将流量路由到 NSX-V TEP。

NSX 中不支持的 NSX-V 配置参数

下表列出了不受支持的 NSX-V 参数和原因。

参数 描述 原因
cluster_moid 列出 Openstack 使用的集群的 ID。 不适用于 NSX

datacenter_moid

标识用于部署 NSX-V Edge 设备的数据中心。 不适用于 NSX

deployment_container_id

标识 NSX-V Edge 的部署容器。 不适用于 NSX

resource_pool_id

标识 NSX-V Edge 的资源池。 不适用于 NSX

datastore_id

标识 NSX-V Edge 的数据存储。 不适用于 NSX

ha_datastore_id

启用 Edge HA 时的其他数据存储。 不适用于 NSX

ha_placement_random

在主数据存储和辅助数据存储之间划分活动 Edge。 不适用于 NSX

edge_host_groups

确保活动/备份 Edge 放置在列出的主机组中。 不适用于 NSX

external_network

用于物理网络上行链路的 DVPG 的 ID。 不适用于 NSX

task_status_check_interval

检查任务完成情况的间隔。 不适用于 NSX

vdn_scope_id

适用于 VXLAN 虚拟线路的网络范围对象的 ID。 VDN 范围已被 NSX 覆盖网络传输区域取代。

dvs_id

连接到管理和 Edge 集群的 DVS 的 ID。默认情况下还可用于 VLAN 网络。 DVS 已被 NSX 中的 VLAN 传输区域取代。

maximum_tunnels_per_vnic

Edge 设备上的 VNIC 支持的最大子接口数量。 不适用于 NSX

backup_edge_pool

定义 Openstack 部署要使用的 NSX-V Edge 池的大小。 不适用于 NSX

mgm_net_moid

元数据代理管理网络的端口组 ID。 不适用于 NSX

mgt_net_proxy_ips

以逗号分隔的管理网络 IP 地址列表。 不适用于 NSX

mgt_net_proxy_netmask

元数据代理的管理网络网络掩码。 不适用于 NSX

mgt_net_default_gateway

元数据代理的管理网络默认网关。 不适用于 NSX

nova_metadata_ips

Nova 元数据服务使用的 IP 地址。 NSX 元数据代理配置中提供。

nova_metadat_port

Nova 元数据服务使用的端口。 NSX 元数据代理配置中提供。

spoofguard_enabled

默认情况下,Spoofguard 在 NSX-V 中处于启用状态,但如果在 NSX-V 中禁用 Spoofguard,则迁移后将在 NSX 中启用 Spoofguard。 默认情况下在 NSX 中处于启用状态(无法全局关闭)。

use_exclude_list

当端口安全处于禁用状态且 Spoofguard 处于启用状态时,使用 NSX-V 排除列表组件。 默认情况下在 NSX 中处于启用状态(无法全局关闭)。

tenant_router_types

分配为租户路由器的有序路由器类型列表。 不适用于 NSX

edge_appliance_user

为 Edge 设备登录配置的用户名。 不适用于 NSX

metadata_initializer

初始化元数据访问基础架构 不适用于 NSX

shared_router_appliance_size

用于创建共享路由器 Edge 的 Edge 设备大小。 不适用于 NSX

use_dvs_features

允许直接配置支持 NSX-V 的 DVS。 不适用于 NSX

service_insertion_profile_id

将用于服务插入的重定向防火墙规则的配置文件 ID。 NSX 集成中不存在该功能。

service_insertion_redirect_all

创建防火墙规则以将所有流量重定向到第三方防火墙。 NSX 集成中不存在该功能。

use_nsx_policies

使用 NSX 策略实施 Neutron 安全组。 NSX 集成中不存在该功能。

default_policy_id

如果 use_nsx_policiesTrue,则此策略将用作新租户的默认策略 NSX 集成中不存在该功能。

bind_floatingip_to_all_interfaces

当浮动 IP 设置为 True 时,将其绑定到下行链路接口。 NSX 中,还始终处理东西向流量的浮动 IP 的 NAT。

vdr_transit_network

分布式路由器 TLR/PLR 连接的网络范围。 NSX 中,无法从 OpenStack 配置 DR/SR 连接范围。

exclusive_dhcp_edge

每个网络具有独占 DHCP Edge 不适用于 NSX,因为在 Edge 集群上实施了 DHCP。

bgp_neighbour_hold_down_timer

BGP 邻居抑制时间间隔。 NSX 集成中不存在该功能。在 NSX Tier-0 网关路由配置上配置了 BGP 对等连接。

bgp_neighbour_keep_alive_timer

邻居保持活动状态时间的间隔。 NSX 集成中不存在该功能。在 NSX Tier-0 网关路由配置上配置了 BGP 对等连接。

share_edges_between_tenants

对多个租户使用相同的 DHCP 或路由器 Edge。 不适用于 NSX

use_routers_as_lbaas_platform

将子网的专属路由器用作 LBaaS 的平台。 不适用于 NSX,其中 LB 服务始终连接到用于转发的路由器。

nsx_sg_name_format

OpenStack 安全组的 NSX 名称格式。 后端资源命名在 NSX 中是隐式的。

loadbalancer_pool_transparency

在透明模式下创建 LBaaS 池。 NSX 中不支持透明模式。

default_edge_size

定义路由器、DHCP 和 LB Edge 的默认 Edge 大小。 不适用于 NSX

配置 Neutron 迁移器

在启动 Neutron 迁移器之前,创建一个名为 migrator.conf.json 的 JSON 文件,用来指定需要迁移的 NSX 环境以及主机。此文件将挂载到迁移器 Pod 中,并通过迁移过程进行验证。以下是示例 migrator.conf.json 文件:
{
 "strict_validation": true,
 "edge_migration": true,
 "host_migration": true,
 "edge_migration_interfaces_down": true,
 "post_migration_cleanup": true,
 "rollback": false, 
 "nsxv_token_lifetime": 1440,
 "compute_clusters": [
   "domain-c17",
   "domain-c29",
   "domain-c71",
  ],
  "nsx_manager_ips": [
    "192.168.16.32",
    "192.168.16.64",
    "192.168.16.96",
  ],
  "nsx_manager_user": "admin",
  "nsx_manager_password": "<NSX password>",
  "metadata_proxy": "VIO_mdproxy",
  "dhcp_profile": "VIO_dhcp_profile",
  "default_overlay_tz": "0b3d2a91-2dfc-40a7-ac6b-fbd62b0e4c79",
  "default_vlan_tz": "b87c7a69-6d1a-4857-badd-0d0e4d4e924f",
  "default_tier0_router": "VIO_Tier0",
  "availability_zones": [
  {
    "name": "az1",
    "metadata_proxy": "VIOAZ1_mdproxy",
    "dhcp_profile": "VIOAZ1_dhcp_profile",
    "default_vlan_tz": "6320d1e3-45a1-4f37-87b4-6d35d19cafef",
    "default_tier0_router": "VIOAZ1_Tier0VRFLite"
   }
   ],
   "external_networks_map": {
    "61282e88-0abb-4036-9ea8-22418f85cdf3": "VIO_Tier0",
    "39db1d0f-4279-462b-a17e-1995a5c00ae8": "VIOAZ1_Tier0VRFLite"
  },
  "transit_network": "100.64.0.0/16"
}

配置参数为:

参数 默认值 描述
post_migration_cleanup True 迁移完成后,移除由迁移过程创建且未被 VIO 使用或被其他 VIO 资源复制的其他 NSX 实体。
rollback True 失败时自动回滚(如果可能)。
nsxv_token_lifetime 1440 用于 NSX-V 访问的令牌的持续时间(以分钟为单位)。将令牌提供给 NSX。应根据部署大小和预计完成迁移的时间来选择持续时间。令牌不应在迁移完成前过期。
compute_clusters 将迁移的 vSphere 计算集群列表。该列表应仅包含部署了 VIO 虚拟机实例的集群。不应包含 Edge 集群和 VIO 管理集群。
nsx_manager_ips NSX Manager 的 IP 或 FQDN。如果使用管理器集群,则此参数可以指定 VIP 或 NSX Manager 实例列表。在后一种情况下,访问 NSX Manager 时将使用客户端负载均衡。
nsx_manager_user admin 为 NSX Manager 访问的用户。VIO 不支持使用主体身份进行身份验证。
nsx_manager_password 用于 NSX Manager 访问的密码。
metadata_proxy VIO 默认可用区的元数据代理标识符。标识符是资源策略路径的最后一个分段。
dhcp_profile VIO 默认可用区的 DHCP 配置文件标识符。
default_tier0_router VIO 默认可用区的 Tier-0 网关的标识符。将由网关为默认外部网络的 Neutron 路由器用于南北向流量。
default_overlay_tz 要用于 VIO 部署的覆盖网络 NSX 传输区域。
default_vlan_tz 默认可用区的 VLAN NSX 传输区域。
transit_network 100.64.0.0/16 NSX 传输网络的 CIDR。仅当它从 NSX 默认值进行更改时才会修改。
external_networks_map 空列表
availability_zones 空列表

部署 Neutron 迁移器

在迁移器包中,脚本名为 build_yaml.sh。迁移器配置准备就绪后,运行该脚本以创建部署规范并将其部署到 VIO 控制平面上。例如:
./build_yaml.sh -t 7.1.1.1899999
该脚本接受以下参数:
-k 可选。请勿在部署中包含 vCenter Server 证书。仅当 VIO 使用不安全的 vCenter 连接时才指定此项。
-t <full VIO version> 必需。VIO 版本必须包含现有 VIO 映像的内部版本号和匹配标记。

build_yaml.sh 脚本将创建 <YAML-FILE-NAME>,其中包含用于部署 Neutron 迁移控制平面的所有信息。

开始迁移

要开始迁移,请运行以下命令:
kubectl apply -f <YAML-FILE-NAME>

这将在 Openstack 命名空间中创建 Neutron 迁移器部署。此部署具有单个副本。在创建部署的 Pod 时,将自动启动迁移 Pod。

启动迁移 Pod

在启动期间,迁移器 Pod 将读取迁移的配置文件和当前状态。它将根据此信息来决定迁移的下一步,可能为以下步骤之一:
  • API 重放
  • 正在开始从 NSX Manager 迁移
  • VIO 重新配置

如果找不到配置文件或尚未指定所需的参数,则迁移 Pod 将终止。

如果当前的迁移状态不一致(例如,如果 API 重放尚未完成,但迁移已在进行中),则迁移 Pod 也会终止并显示错误。

迁移器作业启动后,Neutron NSX 插件的配置文件将挂载到 Pod 中。迁移器作业不会处理迁移器启动后对 Neutron 配置所做的任何更改。迁移器正在运行时,不得对 Neutron 配置进行更改。如果需要进行更改,必须重新启动迁移器作业。

API 重放

在此状态下,迁移过程将在 NSX 上创建所有必需的配置,并填充 VIO Neutron 数据库以与 NSX 配合使用。

在该过程结束时,将在 NSX 中配置 VIO 所需的所有逻辑网络实体,即便工作负载仍在 NSX-V 上运行也是如此。

NSX 上实施 VIO 配置之前,将执行以下检查:
  • 预验证检查。上文中的“必备条件”部分中列出了这些检查。
  • NSX 版本检查。NSX 版本必须为 3.2 或更高版本。
  • 确保配置了计算管理器。迁移需要在 NSX 中将 VIO 的 vCenter 注册为计算管理器。该检查将验证此操作是否已完成。
  • 不应在 NSX 上配置 Neutron 资源。如果回滚选项设置为 True,则迁移器进程将清理在 NSX 上找到的任何(可能失效)的 Neutron 资源。

检查完成后,迁移过程会初始化 Neutron NSX 数据库并准备其结构。然后,将在迁移器 Pod 中启动一个临时 Neutron 服务器。此临时 Neutron 服务器已配置为使用 NSX 运行。临时 Neutron 服务器启动后,迁移过程将收集有关网络 VNI 映射和端口/VIF 映射的信息。

随后,将启动 API 迁移过程,并迁移以下资源:
  • 路由器(迁移至 Tier-1 网关)
  • 网络(迁移至分段)
  • 子网(迁移至分段子网和分段的 DHCP 配置)
  • 端口(迁移至分段端口和 DHCP 静态绑定)
  • 安全组(迁移至安全策略、规则、组和服务)
  • 浮动 IP(迁移至 NAT 规则)
  • QoS 策略和规则
  • FWaaS 组、策略和规则
  • Octavia 负载均衡器、侦听器、池、成员和运行状况监控器

API 重放完成后,将关闭临时 Neutron 服务器 Pod。

使用 tail 命令监控迁移器 Pod 日志。当日志显示迁移器 Pod 正在等待启动 NSX 迁移过程时,请执行下一个任务(Edge 切换)。

Edge 切换

进行以下 API 调用以获取 Edge 节点的 ID:
curl -v -s -X GET -k -u admin:<password> https://<nsx-mgr-ip>/api/v1/transport-nodes/ -H content-type:application/json
执行以下 API 调用以修改所有 Edge 节点上的参数 v2t-migration-config
curl -v -s -X PUT -k -u admin:<password> https://<nsx-mgr-ip>/api/v1/transport-nodes/<edge-nodeid>/node/v2t-migration-config -H content-type:application/json -d '{"enabled": true}'
请按照 使用 Edge 切换将南北向流量迁移到 NSX Edge 中的过程操作。完成此次迁移后, NSX 将处理南北向流量。迁移过程如下:
  • 关闭 NSX-V Edge 设备接口。
  • NSX Tier-1 下行链路上启用 ARP,以确保在迁移期间进行东西向和南北向流量转换。
  • 连接到 vCenter 以检索 NSX-V 身份验证令牌。
  • 为分布式路由器 (NSX-V DLR) 准备映射文件。
  • NSX 上设置 Edge 迁移,并等待其完成。

在南北向切换期间,当连接从 NSX-V ESG 或 DLR 切换到 NSX Tier-1 网关时,虚拟机可能会暂时断开连接。在南北向切换完成后,将关闭 NSX-V 和元数据 Edge 的电源。下一步是主机迁移。

重要信息:在开始南北向切换之前,回滚之后,请确保存在 Edge 映射文件。回滚后,将自动删除该文件。迁移器作业将在回滚完成后的 10 秒内还原。如果在 NSX-V VIO 环境中没有分布式路由器,则此操作不适用。

注意:在执行每个 Pod 时,将续订 NSX-V 访问令牌。其持续时间应足够长,以确保迁移在迁移器 Pod 生命周期内完成。如果迁移器 Pod 由于任何原因重新启动,将获取新令牌。

主机迁移

请按照 迁移分布式防火墙配置、主机和工作负载 中的过程操作。

VIO 迁移实用程序将执行以下操作:
  • 关闭所有 NSX-V Edge 设备的电源。
  • NSX 上设置主机迁移。
  • 等待主机迁移成功完成。

需要关闭 Edge 设备的电源以确保主机迁移成功完成。请勿在主机迁移期间打开 NSX-V Edge 设备的电源。

在主机迁移完成后,执行以下 API 调用以重置 Edge 节点的参数 v2t-migration-config。该参数是在 Edge 切换步骤开始时设置的。
curl -v -s -X PUT -k -u admin:<password> https://<nsx-mgr-ip>/api/v1/transport-nodes/<edge-nodeid>/node/v2t-migration-config -H content-type:application/json -d '{"enabled":false}'

迁移后清理

迁移器作业会将 Neutron CR 重新配置为使用 NSX,但不会移除 NSX-V 配置参数,以便您可以查看这些参数以供参考。这些参数没有任何危害。迁移完成后,可使用 viocli update neutron 命令将其移除。

日志记录

Neutron 迁移器过程会为该过程的每个阶段生成详细的日志记录。写入 Pod 的 stdout 的日志级别为 INFO。调试级别日志位于正在运行迁移器 Pod 的 VIO 控制器节点上的 /var/log/migration/vio-v2t.log

您可以使用以下命令确定 neutron-migrator Pod 在哪个节点上运行:
osctl get pods neutron-migrator -o wide

然后,您可以使用命令 viossh 在控制器节点上打开 shell。

/var/log/migration 目录还包含临时 Neutron 服务器日志。

回滚

在迁移期间的各个阶段均可能会发生回滚。

如果在 API 重放阶段出现故障,则无需进行显式回滚。VIO Neutron 迁移程序实用程序将自动移除已创建的资源,然后重试迁移。

如果选择通过销毁 Neutron 迁移器 Pod 来中断迁移,VIO 控制平面仍将在 NSX-V 中正常工作。API 重放可能创建了 NSX 资源。这些资源将被移除。

请注意,NSX 不允许回滚主机迁移。将主机迁移到 NSX 后,无法将其移回到 NSX-V。

如果在主机迁移期间出现故障,您可以查看日志并采取相应措施解决该问题。

或者,如果主机始终无法迁移到 NSX,则可以将其从 vSphere 集群中移除,然后重试迁移。在受影响主机上运行的虚拟机将迁移到集群中的其他主机。迁移后,在主机上安装 NSX,并将其添加到原始 vSphere 集群。

错误代码

代码 描述
0001, 0002, 0003, 0004 系统状态或配置错误。迁移过程中出现一些严重问题,例如:
  • 主机迁移已完成,但未执行 API 重放。
  • VIO 已在 NSX 中运行,但未执行 API 重放或迁移。
  • 主机位于 NSX 上、VIO 在 NSX 上运行,但未执行 API 重放。
0101 无法为临时 Neutron 服务器创建配置文件,API 重放需启动该配置文件。检查迁移器作业的 Pod 日志或 /var/log/migration/vio-v2t.log 以确定是否存在错误。通常可以通过解决配置文件更改的根本原因来修复此错误。
1001 NSX 迁移协调器未运行。要修复此错误,请在 migrator.conf.json 中指定的第一个节点上启动迁移协调器服务。如果使用 HA VIP,请确保活动管理器实例是正在运行迁移协调器的实例。对于迁移,建议使用特定的 NSX Manager,或使用客户端负载均衡。迁移完成后,可以更改 NSX Manager FQDN。
1002 NSX 版本无效。需要 NSX 3.2.0 或更高版本。
1003 无法检索 NSX 版本。检查迁移器作业的 Pod 日志或 /var/log/migration/vio-v2t.log 以确定是否存在错误。
1004 计算管理器验证失败。必须在 NSX 中至少定义一个计算管理器。检查迁移器作业的 Pod 日志或 /var/log/migration/vio-v2t.log 以确定是否存在错误。
1005 必须在 NSX 上运行清理。NSX 设置已具有由 VIO 创建的资源。确保在 migrator.conf.json 中将 rollback 设置为 True
1006 无法开始 NSX 迁移。这可能是上一次尝试迁移的结果。回滚正在进行的任何迁移,然后重试。
1007 无法为南北向切换准备 NSX。在 NSX 上设置南北向切换时出错。这可能是在生成“Edge 映射”文件时出错,或者在准备迁移计划时出错。检查迁移器作业的 Pod 日志或 /var/log/migration/vio-v2t.log 以确定是否存在错误。
1008 迁移器容器无法关闭 NSX Edge 设备上的接口。这是南北向切换的所需步骤。检查迁移器作业的 Pod 日志或 /var/log/migration/vio-v2t.log 以确定是否存在错误。要解决此问题,请在 migrator.conf.json 中将 edge_migration_interfaces_down 设置为 False,并手动确保 Edge 接口已关闭或已断开连接,然后再开始南北向切换。
1009 无法迁移没有下行链路的路由器。存在没有下行链路的 Neutron 路由器。无法迁移这些路由器。如果操作员认为返回的这个错误有误,则可以通过在 migrator.conf.json 中将 advanced_router_validation 设置为 False 来跳过该错误。
1100 迁移计划中的模式无效。为 NSX 迁移协调器配置了不同的计划。这可能是上一次尝试迁移的结果。回滚正在进行的任何迁移,然后重试。
1101 未在配置中确认 NSX 迁移。确保在 migration.conf.json 中将 edge_migration 和/或 host_migration 设置为 True
1105 无法修补没有网关的路由器。确保没有网关的 Neutron 路由器可以无缝迁移到 NSX 的过程失败。检查迁移器作业的 Pod 日志或 /var/log/migration/vio-v2t.log 以确定是否存在错误。通过将 advanced_router_validation 设置为 False,将跳过此过程。不过,在 NSX 上开始南北向切换之前,操作员要确保每个 Tier-1 网关都连接到 Tier-0 路由器。
1106 无法还原没有网关的路由器。南北向切换后还原没有网关的 Neutron 路由器的过程失败。检查迁移器作业的 Pod 日志或 /var/log/migration/vio-v2t.log 以确定是否存在错误。通过将 advanced_router_validation 设置为 False 来跳过此过程。不过,操作员要确保 Tier-1 网关与没有网关的 Neutron 路由器的 Tier-0 断开连接。
1110 无法开始到 NSX 的南北向切换迁移。应用迁移计划时出错。检查迁移器作业的 Pod 日志或 /var/log/migration/vio-v2t.log 以确定是否存在错误。
1114 缺少 Edge 设备的虚拟机。某些 Edge 设备没有关联的虚拟机设备。移除相应的 Neutron 路由器,以便移除 Edge。
1115 在开始主机迁移之前,无法关闭 NSX-V Edge 虚拟机的电源。检查迁移器作业的 Pod 日志或 /var/log/migration/vio-v2t.log 以确定是否存在错误。您可以考虑手动关闭虚拟机的电源。需要执行此操作以避免在主机迁移的运行时阶段出现问题。您必须至少关闭 DHCP 和元数据代理 Edge 设备的电源。
1120 无法启动主机迁移。应用迁移计划时出错。检查迁移器作业的 Pod 日志或 /var/log/migration/vio-v2t.log 以了解错误详细信息。
1130、1131 无法完成迁移。将迁移设置为“已完成”时出错。检查迁移器作业的 Pod 日志或 /var/log/migration/vio-v2t.log 以确定是否存在错误。
1132 迁移期间超时。南北向切换的超时时间为 12 小时。主机迁移的超时时间为 48 小时。如果迁移器的作业 Pod 保持等待迁移启动状态,则最终将会超时。操作员只需将其重新启动即可。
2001 无法从 VIO 控制平面检索 Neutron CR。这可能是授权问题或在访问 VIO 的 Kubernetes 控制平面时出现的问题。检查迁移器作业的 Pod 日志或 /var/log/migration/vio-v2t.log 以确定是否存在错误。
2002 无法解析 Neutron CR。确保 'spec' 部分中存在 'manifests' 属性。
2003 Neutron CR 中的内容无效。确保 NSX-V 插件处于启用状态,并且所有其他插件(包括 NSX Policy 插件)均处于禁用状态。
2004 无法更新 Neutron CR。更新 Neutron CR 时出错。检查迁移器作业的 Pod 日志或 /var/log/migration/vio-v2t.log 以确定是否存在错误。这可能是在更新 Neutron CR、为 NSX 密码创建 VIOSecret 实例或为 NSX Manager 创建资源时出现的错误。确认这些资源在经过之前的失败尝试后未失效。
2011 使用策略为 NSX 创建数据库时发生故障。这很可能是一个 SQL 错误。检查迁移器作业的 Pod 日志或 /var/log/migration/vio-v2t.log 以确定是否存在错误。
2012 将“neutron_policy”数据库重命名为“neutron”时发生故障。这很可能是一个 SQL 错误。检查迁移器作业的 Pod 日志或 /var/log/migration/vio-v2t.log 以确定是否存在错误。
2111 无法启动用于 API 重放的临时 Neutron 服务器。这很可能是在配置临时 Neutron 服务器时出现的错误。检查 /var/log/neutron-server-tmp.log 以确定是否存在错误。
2112 API 重放失败。这表示在 NSX 中创建资源时出错。检查迁移器作业的 Pod 日志或 /var/log/migration/vio-v2t.log 以确定是否存在错误。日志将显示无法创建的资源。然后检查 /var/log/neutron-server-tmp.log 以了解故障的详细信息。常见的故障原因:
  • 临时 Neutron 服务器配置中的传输区域不正确
  • 非 Openstack 网络使用与某些 Openstack 网络相同的 VLAN
  • Edge 集群的负载均衡器的插槽不足