多宿主 Linux 主机上每个 NIC 的路由表

多宿主 Linux 主机上每个 NIC 的路由表

我有一个客户端应用程序,需要 5 个 9 的可用性。为了在 NIC 级别提供冗余,理论上如果 Linux 主机可以有 2 个 NIC 卡,并且都配置为使用不同的网关,这听起来不错。因此,在图中它看起来像

客户端 A->NIC1------------->网关 1------------> 服务器

客户端 A->NIC2------------->网关 2------------->服务器

这将确保如果网关 1 崩溃,客户端 A 仍然可以通过网关 2 访问服务器

我的问题是:-

同一主机上的 2 个 NIC 是否可以配置不同的网关?上图中的 NIC1 是否可以配置备份网关 2,这样如果网关 1 崩溃,NIC1 可以使用备份网关 2。如果上述方法可行,那么 Linux 文件中的配置会是什么样的?

答案1

不,这是个坏主意。在每个级别提供冗余。在 NIC 级别使用 LACP/聚合。在网关使用 HSRP 或 CARP。每个网关都应该有自己的一组冗余 NIC。中间的网络应该有冗余段(交换机或您的网络由其组成的任何东西)。沿途的每一部分都应该有冗余,而不仅仅是两条冗余路径。

您所要求的高可用性非常困难。请找一个对这方面了如指掌的人,否则您永远无法达到 5 个 9。这意味着每年大约有 5 分钟的停机时间。这比听起来要难得多。

答案2

您的设计从根本上就不符合您所述的目的。不要实现它。
如果您实现了它,请不要承诺 5 个 9 的可用性。
如果您实现了它并承诺 5 个 9 的可用性,请出色的律师。你需要一个。


正如 ChrisS 所说,你需要**在每个层面提供冗余*。这至少意味着:

  • 互联网的冗余上行连接(由您的 ISP 提供)
  • 冗余 UPS 和发电机供电(由您的 ISP 提供)
  • 冗余网关/虚拟路由器(由您的 ISP 提供)
  • 从 ISP 核心到服务器的冗余、物理上独立的路径(由您的 ISP 提供)
  • 冗余防火墙和负载平衡设备(由您提供,但您的 ISP 也可能提供)
  • 冗余交换设备(由您提供,但您的 ISP 也可以提供)
  • 冗余服务器[由您提供,最好具有冗余子系统:ECC RAM、RAID、双电源]。

请注意,此列表并不详尽(例如,我没有提到冷却)。

您还需要明确定义您的正常运行时间的衡量标准 - 5 个九 24x7x365 几乎不可能实现。不包括定期维护的 5 个九要合理得多。合同的具体性将意味着获得巨额利润和被起诉之间的区别。


直接回答您的问题:

Can the 2 NICs on the same host be configured with different gateways?
是的。这叫做多宿主主机并且是几种可能的实现之一。但实际上,要按照您想要的方式工作,需要做的不仅仅是将两个“默认”(0.0.0.0/0) 路由放入路由表中。

Can NIC1 in the above diagram be configured with a backup gateway2, so that if gateway 1 crashes, NIC1 can use backup gateway2?
不。与...NIC1无关gateway2

相关内容