add_upstream
指令 `add_upstream` 允许通过添加预定义的 upstream 服务器来配置 upstream,并包含用于自定义的可选参数。
NGINX Combined Upstreams module
·
upstream
语法add_upstream upstream_name [weight=N] [backup];
默认值none
上下文upstream
参数1-3
说明
add_upstream 指令是 NGINX Combined Upstreams 模块 的一部分,并在 upstream 块内使用,用于合并通过其现有配置定义的额外 upstream 服务器。其主要功能是通过引用其他 upstream 配置来扩展当前 upstream 的服务器池,其中第一个参数为必需,用于指定要添加的 upstream。它为重用 upstream 定义提供了一种方式,同时保留它们的属性,例如权重和失败次数。
除了必需的 upstream 名称外,该指令还接受可选参数。可以添加 backup 参数,将所有被添加的 upstream 服务器标记为备份服务器,确保仅在常规服务器不可用时使用它们。weight=N 参数允许您通过乘法因子修改被引用 upstream 中服务器的初始权重,从而在多个 upstream 之间实现精细的负载均衡。该功能对于通过利用预定义的 upstream 配置而无需在多个 upstream 指令之间完全复制配置来扩展服务尤其有用。
总体而言,add_upstream 指令增强了 NGINX 配置的模块化和可管理性,使管理员能够构建复杂的 upstream 架构,而无需在配置代码中重复。
配置示例
upstream combined {
add_upstream upstream1; # Add upstream 1
add_upstream upstream2 weight=2; # Add upstream 2 with weight factor
server some_another_server; # Additional server if needed
add_upstream upstream3 backup; # Add upstream 3 as a backup
}⚠
确保在使用 add_upstream 之前已定义所引用的上游。
⚠
如果未在配置中适当记录,结合使用 weight 和 backup 可能会导致混淆。
⚠
过于复杂的上游定义会影响性能并使调试变得困难。尽可能简化。