nginx结合keepalive实现高可用的完整步骤

  


  

  

为了满足系统的高可用,一般都需要搭建集群。当主机挂掉的时候,我们的系统还可以继续提供服务。当我们使用nginx作为反向代理和动静分离服务器的时候,也是如此。实现系统的高可用性,是我们程序员关注的重点。本文介绍了nginx结合keepalive实现主从模式搭建高可用集群。
  

  


  

  

本文不作过多的nginx相关配置介绍,默认读者已经了解nginx的相关知识。
  

  


  

  

keepalive的作用是检测服务器的状态,如果有一台web服务器宕机,或工作出现故障,keepalive将检测到,并将有故障的服务器从系统中剔除,同时使用其他服务器代替该服务器的工作,当服务器工作正常后keepalive自动将服务器加入到服务器群中,这些工作全部自动完成,不需要人工干涉,需要人工做的只是修复故障的服务器。
  

  

  

 nginx结合keepalive实现高可用的完整步骤

  


  

  

<强> 1。环境配置
  

  

<强> 1.1安装nginx
  

  

安装相关依赖
  

        yum安装pcre-devel zlib zlib-devel openssl openssl-devel      

上传解压压缩包
  

        焦油zxvf nginx-1.12.2.tar.gz      

创建目录,检测配置
  

        mkdir - p/usr/local/nginx   ./configure——prefix=/usr/地方/nginx      

预编译和安装
  

        使,,使安装      

启动,停止相关命令
  

        cd/usr/local/nginx/sbin//nginx。/nginx - s停止   开始。/nginx - s      

<强> 1.2安装keepalive
  

        yum安装- y keepalive      

<强> 2。主机配置
  

  

修改keepalive配置文件
  

        vim/etc/keepalived/keepalived.conf      

修改的内容如下
  

        #新增的配置   vrrp_script chk_http_port {   脚本”/壳/nginx_check。上海“#脚本地址   间隔2 #检测脚本执行的间隔   2 #比重量重   }      vrrp_instance VI_1 {   国家的主人#主服务器为大师,从服务器为备份   接口eth0 #网卡   virtual_router_id 51 #主、备机的virtual_router_id必须相同   优先级100 #主、备机不同的优先级,主机优先级较大,备机值较小,默认是100   advert_int 1   身份验证{   auth_type通过   auth_pass 1111   }   #虚拟IP地址   virtual_ipaddress {   192.168.126.88   }   }      

创建编写脚本文件
  

        mkdir/壳/nginx_check.sh   vim/壳/nginx_check.sh      

脚本文件内容如下
  

        # !/bin/bash   一个=' ps - c nginx没有标题| wc - l '   如果(eq 0美元);/usr/local/nginx/sbin/nginx   睡眠2   如果(ps - c nginx,没有标题| wc - l的eq 0];   killall keepalive   fi   fi      

<强> 3。从机配置
  

  

修改keepalive配置文件
  

        vrrp_instance VI_1 {   状态备份#主服务器为大师,从服务器为备份   接口eth0 #网卡   virtual_router_id 51 #主、备机的virtual_router_id必须相同   优先级50 #主备机不同的优先级,主机优先级较大,备机值较小   advert_int 1   身份验证{   auth_type通过   auth_pass 1111   }   #虚拟IP地址   virtual_ipaddress {   192.168.126.88   }   }      

<强> 4。启动服务
  

  

启动
  

        服务keepalive开始      

查看虚拟IP地址
  

        ip addr   1:lo: & lt;环回,LOWER_UP>mtu 65536 qdisc noqueue状态未知   链接/回环00:00:00:00:00:00 brd 00:00:00:00:00:00   inet 127.0.0.1/8主机lo范围   inet6: 1/128宿主范围   valid_lft永远preferred_lft永远   2:eth0: & lt;广播、多播、,LOWER_UP>qlen 1000 mtu 1500 qdisc pfifo_fast状态   链接/醚00:0c: 29:4f: 31: ce brd ff: ff: ff: ff: ff: ff   全球eth0 inet 192.168.126.100/24 brd 192.168.126.255范围   全球eth0 inet 192.168.126.88/32范围   inet6 fe80:: 20 c: 29 ff: fe4f: 31 ce/64范围的链接   永远永远valid_lft preferred_lft

nginx结合keepalive实现高可用的完整步骤