ngx_http_upstream_conf_module
Module ngx_http_upstream_conf_module
- 示例配置
- 指令
- upstream_conf
该ngx_http_upstream_conf_module
模块允许通过简单的HTTP接口即时配置上游服务器组,而无需重新启动nginx。http或流服务器组必须驻留在共享内存中。
该模块已被1.13.0中的ngx_http_api_module模块取代。此模块可作为我们商业订阅的一部分。
示例配置
upstream backend {
zone upstream_backend 64k;
...
}
server {
location /upstream_conf {
upstream_conf;
allow 127.0.0.1;
deny all;
}
}
指令
句法: | upstream_conf; |
---|---|
默认: | — |
语境: | 位置 |
在周围位置打开上游配置的HTTP接口。访问这个位置应该是有限的。
配置命令可以用来:
- 查看组配置;
- 查看,修改或删除服务器;
- 添加一个新的服务器。
由于组中的地址不必是唯一的,因此组中的特定服务器将通过其ID进行引用。在添加新服务器或查看组配置时,会自动分配ID并显示ID。
配置命令由作为请求参数传递的参数组成,例如:
http://127.0.0.1/upstream_conf?upstream=backend
支持以下参数:
stream=
选择一个流上游服务器组。如果没有此参数,请选择一个http上游服务器组。upstream=name
选择要使用的组。该参数是强制性的。id=number
选择用于查看,修改或删除的服务器。remove=
从组中删除服务器。add=
向该组添加新的服务器。backup=
需要添加备份服务器。
在版本1.7.2之前,
backup=
还需要查看,修改或删除现有的备份服务器。
server=address
与address
http或流上游服务器的“ ”参数相同。
添加服务器时,可以将其指定为域名。在这种情况下,与域名对应的IP地址的更改将被监控并自动应用到上游配置,而不需要重新启动nginx(1.7.2)。这需要resolver
http或流块中的“ ”指令。另请参阅resolve
http或流上游服务器的“ ”参数。
service=name
与service
http或流上游服务器(1.9.13)的“ ”参数相同。weight=number
与weight
http或流上游服务器的“ ”参数相同。max_conns=number
与max_conns
http或流上游服务器的“ ”参数相同。max_fails=number
与max_fails
http或流上游服务器的“ ”参数相同。fail_timeout=time
与fail_timeout
http或流上游服务器的“ ”参数相同。slow_start=time
与slow_start
http或流上游服务器的“ ”参数相同。down=
与down
http或流上游服务器的“ ”参数相同。drain=
将http上游服务器置于“排空”模式(1.7.5)。在这种模式下,只有绑定到服务器的请求才会被代理。up=
与“down
“http或流上游服务器的参数。route=string
与route
http上游服务器的“ ”参数相同。
前三个参数选择一个对象。这可以是整个http或流上游服务器组或特定服务器。如果没有其他参数,将显示所选组或服务器的配置。
例如,要查看整个组的配置,请发送:
http://127.0.0.1/upstream_conf?upstream=backend
要查看特定服务器的配置,还需指定其ID:
http://127.0.0.1/upstream_conf?upstream=backend&id=42
要添加新服务器,请在“ server=
”参数中指定其地址。没有指定其他参数,服务器将添加其他参数设置为其默认值(请参阅http或流“ server
”指令)。
例如,要添加新的主服务器,请发送:
http://127.0.0.1/upstream_conf?add=&upstream=backend&server=127.0.0.1:8080
要添加新的备份服务器,请发送:
http://127.0.0.1/upstream_conf?add=&upstream=backend&backup=&server=127.0.0.1:8080
要添加新的主服务器,请将其参数设置为非默认值并将其标记为“ down
”,发送:
http://127.0.0.1/upstream_conf?add=&upstream=backend&server=127.0.0.1:8080&weight=2&down=
要删除服务器,请指定其ID:
http://127.0.0.1/upstream_conf?remove=&upstream=backend&id=42
要将现有服务器标记为“ down
”,请发送:
http://127.0.0.1/upstream_conf?upstream=backend&id=42&down=
要修改现有服务器的地址,请发送:
http://127.0.0.1/upstream_conf?upstream=backend&id=42&server=192.0.2.3:8123
要修改现有服务器的其他参数,请发送:
http://127.0.0.1/upstream_conf?upstream=backend&id=42&max_fails=3&weight=4
以上示例适用于http上游服务器组。流上游服务器组的类似示例需要“ stream=
”参数。