【Nginx】如何实现Nginx的高可用负载均衡?看完我也会了!! (3)

编写 Nginx 状态检测脚本 /etc/keepalived/nginx_check.sh (已在 keepalived.conf 中配置)脚本要求:如果 nginx 停止运行,尝试启动,如果无法启动则杀死本机的 keepalived 进程, keepalied将虚拟 ip 绑定到 BACKUP 机器上。 内容如下。

# vim /etc/keepalived/nginx_check.sh #!/bin/bash A=`ps -C nginx –no-header |wc -l` if [ $A -eq 0 ];then /usr/local/nginx/sbin/nginx sleep 2 if [ `ps -C nginx --no-header |wc -l` -eq 0 ];then killall keepalived fi fi

保存后,给脚本赋执行权限:

# chmod +x /etc/keepalived/nginx_check.sh 启动 Keepalived # service keepalived start Starting keepalived: [ OK ] Keepalived+Nginx 的高可用测试

同时启动192.168.50.133和192.168.50.134上的Nginx和Keepalived,我们通过VIP(192.168.50.130)来访问Nginx,如下所示。

【Nginx】如何实现Nginx的高可用负载均衡?看完我也会了!!

我们关闭192.168.50.133上的Keepalived和Nginx,在192.168.50.133执行如下命令。

service keepalived stop /usr/local/nginx-1.19.1/sbin/nginx -s stop

此时,再通过VIP(192.168.50.130)来访问Nginx,如下所示。

【Nginx】如何实现Nginx的高可用负载均衡?看完我也会了!!

我们再开启192.168.50.133上的Keepalived和Nginx,在192.168.50.133执行如下命令:

/usr/local/nginx-1.19.1/sbin/nginx service keepalived start

或者只执行

service keepalived start

因为我们写了脚本nginx_check.sh,这个脚本会为我们自动自动Nginx。

此时,我们再通过VIP(192.168.50.130)来访问Nginx,如下所示。

【Nginx】如何实现Nginx的高可用负载均衡?看完我也会了!!

至此,Keepalived + Nginx 实现高可用 Web 负载均衡搭建完毕。

温馨提示

小伙伴们可以到下面的链接下载Keepalived + Nginx 实现高可用 Web 负载均衡的配置文件。

重磅福利

关注「 冰河技术 」微信公众号,后台回复 “设计模式” 关键字领取《深入浅出Java 23种设计模式》PDF文档。回复“Java8”关键字领取《Java8新特性教程》PDF文档。两本PDF均是由冰河原创并整理的超硬核教程,面试必备!!

好了,今天就聊到这儿吧!别忘了点个赞,给个在看和转发,让更多的人看到,一起学习,一起进步!!

写在最后

如果你觉得冰河写的还不错,请微信搜索并关注「 冰河技术 」微信公众号,跟冰河学习高并发、分布式、微服务、大数据、互联网和云原生技术,「 冰河技术 」微信公众号更新了大量技术专题,每一篇技术文章干货满满!不少读者已经通过阅读「 冰河技术 」微信公众号文章,吊打面试官,成功跳槽到大厂;也有不少读者实现了技术上的飞跃,成为公司的技术骨干!如果你也想像他们一样提升自己的能力,实现技术能力的飞跃,进大厂,升职加薪,那就关注「 冰河技术 」微信公众号吧,每天更新超硬核技术干货,让你对如何提升技术能力不再迷茫!

【Nginx】如何实现Nginx的高可用负载均衡?看完我也会了!!

内容版权声明:除非注明,否则皆为本站原创文章。

转载注明出处:https://www.heiqu.com/wspswz.html