Nginx之——Nginx+Keepalive 实现高可用负载均衡方案
来源:互联网 发布:淘宝二手单反相机 编辑:程序博客网 时间:2024/06/05 19:56
转载请注明出处:http://blog.csdn.net/l1028386804/article/details/52577875
主nginx负载均衡器:192.168.0.99 (通过keepalived配置了VIP:192.168.0.101供外使用)
副nginx负载均衡器:192.168.0.100 (通过keepalived配置了VIP:192.168.0.101供外使用)
后端web服务器:
192.168.0.73
192.168.0.74
一、配置主副nginx负载均衡器
192.168.0.99 以及 192.168.0.100的关键nginx配置如下:
vim /etc/nginx/nginx.conf
#################....upstream www.xxx.com {server 192.168.0.73:8080 max_fails=1;#max_fails 表示健康检查失败的次数,这里表示次数为一次,即标记该服务器down了server 192.168.0.74:8080 max_fails=1;}server{listen 80;server_name www.xxx.com;location / {proxy_next_upstream error timeout http_500 http_502 http_504; #这里表示健康检查涉及到的情形,有这些情形的,都切换到另外的web服务器访问proxy_read_timeout 10s; #这里表示程序返回的时间,请参考php.ini的max_exe_time来设置。proxy_pass http://www.xxx.com;proxy_set_header Host $host;proxy_set_header X-Real-IP $remote_addr;proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;}#access_log /var/log/nginx/xxx.log;}##########################
二、安装keepalive (centos)
#安装 poptyum -y install popt popt-develcd /data/softwarewget http://www.keepalived.org/software/keepalived-1.2.8.tar.gzcd /data/srctar zxf ../software/keepalived-1.2.8.tar.gzcd keepalived-1.2.8./configure --prefix=/usr/local/keepalived --sysconf=/etcmake && make installcp /usr/local/keepalived/sbin/keepalived /bin/chkconfig --add keepalived#设置开机启动chkconfig keepalived on#启动keepalive服务/etc/init.d/keepalived start如果是ubuntu 直接 apt-get install keepalived 吧….
三、keepalive设置
cp /etc/keepalived/keepalived.conf /etc/keepalived/keepalived.conf_bak
MASTER
vim /etc/keepalived/keepalived.conf
! Configuration File for keepalivedglobal_defs {notification_email {admin@test.com}notification_email_from admin@test.comsmtp_server xxx.smtp.comsmtp_connect_timeout 30router_id LVS_DEVEL}vrrp_script Monitor_Nginx { script "/root/monitor_nginx.sh" interval 2 weight 2}vrrp_instance VI_1 {state MASTER #(主机为MASTER,备用机为BACKUP)interface eth0 #(HA监测网络接口)virtual_router_id 61 #(主、备机的virtual_router_id必须相同)#mcast_src_ip 192.168.0.99 #(多播的源IP,设置为本机外网IP,与VIP同一网卡)此项可不设置priority 90 #(主、备机取不同的优先级,主机值较大,备份机值较小,值越大优先级越高)advert_int 1 #(VRRP Multicast广播周期秒数)authentication {auth_type PASS #(VRRP认证方式)auth_pass 1234 #(密码)}track_script {Monitor_Nginx #(调用nginx进程检测脚本)}virtual_ipaddress { 192.168.0.101 #(VRRP HA虚拟地址)}}BACKUP方面只需要修改state为BACKUP , priority比MASTER稍低即可
四、监控nginx进程的脚本
monitor_nginx.sh 内容如下:
vim /root/monitor_nginx.sh
当检测到nginx进程不存在的时候,就干掉所有的keepalived,这时候,请求将会由keepalived的backup接管!!
#!/bin/bashif [ "$(ps -ef | grep "nginx: master process"| grep -v grep )" == "" ] then killall keepalivedfichmod +x /root/monitor_nginx.sh
192.168.0.99 192.168.0.100都重新启动keepalived:
service keepalived restart
这里请注意,当keepalived启动后,我们可以用命令:
ip add show eth0 来看我们的eth0网卡确实被添加了虚拟IP,如下图:
完毕,可以测试了!
1 0
- Nginx之——Nginx+Keepalive 实现高可用负载均衡方案
- nginx + keepalive 实现高可用负载均衡
- nginx+keepalive实现高可用负载均衡
- nginx+keepalive实现高可用负载均衡
- Nginx+Keepalive实现高可用负载均衡
- Nginx+keepalive实现高可用热备负载均衡
- Keepalived之——Keepalived + Nginx 实现高可用 Web 负载均衡
- nginx+keepalived实现高可用负载均衡
- Keepalived+Nginx实现负载均衡高可用
- Keepalived+Nginx实现负载均衡高可用
- Keepalived+Nginx实现负载均衡高可用
- Keepalived + nginx实现高可用负载均衡
- Nginx+keepalived 实现负载均衡,高可用
- nginx+keepalived负载均衡之高可用
- keepalive + Nginx实现高可用性及负载均衡
- nginx负载均衡高可用
- (负载均衡)nginx+keepalive
- keepalive+nginx负载均衡
- 数据结构 链表的应用——学生信息统计
- Activity的跳转、横竖屏切换的生命周期
- 面试题3
- service使用handler与Activity沟通的两种方法
- hdu5887 Herbs Gathering(搜索)
- Nginx之——Nginx+Keepalive 实现高可用负载均衡方案
- 努力工作努力生活,但别忘了你只是血肉之躯
- LeetCode[236] Lowest Common Ancestor of a Binary Tree
- codeforces-500【B思维】【C贪心】
- semanage命令的安装
- 数据结构笔记
- Android中常用的五种布局方式:FrameLayout
- bzoj3038(线段树开根)
- LeetCode----14. Longest Common Prefix