使用 NSX-T 将本地第 2 层网络扩展到私有云

本文档介绍如何使用基于 NSX-T 的第 2 层 VPN 将第 2 层网络从本地环境扩展至 Google Cloud VMware Engine 私有云。如需使用 HCX 网络扩展程序扩展第 2 层网络,请参阅 VMware HCX 文档

对第 2 层网络进行基于第 2 层 VPN 的扩展时,您可以在本地 VMware 环境中使用或不使用基于 NSX-T 的网络。如果您没有适用于本地工作负载的基于 NSX-T 的覆盖网络,请使用 NSX-T 自治边缘,它具有数据平面开发套件 (DPDK) 支持的接口,从而实现高性能。

与使用 HCX 网络扩展相比,使用 NSX-T 扩展第 2 层网络具有以下优势:

  • NSX-T 中的第 2 层 VPN 扩展支持使用中继接口。
  • NSX-T 中的网络吞吐量高于使用 HCX 网络扩展时的吞吐量。
  • 与 HCX 相比,NSX-T 所需的升级更少,停机时间也更少。
  • HCX 网络扩展需要具有本地 vSphere 企业 Plus 版许可,但第 2 层 VPN 扩展在本地 vSphere 标准许可上即可运行。

部署场景

为了使用第 2 层 VPN 扩展本地网络,上述部署场景会配置第 2 层 VPN 服务器和第 2 层 VPN 客户端。此过程包括以下主要步骤:

  1. 在本地环境中,部署 NSX-T 自治边缘(第 2 层 VPN 客户端)。
  2. 在私有云中,在 NSX-T Manager 上配置第 2 层 VPN 服务器。
  3. 在本地环境中,在自治边缘上配置第 2 层 VPN 客户端。
  4. (可选)在本地环境中,以高可用性模式部署辅助自治边缘(第 2 层 VPN 客户端)。

您的私有云会通过 Cloud VPN 或 Cloud Interconnect 连接到本地环境。此设置可确保私有云中的 0 层级或 1 层级网关与本地网络中的自治边缘客户端之间存在路由路径。

在本地环境和私有云之间扩展第 2 层网络。

如需查看第 2 层 VPN 部署的示例规范,请参阅第 2 层 VPN 部署示例部分。

准备工作

在开始之前,请执行以下操作:

  • 将您的本地环境连接到您的 VPC 网络。
  • 从您的 VPC 网络设置专用服务访问通道
  • 在 VMware Engine 门户中完成专用连接创建
  • 确定要扩展到私有云的工作负载第 2 层网络。
  • 确定本地环境中的两个 VLAN,它们将用于部署自治边缘设备(第 2 层 VPN 客户端)。
  • 创建私有云
  • 在本地 DNS 服务器上设置 DNS 转发,使网域指向私有云 DNS 服务器。
  • 允许自治边缘的上行 IP 地址和本地端点 IP 地址之间的端口 500 和 4500 上的 UDP 流量用于您的私有云中的 0 层级或 1 层级网关。

此外,请验证以下各项是否已准备就绪:

  • 本地 vSphere 版本必须是 6.7U1+ 或 6.5P03+。相应的许可必须是企业 Plus 版级别(适用于 vSphere 分布式交换机)。
  • 自治边缘设备版本与私有云中使用的 NSX-T Manager 版本兼容。
  • 根据 vMotion 在两个站点之间的运行要求,往返时间 (RTT) 延迟不超过 150 毫秒(如果尝试迁移工作负载)。

限制和注意事项

下表列出了受支持的 vSphere 版本和网络适配器类型:

vSphere 版本 来源 vSwitch 类型 虚拟 NIC 驱动程序 目标 vSwitch 类型 是否支持?
全部 DVS 全部 DVS
vSphere 6.7UI 或更高版本,6.5P03 或更高版本 DVS VMXNET3 N-VDS
vSphere 6.7UI 或更高版本,6.5P03 或更高版本 DVS E1000 N-VDS 不受支持(根据 VMware)
vx 6.7UI 或 6.5P03、NSX-V 或 NSX-T2.2、6.5P03 或更高版本 全部 全部 N-VDS 不受支持(根据 VMware)

部署 NSX-T 自治边缘(第 2 层 VPN 客户端)

如需在本地环境中部署 NSX-T 自治边缘,请在本地构建中继端口组,然后使用该端口组创建自治边缘。

创建和配置中继端口组

以下步骤展示了如何创建和配置中继端口组:

  1. 创建分布式端口组,并将 VLAN 类型设置为 VLAN 中继。提供要扩展的 VLAN。

    为新的分布式端口组提供 VLAN 配置设置。

  2. 安全选项中,将混杂模式模拟传输都设置为接受

  3. 在分组和故障切换选项中,将负载均衡设置为使用显式故障切换顺序

  4. 在分组和故障切换选项中,将活跃上行链路设置为 uplink1,并将备用上行链路设置为 uplink2。

  5. 完成其余的端口组创建步骤。

