Nginx sem memória, não carregando novos vhosts?

1

Estou tendo um nginx rodando no debian. O Nginx será recarregado a cada 2 minutos para buscar vhosts recém-criados. Depois de um tempo, novos vhosts não estavam mais carregando, mas vhosts antigos continuavam sendo servidos pelo nginx

No meu log de erros do nginx, posso encontrar vários erros.

2014/08/10 06:30:05 [alert] 27891#0: epoll_ctl(1, 4) failed (9: Bad file descriptor)
2014/08/10 06:30:05 [alert] 27892#0: close() channel failed (9: Bad file descriptor)
2014/08/10 06:30:05 [alert] 27893#0: close() channel failed (9: Bad file descriptor)
2014/08/10 06:30:19 [alert] 4806#0: worker process 27891 exited with fatal code 2 and can not be respawn
2014/08/10 06:30:19 [alert] 4806#0: sendmsg() failed (9: Bad file descriptor)
2014/08/10 06:30:05 [alert] 27894#0: close() channel failed (9: Bad file descriptor)
2014/08/10 06:30:20 [alert] 4806#0: sendmsg() failed (9: Bad file descriptor)
2014/08/10 06:30:20 [alert] 4806#0: sendmsg() failed (9: Bad file descriptor)
2014/08/10 06:30:20 [alert] 4806#0: sendmsg() failed (9: Bad file descriptor)
2014/08/10 06:30:20 [alert] 4806#0: sendmsg() failed (9: Bad file descriptor)

Eu tentei encontrar uma solução no passado e acabei adicionando

worker_rlimit_nofile 300000;

Mas parece que isso não funcionou.

Tenho a sensação de que minha caixa fica sem memória em algum momento, mas não totalmente certa.

Reiniciar o nginx corrigiu o problema, mas temo que eu possa me deparar com isso novamente depois de um tempo.

Outra coisa estranha que eu vi é, depois de reiniciar o nginx, o swap simplesmente desapareceu nas minhas estatísticas. (veja screenshots).

Casovocêqueiravermeunginx.conf,aquiestá:

userwww-data;worker_processes4;worker_rlimit_nofile300000;error_log/var/log/nginx/error.log;pid/var/run/nginx.pid;events{worker_connections2000;#multi_accepton;}http{include/etc/nginx/mime.types;server_names_hash_max_size812000;geoip_country/etc/nginx/geoip/GeoIP.dat;#thecountryIPdatabasegeoip_city/etc/nginx/geoip/GeoLiteCity.dat;#thecityIPdatabaselog_formatwithhost'$host-$remote_addr-$remote_user[$time_local]''"$request" $status $body_bytes_sent '
                    '"$http_referer" "$http_user_agent"';

#    access_log /var/log/nginx/access.log withhost;

#    set_real_ip_from   141.101.64.0/18;
#    set_real_ip_from   108.162.192.0/18;
#    set_real_ip_from   190.93.240.0/20;
#    set_real_ip_from   2400:cb00::/32;
#    set_real_ip_from   2606:4700::/32;
    set_real_ip_from   69.164.223.55;
    set_real_ip_from   212.123.14.6;
    set_real_ip_from   192.168.255.17;
    real_ip_header    X-Forwarded-For;

    sendfile        on;
    #tcp_nopush     on;

    #keepalive_timeout  0;
    keepalive_timeout  65;
    tcp_nodelay        on;

    server_tokens off;

    gzip  on;
    gzip_disable "MSIE [1-6]\.(?!.*SV1)";

    include /etc/nginx/conf.d/*.conf;
    include /nfs/vhosts/*;

    include /etc/nginx/sites-enabled/*;

}

Espero que alguém possa me ajudar a identificar a causa desse problema e me ajudar a corrigi-lo.

Atenciosamente!

    
por W. Loockx 10.08.2014 / 08:28

0 respostas