关于我们

质量为本、客户为根、勇于拼搏、务实创新

< 返回新闻公共列表

Nginx详细分析加安装的步骤动态负载均衡?

发布时间:2020-02-02 15:47:10
nginx-stream-upsync -module有- -个兄弟nginx upsync -module,其提供了HTTP七层动态负载均衡,动态更新上游服务器不需要reload nginx.当前最新版本是基于Nginx1.9.10开发的,因此兼容1.9.10+版本。 其提供了基于consul和eted进行动态更新上游服务器实现。本部分基于Nginx 1.9.10 版本和consul配置中心进行演示。
 
首先,需要下载并添加nginx-stream- upsync -module模块最新版本。
 
./configure --prefix-/usr/servers --with-stream --add-module- 。/nginx-stream-upsync-module
 
1. upstream配置
 
upstream mysql_ backend {
 
server 127.0.0.1:1111; #占位server
 
upsync 127.0.0.1:8500/v1/kv/upstreams/mysql_ backend upsync_ timeout -6m
 
upsync_ interva1=500ms upsync_ type=consul strong_ dependency=off;upsync_ dump_ path /usr/servers/nginx/conf/mysq1_ backend.conf;
 
}
 
upsyne指令指定从consul 哪个路径拉取上游服务器配置: upsync_ timeout 配置从consul拉取上游服务器配置的超时时间: upsync_ interval 配置从consul拉取上游服务器配置的间隔时间: upsyne. .ype 指定使用consul配置服务器; strong _dependency 配置nginx在启动时是否强制依赖配置服务器,如果配置为on,则拉取配置失败时nginx启动同样失败。
 
upsync. _dump_ path 指定从consul 拉取的上游服务器后持久化到的位置,这样即使consul服务器出问题了,本地还有一个备份。
 
2.从Consul添加上游服务器
 
curl -x pur -d "(\"weight\":1。 \"max_ falls\";2, \"fail_ _timeout\":10)"http://127.0.0.1:8500/v1/kw/ upstreams /mysql. backend/ 10.0.0.24:3306
 
curl -x PUT -d "(\"weight\":1, \"max_ fails\":2,\"fall_ timeout\";10}"http://127.0.0.1:8500/v1/ kv/upstreams/mysql. backend/192.168.0.11:3306
 
3.从Consul删除上游服务器
 
curl -X DELETE  http://127.0.0.1:8500/v1/kv/upstreams/mysq1_ backend/192.168.0.11:3306
 
4. upstream_ show
 
server {
 
listen 1234;upstream_ show;
 
}
 
配置uptream. show指令后,可以通过curl hp:///7./.1:123/pstramn show来查看当前动态负载均衡上游服务器列表。
 
到此动态负载均衡就配置完成了,我们已讲解完动态添加/删除上游服务器。在实际使用时,请进行压测来评测其稳定性。在实际应用中,更多的是用HaProxy进行四层负载均衡,因此,还是要根据自己的场景来选择方案。



/template/Home/Zkeys2/PC/Static