了解 IP 哈希负载平衡
search cancel

了解 IP 哈希负载平衡

book

Article ID: 301348

calendar_today

Updated On:

Products

VMware vSphere ESXi

Issue/Introduction

免责声明:本文为 Understanding IP Hash load balancing (2006129) 的翻译版本。尽管我们会不断努力为本文提供最佳翻译版本,但本地化的内容可能会过时。有关最新内容,请参见英文版本。


本文介绍了与原始端口 ID 负载平衡相比,使用 IP 哈希网卡负载平衡的优缺点。

Environment

VMware ESXi 3.5.x Embedded
VMware vSphere ESXi 6.5
VMware ESXi 4.1.x Installable
VMware vSphere ESXi 5.1
VMware vSphere ESXi 5.0
VMware vSphere ESXi 6.0
VMware ESX 4.0.x
VMware ESXi 4.0.x Embedded
VMware ESXi 4.1.x Embedded
VMware ESX 4.1.x
VMware vSphere ESXi 5.5
VMware ESXi 4.0.x Installable
VMware ESXi 3.5.x Installable
VMware ESX Server 3.5.x

Resolution

对于默认的 ESXi/ESX 主机虚拟交换机,在拥有两个或多个上行链路 (VMNIC) 时,网卡绑定部分将起关键作用。要在 vSphere 标准交换机上确定当前的负载平衡配置,请执行以下操作:
  • 使用 vSphere Client 导航到主机和群集 > 您的主机名称 > 配置选项卡。
  • 单击虚拟交换机的属性
  • 单击 vSwitch,单击编辑,然后导航到网卡绑定选项卡。


基于原始端口 ID 的路由

这是默认情况下 vSphere 标准交换机和 vSphere Distributed Switch 上使用的负载平衡方法。如果此策略生效,则每个虚拟网卡或 VMkernel 端口仅可使用一个 VMNIC(物理网卡)。如果网卡的链路断开,则会将虚拟网卡和 VMkernel 端口重新分配到已连接的其余网卡,并且主机会将通告发送到物理交换机以确保更新 MAC 地址表。

如果将一个成组中的所有网卡都设置为活动状态,则所有网卡都将用于虚拟机或 VMkernel 流量。

优点
  • 简单的物理交换机配置。无需任何链路绑定 (EtherChannel)。仅独立的交换机端口需要配置。
  • 网络适配器冗余。即使当所有网卡都处于正在使用状态,如果某个网卡出现故障,成组中的其余网卡也将继续传递流量。
  • 成组中的链路可跨硬件故障冗余的多个物理交换机进行传播。
  • 链路状态和信号探测故障切换检测方法可与此类型负载平衡一起使用。
  • 在具有多个虚拟机的环境中,跨所有活动网卡传播负载以获得更佳的性能。
缺点
  • 单个虚拟网卡可以使用多个物理网卡的带宽。例如,如果成组中有 4 个 1 Gb 网卡,则具有单个虚拟网卡的虚拟机无法通过单个适配器使用超过 1 Gb 的带宽。


基于 IP 哈希的路由

基于 IP 哈希的路由的运行方式是获取源和目标 IP 地址,然后在每个数据包上执行数学计算以确定要使用成组中的哪个上行链路。由于负载平衡基于源/目标 IP 地址,因此单个虚拟机与多个 IP 地址通信可以跨成组中的所有网络适配器平衡其负载,并更好的利用可用带宽。

基于 IP 哈希的路由负载平衡需要多个已组合到 EtherChannel(有时也称为聚合绑定、端口通道或中继)中的物理交换机端口。这确保了同一哈希算法用于返回相反方向的流量。

优点
  • 单个虚拟机与多个虚拟机通信的情况下的性能已提高。理论上,虚拟机可使用超过一个物理网卡所提供的带宽。
  • 网络适配器冗余:如果网卡出现故障,并且链路状态已断开,则成组中的其余网卡将继续传递流量。为了使链路状态正常运行,物理交换机和 ESXi 主机都必须将链路识别为断开。如果存在出入,则无法将流量故障切换到成组中的其他适配器。
缺点
  • 物理交换机配置较不灵活,并且需要为静态 EtherChannel 绑定配置物理交换机端口。有关详细信息,请参见 Sample configuration of EtherChannel / Link Aggregation Control Protocol (LACP) with ESXi/ESX and Cisco/HP switches (1004048)
  • 网卡组仅可使用一个物理交换机,因为大多数交换机都不支持跨多个物理交换机的 EtherChannel 绑定。这将防止物理硬件冗余。

    注意:存在一些例外情况,因为某些“堆栈”交换机或模块交换机可跨多个物理交换机或模块执行此操作。Cisco 的 VPC(虚拟端口通道)技术也可在受支持的交换机上解决此问题。有关详细信息,请联系您的硬件供应商。

  • IP 哈希不支持信号探测。仅可将链路状态用作故障检测方法。如果链路在其没有断开的情况下出现故障,则无法避免 vSwitch 上的网络通信问题。
  • 标准 vSwitch 仅支持静态模式 EtherChannel。LACP 仅在 vSphere 5.1 的 vSphere Distributed Switch 中或 Cisco Nexus 1000V 中受支持。


Additional Information

有关详细信息,请参见 VMware 支持内部博客中的以下贴子: Understanding IP Hash load balancing