![NLB 港口规则 - 装载重量 100](https://linux22.com/image/514957/NLB%20%E6%B8%AF%E5%8F%A3%E8%A7%84%E5%88%99%20-%20%E8%A3%85%E8%BD%BD%E9%87%8D%E9%87%8F%20100.png)
NLB 允许管理员设置一个节点来处理特定端口的 100% 负载。如果该节点发生故障,是否会因为端口规则而没有其他节点来处理该请求?
答案1
不一定 - 只要集群中至少有 1 个其他节点的权重大于 0,该节点就可以承担集群的所有流量。如果所有节点的权重均为 0,则集群的流量确实会停止。权重为 0 基本上会阻止该节点承担任何流量,即使在其他节点发生故障的情况下也是如此。
之所以可能出现这种情况,是因为权重不等于该节点将承担的实际流量百分比。如果您愿意,可以将所有节点的权重设置为 100。确定节点将承担多少权重的实际计算是:
(node weight) / ( sum of all active node weights)
因此,在 2 节点集群设置中,节点 1:100 和节点 2:0,常规操作会将所有流量放到节点 1,节点 1 的故障将导致集群故障。
在 2 节点集群设置中,节点 1:100,节点 2:50,一般操作会将 66% 的流量发送到节点 1,将 33% 的流量发送到节点 2。如果节点 1 发生故障,则 100% 的流量将转到节点 2,如果节点 2 发生故障,则反之亦然。
答案2
听起来你想要单主机过滤节点。这会将 100% 的流量放在你选择的服务器上,如果该服务器发生故障,则会将故障转移到其他服务器。