Citrix Hypervisor

网络连接

本节概述 Citrix Hypervisor 的网络连接,包括网络、VLAN 和 NIC 绑定。此外,还将讨论如何管理网络连接配置以及进行故障排除。

重要:

vSwitch 是 Citrix Hypervisor 的默认网络堆栈。请按照 vSwitch 网络中的说明来配置 Linux 网络堆栈。

如果您已经熟悉了 Citrix Hypervisor 网络连接概念,可以提前跳至管理网络连接以获取与以下各节有关的信息:

  • 为独立 Citrix Hypervisor 服务器创建网络

  • 为资源池中配置的 Citrix Hypervisor 服务器创建网络

  • 为 Citrix Hypervisor 服务器(独立或属于资源池)创建 VLAN

  • 为独立 Citrix Hypervisor 服务器创建绑定

  • 为资源池中配置的 Citrix Hypervisor 服务器创建绑定

注意:

术语“管理接口”用来表示用于传输管理流量并且启用了 IP 的 NIC。术语“辅助接口”用来表示为存储流量配置的启用了 IP 的 NIC。

网络连接支持

对于每个主机,Citrix Hypervisor 最多支持 16 个物理网络接口(或最多支持 4 个绑定的网络接口);对于每个 VM,最多支持 7 个虚拟网络接口。

注意:

Citrix Hypervisor 将使用 xe 命令行接口 (CLI) 提供 NIC 的自动配置和管理。请勿直接编辑主机的网络连接配置文件。

vSwitch 网络

vSwitch 网络支持开放流。

  • 支持细化的安全策略,以控制传入和传出 VM 的通信流。

  • 详细展示虚拟网络环境中所发送的所有流量的行为和性能。

vSwitch 大大简化了虚拟化网络环境中的 IT 管理过程。即使 VM 从资源池中的一个物理主机迁移到另一个,所有 VM 配置和统计信息仍会绑定到该 VM。

要确定配置的网络连接堆栈,请运行以下命令:

xe host-list params=software-version
<!--NeedCopy-->

在命令输出中,查找 network_backend。将 vSwitch 配置为网络堆栈时,输出将如下所示:

network_backend: openvswitch
<!--NeedCopy-->

将 Linux 桥接配置为网络堆栈时,输出将如下所示:

network_backend: bridge
<!--NeedCopy-->

要还原到 Linux 网络堆栈,请运行以下命令:

xe-switch-network-backend bridge
<!--NeedCopy-->

在运行此命令之后重新启动您的主机。

Citrix Hypervisor 网络连接概述

本节介绍 Citrix Hypervisor 环境中网络连接的一般概念。

在安装期间,Citrix Hypervisor 将为每个物理 NIC 创建一个网络。向池中添加服务器时,默认网络将合并。这是为了确保设备名称相同的所有物理 NIC 都连接到同一个网络。

通常情况下,您将添加一个网络以创建内部网络,使用现有 NIC 设置新 VLAN,或者创建 NIC 绑定。

可以在 Citrix Hypervisor 中配置四种不同类型的网络:

  • 外部网络与物理网络接口相关联。外部网络在虚拟机与连接到网络的物理网络接口之间提供了一个桥梁。外部网络使虚拟机能够连接到可通过服务器的物理 NIC 提供的资源。

  • 绑定网络,可在两个或多个 NIC 之间创建一个绑定,以在虚拟机与网络之间创建一个高性能通道。

  • 单服务器专用网络与物理网络接口无关联。单服务器专用网络可用于提供指定主机上的虚拟机之间的连接,而与外界无连接。

注意:

与资源池相比,某些网络连接选项在与独立 Citrix Hypervisor 服务器结合使用时具有不同的行为。本部分内容首先介绍同时适用于独立主机和池的一般信息,之后介绍分别适用于这两种类型的特定信息。

网络对象

