NSX Virtual Private Cloud (VPC) 是一个抽象层,可简化在 NSX 项目中设置独立 Virtual Private Cloud 网络的过程,以便在自助使用模型中使用网络和安全服务。

NSX 4.1.1 开始,项目中支持此功能。

NSX VPC 可向应用程序所有者隐藏底层 NSX 基础架构、网络拓扑、网络对象和 IP 地址管理的复杂性,并为他们提供自助使用模型以在其自己的专用空间中运行应用程序。

应用程序所有者或 DevOps 工程师不需要了解用于在隔离空间内运行应用程序的底层 NSX 基础架构。他们可以在分配给他们的 NSX VPC 中添加子网(网络),并配置安全策略以满足其应用程序要求,而不依赖于企业管理员。

NSX VPC 在项目中为可选项。下图显示了组织 中的两个项目。项目 1 包含 NSX VPC,而项目 2 不包含 NSX VPC。


周围文本对该图进行了说明。

下图显示了项目 1 中 NSX VPC 的示例逻辑视图。项目 1 和 2 均连接到同一个 Tier-0 或 Tier-0 VRF 网关。


周围文本对该图进行了说明。
项目 1 中的 NSX VPC 包含三个子网:
  • 应用程序子网(专用)
  • Web 子网(公用)
  • 测试子网(隔离)
项目中的每个 NSX VPC 代表一个独立的路由域。 NSX VPC 中的子网代表独立的第 2 层广播域。子网在项目的默认传输区域中作为覆盖网络分段实现。在 NSX VPC 中分配有 VPC 管理员角色或网络管理员角色的用户可以在 NSX VPC 中添加子网。除了这两个角色外, NSX VPC 还可以具有以下用户角色,但其范围仅限于 NSX VPC
  • 安全管理员
  • 网络操作员
  • 安全操作员

创建 NSX VPC 时,项目管理员会指定要用于在 VPC 中创建子网的外部 IP 块和专用 IP 块。支持的子网访问模式为“专用”、“公用”和“隔离”。如需了解有关子网访问模式的详细信息,请参见本文档中后面的 NSX VPC 子网的访问模式部分。

成功创建 NSX VPC 后,系统会隐式创建一个网关。但是,此隐式网关将以只读模式向项目管理员公开,而对 NSX VPC 用户不可见。

此隐式网关的生命周期由系统管理。删除 NSX VPC 时,将自动删除此隐式网关。

NSX VPC 策略数据模型中,NSX 对象在以下路径中的项目下创建:

/orgs/default/projects/<project_id>/vpcs/<vpc-id>

实现的隐式网关位于以下路径:

/orgs/default/projects/<project_id>/infra/tier-1s/

NSX VPC 示例

假设贵组织在 NSX 环境中创建了一个名为“销售”的项目。项目管理员的目标是为销售业务部门的“订单管理”和“分析”应用程序开发人员提供隔离的网络和安全环境。

应用程序开发人员需要能够在自助使用模型中为这两个应用程序置备网络和配置安全策略,而不依赖于企业管理员或项目管理员。

为实现这一目标,项目管理员可以在“销售”项目中创建两个 NSX VPC,并将这些 NSX VPC 分配给应用程序开发人员。

例如:

VPC 名称 VPC 用户 IP 地址块
订单管理

Jim:VPC 管理员

Bob:网络操作员

Carol:安全操作员

专用 IPv4 块:172.16.0.0/24

外部 IPv4 块:192.168.1.0/24

分析

Mike:VPC 管理员

Steve:网络操作员

Maria:安全操作员

专用 IPv4 块:172.18.0.0/24

外部 IPv4 块:192.168.1.0/24

将角色分配给 NSX VPC 用户后,这些用户可以在 NSX VPC 中添加子网,并为这些工作负载配置安全策略。安全策略只会影响 NSX VPC 内的工作负载,而不会影响 NSX VPC 外的工作负载。

例如,下图显示了“订单管理”NSX VPC 中的三个名为“开发”、“测试”和“生产”的子网,以及“分析”NSX VPC 中的三个名为“应用程序”、Web 和“数据库”的子网。工作负载虚拟机已连接到所有子网。NSX VPC 已连接到“销售”项目的同一 Tier-0 或 Tier-0 VRF 网关。


周围文本对该图进行了说明。

NSX VPC 简要工作流

NSX VPC 简要工作流如下所示:
  1. 项目管理员:在项目中添加 NSX VPC,并定义基本 NSX VPC 设置,例如 IP 分配、DHCP 配置、Edge 集群等。
  2. 项目管理员:在 NSX VPC 中为用户分配角色。
  3. 项目管理员:定义用户可在 NSX VPC 中创建的对象数量的配额或限制。
  4. VPC 管理员或网络管理员:在 NSX VPC 中添加子网。根据业务需求将工作负载连接到这些子网。
  5. VPC 管理员或安全管理员:在 NSX VPC 中添加安全策略,以满足已连接到 VPC 中子网的工作负载的安全要求。

NSX VPC 子网的访问模式

NSX VPC 中的子网支持的访问模式包括:
专用

只能在 NSX VPC 内访问专用子网。连接到专用子网的工作负载可以与同一 NSX VPC 内其他专用或公用子网上的工作负载进行通信。

如果专用子网的 IP 分配设置为“自动”,则会从分配给 NSX VPC 的专用 IPv4 块中自动分配子网 IP 块(子网 CIDR)。如果专用子网的 IP 分配设置为“手动”,则 VPC 管理员可以手动分配子网 CIDR。

VPC 子网的 CIDR 不能与同一 NSX VPC 中的其他 VPC 子网的 CIDR 重叠。但是,子网 IP 可以与其他 NSX VPC 中的子网重叠。可以通过将具有相同 IP 范围的不同专用 IP 块分配给不同的 NSX VPC 来完成此配置。

同一个项目中的多个 NSX VPC 可以共享同一专用 IPv4 块。在这种情况下,专用子网在共享同一专用 IP 块的不同 VPC 之间将是唯一的。

如果为 NSX VPC 开启了默认出站 NAT 选项,则会为 NSX VPC 创建一个默认 SNAT 规则,以允许来自专用子网上工作负载的流量路由到 NSX VPC 外部。在类似行中,如果关闭了此选项,则来自专用子网的流量无法路由到 NSX VPC 外部。

公用

可以从 NSX VPC 外部访问公用子网。默认情况下,该子网会自动通告到项目的 Tier-0 网关,并且它享有直接外部连接。换句话说,可以从项目内部和外部访问公用子网中的 IPv4 地址。

如果公用子网的 IP 分配设置为“自动”,则会从为项目指定的外部 IPv4 块中自动分配子网 IP 块(子网 CIDR)。如果公用子网的 IP 分配设置为“手动”,则 VPC 管理员可以手动分配子网 CIDR。

已隔离

隔离子网在内部未连接到实现的隐式网关。隔离子网上的工作负载可以相互通信,但无法与同一 NSX VPC 中的专用或公用子网上的工作负载进行通信。此外,来自隔离子网的数据包无法路由到 NSX VPC 外部。

VPC 管理员必须手动指定隔离子网的 CIDR 地址。