在本地环境中部署自治边缘

以下步骤介绍了如何在本地环境中部署 NSX-T 自治边缘(第 2 层 VPN 客户端):

  1. 下载 NSX-T 3.1.2 Advanced 版本的 NSX Edge for VMware ESXi

  2. 将 NSX Edge OVA 部署为 OVF 模板。

    1. 配置步骤中,选择大型配置以适应 VMware Engine 私有云附带的大型 NSX-T Edge。
    2. 选择存储空间步骤中,选择要使用的数据存储区。
    3. 选择网络步骤中,提供用于不同流量类型的端口组:

      • 网络 0(设备上的 eth1):选择为管理流量预留的端口组。
      • 网络 1(设备上的 eth2):选择为上行流量预留的端口组。
      • 网络 2(设备上的 eth3):选择中继端口组。
      • 网络 3(设备上的 eth4):选择为高可用性流量预留的端口组。在下图中,为管理流量预留的端口组也用于高可用性流量。

      在部署 OVF 模板期间为每个来源网络选择目标网络。

    4. 自定义模板步骤中,输入以下详细信息:

      1. 应用部分中,执行以下操作:

        1. 设置系统根用户密码
        2. 设置 CLI“admin”用户密码
        3. 选中是自治边缘复选框。
        4. 将其余字段留空。
      2. 网络属性部分中,执行以下操作:

        1. 设置主机名
        2. 设置默认 IPv4 网关。这是管理网络的默认网关。
        3. 设置管理网络 IPv4 地址。这是自治边缘的管理 IP 地址。
        4. 设置管理网络网络掩码。这是管理网络前缀长度。
      3. DNS 部分,执行以下操作:

        1. DNS 服务器列表字段中,输入以空格分隔的 DNS 服务器 IP 地址。
        2. 网域搜索列表字段中,输入域名。
      4. Service 配置部分,执行以下操作:

        1. 输入 NTP 服务器列表
        2. 输入 NTP 服务器(以空格分隔)。
        3. 选中启用 SSH 复选框。
        4. 选中允许根 SSH 登录复选框。
        5. 输入日志记录服务器(如果有)。
      5. 外部部分中,执行以下操作:

        1. 按以下格式输入外部端口详细信息: VLAN ID,Exit Interface,IP,Prefix Length。例如:2871,eth2,172.16.8.46,28。替换以下值:

          • VLAN ID:上行 VLAN 的 VLAN ID
          • Exit Interface:为上行流量预留的接口 ID
          • IP:为上行接口预留的 IP 地址
          • Prefix Length:上行网络的前缀长度
        2. 外部网关字段中,输入上行网络的默认网关。

      6. 高可用性部分,执行以下操作:

        1. 按以下格式输入高可用性端口详细信息: VLAN ID,exitPnic,IP,Prefix Length。例如:2880,eth4,172.16.8.46,28。替换以下值:

          • VLAN ID:管理 VLAN 的 VLAN ID
          • exitPnic:为高可用性流量预留的接口 ID
          • IP:为高可用性接口预留的 IP 地址
          • Prefix Length:高可用性网络的前缀长度
        2. 高可用性端口默认网关字段中,输入管理网络的默认网关。如果使用其他网络进行高可用性通信,请提供相应的默认网关。

        3. 将其余字段留空。

  3. 完成其余的 OVF 模板部署步骤。

在私有云中的 NSX-T Manager 上配置第 2 层 VPN 服务器

以下步骤介绍了如何在私有云 NSX-T Manager 中的 0 级层或 1 级层网关上配置第 2 层 VPN 服务器。

创建第 2 层 VPN 服务

  1. 在 NSX-T Manager 中,转到网络 > VPN > VPN 服务 > 添加服务 > IPSec
  2. 输入以下详细信息以创建 IPSec 服务:

    • 输入名称
    • 0 层级/1 层级网关列中,选择要运行第 2 层 VPN 服务器的网关。
    • 将其他字段留空。

    在 NSX-T Manager 中创建 IPSec VPN 服务。

  3. 转到网络 > VPN > 本地端点

  4. 输入以下详细信息以创建本地端点:

    • 输入名称
    • VPN 服务列中,选择您刚创建的 IPSec VPN 服务。
    • IP 地址字段中,输入为本地端点预留的 IP 地址,这也是 IPSec/第 2 层 VPN 隧道终止的 IP 地址。
    • 本地 ID 字段中,输入相同的预留 IP 地址。
    • 将其他字段留空。
  5. 转到网络 > VPN > VPN 服务 > 添加服务 > L2 VPN 服务器

  6. 输入以下详细信息以创建第 2 层 VPN 服务:

    • 输入名称
    • 0 层级/1 层级网关列中,选择要运行第 2 层 VPN 服务器的网关(与前面第 2 步中使用的网关相同)。
    • 将其他字段留空。