本部分内容使用三种类型的服务器端软件对象来表示网络连接实体。这些对象包括:

  • PIF,表示主机上的一个物理 NIC。PIF 对象具有名称和说明、UUID、所表示的 NIC 的参数,以及连接到的网络和服务器。

  • VIF,表示虚拟机上的一个虚拟 NIC。VIF 对象具有名称和说明、UUID 和连接到的网络和 VM。

  • 网络,即主机上的虚拟以太网交换机。网络对象具有名称和说明、UUID 以及连接到的 VIF 和 PIF 的集合。

XenCenter 和 xe CLI 都允许您配置网络连接选项。可以控制用于管理操作的 NIC,以及创建高级网络连接功能,例如 VLAN 和 NIC 绑定。

网络

每个 Citrix Hypervisor 服务器都有一个或多个网络,即虚拟以太网交换机。不与 PIF 相关联的网络被视为内部网络。内部网络仅可用于提供给定 Citrix Hypervisor 服务器上各 VM 之间的连接,而不与外部对象连接。与 PIF 相关联的网络被视为外部网络。外部网络在连接到网络的 PIF 与 VIF 之间提供了一个桥梁,从而能够通过 PIF 的 NIC 连接到资源。

VLAN

按照 IEEE 802.1Q 标准的有关定义,VLAN 允许单一物理网络支持多个逻辑网络。Citrix Hypervisor 服务器将以多种方式支持 VLAN。

注意:

所有受支持的 VLAN 配置均可应用于池、独立主机、绑定配置和非绑定配置。

在虚拟机中使用 VLAN

配置为 802.1Q VLAN 中继端口的交换机端口可以与 Citrix Hypervisor VLAN 功能结合使用,以将来宾虚拟网络接口 (VIF) 连接到特定的 VLAN。在这种情况下,Citrix Hypervisor 服务器将为来宾执行 VLAN 标记/去标记功能,而来宾不会觉察到任何 VLAN 配置。

Citrix Hypervisor VLAN 由其他 PIF 对象表示,这些对象代表与指定 VLAN 标记相对应的 VLAN 接口。可以将 Citrix Hypervisor 网络连接到代表物理 NIC 的 PIF,以查看该 NIC 上的所有流量。或者,也可以将网络连接到代表 VLAN 的 PIF,以仅查看具有指定 VLAN 标记的流量。还可以通过将网络连接到 VLAN 0 来连接网络,以便只能看到本机 VLAN 流量。

有关如何为 Citrix Hypervisor 服务器(独立或属于资源池)创建 VLAN 的步骤,请参阅创建 VLAN

如果您希望客户机执行 VLAN 标记和取消标记功能,来宾必须知晓 VLAN。为 VM 配置网络时,请将交换机端口配置为 VLAN 中继端口,但不要为 Citrix Hypervisor 服务器创建 VLAN。相反,请在普通的非 VLAN 网络上使用 VIF。

结合使用 VLAN 和管理接口

可以使用配置为中继端口或访问模式端口的交换机端口在 VLAN 中配置管理端口。使用 XenCenter 或 xe CLI 设置 VLAN 并将其设为管理接口。有关详细信息,请参阅管理接口

使用具有专用存储 NIC 的 VLAN

可以将专用存储 NIC 配置为使用本机 VLAN 或访问模式端口,如上一部分内容中的管理接口部分中所述。专用存储 NIC 又称为启用了 IP 的 NIC 或二级接口。可以将专用存储 NIC 配置为使用中继端口和 Citrix Hypervisor VLAN,如针对虚拟机的上节中所述。有关详细信息,请参阅配置专用存储 NIC

将管理接口和来宾 VLAN 组合到单一主机 NIC 上

一个交换机端口可使用中继端口和本地 VLAN 来配置,这就使得一个主机 NIC 可用作管理接口(在本机 VLAN 上),并可用于将来宾 VIF 连接到特定的 VLAN ID。

巨型帧

Jumbo 帧可用于优化存储网络和 VM 网络中的流量的性能。巨型帧是指包含超过 1500 字节有效负载的以太网帧。Jumbo 帧通常用于实现更高的吞吐量,降低系统总线内存上的负载,以及减少 CPU 开销。

注意:

