场景:

  环境中有两台httpd服务器,一台做主,一台做备用;平时只用主向外提供http服务;当主宕机后,keepalived把vip绑定到备机上去,这样就由备机提供http服务了。

  **keepalvied 这个软件还是更新的比较快的,主要问题再于它的文档并没能跟上来,不同版本之间的差别比较大,我这里用的是1.2.13版

【0】环境说明

主机ip            系统版本                keepavlied版本
192.168.80.131  centos6.6        keepalived-1.2.13
192.168.80.132  centos6.6        keepalived-1.2.13

【1】安装keepalived 所需要的依赖

yum -y install gcc ipvsadm openssl-devel popt-devel kernel-devel

**由于keepalived 通常来说是和lvs配合用的,虽然这里还用不着lvs,但是我还是把ipvsadm安装上了

【2】编译安装keepalived

tar -xzvf keepalived-1.2..tar.gz
cd keepalived-1.2.
./configure --prefix=/usr/local/keepalived --with-kernel-dir=/usr/src/kernels/2.6.-.el6.x86_64
make
make install

【3】修改192.168.80.131主机上的/usr/local/keepalived/etc/keepalived.conf

! Configuration File for keepalived

global_defs {
router_id LVS_001B #router_id 这要个唯一
} vrrp_instance VI_1 {
state MASTER
interface eth0
virtual_router_id 51 #这个virtual_router_id 在两台机器上要相同
priority
advert_int
authentication {
auth_type PASS
auth_pass
}
virtual_ipaddress {
192.168.80.80/
}
} virtual_server 192.168.80.80 {
delay_loop
lb_algo rr
lb_kind DR
persistence_timeout
protocol TCP
real_server 192.168.80.131 {
weight
notify_down /tmp/stop_keepalive.sh #当检测到real_server 宕机的时候就会执行这个脚本
TCP_CHECK {
connect_port
connect_timeout
nb_get_retry
delay_before_retry
}
}
}

【4】修改192.168.80.132主机上的/usr/local/keepalived/etc/keepalived.conf

! Configuration File for keepalived

global_defs {
router_id LVS_001B
} vrrp_instance VI_1 {
state BACKUP
interface eth0
virtual_router_id
priority
advert_int
authentication {
auth_type PASS
auth_pass
}
virtual_ipaddress {
192.168.80.80/
}
} virtual_server 192.168.80.80 {
delay_loop
lb_algo rr
lb_kind DR
persistence_timeout
protocol TCP
real_server 192.168.80.132 {
weight
notify_down /tmp/stop_keepalive.sh
TCP_CHECK {
connect_port
connect_timeout
nb_get_retry
delay_before_retry
}
}
}

【5】脚本/tmp/stop_keepalived.sh的内容如下:

#!/bin/bash
pkill keepalived

【6】启动keepalived程序

nohup /usr/local/keepalived/sbin/keepalived -D -f /usr/local/keepalived/etc/keepalived/keepalived.conf &