创建第 2 层 VPN 会话

  1. 在 NSX-T Manager 中,转到网络 > VPN > L2 VPN 会话 > 添加 L2 VPN 会话 > L2 VPN 服务器
  2. 输入以下详细信息以创建第 2 层 VPN 会话:

    • 输入名称
    • 选择之前在第 4 步创建第 2 层 VPN 服务中创建的本地端点/IP
    • 远程 IP 字段中,输入本地环境中自治边缘的上行 IP 地址。
    • 输入预共享密钥
    • 隧道接口字段中,输入预留的隧道接口子网中的一个 IP 地址。
    • 远程 ID 字段中,输入远程 IP 中的值。
    • 将其他字段留空。

创建网络分段以扩展到本地 VLAN

  1. 在 NSX-T Manager 中,转到网络 > 分段 > 添加分段
  2. 提供以下详细信息以创建要扩展到本地 VLAN 的分段:

    • 输入分段名称
    • 连接的网关字段中,选择
    • 传输区域部分,选择 TZ-Overlay
    • L2 VPN 字段中,选择之前在创建第 2 层 VPN 会话中创建的第 2 层 VPN 会话。
    • VPN 隧道 ID 字段中,输入唯一的隧道 ID(例如 100)。此隧道 ID 必须与从本地扩展 VLAN 时使用的隧道 ID 一致。
    • 将其他字段留空。

    创建包含第 2 层 VPN 会话和 VPN 隧道 ID 的网络分段。

  3. 转到网络 > VPN > L2 VPN 会话

  4. 展开会话,然后点击下载配置以下载第 2 层 VPN 配置。

  5. 使用任何文本编辑器打开下载的文件,然后复制 peer_code 字符串(不带引号)。稍后您在后续部分中为第 2 层 VPN 配置本地自治边缘时将使用此字符串。

此步骤取决于您是为第 2 层 VPN 服务使用 1 层级还是 0 层级网关。

如果您使用 0 层级网关,请执行以下操作,向外部网络通告 0 层级网关中的 IPSec 本地端点 IP:

  1. 转到网络 > 0 层级网关
  2. 修改用于第 2 层 VPN 的 0 层级网关(最好是 Provider-LR)。
  3. 展开路由重新分布
  4. 0 层级子网部分,选中 IPSec 本地 IP 复选框。
  5. 点击保存
  6. 聚合 0 层级网关上的 IPSec 本地端点子网。您需要在 0 层级网关上聚合路由器,以便 IPSec 本地端点可供本地自治边缘的上行 IP 访问,并且不会在网络架构中被过滤掉。

    1. 转到网络 > 0 层级网关
    2. 修改用于第 2 层 VPN 的所选 0 层级网关(最好是 Provider-LR)。
    3. 转到 BGP > 路由聚合 > 添加前缀
    4. 前缀列中,输入本地端点网络。
    5. 仅限摘要列中,选择
    6. 点击应用保存

如果您对第 2 层 VPN 服务使用 1 层级网关(如示例部署中所示),请改为执行以下步骤:

  1. 聚合 0 层级网关上的 IPSec 本地端点子网。您需要在 0 层级网关上聚合路由器,以便 IPSec 本地端点可供本地自治边缘的上行 IP 访问,并且不会在网络架构中被过滤掉。

    1. 转到网络 > 0 层级网关
    2. 修改用于第 2 层 VPN 的所选 0 层级网关(最好是 Provider-LR)。
    3. 转到 BGP > 路由聚合 > 添加前缀
    4. 前缀列中,输入本地端点网络。
    5. 仅限摘要列中,选择
    6. 点击应用保存
  2. 转到网络 > 1 层级网关

  3. 修改用于第 2 层 VPN 的 1 层级网关(最好是 Provider-LR)。

  4. 路由通告部分中,启用 IPSec 本地端点切换开关。

  5. 点击保存

在自治边缘(本地)上配置第 2 层 VPN 客户端

以下步骤展示了如何在通过部署 NSX-T 自治边缘在本地部署的自治边缘上配置第 2 层 VPN 客户端:

  1. 通过管理设备 IP 地址登录 NSX-T 自治边缘。
  2. 添加第 2 层 VPN 会话:

    1. 转到 L2 VPN,然后点击添加会话
    2. 输入以下详细信息:

    3. 点击保存

  3. 扩展本地 VLAN:

    1. 转到端口,然后点击添加端口
    2. 输入以下详细信息:

      • 端口名称字段中,输入端口名称。
      • 子网字段留空。
      • VLAN 字段中,输入要扩展的本地 VLAN 的 VLAN ID。
      • 对于退出接口,选择上行接口(如 eth2)。
    3. 点击保存

  4. 将端口连接到 L2 VPN 会话。

    1. 转到 L2 VPN,然后点击连接端口
    2. 输入以下详细信息:

    3. 第 2 层 VPN 会话显示在表中,其状态为“UP”。本地 VLAN 现已扩展到 VMware Engine 私有云(扩展分段)。连接到本地扩展 VLAN 的工作负载现可供附加到 VMware Engine 私有云中扩展分段的工作负载访问。

