zoukankan      html  css  js  c++  java
  • 2Nginx+keepalive+2tomcat 故障转移

    根据真实生产环境 总结。

    硬件:共计2台Linux服务器  76和77  每台服务器都安装 Nginx  Keepalive  Tomcat
    80作为虚拟ip,负责对外连接。   78和79是两台mysql数据库,读写分离。

    效果:如果一台服务器产生故障,另一台马上接替服务


    2Nginx+keepalive+2tomcat 故障转移 - 朝鲜程序员 - 朝鲜程序员的博客
     


    重点:在于keepalive心跳的配置



    安装过程此处省略……
     
     
    安装完成后首先配置 Keepalive
     
    1.Keepalive  
    两台服务器端keepalived.conf内容都为如下,都设置为backup,不抢占


    (76)主机


    ! Configuration File for keepalived
     
    global_defs {
       notification_email {
         xxxx@139.com           切换等操作时  email通知邮件地址
       }
       notification_email_from root@localhost
       smtp_server 127.0.0.1
       smtp_connect_timeout 30
       router_id HTTP_HA
    }
     
     
    vrrp_sync_group VG_1 {                    同步组设置
      group {
        VI_1
      }
      #notify_master /home/notify_master.sh
      #notify_backup /home/notify_backup.sh
      #notify_fault  /home/notify_fault.sh
    }
     
    vrrp_instance VI_1 {          实例设置
        preempt_delay 300       抢占延迟
        state BACKUP              实例初始状态(确定主备)
        #smtp_alert
        interface eth0                 实例节点固有IP(非VIP)的网卡,用来发VRRP包
        virtual_router_id 51        设置VRID这里非常重要  相同的VRID为一个组他将决定多播的MAC地址
        advert_int 1                     检查间隔默认为1秒
        authentication {
            auth_type PASS           认证方式可以是PASS或AH两种认证方式
            auth_pass 1111            认证密码
        }
     
        nopreempt     # backup server comment it   (从机 注释此参数)
        priority 150  # backup server change to 100      用来选举master的数字越大,优先级越高
        virtual_ipaddress {                                                   设置虚拟IP
             10.0.0.80/24 dev eth0
        }
    }
     
     
    (77)从机

    ! Configuration File for keepalived
     
    global_defs {
       notification_email {
         xxxx@139.com           切换等操作时  email通知邮件地址
       }
       notification_email_from root@localhost
       smtp_server 127.0.0.1
       smtp_connect_timeout 30
       router_id HTTP_HA
    }
     
     
    vrrp_sync_group VG_1 {                    同步组设置
      group {
        VI_1
      }
      #notify_master /home/live800/working/keepalived/notify_master.sh
      #notify_backup /home/live800/working/keepalived/notify_backup.sh
      #notify_fault  /home/live800/working/keepalived/notify_fault.sh
    }
     
    vrrp_instance VI_1 {          实例设置
        preempt_delay 300       抢占延迟
        state BACKUP              实例初始状态(确定主备)
        #smtp_alert
        interface eth0                 实例节点固有IP(非VIP)的网卡,用来发VRRP包
        virtual_router_id 51        设置VRID这里非常重要  相同的VRID为一个组他将决定多播的MAC地址
        advert_int 1                     检查间隔默认为1秒
        authentication {
            auth_type PASS           认证方式可以是PASS或AH两种认证方式
            auth_pass 1111            认证密码
        }
     
        #nopreempt     # backup server comment it      (从机 注释此参数)
        priority 100  # backup server change to 100      用来选举master的数字越大,优先级越高
        virtual_ipaddress {                                                 设置虚拟IP 可以设置多个
             10.0.0.80/24 dev eth0
        }
    }
     
     
     
     
    2.Nginx
    这里只列出主要几行配置
     
    (10.0.0.76)(10.0.0.77)
         upstream TomcatServer {
                    server 127.0.0.1:8080 max_fails=0 fail_timeout=10s;
            }
    server {server_name  localhost;
    listen 80;
    include proxy.conf;
    location / {
    proxy_pass http://TomcatServer;
    }
    location /ns {include stub_status.conf;}
    }
    }
     
     
     
    3.Tomcat
    不必做特殊设置
     
  • 相关阅读:
    Java.io.outputstream.PrintStream:打印流
    Codeforces 732F. Tourist Reform (Tarjan缩点)
    退役了
    POJ 3281 Dining (最大流)
    Light oj 1233
    Light oj 1125
    HDU 5521 Meeting (最短路)
    Light oj 1095
    Light oj 1044
    HDU 3549 Flow Problem (dinic模版 && isap模版)
  • 原文地址:https://www.cnblogs.com/centos2017/p/7896750.html
Copyright © 2011-2022 走看看