upsync_dump_path

指定将 upstream 服务器配置转储到的文件路径。

语法upsync_dump_path path;
默认值none
上下文upstream
参数1

说明

upsync_dump_path 指令用于 NGINX 的 upstream 块中,用来配置从 Consul 或 etcd 等外部服务进行的 upstream 服务器同步。当通过定义的同步机制动态修改 upstream 服务器时,当前的服务器配置会自动转储到文件系统中指定的路径。这样可以更方便地管理和审计 upstream 服务器设置,而无需重新加载整个 NGINX 配置。如果设置了该项,NGINX 每当检测到 upstream 服务器配置有变更时,都会把配置写入指定的文件路径,确保最新的服务器设置被准确记录并可供日后参考或调试。

upsync_dump_path 的参数是一个字符串,表示要保存配置的文件路径。重要的是 NGINX 工作进程必须具有向该指定路径写入的权限,才能成功创建或覆盖该位置的配置文件。文件权限配置错误可能导致写入失败或更新失败,从而导致服务器配置过时并可能引发停机。

配置示例

http {
    upstream backend {
        upsync 127.0.0.1:8500/v1/kv/upstreams/test/ upsync_timeout=6m upsync_interval=500ms;
        upsync_dump_path /usr/local/nginx/conf/servers/servers_test.conf;
        include /usr/local/nginx/conf/servers/servers_test.conf;
    }

    server {
        listen 80;
        location / {
            proxy_pass http://backend;
        }
    }
}

确保 NGINX 工作进程对指定的文件路径具有写权限。

如果指定的路径不存在,NGINX 将无法转储配置,除非它能够创建该文件;请确保父目录存在。

如果未正确管理,对该文件的重复更新可能导致文件描述符耗尽。

← 返回所有指令