nginx健康检查机制的问题

发布于 2022-10-15 09:22:55 字数 1695 浏览 19 评论 0

环境是这样的:host_192.168.0.241 跑着nginx nginx版本:nginx-1.0.0
                     host_192.168.0.242跑着tomcat调用的端口是8080
                     host_192.168.0.246跑着tomcat调用的端口是8090

想要实现的功能是:192.168.0.246和192.168.0.242中任意一台宕机重启之后,健康检查机制能发挥作用,发现一台还没完全起来。用户在对nginx发出请求的时候。请求的链接直接跳过启动中的服务器,访问另一台。而不是像现在这样。一旦访问了重启中的tomcat,链接建立并一直等待启动完成。

安装健康检查机制:cep21-healthcheck_nginx_upstreams-5fa4bff.tar.gz
./configure --add-module=/tmp/cep21-healthcheck_nginx_upstreams-5fa4bff/ --with-http_stub_status_module --with-http_ssl_module --prefix=/usr/local/nginx/
make
make install
中间没有报错。完成

在nginx中的设置:

upstream main_servers {
        server 192.168.0.242:8080;
        server 192.168.0.246:8090;
#       hash $request_uri;
#       hash_again 0;
    healthcheck_enabled;
    healthcheck_delay 200;
    healthcheck_timeout 200;
    healthcheck_failcount 1;
    healthcheck_expected 'I_AM_ALIVE';
    healthcheck_buffer 32;
    healthcheck_send "GET /health HTTP/1.1" 'Host: $http_host';
    }

重新启动192.168.0.242的tomcat

做的健康检查设置,虽然系统能识别,但没有发挥预计的功效。想请问一下是不是有什么地方我设置错误。还是说还有所需要添加的功能没有添加?

请问个达人帮助一下小弟。谢谢

另问一下:我想修改tomcat启动顺序。将原来的顺序:初始化端口——加载库——启动端口。改变成:加载库——初始化端口——启动端口。需要做哪些操作和修改。

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。
列表为空,暂无数据
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文