VPC 网络设计
以下信息概述了 IBM Cloud® Virtual Private Cloud 部署的 VMware® 部署。 重要的是要了解 VMware 基础架构网络与 VPC 的分离和集成,以及如何集成和配置与其他工作负载流量的连接。
VPC 子网
在 IBM Cloud VPC 中,可以通过多种方式进行逻辑分割或隔离。 此架构遵循 VMware Cloud Foundation™ 的要求,使用传统的 VLAN 分段类比,但 IBM Cloud VPC 使用子网而不是 VLAN。 每个系统流量类型都有自己的 VPC 子网,VMkernel 适配器网络接口之间的流量可通过 IBM Cloud VPC 安全组 (SG) 和子网访问控制列表 (ACL) 进行控制。 下图显示了合并 VPC 设计的概览。
{: caption="网络设计VMware
对于此架构,将为每个 VMware Cloud Foundation 实例创建一个新的 VPC。 此举是为了简化操作,并避免与 VMware 云计算基础的可扩展性和架构要求及原则发生冲突。 要连接到其他工作负载和其他 VPC,可以使用 IBM Cloud 互联解决方案,如 Transit Gateway。
下表列出了在 VPC 中创建的子网。 子网设计基于VMware云基金会的要求,即在逻辑上分离系统流量类型,并为每个用户使用专用的 VPC 子网。 裸机服务器 PCI 接口托管在自己的子网中。 管理界面和设备,如 VMware vCenter®, VMware NSX™ 管理器、SDDC 管理器和 NSX Edge™ 管理界面,在各自的管理子网中进行配置。
子网名称 | 系统流量类型 | 子网规模指南 |
---|---|---|
vpc-host-subnet |
主机管理流量 | 主机数量 x 2(每个 PCI 网卡都需要一个 IP 地址) |
vpc-mgmt-subnet |
管理设备流量 | VMware云计算基础管理设备的数量 |
vpc-vmot-subnet |
vMotion 流量 | 主机的数量 |
vpc-vsan-subnet |
vSAN 流量 | 主机的数量 |
vpc-tep-subnet |
主机的 TEP 流量 | 主机数量 x 2(每台主机需要 2 x TEP) |
在 VMware Cloud Foundation 部署中,NSX 边缘 TEP 流量和 NSX Tier-0 逻辑网关接口部署在各自的子网中。 边缘群集需要以下 VPC 子网。
子网名称 | 系统流量类型 | 子网规模指南 |
---|---|---|
vpc-edge-tep-subnet |
边缘节点的 TEP 流量 | 边缘节点数 x 2(每个边缘节点需要 2 x 个 TEP) |
vpc-t0-public-uplink-subnet |
T0 公共上行链路子网 | /29 或更大 |
vpc-t0-private-uplink-subnet |
T0 专用上行链路子网 | /29 或更大 |
要在 VPC 中创建子网,必须创建 VPC 前缀。 VPC 前缀按区域定义。 为简化路由选择,必须从单个前缀中分配推荐的子网。 这意味着,要容纳五个子网,您需要一个 /21
前缀来满足每个区域约 120 台主机的地址需求。 如果要使用 /22
前缀,则每个区域可添加约 60 台主机。 通过选择足够大的前缀,您将获得可扩展性和未来需求的增长,例如用于 NFS、复制和 NSX Tier-0 上行链路的专用 VMK。
VPC 访问控制列表和安全组
VPC 裸机服务器可全面支持 VPC 网络功能。 网络安全功能(如安全组和访问控制列表)可与裸机服务器 PCI 和 VLAN 接口一起使用。 在此设计中,用于传输 VMware 系统流量类型的 VMware 基础架构子网和用于工作负载虚拟机的 VPC 子网共享路由域。 这种设计允许使用这两种内置网络 VPC 安全工具。
带有 VMware 工作负载的访问控制列表
访问控制列表可以通过允许或拒绝子网的入站和出站流量进行管理。 ACL 是无状态的,这意味着必须分别显式指定入站和出站规则。 每个访问控制列表(ACL)都包含基于源IP、源端口、目标IP、目标端口和协议的规则。 每个 VPC 都有一个默认 ACL,允许所有入站和出站流量。 您可以编辑默认 ACL 规则,或创建自定义 ACL。
当 ACL 被应用到子网时,就可以将其用作虚拟服务器,控制进出 VPC 子网的流量。 此外,您还可以为 vSAN™, vMotion 和 TEP 流量创建隔离子网。
默认部署为整个 VPC 使用默认 ACL (allow any
),但您可以在初始部署后对此进行自定义。
有关 ACL 的更多信息,请参阅 VPC 中的安全性。 有关使用 IBM Cloud 裸机服务器的 ACL 的更多信息,请参阅 IBM Cloud 裸机服务器网络简介。
具有 VMware 工作负载的安全组
安全组可充当虚拟防火墙,控制一个或多个虚拟服务器网络接口和 IBM Cloud 裸机服务器 PCI 或 VLAN 接口的流量。 安全组是一组规则,用于指定是否允许或拒绝相关接口的流量。 您可以将一个或多个安全组与一个界面关联,并编辑安全组规则。 您还可以在规则中使用安全组作为源或目标,以创建更多动态规则,而无需指定 IP 地址。
在此设计中,安全组用于创建管理、vSAN, vMotion 和 TEP 流量类型的逻辑分组,并应用规则来允许所需的流量。 创建以下安全组:
安全组名称 | 用途 |
---|---|
sg-mgmt |
管理设备和主机 |
sg-vmot |
用于 vMotion 的虚拟机内核适配器 |
sg-vsan |
用于 vSAN 的虚拟机内核适配器 |
sg-tep |
用于 TEP 的虚拟机内核适配器 |
sg-uplink-pub |
用于 Tier-0 公共上行链路的虚拟机内核适配器 |
sg-uplink-priv |
用于 Tier-0 专用上行链路的虚拟机内核适配器 |
sg-bastion |
用于堡垒主机的虚拟机内核适配器(自动化 VSI) |
默认规则的基本原则是允许实用的最低限度。 例如,sg-vmot
允许安全组成员之间的流量和来自安全组 sg-mgmt
的入站 icmp
流量。 同样的原则也适用于用于 VMkernel 适配器的所有安全组。sg-mgmt
允许从专用 RFC 1918 网络进行连接。 这些规则可在初始拨备后进行定制,以下信息提供了简化指南和原则。
当 VMware 虚拟机 (VM) 中的 VLAN 接口使用安全组时,为避免错误配置和误解,必须了解流量如何进出标准和分布式 vSwitches, 以及流量何时在这些 vSwitches 中的主机内穿行。
在 VMware 环境中,同一裸机服务器上具有相同 VLAN ID 的 VLAN 网络接口之间的流量通常由 ESXi 主机内的 vSwitches 转发。 如果虚拟机或 VMkernel 接口位于同一主机上并使用相同的端口组和 VLAN ID,则流量不会到达 VPC 网络。
例如,在由多个裸机服务器主机组成的 VMware vSphere® 群集上,您配置了分布式 vSwitch。 在这种情况下,可以使用 VLAN ID 1611
创建一个端口组,并将其添加到特定的 vSwitch 中。 连接到端口组 1611
的两个虚拟机的 vNICs 之间的流量由 vSwitch 控制。
在此示例中,这会对 VMware Cloud Foundation 部署产生以下影响:
- 端口组 VLAN ID
1611
中控制网络接口之间流量的安全组规则,如果流量没有离开 vSwitch 则不会应用。
此外,在处理应用于 NSX 第 0 层网关上行链路和 NSX 叠加流量的安全组时,必须根据 IP 地址等定义规则:
- 当您从 VPC 子网上的 VMware VM(或 VSI)访问 NSX overlay 上 IP 地址为
192.168.45.10
的 VM,并希望允许流量流向此 IP 地址时,您的源安全组规则必须与传出流量相匹配,而分配给 0 层网关上行链路的安全组必须与传入流量相匹配。 在这种情况下,必须使用 IP 地址或 CIDR 来匹配覆盖流量。 - 当 NSX overlay 上 IP 地址为
192.168.45.10
的虚拟机需要与 vCenter 或 SDDC 管理器通信时,0 层网关上行链路安全组规则必须与传出流量相匹配,分配给 vCenter 或 SDDC 管理器 VLAN 接口的安全组必须与传入流量相匹配。 在这种情况下,必须使用 IP 地址或 CIDR 来匹配覆盖流量。
有关安全组的更多信息,请参阅 VPC 中的安全性。 有关使用 IBM Cloud 裸机服务器的安全组的更多信息,请参阅 裸机服务器联网 IBM Cloud 简介。
与 VPC 子网上的 VMware 虚拟机进行公共连接
VPC 裸机服务器可全面支持 VPC 公共网络功能。 外部连接可以通过使用连接到 VPC 子网的 Public Gateway,或使用连接到裸机服务器 PCI 或 VLAN 接口的浮动 IP 地址来实现。 公共网关使用源网络地址转换(SNAT),浮动IP使用目标网络地址转换(DNAT)。 这些功能与 VPC 虚拟服务器相同。
连接到具有 Public Gateway的 VPC 子网的 VLAN 接口可以启动与互联网的连接,但不能接收来自互联网的连接。 Public Gateway 为整个子网提供连接,从该子网的虚拟机发出的公共流量会将 Public Gateway IP 地址视为源地址。 如果子网没有连接到 Public Gateway,则流量是完全私有的。 在此设计中,vSAN, vMotion, 或 TEP 子网均可作为示例。
具有浮动 IP 的 VLAN 接口可以启动或接收与互联网的连接或来自互联网的连接。 浮动 IP 为单个实例提供连接。 This action overrides the Public Gateway of that specific VLAN interface in the VPC subnet, if that is provisioned to a subnet with attached Public Gateway.
在 VMware Cloud Foundation 部署中,您必须将管理子网添加到 Public Gateway 中,这样 SDDC 管理器就可以直接从 VMware 公共软件库中获取更新。
有关覆盖和 NSX 公共连接的更多信息,请参阅 VMware VPC 部署上的 NSX 逻辑路由器 和 VMware VPC 上的 NSX 逻辑路由。