场景:

  环境中有两台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. Microsoft.Practices.Unity 给不同的对象注入不同的Logger

    场景:我们做项目的时候常常会引用第三方日志框架来帮助我们记录日志,日志组件的用途主要是审计.跟踪.和调试.就说我最常用的日志组件log4net吧,这个在.NET同行当中应该算是用得非常多的一个日志组件 ...

  2. simulate windows postmessage or keydown

    2 ways: 1. under TForm:   if assigned(focused) then      Focused.keydown(key,keychar,[]); 2. using s ...

  3. mv command:unable to remove target: Is a director

    mv command:unable to remove target: Is a director This is somewhat simple as long as we understand t ...

  4. sgu495:概率dp / 推公式

    概率题..可以dp也可以推公式 抽象出来的题目大意: 有 n个小球,有放回的取m次  问 被取出来过的小球的个数的期望 dp维护两个状态 第 i 次取出的是 没有被取出来过的小球的 概率dp[i] 和 ...

  5. Django之验证码 + session 认证

    验证码 + session认证 目录结构 . └── project ├── app01 │   ├── admin.py │   ├── apps.py │   ├── __init__.py │  ...

  6. 基于drools创建自己的关系操作符

    我们知道drools提供了12种关系操作符 但是有些时候这12种操作符依然不能满足我们的业务需求,我们可以扩展自己的操作符,下面是为某一航空公司做项目时扩展了操作符,在这分享下 首先,我们要实现的逻辑 ...

  7. 为MyEclipse加入自己定义凝视

    非常多时候我们默认的MyEclipse的类凝视是这种,例如以下图 能够通过改动MyEclipse的凝视规则来改变,不但能够改动类的.还能够改动字段.方法等凝视规则,操作方法例如以下 1.针对方法的凝视 ...

  8. Linux编程环境介绍(1) -- linux的历史

    1. linux是什么? "Hello everybody out there using minix——I'm doing a (free) operating system"  ...

  9. [Regex Expression] Find Sets of Characters

    Regular Expression Character Classes define a group of characters we can use in conjunction with qua ...

  10. Qt 图形特效(Graphics Effect)介绍

    原文链接:Qt 图形特效(Graphics Effect)介绍 QGraphicsEffect也是Qt-4.6引入的一个新功能.它让给图形元素QGraphicsItem增加更佳视觉效果的编程变得非常简 ...