upsync_dump_path
Указывает путь к файлу, в который будет выгружена конфигурация upstream-сервера.
Описание
Директива upsync_dump_path используется в контексте блока upstream в NGINX для настройки синхронизации upstream-серверов с внешними сервисами, такими как Consul или etcd. Когда 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 не сможет создать дамп конфигурации, если только он не сможет создать файл; убедитесь, что родительский каталог существует.
Многократные обновления файла могут привести к исчерпанию дескрипторов файлов, если этим не управлять должным образом.