实验:基于keepalived实现两台realserver服务器中的nginx和php-fpm服务互为主从

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了实验:基于keepalived实现两台realserver服务器中的nginx和php-fpm服务互为主从相关的知识,希望对你有一定的参考价值。

 基于keepalived实现两台realserver服务器中的nginxphp-fpm服务互为主从

 

思路:利用两个VIP,一个定位nginx,一个定位php-fpm

步骤:

1、准备两台基于LNMP架构的服务器(能够提供正常的web服务)

2、在nginx为主php-fpm为备的机器上操作:

     ①编辑keepalived的配置文件(文件内容的具体含义请参看博客:

       http://13150617.blog.51cto.com/13140617/1979652)

 

     vim /etc/keepalived/keepalived.conf

! Configuration File for keepalived

global_defs {

   notification_email {

   [email protected]

   }

   notification_email_from [email protected]

   smtp_server 127.0.0.1

   smtp_connect_timeout 2

   router_id LVS_DEVELhaha

}

 

vrrp_instance VI_1 {

    state MASTER

    interface eth0

    virtual_router_id 11

    priority 100

    advert_int 1

    authentication {

        auth_type PASS

        auth_pass 111111

    }

    virtual_ipaddress {

        172.17.0.22

    }

}

 

vrrp_instance VI_2 {

    state BACKUP

    interface eth1

    virtual_router_id 12

    priority 90

    advert_int 1

    authentication {

        auth_type PASS

        auth_pass 111111

    }   

    virtual_ipaddress {

        192.168.199.33

    }    

}   

     ②配置php-fpm,使其监听在9000端口并且允许所有主机访问

      vim /etc/php-fpm.d/www.conf

             listen = 9000

             注释 listen.allowed_clients = any

     ③配置nginx,使其指向php所在的主机上

      vim /etc/nginx/nginx.conf

             fastcgi_pass   192.168.199.33:9000;  虚拟ip

     ④开启转发功能

        echo 1 > /proc/sys/net/ipv4/ip_forward

     ⑤启动服务

        systemctl start keepalive

 

3、php-fpm为主nginx为备的机器上操作:

     ①编辑keepalived的配置文件

      vim /etc/keepalived/keepalived.conf

          同上面的配置,只需要调换state状态和priority优先级即可

     ②配置php-fpm

      vim /etc/php-fpm.d/www.conf

         配置完全同上

     ③配置nginx 

       vim /etc/nginx/nginx.conf

         配置完全同上

     ④开启转发功能

       echo 1 > /proc/sys/net/ipv4/ip_forward

     ⑤启动服务:

         systemctl start keepalive

4、测试:两台服务器都正常服务时,nginx为主的机器上和php-fpm为主的机器上都各有一个VIP,网站可正常访问

技术分享

技术分享

技术分享

 

当有一台服务器出现故障时,那么该VIP就会漂移到正常的服务器上,而且网站依旧可以访问


技术分享 


感谢浏览,如有疑问,欢迎留言。

技术分享


以上是关于实验:基于keepalived实现两台realserver服务器中的nginx和php-fpm服务互为主从的主要内容,如果未能解决你的问题,请参考以下文章

利用keepalived实现高可用nginx

基于keepalived的LVS-DR模型构建

[转帖]MySQL+keepalived用keepalived实现MySQL主主模式的高可用

lvs+keepalived+httpd高可用集群

keepalived+lvs实现负责均衡群集

实现基于Haproxy+Keepalived负载均衡高可用架构