实验拓扑图:

实验原理:

Keepalived 是基于 LVS ,并与 LVS 高度融合的

LVS和keepalived的关系:lvs起的是负载均衡功能,而keepalived则是高可用(热

备)的支持,两者均可以单独使用。

keeaplived可以在主从都运行良好的情况下检测主备状态,当主服务器down掉,

或者进程意外终止时,先将VIP绑定到备服务器上,然后通过指定的脚本来提升备

服务器的应用层面的角色定位。

实验环境:

RealServer1     CentOS7  192.168.81.57

RealServer2     CentOS7  192.168.81.58

K&L Master     CentOS7  192.168.81.59

K&L Master     CentOS7  192.168.81.60

$VIP 192.168.81.150

实验过程:

一、在RealServer搭建网站(为方便验证。此处使用服务器IP地址)

[root@localhost ~]# systemctl stop firewalld

[root@localhost ~]# setenforce 0

[root@localhost ~]#  yum -y install httpd

[root@localhost ~]# systemctl start httpd

[root@localhost ~]# echo '192.168.81.57'>/var/www/html/index.html

浏览器访问验证

[root@localhost~]# ifconfig lo:0 192.168.81.150 netmask 255.255.255.255 broadcast 192.168.81.150

[root@localhost ~]# /sbin/route add -host 192.168.81.150 dev lo:0

[root@localhost ~]# echo "1" > /proc/sys/net/ipv4/conf/lo/arp_ignore

[root@localhost ~]# echo "2" > /proc/sys/net/ipv4/conf/lo/arp_announce

[root@localhost ~]# echo "1" > /proc/sys/net/ipv4/conf/all/arp_ignore

[root@localhost ~]# echo "2" > /proc/sys/net/ipv4/conf/all/arp_announce

[root@localhost ~]# sysctl –p

二、配置Keepalived & Lvs服务器

[root@localhost ~]# systemctl stop firewalld

[root@localhost ~]# setenforce 0

[root@localhost ~]# yum -y install gcc gcc-c++ make openssl* libtool-devel* popt-devel*

[root@localhost ~]# ls(上传lvs和keepalived安装包)

ipvsadm-1.26-4.el6.x86_64.rpm  keepalived-1.2.19.tar.gz  lvs.sh

----------------K & L------------------------

[root@localhost ~]# yum -y install gcc gcc-c++ make openssl* libtool-devel* popt-devel* net-tools

[root@localhost ~]# yum -y install ipvsadm-1.26-4.el6.x86_64.rpm

[root@localhost ~]# tar -xzvf keepalived-1.2.19.tar.gz

[root@localhost ~]# cd keepalived-1.2.19

[root@localhost ~]# ./configure

[root@localhost ~]# make && make install

[root@localhost ~]# vim /usr/local/etc/keepalived/keepalived.conf

------------Master----------------

vrrp_instance VI_1 {

state MASTER

interface eno16777736

virtual_router_id 88

priority 100

advert_int 1

authentication {

auth_type PASS

auth_pass 1111

}

virtual_ipaddress {

192.168.81.150/24

}

}

virtual_server 192.168.81.150 80 {

delay_loop 6

lb_algo wrr

lb_kind DR

#   persistence_timeout 50

protocol TCP

real_server 192.168.81.57 80 {

weight 2

TCP_CHECK {

connect_timeout 3

nb_get_retry 3

delay_before_retry 3

connect_port 80

}

}

real_server 192.168.81.58 80 {

weight 3

TCP_CHECK {

connect_timeout 3

nb_get_retry 3

delay_before_retry 3

connect_port 80

}

}

}

------------Backup----------------

vrrp_instance VI_1 {

state BACKUP

interface eno16777736

virtual_router_id 88

priority 50

advert_int 1

authentication {

auth_type PASS

auth_pass 1111

}

virtual_ipaddress {

192.168.81.150/24

}

}

virtual_server 192.168.81.150 80 {

delay_loop 6

lb_algo wrr

lb_kind DR

#   persistence_timeout 50

protocol TCP

real_server 192.168.81.57 80 {

weight 2

TCP_CHECK {

connect_timeout 3

nb_get_retry 3

delay_before_retry 3

connect_port 80

}

}

real_server 192.168.81.58 80 {

weight 3

TCP_CHECK {

connect_timeout 3

nb_get_retry 3

delay_before_retry 3

connect_port 80

}

}

}

------------------------------------

[root@localhost keepalived-1.2.19]# keepalived -D -f /usr/local/etc/keepalived/keepalived.conf

[root@localhost keepalived-1.2.19]# ip a(VIP只出现在MASTER上)

三、检测结果

测试负载平衡(这里在IP地址为192.168.81.12的虚拟机进行测试.57/58出现的频率为2:3)

关闭MASTER的KEEPALIVE,再查看IP是否漂移

