是否可以通过 REST API 或其他方式从 Loadbalancer/NGINX 池中删除 Appserver?
我们在部署中遇到了问题,想逐个删除应用服务器,然后在那里部署更改。我们可以访问 NGINX Plus,但我在他们的网站上找不到任何东西。
答案1
有一种方法可以在服务器上无需 root 权限即可执行此操作:
https://www.nginx.com/blog/dynamic-reconfiguration-with-nginx-plus/
http://localhost:8080/upstream_conf?remove=&upstream=backend&id=2
进行以下配置更改:
location /upstream_conf {
upstream_conf; allow 10.0.0.0/8; # Allow access only from LAN
deny all; # Deny everyone else
}
upstream backend {
zone backend 64k;
server 10.2.2.90:8000;
server 10.2.2.91:8000;
server 10.2.2.92:8000; }
答案2
NGINX Plus Web 界面(参见演示) 似乎仅用于实时活动监控。
NGINX Plus 扩展开源 NGINX 软件的反向代理功能,附加的应用程序负载平衡方法、多核服务器的增强功能以及会话持久性、健康检查、实时活动监控和负载平衡服务器组的动态重新配置等功能。
这NGINX Plus 配置是通过配置文件完成的,就像在开源 NGINX 中一样。
NGINX Plus 与其他服务类似,它有一个以特定格式编写的文本配置文件。默认情况下,该文件被命名
nginx.conf
并放置在/etc/nginx
目录中。(对于开源 NGINX 产品,位置取决于用于安装 NGINX 的软件包系统和操作系统。它通常是/usr/local/nginx/conf
、/etc/nginx
或之一/usr/local/etc/nginx
。)
这Nginx 负载均衡本文介绍了如何使用 NGINX 和 NGINX Plus 作为负载均衡器。简而言之,Nginx 配置文件有这样的部分:
http {
upstream backend {
server backend1.example.com weight=5;
server backend2.example.com;
server 192.0.0.1 backup;
}
}
只需注释掉您想要禁用的后端服务器并重新启动 NGINX Plus。