仅将 vSwitch 用作池中所有主机上的网络堆栈时,Citrix Hypervisor 才支持巨型帧。

使用巨型帧的要求

使用 Jumbo 帧时,请注意以下事项:

  • 在池级别配置巨型帧

  • vSwitch 必须配置为池中所有服务器上的网络后端

  • 子网上的每个设备必须配置为使用巨型帧

  • 不支持在管理网络上启用 Jumbo 帧

要使用巨型帧,请将最大传输单位 (MTU) 设置为介于 1500 到 9216 之间的值。可以使用 XenCenter 或 xe CLI 来设置 MTU。

NIC 绑定

NIC 绑定(有时也称为“NIC 成组”)可以让管理员将两个或更多 NIC 配置在一起,从而提高 Citrix Hypervisor 服务器的恢复能力和带宽。NIC 绑定在逻辑上用作一个网卡,所有绑定的 NIC 共享 MAC 地址。

如果绑定中的 NIC 失败,则主机的网络通信会自动通过另一个 NIC 重定向。Citrix Hypervisor 最多支持八个绑定网络。

Citrix Hypervisor 支持主动-主动、主动-被动和 LACP 绑定模式。受支持 NIC 数量和受支持绑定模式因网络堆栈而异:

  • LACP 绑定仅适用于 vSwitch,而主动-主动和主动-被动适用于 vSwitch 和 Linux 桥接。

  • 当 vSwitch 为网络堆栈时,您可以将两个、三个或四个 NIC 绑定在一起。

  • 当 Linux 桥接为网络堆栈时,您只能绑定两个 NIC。

在下图中,管理接口位于绑定的 NIC 对上。Citrix Hypervisor 会将此绑定用于管理流量。

 此图显示的是在绑定上具有一个管理接口以及两对绑定的用于传输来宾流量的 NIC 的主机。除管理接口绑定外,Citrix Hypervisor 还会将其他两个 NIC 绑定和两个非绑定 NIC 用于 VM 流量。

所有绑定模式都支持故障转移。但是,并非所有模式都允许所有链路对所有流量类型保持活动状态。Citrix Hypervisor 支持将下列类型的 NIC 绑定在一起:

  • NIC(非管理)。可以绑定由 Citrix Hypervisor 专用于 VM 流量的 NIC。绑定这些 NIC 不仅可以提供恢复能力,而且还可以平衡 NIC 之间来自多个 VM 的流量。

  • 管理接口。可以将管理接口绑定到另一个 NIC,以便该 NIC 为管理流量提供故障转移。尽管配置 LACP 链路聚合绑定可为管理流量提供负载平衡,但主动-主动 NIC 绑定不会提供负载平衡。可以在绑定的 NIC 上创建 VLAN,并且可以将主机管理接口分配给该 VLAN。

  • 辅助接口。您可以绑定已配置为辅助接口的 NIC(例如,用于存储)。但是,对于大多数 iSCSI 软件发起程序存储,我们建议配置多路径而非 NIC 绑定,如“设计 Citrix Hypervisor 网络配置”中所述。

    在本部分内容中,术语“基于 IP 的存储流量”是 iSCSI 和 NFS 流量的统称。

如果 VIF 已在使用将绑定在一起的其中一个接口,则可以创建一个绑定,此时 VM 流量将自动迁移到新的绑定接口。

在 Citrix Hypervisor 中,NIC 绑定由额外的 PIF 表示。Citrix Hypervisor NIC 绑定完全包含基础物理设备 (PIF)。

备注:

  • 不支持创建仅包含一个 NIC 的绑定。
  • 绑定的 NIC 可以互为对方的不同模型。
  • 在传输 FCoE 流量的 NIC 上不支持 NIC 绑定。

最佳做法

设置 NIC 绑定时,请遵循以下最佳实践:

  • 将绑定的链路连接到不同的物理网络交换机,而不仅仅是同一台交换机上的端口。
  • 确保单独的交换机从不同的独立电源分配单元 (PDU) 获取电力。
  • 如果可能,请在您的数据中心中,将 PDU 放置在供电的不同阶段,甚至不同的公共事业公司提供的电源。
  • 请考虑使用不间断电源装置来确保网络交换机和服务器能够继续运行或在出现电源故障时能够有序关闭。

