nginx балансер proxy pass разделить конфиги при балансе
shambler81
nginx-forum at nginx.us
Thu Aug 21 15:11:24 UTC 2014
Добрый день уважаемые коллеги, встал вопрос подключить балансный сервер
фактически старый сервер на который заходят НС сервера будет в роли
резервного. Новый сервер на котором все так же настроено будет выступать
просто как приоритентый в балансе бэкэнд, если сервер отвалится то сайт
отдается со старого серве. Баланс работает как на статику так и на
proxy_pass
Nginx расположен на старом. считаем что он не падает.
правильно ли я понимаю ?
1. Добавляем
http {
upstream myapp1 {
least_conn;
server srv1.example.com;
server srv2.example.com;
}
Далее я просто подставляю в proxy_pass myapp1
Так ?
А что делать если мне нужно изменить и правила для статики, внести
изменения в @failback в общем по хорошему подставить другой файл конфига ?
Более полный конфиг
__________________
http {
upstream myapp1 {
server 10.1.119.36:8080;
server mysite.ru:8080
}
server {
listen 10.1.119.36:80;
server_name kredo-m.nichost.ru www.mysite-m.ru xn----gtbctnkl.xn--p1ai
mysite-m.ru www.xn----gtbctnkl.xn--p1ai www.mysite-m.mysite.ru
mos.mysite-m.ru;
location / {
proxy_pass myapp1
proxy_redirect http://mysite-m.mysite.ru:8080/ /;
proxy_redirect http://www.mysite-m.ru:8080/ /;
proxy_redirect http://xn----gtbctnkl.xn--p1ai:8080/ /;
proxy_redirect http://mysite-m.ru:8080/ /;
proxy_redirect http://www.xn----gtbctnkl.xn--p1ai:8080/ /;
proxy_redirect http://www.mysite-m.mysite.ru:8080/ /;
proxy_redirect http://mos.mysite-m.ru:8080/ /;
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
client_max_body_size 192m;
client_body_buffer_size 128k;
proxy_connect_timeout 90;
proxy_send_timeout 900;
proxy_read_timeout 900;
proxy_buffer_size 64k;
proxy_buffers 8 32k;
proxy_busy_buffers_size 64k;
proxy_temp_file_write_size 64k;
}
# 1
# Static files location
location ~*
^.+\.(jpg|jpeg|gif|swf|png|ico|mp3|css|zip|tgz|gz|rar|bz2|doc|xls|exe|pdf|dat|avi|ppt|txt|tar|mid|midi|wav|bmp|rtf|wmv|mpeg|mpg|mp4|m4a|spx|ogx|ogv|oga|webm|weba|ogg|tbz|js)$
{
root /home/kredo-m/mysite-m.mysite.ru/docs;
access_log /var/log/mysite-m.mysite.ru.access_log combined;
error_page 404 = @fallback;
log_not_found off;
# on
accel_htaccess_switch on;
}
location @fallback {
proxy_pass myapp1;
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
client_max_body_size 192m;
client_body_buffer_size 128k;
proxy_connect_timeout 90;
proxy_send_timeout 900;
proxy_read_timeout 900;
proxy_buffer_size 64k;
proxy_buffers 8 32k;
proxy_busy_buffers_size 64k;
proxy_temp_file_write_size 64k;
}
}
Posted at Nginx Forum: http://forum.nginx.org/read.php?21,252737,252737#msg-252737
Подробная информация о списке рассылки nginx-ru