以高可用性模式部署辅助 NSX-T 自治边缘(第 2 层 VPN 客户端)

(可选)按照以下步骤在本地环境中以高可用性模式部署辅助 NSX-T 自治边缘(第 2 层 VPN 客户端):

  1. 按照在本地环境中部署 NSX-T 自治边缘中的步骤操作,直到完成自定义模板步骤。
  2. 自定义模板步骤中,改为执行以下操作:

    1. 应用部分中,输入以下详细信息:

      • 设置系统根用户密码
      • 设置 CLI“admin”用户密码
      • 选中是自治边缘复选框。
      • 将所有其他字段留空。
    2. 网络属性部分中,输入以下详细信息:

      • 设置主机名
      • 设置默认 IPv4 网关。这是管理网络的默认网关。
      • 设置管理网络 IPv4 地址。这是辅助自治边缘的管理 IP 地址。
      • 设置管理网络网络掩码。这是管理网络前缀长度。
    3. DNS 部分中,输入以下详细信息:

      • 输入 DNS 服务器列表
      • 输入 DNS 服务器 IP 地址(以空格分隔)。
      • 输入网域搜索列表
      • 输入域名
    4. 服务配置部分中,输入以下详细信息:

      • 输入 NTP 服务器列表
      • 输入 NTP 服务器(以空格分隔)。
      • 选中启用 SSH 复选框。
      • 选中允许根 SSH 登录复选框。
      • 输入日志记录服务器(如果有)。
    5. 外部部分留空。

    6. 高可用性部分中,输入以下详细信息:

      • 按以下格式输入高可用性端口详细信息: VLAN ID,exitPnic,IP,Prefix Length。例如:2880,eth4,172.16.8.11,28。替换以下值:

        • VLAN ID:管理 VLAN 的 VLAN ID
        • exitPnic:为高可用性流量预留的接口 ID
        • IP:为辅助自治边缘的高可用性接口预留的 IP 地址
        • Prefix Length:高可用性网络的前缀长度
      • 高可用性端口默认网关字段中,输入管理网络的默认网关。

      • 选中次要 API 节点复选框。

      • 主节点管理 IP 字段中,输入主自治边缘的管理 IP 地址。

      • 主节点用户名字段中,输入主自治边缘的用户名(例如“admin”)。

      • 主节点密码字段中,输入主自治边缘的密码。

      • 主节点管理指纹字段中,输入主自治边缘的 API 指纹。您可以通过使用管理员凭据并运行 get certificate api thumbprint 命令通过 SSH 连接到主自治边缘来实现此目的。

  3. 完成其余 OVF 模板部署步骤,以部署辅助自治边缘(本地第 2 层 VPN 客户端)。

生成的自治边缘的高可用性状态有效

第 2 层 VPN 部署示例

下表提供了第 2 层 VPN 部署示例的规范。

本地网络将被扩展

网络属性
VLAN 2875
CIDR 172.16.8.16/28

部署自治边缘的本地网络

网络属性
管理 VLAN 2880
管理 CIDR 172.16.8.0/28
上行 VLAN 2871
上行 CIDR 172.16.8.32/28
高可用性 VLAN(与管理相同) 2880
高可用性 CIDR(与管理相同) 172.16.8.0/28
主要自治边缘管理 IP 地址 172.16.8.14
主要自治边缘上行 IP 地址 172.16.8.46
主要自治边缘高可用性 IP 地址 172.16.8.12
辅助自治边缘管理 IP 地址 172.16.8.13
辅助自治边缘高可用性 IP 地址 172.16.8.11

NSX-T 1 层级路由器的私有云 IP 架构(第 2 层 VPN 服务器)

网络属性
本地端点 IP 地址 192.168.198.198
本地端点网络 192.168.198.198/31
隧道接口 192.168.199.1/30
分段(已扩展) L2 VPN-Seg-test
环回接口(NAT IP 地址) 104.40.21.81

映射到扩展网络的私有云网络

网络属性
分段(已扩展) L2 VPN-Seg-test
CIDR 172.16.8.16/28

后续步骤

  • 如需详细了解如何使用 NSX-T 第 2 层 VPN 扩展本地网络,请参阅 VMware 文档了解第 2 层 VPN