我已经问了自己这个问题好几天了,经过大量搜索后,我还是无法找到一个可以理解的答案,甚至连一个在我脑子里能理解的理论答案都没有。
我正在研究 Mac 托管的解决方案,我想知道是否可以向 Mac 添加雷电以太网卡并将它们绑定到 VLAN,从而半解决机器的带宽瓶颈问题,以提高对数据库或外部存储的访问速度。
例如:将两张以太网卡插入 Mac Mini,将它们绑定并形成一个具有 2 Gb/s 带宽的 VLAN。
答案1
简而言之,不是的,它们是不同的:
- 使用 10 GbE 接口,您可以获得 10 Gb/s 的带宽即使对于单个连接
- 使用 10 个 1GbE 接口(并使用 802.ad 协议),单个连接/会话仅限于 1 Gb/s。另一方面,你可以同时服务 10 个会话每个带宽为 1 Gb/s
换句话说,绑定通常不会提高单个连接的速度。唯一的例外是 Linux 绑定类型 0(balance-rr),它以循环方式发送数据包,但它有明显的缺点和有限的扩展性。有关实际示例,请看这里
答案2
通过 x10 1gb/s 端口达到 10gb/s
我回答只是为了完整性,并为您省去一些麻烦。 我有超过 2 万台服务器在做类似的事情,我可以告诉你这不是一个好主意。这种方法增加了许多复杂性,以后会导致操作问题。我们每台服务器使用 4 个 1gb 网卡。当时这实际上比使用 10gig 更有意义。当时,到处使用 10gig 的成本是原来的很多倍,但收益却很少。我们最近对数据中心的迭代不再这样做了。
LACP 债券 (模式 4) 和单个 LAG 伙伴将为您提供 10gb/s,几乎与单个 10gb/s 端口相同。这实际上可以使用多个交换机来实现,但它们必须支持 MLAG,否则您只能连接到一个交换机。如果他们不支持 MLAG,那么您只能获得 1 个交换机的带宽。其他接口将处于待机状态。(因此,如果您有 2 个交换机,则为 5gb/s)。
单个连接仅使用一个链路,但如果需要,您可以在第 7 层根据需要拆分流量,或者您可以研究 MPTCP,但对 MPTCP 的支持是最近内核中的新功能,我不确定它是否已准备好迎接黄金时段。您可以使用 LFTP+SFTP 和 LFTP 的镜像子系统拆分数据同步。它甚至可以将一个文件拆分为多个流。还有 bittorrent。
从客户端的角度来看,您将无法在这些端口上执行 DHCPPXE 启动操作系统安装程序除非你在服务器端强制启动 eth0,这在技术上会破坏 LACP 监控。这是可以做到的,但不应该这样做,而且它将要如果强制打开接口,则故障排除将更加困难。
在您的绑定配置中,您必须生成一个不同于所有物理接口的唯一 MAC 地址,否则您将因 PXE/DHCP 的工作方式而出现竞争条件(假设您的设置中有 DHCP/PXE)。网上有很多关于如何动态生成唯一 bond0 MAC 的示例。
这还需要在交换机端进行与每台服务器绑定配置一致的配置。您需要安装 LLDP 守护程序,以减少故障排除的麻烦,并在交换机上启用 LLDP。
如果这样做,您的布线和标签必须完美无缺。您的交换机自动化必须可靠。一条电缆偏移将混合 2 个服务器,这将导致非常有趣的问题。
感谢 IBM 的 Jay,他编写了如此出色的绑定代码,并帮助我们弄清楚如何让 DHCP 在此配置下工作。
答案3
视情况而定。如果主流量协议具有内置多路径负载平衡,例如 iSCSI,则效果很好。绑定存在许多其他问题,其他答案已经描述了这些问题。