这些措施增强了针对可能影响您的网络交换机的软件、硬件或电源故障的弹性。

关于 IP 寻址的要点

绑定的 NIC 可以有一个或没有 IP 地址,如下所示:

  • 管理和存储网络

    • 如果您绑定管理接口或辅助接口,则系统会为绑定分配一个 IP 地址。即,每个 NIC 没有自己的 IP 地址。Citrix Hypervisor 将两个 NIC 视为一个逻辑连接。

    • 将绑定用于非 VM 流量(例如,用来连接到共享网络存储或 XenCenter 以进行管理)时,请为该绑定配置 IP 地址。但是,如果您已将 IP 地址分配给绑定中的某个 NIC(即,已创建管理接口或辅助接口),系统会自动将此 IP 地址分配给整个绑定。

    • 如果将管理接口或辅助接口绑定到无 IP 地址的 NIC,此绑定将使用相应接口的 IP 地址。

    • 如果绑定了带标记的 VLAN 管理接口和辅助接口,则将在该绑定 NIC 上创建管理 VLAN。

  • VM 网络。当绑定的 NIC 用于 VM 流量时,不需要为该绑定配置 IP 地址。这是因为绑定在 OSI 的第 2 层(即数据链路层)上运行,而此层上不使用 IP 地址。虚拟机的 IP 地址与 VIF 相关联。

绑定类型

Citrix Hypervisor 提供三种不同类型的绑定,所有绑定都可以使用 CLI 或 XenCenter 进行配置:

注意:

绑定设置为最高延迟 31000 毫秒,最低延迟 200 毫秒。最高延迟的时间看似有点长,但这是有意如此,因为某些交换机要启用端口需要花费一些时间。如果未设置延迟,链路在失败后恢复时,绑定会在交换机准备好传递流量之前重新平衡其上的流量。要将两个连接都移动到另外一台不同的交换机,请移动一个连接,等待 31 秒以便其再次使用,然后再移动另一连接。有关更改延迟的信息,请参阅更改绑定的最高延迟

绑定状态

Citrix Hypervisor 在每个主机的事件日志中提供绑定状态。如果绑定中的一个或多个链路发生故障或恢复,这一情况会记录在事件日志中。同样,可以使用下例中显示的 links-up 参数来查询绑定的链路状态:

xe bond-param-get uuid=bond_uuid param-name=links-up
<!--NeedCopy-->

Citrix Hypervisor 每隔 5 秒左右检查一次绑定中链路的状态。因此,如果绑定中的多个链路在五秒期限内出现故障,则将仅在下次检查状态时将此故障记录到日志中。

绑定事件日志在 XenCenter 的“日志”选项卡中显示。对于不运行 XenCenter 的用户,事件日志也会在每个主机上的 /var/log/xensource.log 中显示。

主动-主动绑定

主动-主动是适用于来宾流量的主动/主动配置,在此配置中,两个 NIC 可以同时路由 VM 流量。当绑定用于管理流量时,绑定中只有一个 NIC 可以路由流量,而另一个 NIC 将保持未使用状态并提供故障转移支持。启用 Linux 桥接或 vSwitch 网络堆栈时,主动-主动模式为默认绑定模式。

将主动-主动绑定与 Linux 桥接一起使用时,只能绑定两个 NIC。将 vSwitch 用作网络堆栈时,可以在主动-主动模式下绑定两个、三个或四个 NIC。但是,在主动-主动模式下,绑定三个或四个 NIC 仅对 VM 流量有利,如下图所示。

 此图显示了绑定四个 NIC 时如何仅使来宾流量受益。在最上图的管理网络中,NIC 2 处于主动状态,NIC 1、3 和 4 处于被动状态。对于 VM 流量,绑定中的全部四个 NIC 都处于活动状态。但是,这假定系统中至少存在四个 VM。对于存储流量,只有 NIC 11 处于活动状态。