Keepalived & Lvs集群搭建实验的更多相关文章

  1. 基于VMware的虚拟Linux集群搭建-lvs+keepalived

    基于VMware的虚拟Linux集群搭建-lvs+keepalived 本文通过keepalived实现lvsserver的的双机热备和真实server之间的负载均衡.这方面的blog挺多,可是每一个 ...

  2. MySQL集群搭建(4)-MMM+LVS+Keepalived

    1 LVS 介绍 1.1 简介 LVS 是 Linux Virtual Server 的简写,意即 Linux 虚拟服务器,是一个虚拟的服务器集群系统.本项目在 1998 年 5 月由章文嵩博士成立, ...

  3. HA(High available)-Keepalived高可用性集群(双机热备)单点实验-菜鸟入门级

    HA(High available)-Keepalived高可用性集群   Keepalived 是一个基于VRRP虚拟路由冗余协议来实现的WEB 服务高可用方案,虚拟路由冗余协议 (Virtual ...

  4. 多puppetmaster,多ca,keepalived+haproxy(nginx)puppet集群搭建

    多puppetmaster,多ca,keepalived+haproxy(nginx)puppet集群搭建 一.服务器详情 192.168.122.111 pm01.jq.com pm01 #(pup ...

  5. CentOS7Linux中服务器LVS负载均衡、高可用集群搭建(NAT、DR);

    目录 集群 声明 集群概念 集群特性 Web服务器并发相应瓶颈 集群的分类 LB实现方法: LVS集群 负载调度器 服务器池 共享存储 LVS负载均衡的三种模式 负载均衡 集群 声明 文档不断更新中. ...

  6. rabbitmq+haproxy+keepalived实现高可用集群搭建

    项目需要搭建rabbitmq的高可用集群,最近在学习搭建过程,在这里记录下可以跟大家一起互相交流(这里只是记录了学习之后自己的搭建过程,许多原理的东西没有细说). 搭建环境 CentOS7 64位 R ...

  7. 每秒处理3百万请求的Web集群搭建-用 LVS 搭建一个负载均衡集群

    这篇文章是<打造3百万次请求/秒的高性能服务器集群>系列的第3部分,有关于性能测试工具以及优化WEB服务器部分的内容请参看以前的文章. 本文基于你已经优化好服务器以及网络协议栈的基础之上, ...

  8. docker实验--redis集群搭建

    背景介绍: 我经常在做一些小项目的时候,采用了Redis来做缓存,但是都是基于单节点的,一旦redis挂了,整个项目就挂了.于是乎,想到了多节点集群的方式来使用,就开始折腾着怎么去搭建这个集群.在网上 ...

  9. Keepalived之高可用LVS集群

    前文我们聊了下keepalived的邮件通知相关配置,回顾请参考https://www.cnblogs.com/qiuhom-1874/p/13645163.html:今天我们来说说keepalive ...

随机推荐

  1. Spring学习大纲

    1.BeanFactory 和 FactoryBean? 2.Spring IOC 的理解,其初始化过程? 3.BeanFactory 和 ApplicationContext? 4.Spring B ...

  2. Cyber-Ark spring mvc @autowired

    我们帮助中国平安改进他们重要系统的特权帐号密码管理,提供给他们一个“统一的,集中的,安全的”特权帐号密码管理解决方案.完全满足平安信息安全部对“特权帐号生命周期管理”的理解和需求,而且关键组件的高可用 ...

  3. c# 时间格式处理,获取格式: 2014-04-12T12:30:30+08:00

    C#  时间格式处理,获取格式: 2014-04-12T12:30:30+08:00 一.获取格式: 2014-04-12T12:30:30+08:00 方案一:(局限性,当不是当前时间时不能使用) ...

  4. [USACO08FEB]酒店Hotel 线段树 BZOJ 1593

    题目描述 The cows are journeying north to Thunder Bay in Canada to gain cultural enrichment and enjoy a ...

  5. max Count Group by

    select UserName ,Max(LoginTime),count(1) from LoginLog group by UserName 只 group by UserName就行 可以得到L ...

  6. Long类型比较不能直接用等于

    在判断两个Long型数据是否相等的时候遇到了一个问题. 使用“==”的疑问 if (user.getId() == admin.getId()) { return true; } else { ret ...

  7. FileWriter 中午乱码

      解决办法 BufferedWriter writer = new BufferedWriter (new OutputStreamWriter (new FileOutputStream (fil ...

  8. Educational Codeforces Round 7 B

    Description You are given the current time in 24-hour format hh:mm. Find and print the time after a  ...

  9. hau 1870 愚人节的礼物(栈)

    愚人节的礼物 Time Limit: 5000/1000 MS (Java/Others)    Memory Limit: 32768/32768 K (Java/Others)Total Subm ...

  10. 机器学习值KNN