Kibana worker_connections不足

rdrgkggo  于 2023-08-01  发布在  Kibana
关注(0)|答案(4)|浏览(155)

我正在尝试访问部署在nginx中的kibana应用程序,但得到以下
网址:-http://127.0.0.1/kibana-3.1.2

2015/02/01 23:05:05 [alert] 3919#0: *766 768 worker_connections are not enough while connecting to upstream, client: 127.0.0.1, server: , request: "GET /kibana-3.1.2 HTTP/1.0", upstream: "http://127.0.0.1:80/kibana-3.1.2", host: "127.0.0.1"

字符串
Kibana部署在/var/www/kibana-3.1.2
我已经试图增加worker_connections,但仍然没有运气,得到下面在这种情况下。

2015/02/01 23:02:27 [alert] 3802#0: accept4() failed (24: Too many open files)
2015/02/01 23:02:27 [alert] 3802#0: accept4() failed (24: Too many open files)
2015/02/01 23:02:27 [alert] 3802#0: accept4() failed (24: Too many open files)
2015/02/01 23:02:27 [alert] 3802#0: accept4() failed (24: Too many open files)
2015/02/01 23:02:27 [alert] 3802#0: accept4() failed (24: Too many open files)


nginx.conf:-

user www-data;
worker_processes 4;
pid /var/run/nginx.pid;

events {
        worker_connections 768;
        # multi_accept on;
}


和下面的位置指令。

location /kibana-3.1.2{

        proxy_set_header X-Real-IP  $remote_addr;

        proxy_set_header X-Forwarded-For $remote_addr;

        proxy_set_header Host $host;

        proxy_pass http://127.0.0.1;

        add_header Access-Control-Allow-Origin *;

        add_header Access-Control-Allow-Headers *;
       }

qyuhtwio

qyuhtwio1#

老问题,但我有同样的问题,接受的答案不适合我。
我不得不增加worker_connections的数量,正如这里所说的。

*/etc/nginx/nginx.conf

events {
    worker_connections 20000;
}

字符串

slsn1g29

slsn1g292#

没有足够的信息来明确地说,但根据你提供的配置,看起来你有循环。您将请求代理到localhost:80,但NGINX很可能监听端口80。因此,NGINX一遍又一遍地连接到自己,因此出现了关于打开的文件太多的错误。
另外,Kibana没有任何服务器端代码,所以proxy_pass在这里不合适。以下内容应该足够了:

root /var/www/
location /kibana-3.1.2 {
    try_files $uri $uri/ =404;
}

字符串
话虽如此,如果你想让它从公共互联网访问,你应该用密码保护它,你应该在elasticsearch前面使用proxy_pass来控制可以向它发出什么请求。这是一个不同的故事:)

9ceoxa92

9ceoxa923#

将工作者连接设置为更高的限制对我有帮助。只是为了补充@RASG,我来到这里是因为使用了Apaches负载测试工具ab,并开始看到SSL握手失败,使用了500批。在查看NGINX日志时,我注意到类似于OP的错误,...not enough worker_connections。请记住,更多的工作人员意味着更多的负载在服务器上,所以即使我停止了错误消息的发生,增加计数后,网站是极端停滞不前。因此,如何找到最佳位置取决于您的服务器条件。我将明确地添加一个CPU(或新的服务器示例)。运行htop(我在Debian/Ubuntu上)是我如何监控服务器如何“调整”以适应工作人员的增加的。如这里所提到的https://ubiq.co/tech-blog/how-to-fix-nginx-worker-connections-are-not-enough/
请注意,工作进程的数量受服务器上可用内存量的限制。此外,随着工作者数量的增加,NGINX服务器的内存消耗也会增加。
在我的情况下,RAM几乎没有移动,但CPU的使用率是极端的(运行htop后)

3wabscal

3wabscal4#

如果你在Docker容器上运行这个,并连接到一个php容器,在你的nginx配置或网站配置中将fastcgi_pass 127.0.0.1:9000;更改为fastcgi_pass php:9000;这是因为nginx指向localhost并认为它是同一个容器,而不是路由到另一个容器。

相关问题