当多个 MAC 地址与绑定关联时,Citrix Hypervisor 只能通过两个或更多 NIC 发送流量。Citrix Hypervisor 可以使用 VIF 中的虚拟 MAC 地址跨多个链路发送流量。特别说明:

  • VM 流量。假设您对仅传输 VM(来宾系统)流量的 NIC 启用绑定,则所有链路都处于活动状态,因而 NIC 绑定可以在各 NIC 之间平衡 VM 流量。单个 VIF 的流量从不在各 NIC 之间拆分。

  • 管理或存储流量。绑定中只有一个链路 (NIC) 处于活动状态,其他 NIC 保持未使用状态,除非将流量故障转移到这些 NIC。在绑定网络上配置管理接口或辅助接口可以提供恢复能力。

  • 混合流量。如果绑定的 NIC 同时传输基于 IP 的存储流量和来宾流量,则仅对来宾流量和控制域流量实施负载平衡。从本质上说,控制域是一个虚拟机,因此,它可以像其他来宾系统一样使用 NIC。Citrix Hypervisor 可以像以平衡 VM 流量一样平衡控制域的流量。

流量平衡

Citrix Hypervisor 将使用数据包的源 MAC 地址在 NIC 之间平衡流量。由于传输管理流量时仅呈现一个源 MAC 地址,因此,主动-主动模式仅使用一个 NIC,并且不平衡流量。流量平衡基于两个因素:

  • 虚拟机及其关联的发送或接收流量的 VIF

  • 发送的数据量(以 KB 为单位)。

Citrix Hypervisor 会评估每个 NIC 发送和接收的数据量(以 KB 为单位)。如果在一个 NIC 上发送的数据量超出在另一个 NIC 上发送的数据量,Citrix Hypervisor 会重新平衡各 VIF 使用的 NIC。系统将传输 VIF 的全部负载。一个 VIF 的负载从不在两个 NIC 之间拆分。

尽管主动-主动 NIC 绑定可以为来自多个 VM 的流量提供负载平衡,但是不能为单个 VM 提供两个 NIC 的吞吐量。任何给定 VIF 一次只能使用绑定中的一个链路。当 Citrix Hypervisor 定期重新平衡流量时,VIF 不会永久分配给绑定中的某个特定 NIC。

主动-主动模式有时称为源负载平衡 (SLB) 绑定,因为 Citrix Hypervisor 使用 SLB 在绑定的网络接口之间共享负载。SLB 派生自开源自适应负载平衡 (ALB) 模式并重复使用 ALB 功能在各 NIC 之间动态重新平衡负载。

重新平衡时,系统会跟踪给定时间段内通过每个辅助(接口)的字节数。如果要发送的数据包包含新的源 MAC 地址,该数据包会分配给具有最低利用率的辅助接口。系统会定期重新平衡流量。

每个 MAC 地址都有对应的负载,而且 Citrix Hypervisor 能够在 NIC 之间转移整体负载,具体情况取决于 VM 发送和接收的数据量。对于主动-主动流量,来自一个 VM 的所有流量只能在一个 NIC 上传输。

注意:

主动-主动绑定不要求交换机支持 EtherChannel 或 802.3ad (LACP)。

主动-被动绑定

主动-被动绑定仅通过其中一个 NIC 路由流量。如果主动 NIC 断开了网络连接,流量将故障转移到绑定中的另一个 NIC。主动-被动绑定通过主动 NIC 路由流量。如果主动 NIC 出现故障时,流量将转移到被动 NIC。

主动-被动绑定可在 Linux 桥接和 vSwitch 网络堆栈中可用。与 Linux 桥接一起使用时,您可以绑定两个 NIC。与 vSwitch 一起使用时,只能绑定两个、三个或四个 NIC。但是,无论流量类型为何,在主动-被动模式下绑定 NIC 时,只有一个链路处于活动状态,并且链路之间不会实施负载平衡。