keepalived+httpd 做web服务的高可用的更多相关文章

  1. 学习heartbeat-03t实现web服务的高可用案例及维护要点

    8.Heartbeat实现web服务的高可用案例 8.1部署准备 通过web服务高可用案例来熟悉heatbeat软件的使用,用上面的两台服务器机器名分别为heartbeat-1-130和heartbe ...

  2. 基于corosync+pacemaker+drbd+LNMP做web服务器的高可用集群

    实验系统:CentOS 6.6_x86_64 实验前提: 1)提前准备好编译环境,防火墙和selinux都关闭: 2)本配置共有两个测试节点,分别coro1和coro2,对应的IP地址分别为192.1 ...

  3. Keepalived+LVS实现LNMP网站的高可用部署

    Keepalived+LVS实现LNMP网站的高可用部署   项目需求   当我们访问某个网站的时候可以在浏览器中输入IP或者域名链接到Web Server进行访问,如果这个Web Server挂了, ...

  4. keepalived安装配置实战心得(实现高可用保证网络服务不间断)

    keepalived安装配置实战心得(实现高可用保证网络服务不间断) 一.准备2台虚拟机     安装的系统是:centos-release-7-1.1503.el7.centos.2.8.x86_6 ...

  5. Keepalived+LVS+Nginx负载均衡之高可用

    Keepalived+LVS+Nginx负载均衡之高可用 上一篇写了nginx负载均衡,此篇实现高可用(HA).系统整体设计是采用Nginx做负载均衡,若出现Nginx单机故障,则导致整个系统无法正常 ...

  6. 浅谈web应用的高可用

    1.熟悉几个组件 1.1.apache     —— 它是Apache软件基金会的一个开放源代码的跨平台的网页服务器,属于老牌的web服务器了,支持基于Ip或者域名的虚拟主机,支持代理服务器,支持安全 ...

  7. nginx+keepalived+tomcat+memcache实现双VIP高可用及Session会话保持

    Nginx+Keepalived+Tomcat+Memcached 实现双VIP负载均衡及Session会话保持 IP 信息列表: 名称         IP                      ...

  8. keepalived+nginx负载均衡+ApacheWeb实现高可用

    1.Keepalived高可用软件 Keepalived软件起初是专为LVS负载均衡软件设计的,用来管理并监控LVS集群系统中各个服务节点的状态,后来又加入了可以实现高可用的VRRP功能.因此,kee ...

  9. Apache httpd的web服务

    Apache httpd的web服务 适用于Unix/Linux下的web服务器软件 Apache httpd(开源且免费),虚拟主机,支持HTTPS协议,支持用户认证,支持单个目录的访问控制,支持U ...

随机推荐

  1. 关于offsetWidth innerWidth的使用

    最近因为有使用到offsetWidth 和innerWidth,刚开始以为这两个属性在jq何js之中是可以通用的,谁知道在js中使用innerWidth时,发现如果对页面元素使用它时,发现出来的是un ...

  2. 关于mobiscroll插件的使用

    在网上找了很多资料,各大猿友对这个插件都做了很详细的介绍,我也是看了很多资料才发现原来这个插件有一些需要注意的地方,在这总结了一下: //时间 var currYear = (new Date()). ...

  3. 提交svn报错说 有 unversioned 的文件

    这个说明   有未add的图片等东西,需要先add进去再提交

  4. 关于MPLS协议几个容易忽略的点

    1.随着硬件技术的进步,产生了高速路由器和三层交换机,MPLS提高转发的速度的初衷已经没有多少意义.但是MPLS由于其支持标签栈和面向连接的特点,使其在虚拟专用网,流量工程,QoS等方面得到广泛的应用 ...

  5. PYTHON线程知识再研习D---可重入锁

    不多解释,预防普通锁不正规的获取与释放 #!/usr/bin/env python # -*- coding: utf-8 -*- import threading import time class ...

  6. PYTHON线程知识再研习C---线程互斥锁

    结合例子,就很好理解了. 就是不要让共享变量被各个线程无序执行,导致结果不可预期 threading模块中定义了Lock类,可以方便的处理锁定: #创建锁mutex = threading.Lock( ...

  7. LeetCode_Generate Parentheses

    Given n pairs of parentheses, write a function to generate all combinations of well-formed parenthes ...

  8. 用keil直接生成BIN文件

    1.下载hex2bin到keil的任意目录,下载地址:http://www.keil.com/download/docs/7.asp 或者 http://www.hex2bin.com/files/h ...

  9. Oracle中对列加密的方法

    Oracle中对列加密的方法 2011-12-22 17:21:13 分类: Linux Oracle支持多种列加密方式: 1,透明数据加密(TDE):create table encrypt_col ...

  10. JVM基础和调优(二)

    主要讲述java虚拟机的内存体系结构 了解了JVM 的一些基础之后,我们来看看java虚拟机内存的体系结构,这个是理解JVM垃圾收集算法的前提,理解了内存结构我们才能够针对不同的部分根据我们的程序进行 ...