|
本文档采用自动化机器翻译技术翻译。 尽管我们力求提供准确的译文,但不对翻译内容的完整性、准确性或可靠性作出任何保证。 若出现任何内容不一致情况,请以原始 英文 版本为准,且原始英文版本为权威文本。 |
VM 网络
SUSE Virtualization为虚拟机(VM)提供三种类型的网络,包括:
-
管理网络
-
VLAN 网络
-
未标记网络
管理网络通常用于流量仅在集群内部流动的虚拟机。如果您的虚拟机需要连接到外部网络,请使用 VLAN 网络或未标记网络。
SUSE Virtualization还引入了存储网络,以将存储流量与其他集群工作负载分开。有关更多详细信息,请参阅存储网络文档。
管理网络
SUSE Virtualization使用 Canal作为其默认管理网络。这是一个内置网络,可以直接从集群中使用。 默认情况下,虚拟机的管理网络IP只能在集群节点内访问,并且在虚拟机重启后,管理网络IP将会更改。这是非典型行为,需要注意,因为虚拟机IP在重启后应保持不变。
但是,您可以利用Kubernetes 服务对象为您的虚拟机创建一个稳定的管理网络IP。
如何使用管理网络
由于管理网络是内置的,不需要额外操作,您可以在配置虚拟机网络时直接添加它。
|
如果您未指定除`mgmt`或`1500`以外的值,
如果您的任何工作负载涉及网络流量的传输,您必须为受影响的虚拟机网络接口和桥接指定适当的MTU值。 |
VLAN 网络
创建虚拟机网络
-
转到*网络→虚拟机网络*。
-
选择*创建*。
-
配置以下设置:
-
名称空间
-
名称
-
描述(选填)
-
-
在*基本*选项卡上,配置以下设置:
-
类型:选择*L2VlanNetwork*。
-
模式:选择*访问*。
-
VLAN ID
-
集群网络
虚拟机网络继承关联集群网络的网络配置的MTU。这确保虚拟机获得最佳的硬件性能。您不能为虚拟机网络设置不同的MTU。
当您更改集群网络上行链路的物理NIC的MTU时,新创建的虚拟机网络会自动继承新的MTU。现有的虚拟机网络也会自动更新。有关更多信息,请参见更改附加存储网络的网络配置的MTU和更改没有附加存储网络的网络配置的MTU。
SUSE Virtualization webhook不允许您直接更改虚拟机网络上的MTU。
-
-
在路由选项卡上,选择一个选项,然后指定相关的IPv4地址。
-
自动(DHCP):网络控制器从DHCP服务器检索CIDR和网关地址。您可以指定DHCP服务器地址。
-
手动:指定CIDR和网关地址。
SUSE Virtualization 使用该信息验证所有节点是否可以访问您正在创建的虚拟机网络。如果是这种情况,网络连接 列在 虚拟机网络 屏幕上指示网络处于活动状态。否则,屏幕指示发生了错误。
-
未标记网络
众所周知,VLAN网络下的流量具有VLAN ID标签,我们可以使用 PVID(默认值为1)与任何正常的未标记流量进行通信。然而,一些网络设备可能不期望接收到与上行链路所属交换机的本地VLAN匹配的显式标记VLAN ID。这就是我们提供未标记网络的原因。
如何使用未标记网络
未标记网络的使用类似于 VLAN网络。
要创建一个新的未标记网络,请转到 网络 > 虚拟机网络 页面并点击 创建 按钮。您必须指定名称,选择类型 Untagged Network 并选择集群网络。
|
SUSE Virtualization 支持更新和删除虚拟机网络。在更新或删除虚拟机网络之前,请确保停止所有受影响的虚拟机。 |
VLAN中继网络
-
转到*网络→虚拟机网络*。
-
选择*创建*。
-
配置以下设置:
-
名称空间
-
名称
-
描述(选填)
-
-
在*基本*选项卡上,配置以下设置:
-
类型:选择*L2VlanNetwork*。
-
模式:选择 中继。
-
最小VLAN ID:指定范围的起始 VLAN ID。
-
最大VLAN ID:指定范围的结束 VLAN ID。
-
集群网络:选择关联的集群网络。
您可以指定多个重叠的 VLAN ID 范围。
-
当虚拟机连接到 VLAN 中继网络时,来宾操作系统和应用程序可以发送和接收带有指定范围内任何 VLAN ID 的数据包。
|
只有在所有连接的虚拟机停止时,您才能更改网络类型。 当您将网络类型从 |
覆盖网络(实验性)
网络控制器利用 Kube-OVN 创建一个基于 OVN 的虚拟化网络,支持高级 SDN 功能,如 虚拟私有云 (VPC) 和子网,以满足虚拟机工作负载的需求。
覆盖网络代表一个虚拟的二层交换机,封装并转发虚拟机之间的流量。该网络可以与在 VPC 中创建的子网连接,以便虚拟机可以访问内部虚拟化网络,并且能够到达外部网络。然而,由于当前 VPC 的限制,外部网络(如 VLAN 和未标记网络)无法访问相同的虚拟机。
覆盖网络的限制
在 SUSE Virtualization v1.6 中,覆盖网络的实现具有以下限制:
-
由 Kube-OVN 支持的覆盖网络只能在
mgmt(内置管理网络)上创建。 -
默认情况下,
enableDHCP和dhcpV4Options设置未配置,因此附加到 Kube-OVN 覆盖子网的虚拟机上不存在默认路由。在来宾操作系统上正确配置默认路由之前,访问外部目标的尝试将失败。您可以执行以下任一解决方案:-
手动将子网的网关 IP 添加为虚拟机的默认路由。
-
使用
managedTap绑定:编辑附加子网的 YAML 配置,并验证字段.spec.enableDHCP是否设置为true。接下来,编辑虚拟机的 YAML 配置,并修改接口定义以使用绑定。interfaces: - binding: name: managedtap model: virtio name: default
-
-
Kube-OVN "原生" 负载均衡器尚未集成,因为这需要对上游代码库进行根本性更改。Kube-OVN 目前作为每个集群的主要 CNI 插件。
-
下层网络仍然不可用。因此,您无法将子网直接映射到物理网络,外部主机无法访问位于覆盖子网上的虚拟机。
-
在所有子网中,
natOutgoing字段默认设置为false(在默认和自定义 VPC 中均是如此)。只有属于默认 VPC 的子网在您将值更改为true并配置默认路由后才能访问互联网。在自定义 VPC 中创建的子网在没有VpcNatGateway支持的情况下无法访问互联网。 -
cloud-init 中的静态 IP 对覆盖 NIC 似乎被忽略。在实际操作中,静态 IP 仅在_与 Kube-OVN 为虚拟机预留的确切地址匹配_时才能正常工作。任何其他值都会破坏连接。
-
当多个 NIC 附加且覆盖 NIC 不是主要接口时,您必须在客户操作系统中手动初始化覆盖 NIC(IP 链接设置),并运行 DHCP 客户端(dhclient)命令以获取 NIC 的 IP 地址。
-
对等连接仅在自定义 VPC 之间有效。尝试在默认 VPC 和自定义 VPC 之间建立对等连接将失败。
-
由 SUSE Virtualization 负载均衡器提供的虚拟机负载均衡器与 Kube-OVN 覆盖网络不兼容。您只能将这些负载均衡器与 VLAN 网络一起使用。
-
-
集群负载均衡器在 Kube-OVN 覆盖网络上的客户集群中无法正常工作。兼容性问题是由以下原因引起的:
-
PoolIPAM:Kube-OVN 并不知道负载均衡器的前端 IP 地址是从 SUSE Virtualization 负载均衡器管理的池中分配的。这可能导致 IP 地址冲突。 -
DHCPIPAM:即使为 Kube-OVN 子网启用了 DHCP 服务,动态 IP 地址分配也无法正常工作。租约记录由 Kube-OVN 在控制平面上管理。需要集成增强,以使受影响的组件能够正常协同工作。
-
-
Rancher 集成(特别是使用 Harvester 节点驱动程序创建下游集群)仅在默认 VPC 内的 Kube-OVN 覆盖网络上有效。为确保成功创建集群,您必须执行以下操作:
-
为覆盖网络启用 DHCP 服务。您必须设置有效的默认网关。
-
在集群提供期间,需手动更新底层虚拟机规格,以适配
managedTap绑定接口用于下游集群。
-