下图显示了在主动-被动模式下配置的两个绑定的 NIC。

 此图显示了在主动-被动模式下绑定的两个 NIC。NIC 1 处于活动状态。此绑定包含一个连接到第二台交换机用于故障转移的 NIC。此 NIC 仅在 NIC 1 出现故障时使用。

主动-主动模式是 Citrix Hypervisor 中的默认绑定配置。如果要使用 CLI 配置绑定,则必须为主动-被动模式指定一个参数。否则,将创建主动-主动绑定。不必因为网络传输管理流量或存储流量而配置主动-被动模式。

主动-被动模式是获得恢复能力的良好选择,因为此模式可以提供多种优势。使用主动-被动绑定时,流量不会在 NIC 之间移动。同样,主动-被动绑定可以让您配置两台交换机以实现冗余,但不需要堆栈。如果管理交换机停机,堆栈交换机会成为单一故障点。

主动-被动模式不要求交换机支持 EtherChannel 或 802.3ad (LACP)。

当您不需要负载平衡或当您只希望在一个 NIC 上传输流量时,请考虑配置主动-被动模式。

重要:

在创建了 VIF 或者池投入使用之后,在对绑定进行更改或者创建绑定时一定要小心谨慎。

LACP 链路聚合控制协议绑定

LACP 链路聚合控制协议是一个绑定类型,它可将一组端口捆绑在一起,当作一个逻辑通道使用。LACP 绑定可以提供故障转移,并能增加可用带宽总量。

与其他绑定模式不同,LACP 绑定要求配置链路两端,也就是在主机上创建绑定,并在交换机上为每个绑定创建链路聚合组 (LAG)。请参阅 LACP 绑定的交换机配置。必须将 vSwitch 配置为网络堆栈,才能使用 LACP 绑定。此外,交换机还必须支持 IEEE 802.3ad 标准。

主动-主动 SLB 绑定和 LACP 绑定的比较:

主动-主动 SLB 绑定

优势:

  • 可以与硬件兼容性列表中的任何交换机结合使用。
  • 不要求交换机支持堆栈。
  • 支持四个 NIC。

注意事项:

  • 要实现最佳负载平衡,每个 VIF 至少要使用一个 NIC。
  • 存储或管理流量无法在多个 NIC 上拆分。
  • 负载平衡仅在有多个 MAC 地址时实施。

LACP 绑定

优势:

  • 无论流量类型为何,所有链路都可以处于活动状态。
  • 流量平衡不依赖于源 MAC 地址,因此,所有流量类型都可以平衡。

注意事项:

  • 交换机必须支持 IEEE 802.3ad 标准。
  • 要求在交换机端执行配置。
  • 仅支持 vSwitch。
  • 要求使用一台交换机或堆栈交换机。

流量平衡

Citrix Hypervisor 支持两个 LACP 绑定哈希类型。术语“哈希”指的是 NIC 和交换机分发流量的方式,分别为 (1) 基于源和目标地址的 IP 和端口的负载平衡和 (2) 基于源 MAC 地址的负载平衡。

根据哈希类型和流量模式,LACP 绑定有可能比主动-主动 NIC 绑定更均匀地分发流量。

注意:

可以在主机和交换机上分别为传出和传入流量配置设置,而且两端的配置不一定匹配。

基于源和目标地址的 IP 和端口的负载平衡

此哈希类型是默认的 LACP 绑定散列算法。如果源或目标 IP 或端口号有变化,来自一个来宾的流量则可以通过两个链路分发。

如果一个虚拟机正在运行多个应用程序,而且每个应用程序都使用不同的 IP 或端口号,此哈希类型就可以通过多个链路分发流量。分发流量将使来宾能够使用聚合吞吐量。此哈希类型可以让一个来宾使用多个 NIC 的整体吞吐量。

如下图所示,此哈希类型能够将虚拟机上两个不同应用程序的通信分布到两个不同 NIC 上。

此图显示,如果使用 LACP 绑定并启用将基于源和目标的 IP 与端口的负载平衡作为哈希类型的 LACP,则来自 VM1 上的两个不同的应用程序的流量可以分发到两个 NIC 上。

