IBM Cloud VPC 裸机服务器
以下信息概述了 IBM Cloud 裸机服务器在 VMware Cloud Foundation for VPC 中的部署方式。
VPC 中的物理主机连接
IBM Cloud 中的 IBM Cloud VPC 裸机服务器使用 SmartNICs 实现 VPC 网络功能。 每个物理主机都有一个冗余的 100 Gb 网络连接,用于网络访问 IBM Cloud VPC。 物理网络连接的高可用性(HA) IBM Cloud 处理,您无需进行任何特殊配置。 所有网络接口均由机架顶部(TOR)交换机上的两个冗余物理端口提供支持。IBM Cloud管理聚合,例如,您无需创建多个 PCI 接口来实现冗余。 100 Gb 带宽由裸机服务器上已配置且当前处于活动状态的网络接口共享。
IBM Cloud 裸机服务器中的网络接口是网络接口卡的抽象表示,网络接口将 IBM Cloud 裸机服务器连接到 VPC 子网。
在 IBM Cloud VPC 中,您可以在裸机服务器上创建两种类型的网络接口。
- PCI(外设组件互连)接口代表物理网络接口。 裸机服务器上最多可包含 8 个 PCI 接口。
- VLAN(虚拟局域网)接口表示通过 VLAN ID 与 PCI 接口关联的接口。 VLAN 接口会自动用 VLAN ID 标记通过它路由的流量。 标记了 VLAN ID 的入站流量会被导向相应的 VLAN 接口。
IBM Cloud 裸机服务器中的 PCI 接口是一个物理 PCI 设备,只有在 IBM Cloud 裸机服务器停止或初始裸机服务器配置期间才能创建或删除。 PCI 接口有一个 allowed_VLANs
属性,用于控制使用 PCI 接口的 VLAN。 VLAN 接口是一个虚拟设备,通过 PCI 设备使用,该 PCI 设备的 allowed_VLANs
阵列中包含 VLAN。
在 VMware Cloud Foundation 部署中,IBM Cloud VPC 中的裸机服务器使用两个 PCI 接口。 这不会增加SmartNICs,但它是 VMware先决条件,也是Cloud Builder和SDDC管理器用于处理部署自动化的功能。
如果在解决方案中使用新的 VLAN ID,则必须分别更新所有 PCI 接口和所有主机的允许 VLAN 列表。
为需要连接到 VPC 子网的每个虚拟机 (VM) 或 VMware Cloud Foundation 设备创建 VLAN 接口。 例如,为 Cloud Builder 或 VMware vCenter Server® 创建的 VLAN 接口可以使用 VLAN 标记 1611
并且此 VLAN 接口可以配置到 VPC 中的管理子网。 当您部署 vCenter 虚拟设备虚拟机时,它会连接到 vSphere vSwitch 并使用以 VLAN 标记 1611
定义的端口组。 当 vCenter 使用 VPC 提供的 vLAN 接口的 IP 时,它在逻辑上会像任何其他 VPC 虚拟服务器一样连接到 VPC 中的管理子网。
每个 VLAN 接口都必须使用范围为 1-4094 的 IEEE 802.1q 标记。 重要的是要明白,这些 VLAN 标记对裸机服务器只有本地意义,VPC 子网并不理解 VLAN。 您可以将 SmartNIC 看作处理 VLAN ID 和 VPC 子网之间映射的交换机。 VLAN 标签在裸机服务器内部使用,用于在第 2 层隔离和分离流量,并用作在主机内部隔离 VPC 子网流量的机制。 例如,在分布式虚拟交换机中,会创建不同的端口组来匹配使用的 VLAN ID。 每个 VLAN 接口只能连接到一个子网,但可以创建多个连接到不同子网的 VLAN 接口,并为每个接口使用不同的 VLAN ID。 在此设计中,使用了 VLAN 类比,单个 VPC 子网只使用一个 VLAN ID。
VLAN 接口可设置为 floatable
。 对于需要在 IBM Cloud 裸机服务器之间进行 vMotion 的 VMware 工作负载,此操作非常重要。 此功能与 VMware 管理任务(如 vCenter 或NSX管理器)结合使用,允许它们在主机之间移动,以实现高可用性或分布式资源调度器(DRS)。
PCI 和 VLAN 接口都可以连接到一个或多个 VPC 安全组。 VLAN 接口不会继承 VLAN 接口流量流经的 PCI 接口的安全组。 此外,VPC ACL 可用于控制连接这些 PCI 和 VLAN 接口的子网的入站和出站流量。
此自动化架构主要使用安全组来隔离不同的 VMware 系统流量类型,仅在需要时在它们之间进行通信。 默认情况下,ACL 允许所有流量。 由于该架构针对不同的流量类型使用多个子网,因此如有需要,您可以添加自己的 ACL 规则,作为额外的网络安全措施。
有关网络概念的更多信息,请参阅 VPC 上 IBM Cloud 裸机服务器的网络概述。
主机管理网络和虚拟机内核适配器
在 VMware Cloud Foundation 中为每个 VMware 系统流量类型创建专用的虚拟机内核适配器 (VMK),系统流量类型被隔离在不同的 VPC 子网中。 下图介绍了 PCI 和 VLAN 接口、分布式虚拟交换机和分布式端口组如何与基于 NSX 的 VMware Cloud Foundation 部署架构配合使用。
在 VMware Cloud Foundation 部署的 IBM Cloud VPC 中,每个 IBM Cloud 裸机服务器通过两个 PCI 接口连接到一个 VPC 子网。 这些接口提供了一个 IP 地址,但在 VMware Cloud Foundation 中根本不会使用该 IP 地址。 主机启动时,会通过使用用户数据传递的脚本创建一个新的管理 VMkernel 适配器 vmk1
。 对于 VMware 中的其他系统流量类型,Cloud Builder、SDDC
管理器和 NSX 会使用 VLAN 接口。 这些 VLAN 接口由自动化系统为裸机服务器创建,并连接到特定的子网和安全组。
下表列出了 VMware Cloud Foundation 部署中每台 ESXi 主机所需的 VMK。
接口名称 | 接口类型 | VLAN 标识 | Subnet | 允许浮动 | 虚拟机内核适配器 | 分布式端口组名称 |
---|---|---|---|---|---|---|
pci-nic-vmnic0-uplink1 |
pci |
0 | vpc-host-subnet |
false |
none |
dpg-hosts |
pci-nic-vmnic0-uplink2 |
pci |
0 | vpc-host-subnet |
false |
none |
dpg-hosts |
vlan-nic-vcf-vmk1 |
vlan |
1611 | vpc-vmot-subnet |
true |
vmk1 |
pg-vmotion |
由于 VMware Cloud Builder 和 SDDC 管理器使用池概念为 VMkernel 适配器分配 IP 地址,因此您必须在 IBM Cloud VPC 中分两步执行此操作。 首先,确保 VPC 子网中有可用的连续 IP 地址。 您可以使用保留 IP 地址的概念,从每个系统流量类型子网中保留 IP 地址。 第二步,必须为每个池创建一个 VLAN 接口,如下表所示。 需要预留多少 IP 地址以及创建多少 VLAN 接口,取决于部署的规模。
接口名称 | 接口类型 | VLAN 标识 | Subnet | 允许浮动 | 虚拟机内核适配器 | 分布式端口组名称 |
---|---|---|---|---|---|---|
vlan-nic-vmot-pool-<1> |
vlan |
1612 | vpc-vmot-subnet |
false |
vmk0 |
pg-mgmt |
vlan-nic-vsan-pool-<1> |
vlan |
1613 | vpc-vsan-subnet |
false |
vmk2 |
pg-vsan |
vlan-nic-tep-pool-<1> |
vlan |
1614 | vpc-tep-subnet |
false |
vmk10 |
none - 在 NSX 配置文件中设置 |
vlan-nic-tep-pool-<2> |
vlan |
1614 | vpc-tep-subnet |
false |
vmk11 |
none - 在 NSX 配置文件中设置 |
VMkernel 适配器在 VPC 中通信前,必须创建一个 VLAN 接口。 Cloud Builder 会验证每个 VPC 的连接性,如果 VPC 设置不正确,则会在验证时出现错误或警告。
配置主机时,确保为每个主机配置所需的 VLAN 接口,并确保 PCI 接口允许的 VLAN 列表中包含使用的 VLAN ID。
由于 VMkernel 适配器不需要在主机间移动,但为了便于 SDDC 管理器网络池的使用,在 Cloud Builder 和 SDDC 管理器处理主机的 IP 地址分配时,它们的配置 Allow Float
设置为 true
。