如何实现nginx高可用

nginx高可用实现方案

如何实现nginx高可用

一般采用nginx+keepalived,它是一个高性能的服务器高可用或者热备解决方案,Keepalived主要来防止服务器单点故障的发生问题,可以通过其与Nginx的配合实现Web服务器端的高可用;

Keepalived以VRRP协议为实现基础,用VRRP协议来实现高可用性(HA),VRRP(Virtual Router Redundancy Protocol)协议是用于实现路由器冗余的协议,VRRP协议将两台或者多台路由器设备虚拟成一个设备,对外提供虚拟路由器IP(一个或者多个),从而实现高可用;

keepalived虚拟化出192.168.100.100和192.168.100.101的虚拟化ip,这个系统是两台计算机上,有4个tomcat,2个Nginx,2个Keepalived实现负载均衡策略。

BJXSHOP网上开店专家 BJXSHOP网上开店专家

BJXShop网上购物系统是一个高效、稳定、安全的电子商店销售平台,经过近三年市场的考验,在中国网购系统中属领先水平;完善的订单管理、销售统计系统;网站模版可DIY、亦可导入导出;会员、商品种类和价格均实现无限等级;管理员权限可细分;整合了多种在线支付接口;强有力搜索引擎支持... 程序更新:此版本是伴江行官方商业版程序,已经终止销售,现于免费给大家使用。比其以前的免费版功能增加了:1,整合了论坛

BJXSHOP网上开店专家 0 查看详情 BJXSHOP网上开店专家

配置keepalived

Keepalived会根据virtual_router_id和authentication两个来确定集群关系。

#修改配置
vim /etc/keepalived/keepalived.conf

#配置文件
! Configuration File for keepalived

global_defs {
   #从服务器最改一下这个
   router_id node1 #表示运行keepalived服务器的一个标识。发邮件时显示在邮件主题的信息
}
#监控服务.NGINX mysql等
vrrp_script chk_nginx {
    script "/usr/local/keepalived/check_nginx.sh"
    #每2s检查一次
    interval 2
    #每次检查-20
    weight -20
}
vrrp_instance VI_1 {
    ##主从设置 MASTER/BACKUP  
    state MASTER
    #网卡名称
    interface eth0
    #同一个集群下这个 router_id是一样的
    virtual_router_id 51
    #本机的ip,需要修改
    mcast_src_ip 192.168.100.10 
    #优先级,从节点 配置,需要小于主节点
    priority 100
    #设定MASTER与BACKUP负载均衡器之间同步检查的时间间隔,单位是秒
    advert_int 1
    #认证的密码
    authentication {
        auth_type PASS
        #设定授权密码,密码相同的为一个集群
        auth_pass yellowcong
    }
    #触发的脚本
    track_script {
        chk_nginx  #检测脚本,上面配置的
    }
    #虚拟ip地址
    virtual_ipaddress {
        192.168.100.100
        192.168.100.101
    }
}

更多Nginx相关技术文章,请访问Nginx使用教程栏目进行学习! 

以上就是如何实现nginx高可用的详细内容,更多请关注其它相关文章!

本文转自网络,如有侵权请联系客服删除。