当您希望平衡同一 VM 上两个不同应用程序的流量时,根据源和目标地址的 IP 和端口配置 LACP 绑定很有用。例如,只将一个虚拟机配置为使用三个 NIC 的绑定。

 此图显示,如果使用 LACP 绑定并启用将基于源和目标 IP 与端口的负载平衡作为哈希类型的 LACP,Citrix Hypervisor 能够通过绑定中的三个 NIC 中的一个 NIC 传输虚拟机中每个应用程序的流量,即使 NIC 数量超过 VIF 数量亦如此。

此哈希类型的平衡算法使用五个因素在 NIC 上分发流量,即源 IP 地址、源端口号、目标 IP 地址、目标端口号和源 MAC 地址。

基于源 MAC 地址的负载平衡

当同一主机上有多个虚拟机时,这种类型的负载平衡运行良好。通信平衡根据发起通信的 VM 的虚拟 MAC 地址实施。Citrix Hypervisor 使用同一算法发送传出流量,就像在主动-主动绑定模式下一样。来自同一来宾系统的流量不会在多个 NIC 之间拆分。因此,如果 VIF 的数量少于 NIC,此哈希类型不适合使用,原因是由于流量无法在 NIC 之间拆分,负载平衡达不到最佳效果。

 此图显示,如果使用 LACP 绑定并启用将基于源 MAC 地址作为哈希类型的 LACP,则当 NIC 的数量超过 VIF 的数量时,将不使用所有 NIC。由于存在三个 NIC 和两个 VM,因此,同时只能使用两个 NIC。因此,不能实现最大绑定吞吐量。来自一个 VM 的数据包无法在多个 VM 之间拆分。

交换机配置

根据您的冗余需求,可以将绑定中的每个 NIC 连接到同一个或不同的堆栈交换机。如果将其中一个 NIC 连接到另一个冗余的交换机,则在某个 NIC 或交换机出现故障时,流量将故障转移到另一个 NIC。添加第二个交换机可以通过以下方式防止配置中出现单点故障:

  • 将绑定管理接口中的其中一个链路连接到第二个交换机时,如果此交换机出现故障,管理网络依然保持联机,并且主机仍然能够相互通信。

  • 将一个链路(适用于任何流量类型)连接到第二个交换机时,如果 NIC 或交换机出现故障,虚拟机将仍保持在网络上,因为其流量会故障转移到另一个 NIC/交换机。

希望将绑定的 NIC 连接到多个交换机并且已配置 LACP 绑定模式时,请使用堆栈交换机。术语“堆栈交换机”指的是将多个物理交换机配置为一个逻辑交换机。必须根据交换机制造商提供的指南,利用交换机管理软件,以物理方式将交换机连接在一起,使多个交换机作为一个逻辑交换装置运行。通常情况下,交换机堆栈仅通过专有扩展实现,而且交换机供应商可能会使用不同的术语宣传此功能。

注意:

如果使用主动-主动绑定时遇到问题,可能需要使用堆栈交换机。主动-被动绑定不需要堆栈交换机。

下图显示了绑定 NIC 的电缆和网络配置必须如何匹配。

 此图说明一个绑定对中的两个 NIC 如何使用相同的网络设置(由每个主机中的网络表示)。绑定中的 NIC 将连接到不同的交换机以实现冗余。

LACP 绑定的交换机配置

由于交换机配置的具体详情因制造商而异,因此,配置交换机以便与 LACP 绑定结合使用时,需要记住几个关键点:

  • 交换机必须支持 LACP 和 IEEE 802.3ad 标准。

  • 在交换机上创建 LAG 组时,必须为主机上的每个 LACP 绑定创建一个 LAG 组。例如,如果有一个五主机池,并且已在每个主机上的 NIC 4 和 5 上创建了 LACP 绑定,则必须在交换机上创建五个 LAG 组。每个端口集的一个组对应于主机上的 NIC。

    可能还需要将 VLAN ID 添加到 LAG 组中。

  • Citrix Hypervisor LACP 绑定要求将 LAG 组中的“静态模式”设置设为“已禁用”。

