一、准备:

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 文件

CentOS下安装keepalived 进行服务器热备的更多相关文章

  1. 阿里云服务器centos下安装配置svn服务器

      阿里云服务器centos下安装配置svn服务器 1.安装svn服务器端yum install subversion      从镜像下载安装svn服务器端中间会提示是否ok,输入y,确认安装成功提 ...

  2. CentOS下安装配置Samba服务器

    0 环境介绍 VMWARE12下安装的CENTOS7虚拟机.宿主机为WIN7. 1 离线安装 费了九牛二虎之力,下载各种依赖,还是有问题,转向在线安装. 2 在线安装 虚拟机采用默认的配置: 其次,网 ...

  3. CentOS下安装配置SVN服务器并自动同步到web目录

    一.安装 yum install subversion测试是否安装成功 /usr/bin/svnserve --version如提示以下内容,说明已安装成功 svnserve,版本 1.6.11 (r ...

  4. Mysql+Keepalived双主热备高可用操作记录

    我们通常说的双机热备是指两台机器都在运行,但并不是两台机器都同时在提供服务.当提供服务的一台出现故障的时候,另外一台会马上自动接管并且提供服务,而且切换的时间非常短.MySQL双主复制,即互为Mast ...

  5. Lvs+keepalived+mysql主从热备

    p.MsoNormal,li.MsoNormal,div.MsoNormal { margin: 0cm; margin-bottom: .0001pt; text-align: justify; f ...

  6. keepalived+nginx双机热备+负载均衡

    Reference: http://blog.csdn.net/e421083458/article/details/30092795 keepalived+nginx双机热备+负载均衡 最近因业务扩 ...

  7. 使用keepalived实现双机热备

    通常说的双机热备是指两台机器都在运行,但并不是两台机器都同时在提供服务.当提供服务的一台出现故障的时候,另外一台会马上自动接管并且提供服务,而且切换的时间非常短.下面来以keepalived结合tom ...

  8. CentOS下安装hadoop

    CentOS下安装hadoop 用户配置 添加用户 adduser hadoop passwd hadoop 权限配置 chmod u+w /etc/sudoers vi /etc/sudoers 在 ...

  9. CentOS下安装使用start-stop-daemon

    CentOS下安装使用start-stop-daemon 在centos下下了个自启动的服务器脚本 执行的时候发现找不到start-stop-daemon命令 好吧 执行手动编译一下 加上这个命令 w ...

随机推荐

  1. Java JDK 动态代理使用及实现原理分析

    转载:http://blog.csdn.net/jiankunking   一.什么是代理? 代理是一种常用的设计模式,其目的就是为其他对象提供一个代理以控制对某个对象的访问.代理类负责为委托类预处理 ...

  2. 简单管理用户SESSION小记(个人观点,欢迎斧正)

    做了几年码农,记录下一般涉及到用户session管理的方法. 问题说明: a.用户如果点击退出时,可以获取用户动作,这样可以销毁session. b.用户直接关闭浏览器或者直接意外关机情况,无法获取用 ...

  3. java使用dom4j解析xml文件

    关于xml的知识,及作用什么的就不说了,直接解释如何使用dom4j解析.假如有如下xml: dom4j解析xml其实很简单,只要你有点java基础,知道xml文件.结合下面的xml文件和java代码, ...

  4. 目前几款基于html5的前端框架:如Bootstrap、Foundation、Semantic UI 、Amaze UI

    Bootstrap是由Twitter在2011年8月推出的开源WEB前端框架,集合CSS 和HTML,使用了最新的浏览器技术,为快速WEB开发提供了一套前端工具包,包括布局.网格.表格.按钮.表单.导 ...

  5. 使用AlarmManager定时更换壁纸----之一

    import android.os.Bundle;import android.app.Activity;import android.app.AlarmManager;import android. ...

  6. PHP 长字符串替换操作性能(替换多换注释的代码)

    因为写一个css合并工具,去掉注释时,发现正则表达式很难写,最后,还是用php来实现吧,但是一不小心写出来的代码居然报内存超出可用的128m!! 原因是因为我找到/*和*/之后 $str=substr ...

  7. POJ 2771 二分图(最大独立集)

    Guardian of Decency Time Limit: 3000MS   Memory Limit: 65536K Total Submissions: 5244   Accepted: 21 ...

  8. DatagridView的CellLeave光标离开响应事件,实现某列数字自动求和

    //光标离开DatagridView,循环获取DatagridView的每一行的第3列的值,相加传给重量 private void dgpz_dataGridView_CellLeave(object ...

  9. ROS创建工作空间(三)

    查看正在使用的ROS工作空间,使用命令 echo $ROS_PACKAGE_PATH 我新建了两个

  10. codeigniter在nginx 下支持pathinfo和去除index.php的方法

    as今天准备把网站搬迁到nginx上发现codeigniter框架在nginx上不能使用,后来发现是nginx不支持pathinfo,下面介绍怎么在nginx下开启pathinfo 开始pathinf ...