zoukankan      html  css  js  c++  java
  • lvs+keepalived搭建双机主从架构

    安装nginx:
    yum install gcc-c++
    yum install -y pcre pcre-devel
    yum install -y zlib zlib-devel
    yum install -y openssl openssl-devel

    保证nginx 可以正常访问:

    我这里129 跟 146 如下:

    安装keepalived:
    1.安装基础必备包.
    yum install popt-devel
    2. 编译.
    tar -zxvf keepalived-1.2.15.tar.gz -C /usr/local/
    cd keepalived-1.2.15/ && ./configure --prefix=/usr/local/keepalived
    make && make install
    
    3.配置相关文件
    mkdir /etc/keepalived
    cp /usr/local/keepalived/etc/keepalived/keepalived.conf /etc/keepalived/
    cp /usr/local/keepalived/etc/rc.d/init.d/keepalived /etc/init.d/
    cp /usr/local/keepalived/etc/sysconfig/keepalived /etc/sysconfig/
    ln -s /usr/local/sbin/keepalived /usr/sbin/
    ln -s /usr/local/keepalived/sbin/keepalived /sbin/
    4.
    vim /etc/keepalived/keepalived.conf
    
    master:
    
    vrrp_script chk_nginx {
        script "/etc/keepalived/nginx_check.sh" #运行脚本,脚本内容下面有,就是起到一个nginx宕机以后,自动开启服务
        interval 2 #检测时间间隔
        weight -20 #如果条件成立的话,则权重 -20
    }
    # 定义虚拟路由,VI_1 为虚拟路由的标示符,自己定义名称
    vrrp_instance VI_1 {
        state MASTER #来决定主从
        interface eth0 # 绑定虚拟 IP 的网络接口,根据自己的机器填写
        virtual_router_id 121 # 虚拟路由的 ID 号, 两个节点设置必须一样
        mcast_src_ip 192.168.139.129 #填写本机ip
        priority 100 # 节点优先级,主要比从节点优先级高
        nopreempt # 优先级高的设置 nopreempt 解决异常恢复后再次抢占的问题
        advert_int 1 # 组播信息发送间隔,两个节点设置必须一样,默认 1s
        authentication {
            auth_type PASS
            auth_pass 1111
        }
        # 将 track_script 块加入 instance 配置块
        track_script {
            chk_nginx #执行 Nginx 监控的服务
        }
    
        virtual_ipaddress {
            192.168.139.110 # 虚拟ip,也就是解决写死程序的ip怎么能切换的ip,也可扩展,用途广泛。可配置多个 前三位必须跟服务器保持一致。
        }
    }
    
    service keepalived start 启动无报错则安装keepalived成功:

    backup:
    
    vrrp_script chk_nginx {
        script "/etc/keepalived/nginx_check.sh" #运行脚本,脚本内容下面有,就是起到一个nginx宕机以后,自动开启服务
        interval 2 #检测时间间隔
        weight -20 #如果条件成立的话,则权重 -20
    }
    # 定义虚拟路由,VI_1 为虚拟路由的标示符,自己定义名称
    vrrp_instance VI_1 {
        state BACKUP #来决定主从
        interface eth2 # 绑定虚拟 IP 的网络接口,根据自己的机器填写
        virtual_router_id 121 # 虚拟路由的 ID 号, 两个节点设置必须一样
        mcast_src_ip 192.168.139.129 #填写本机ip
        priority 100 # 节点优先级,主要比从节点优先级高
        nopreempt # 优先级高的设置 nopreempt 解决异常恢复后再次抢占的问题
        advert_int 1 # 组播信息发送间隔,两个节点设置必须一样,默认 1s
        authentication {
            auth_type PASS
            auth_pass 1111
        }
        # 将 track_script 块加入 instance 配置块
        track_script {
            chk_nginx #执行 Nginx 监控的服务
        }
    
        virtual_ipaddress {
            192.168.139.110 # 虚拟ip,也就是解决写死程序的ip怎么能切换的ip,也可扩展,用途广泛。可配置多个 前三位必须跟服务器保持一致。
        }
    }

    keepalived 常用命令 service keepalived start service keepalived stop 1.实现效果 通过配置的虚拟vip ip访问能访问到主节点nginx

    主节点有vip ip 110 从节点无
    

      

    3:重启主节点  主节点可以看到vip ip 需要等待几秒钟
    

     

     

    至此 双击主从热备架构搭建完成(一主一从nginx)

    通过keeplived 生成的vip ip 访问nginx 再由nginx 访问 真正Tomcat集群
    正常情况下不会方位从(BACKUP)只有当主节点(MASTER挂了之后才能访问)

      

  • 相关阅读:
    Python 函数知识点
    面向对象相关
    判断arg参数是否是可以被调用的
    利用U盘安装CentOS7系统
    简单模仿OpenGL中的栈的作用
    温故而知新我再一次学习库
    关于帧缓存的总结
    OGRE的相关工具和库
    OpenGL在Qt界面下的应用(helloworld)
    OpenGL加载Cg程序
  • 原文地址:https://www.cnblogs.com/coderdxj/p/12301433.html
Copyright © 2011-2022 走看看