如先前在交换机配置中提及的一样,需要通过堆栈交换机将 LACP 绑定连接到多个交换机。

设置后的初始网络连接配置

Citrix Hypervisor 服务器网络连接配置是在主机初始安装期间指定的。IP 地址配置(DHCP/静态)、用作管理接口的 NIC 和主机名等选项是根据安装期间提供的值设置的。

当主机包含多个 NIC 时,安装后进行的配置取决于安装期间选择用于管理操作的 NIC:

  • 为主机中的每个 NIC 创建 PIF

  • 使用安装期间指定的 IP 地址选项配置选择用作管理接口的 NIC 的 PIF

  • 为每个 PIF 创建一个网络(“network 0”、“network 1”等)

  • 将每个网络分别连接到一个 PIF

  • 除用作管理接口的 PIF 外,IP 寻址选项对所有 PIF 都保留未配置

当主机包含单个 NIC 时,安装后将进行以下配置:

  • 创建对应于该主机的单个 NIC 的一个 PIF

  • 使用安装期间指定的 IP 地址选项配置 PIF 并启用主机的管理

  • 设置 PIF 以用于主机管理操作

  • 创建单个网络,即网络 0

  • 将网络 0 连接到 PIF 以启用到 VM 的外部连接

在带标记的 VLAN 网络中完成安装 Citrix Hypervisor 时,安装后将存在以下配置:

  • 为主机中的每个 NIC 创建 PIF

  • 使用安装期间指定的 IP 地址配置来配置选择用作管理接口的 NIC 上的带标记的 VLAN 的 PIF

  • 为每个 PIF 创建一个网络(例如:network 1、network 2 等)。创建其他 VLAN 网络(例如,为池范围内与 VLAN<TAG> 上的 eth0 关联的网络)

  • 将每个网络分别连接到一个 PIF。设置 VLAN PIF 以用于主机管理操作

在这两种情况下,生成的网络连接配置允许 XenCenter、xe CLI 及任何其他在独立计算机上运行的管理软件通过管理接口的 IP 地址连接到 Citrix Hypervisor 服务器。配置还为在主机上创建的 VM 提供外部网络连接。

用于管理操作的 PIF 是在 Citrix Hypervisor 安装期间唯一使用 IP 地址配置的 PIF。VM 的外部网络连接通过使用网络对象(用作虚拟以太网交换机)将 PIF 桥接到 VIF 来实现。

网络连接功能(例如 VLAN、NIC 绑定和将 NIC 专用于存储流量)的步骤将在后面各节中介绍。

更改网络连接配置

可以通过修改网络对象,更改网络连接配置。为此,请运行影响网络对象或 VIF 的命令。

修改网络对象

可以更改网络的各个方面,例如帧大小 (MTU)、名称标签、名称说明、用途和其他值。请使用 xe network-param-set 命令及其相关联的参数来更改值。

运行 xe network-param-set 命令时,唯一必需参数是 uuid

可选参数为:

如果未给出参数的值,请将该参数设置为空值。要在映射参数中设置(键,值)对,请使用语法 map-param:key=value

更改绑定的最高延迟

默认情况下,为绑定设置 31000 毫秒的最高延迟,以免流量在出现故障后重新平衡到 NIC 上。虽然看似较长,但最高延迟对于所有绑定模式都非常重要,而不仅限于主动-主动模式。

但是,如果了解为环境选择的相应的设置,可以使用下面的过程更改绑定的最高延迟。

设置最高延迟(毫秒):

xe pif-param-set uuid=<uuid of bond master PIF> other-config:bond-updelay=<delay in ms>
<!--NeedCopy-->

要使更改生效,必须拔出物理接口,然后重新插入:

xe pif-unplug uuid=<uuid of bond master PIF>
<!--NeedCopy-->
xe pif-plug uuid=<uuid of bond master PIF>
<!--NeedCopy-->
网络连接