• CentOS下安装keepalived 进行服务器热备


    一、准备:

    1.1 安装依赖软件 如果系统为基本文本安装,需要安装一下软件 

    yum -y install ipvsadm

    yum -y install kernel kernel-devel

    reboot   重启系统切换内核

    yum -y install openssl-devel 

    1.2 安装好这些软件之后,注意看是否安装好了GCC这些编译器,如果没有,安装GCC编译器

    yum -y install gcc
    yum -y install gcc-c++
    yum install make
    -- 或者
    yum groupinstall "Development Tools"
    -- 或者
    yum install gcc gcc-c++ kernel-devel
     
    二、安装Keepalived软件
    下载地址:http://www.keepalived.org/download.html
    选择最新keepalived,当前选用版本为 Keepalived for Linux - Version 1.2.19 - July 07, 2015
    下载成功后,将软件上传,进行安装。
    本次将软件上传至路径 /soft/keepalived 路径下
    cd /soft/keepalived
    tar -xvf keepalived-1.2.19.tar.gz
    cd /soft/keepalived/keepalived-1.2.19
    ln -s /usr/src/kernels/(你系统下面的一个内核版本)     /usr/src//linux  -- 这个需要配置,不然会报错
    ./configure  --prefix=/usr  --sysconf=/etc

    make

    make install

    完成安装

    三、配置keepalived

    配置keepalived之前先了解配置文件中的一些属性的含义,配置文件为keepalived.conf

    ! Configuration File for keepalived

    #全局定义块,包含邮件定义部分,
    global_defs {
      notification_email {
        acassen@firewall.loc
        failover@firewall.loc
        sysadmin@firewall.loc
      }
      notification_email_from Alexandre.Cassen@firewall.loc
      smtp_server 192.168.200.1
      smtp_connect_timeout 30
      router_id LVS_DEVEL  //负载均衡器标识,在一个网络内,它应该是唯一的
    }

    #VRRP实例定义块,负责负载均衡器之间的失败切换
    vrrp_instance VI_1 {
        state MASTER                      //只有MASTER和BACKUP 2种状态,主为MASTER,从为BACKUP,使用大写                                        
        interface eth0                    //监控的网络接口                                              
        virtual_router_id 51              //同一实例下virtual_router_id必须相同                          
        priority 100                      //定义优先级,数字越大,优先级越高                            
        advert_int 1                      //MASTER与BACKUP负载均衡器之间同步检查的时间间隔,单位是秒      
        authentication {                  //验证类型和密码                                                
            auth_type PASS
            auth_pass 1111
        }
        virtual_ipaddress {                //虚拟ip地址virtual_ipaddress,可以定义多个
            192.168.200.16
            192.168.200.17
            192.168.200.18
        }
    }

    #虚拟服务器定义块
    virtual_server 192.168.200.100 443 {                              //定义虚拟服务器                                          
        delay_loop 6                                                  //delay_loop,健康检查时间间隔,单位是秒                                    
        lb_algo rr                                                    //负载调度算法,这里设置为rr,即轮询算法,互联网应用常使用wlc或rr                      
        lb_kind NAT                                                    //负载均衡转发规则。一般包括DR,NAT,TUN3种,在我的方案中,都使用DR的方式  
        nat_mask 255.255.255.0                                        //子网掩码      
        persistence_timeout 50                                        //会话保持时间,单位是秒(可以适当延长时间以保持session)                                
        protocol TCP                                                  //转发协议类型,有tcp和udp两种 
                                                                                        
        real_server 192.168.201.100 443 {                              //真实服务器IP及端口                                            
            weight 1                                                  //默认为1,0为失效                          
            SSL_GET {                                                                  
                url {                                                                  
                  path /                                                                
                  digest ff20ad2481f97b1754ef3e12ecd3a9cc                              
                }
                url {
                  path /mrtg/
                  digest 9b3a0c85a887a256d6939da88aabd8cd
                }
                connect_timeout 3
                nb_get_retry 3
                delay_before_retry 3
            }
        }
    }

    直接拷贝是无效的,没有全部将配置文件中的属性拷贝出来,这里的热备主要注意点是,虚拟IP就是以后给用户访问的IP,而实际IP则是本机IP,interface eth0 这里的表示网卡,如果你使用的不是eth0则需要修改,不然,热备无法生效,real_server,virtual_ipaddress

    还需要注意点:

    vrrp_instance VI_1 {
        state MASTER

    这个属性,如果热备,将备服务器上的配置文件修改为BACKUP,不然,热备也不生效。

    实际,Keepalived热备的效果就是将两台服务器指向同一个虚拟IP,而对外提供的IP就是这个虚拟IP,如果一台服务器宕机,不能提供IP访问,那么,将有备服务器指向改IP并提供IP服务

     

    四、Keepalived日志查询

    路径:/var/log/messages 文件

  • 相关阅读:
    根据输入的个数,打印每行做多输出3个的for循环
    在启动页面后面再加载一个广告页,可以定制动画等
    frame.size.height无法直接赋值问题
    iOS开发远程推送
    iOS——UIKeyboardWillShowNotification 监听键盘高度变化
    iOS 浅谈本地通知 UILocalNotification
    iOS中assign、copy 、retain等关键字的含义
    GCD
    xocde快速定位崩溃代码
    关于xcode打包app
  • 原文地址:https://www.cnblogs.com/rainy-shurun/p/4979688.html
Copyright © 2020-2023  润新知