一、实验环境和网络拓扑图

  本实验需要5台虚拟机,一台客户机,2台lvs调度器,两台web服务器。

  客户机:192.168.0.6/24

  lvs1:192.168.0.201/24

  lvs2:192.168.0.200/24

  web1:192.168.0.19/24

  web2:192.168.0.127/24

  网络拓扑如下:

二、web服务器的配置

2.1.1、安装apache服务和修改网站首页

  命令:

web1:
1 yum -y install httpd
echo "192.168.0.19" > /var/www/html/index.html
systemctl start httpd
systemctl enable httpd
web2:
1 yum -y install httpd
echo "192.168.0.127" > /var/www/html/index.html
systemctl start httpd
systemctl enable httpd

2.1.2、伪装VIP地址

  当lvs将请求数据包发送给web服务器时,web服务器根据请求将web网页的结果返回给客户端,但是这时数据包的源IP地址是web服务器的IP地址,客户端接收到数据包后,发现回包的IP地址不是自己请求的IP地址,就会把包丢弃掉,这会导致web请求失败,所以需要将web的IP地址伪装成为客户端访问的VIP地址。这里使用web服务器的环回口地址进行伪装。

命令:

cp /etc/sysconfig/network-scripts/ifcfg-lo  /etc/sysconfig/network-scripts/ifcfg-lo:
vim /etc/sysconfig/network-scripts/ifcfg-lo:
修改网卡名称,修改IP地址,删除UUID号,IP地址的掩码必须是32位,也就是4个255

两个web服务器的配置是一样的。修改虚拟网卡lo:0后,先不急着重启网卡。

为防止VIP和lvs上的VIP相互冲突,需要将web服务器的arp的通告配置进行修改,也就是arp解析时不把自己的IP地址告诉请求者,在请求别人时也不宣告自己是192.168.0.202(VIP地址)。

sysctl -p 执行这条命令以上配置修改生效,执行完这条命令后就可以重启网卡。

重启网卡后你就可以看到虚拟网卡lo:0和VIP地址了。

命令:ifconfig

这里只展示了一台web服务的VIP伪装,另一台的配置和这一台的配置一模一样。就不在介绍了。

三、lvs服务器的配置

  3.1.1、安装keepalived

命令:

yum -y install keepalived

  3.1.2、修改keepalived配置文件,/etc/keepalived/keepalived.conf

配置完成后,启动keepalived的服务

命令:systemctl start keepalived

重启服务后,keepalived服务会在防火墙中生成一些规则,这些规则会导致实验失败,这里需要清除这些规则或者直接关闭防火墙。

清除规则:iptables -F

关闭防火墙:Systemctl stop firewalld

另外一台lvs的配置和这台一样,不详细介绍。

3.1.3、查看vrrp是否配置成功,查看虚拟ip。也就是VIP。

命令:ip address show

3.1.4、查看lvs配置是否成功

  安装ipvsadm软件,用于查看lvs的状态

命令:yum -y install ipvsadm

3.1.5、测试健康检查是否成功

  断掉web1的网络,模拟web1网络故障。

3.2、测试负载均衡是否成功

通过客户端,使用curl访问lvs的VIP地址。如:curl 192.168.0.202

就此,整个实验完成。

lvs+keepalived高可用负载均衡的更多相关文章

  1. 测试LVS+Keepalived高可用负载均衡集群

    测试LVS+Keepalived高可用负载均衡集群 1. 启动LVS高可用集群服务 此时查看Keepalived服务的系统日志信息如下: [root@localhost ~]# tail -f /va ...

  2. LVS+Keepalived高可用负载均衡集群架构实验-01

    一.为什么要使用负载均衡技术? 1.系统高可用性 2.  系统可扩展性 3.  负载均衡能力 LVS+keepalived能很好的实现以上的要求,LVS提供负载均衡,keepalived提供健康检查, ...

  3. 配置LVS + Keepalived高可用负载均衡集群之图文教程

    负载均衡系统可以选用LVS方案,而为避免Director Server单点故障引起系统崩溃,我们可以选用LVS+Keepalived组合保证高可用性.  重点:每个节点时间都同步哈! C++代码 [r ...

  4. Ubuntu构建LVS+Keepalived高可用负载均衡集群【生产环境部署】

    1.环境说明: 系统版本:Ubuntu 14.04 LVS1物理IP:14.17.64.2   初始接管VIP:14.17.64.13 LVS2物理IP:14.17.64.3   初始接管VIP:14 ...

  5. Heartbeat+LVS构建高可用负载均衡集群

    1.heartbeat简介: Heartbeat 项目是 Linux-HA 工程的一个组成部分,它实现了一个高可用集群系统.心跳服务和集群通信是高可用集群的两个关键组件,在 Heartbeat 项目里 ...

  6. 案例一(haproxy+keepalived高可用负载均衡系统)【转】

    1.搭建环境描述: 操作系统: [root@HA-1 ~]# cat /etc/redhat-release CentOS release 6.7 (Final) 地址规划: 主机名 IP地址 集群角 ...

  7. 使用Ansible实现nginx+keepalived高可用负载均衡自动化部署

    本篇文章记录通过Ansible自动化部署nginx的负载均衡高可用,前端代理使用nginx+keepalived,端web server使用3台nginx用于负载效果的体现,结构图如下: 部署前准备工 ...

  8. Keepalived+LVS(dr)高可用负载均衡集群的实现

    一 环境介绍 1.操作系统CentOS Linux release 7.2.1511 (Core) 2.服务keepalived+lvs双主高可用负载均衡集群及LAMP应用keepalived-1.2 ...

  9. Keepalived+lvs 搭建高可用负载均衡

    本站点停止更新,请访问:blog.coocap.com 不了解负载均衡高可用的童鞋,强烈建议先看keepalived+nginx高可用负载均衡: 传送门(求粉):http://www.cnblogs. ...

随机推荐

  1. haproxy 配置文件详解 之 backend

    配置示例: backend htmpool mode http option redispatch option abortonclose balance static-rr cookie SESSI ...

  2. haproxy 配置文件详解 之 global

    配置示例: global log 127.0.0.1 local0 info maxconn user nobody group nobody daemon nbproc pidfile /usr/l ...

  3. wkhtmltopdf cpdf HTML转pdf 及pdf合并

    将 html 转为 pdf :wkhtmltopdf wkhtmltopdf 是一个使用 webkit 网页渲染引擎开发的用来将 html 转成 pdf 的工具,可以跟多种脚本语言进行集成来转换文档. ...

  4. GEO2R

    GEO2R 是GEO数据库官方提供的一个工具,用于进行差异表达分析. 该工具实现的功能就是将GEO数据库中的数据导入到R语言中,然后进行差异分析,本质是通过以下两个bioconductor上的R包实现 ...

  5. Keras 入门实例

    使用Keras构建神经网络的基本工作流程主要可以分为 4个部分.(而这个用法和思路,很像是在使用Scikit-learn中的机器学习方法) Model definition → Model compi ...

  6. git clean解决 GIT error: The following untracked working tree files would be overwritten

    git clean用法:https://www.cnblogs.com/lsgxeva/p/8540476.html :

  7. centos中更新glibc库文件到2.17

    1 确保安装过gcc yum install gcc 2 获取glibc相关版本 wget http://ftp.gnu.org/pub/gnu/glibc/glibc-2.17.tar.xz 3 解 ...

  8. spring Valid @Pattern 常见的验证表达式

    1 匹配首尾空格的正则表达式:(^\s*)|(\s*$)   2 整数或者小数:^[0-9]+\.{0,1}[0-9]{0,2}$ 3 只能输入数字:"^[0-9]*$". 4 只 ...

  9. 关于C语言中整数范围的一些解释

    示例代码 #include <stdio.h> int main() { ; printf("%d\n", c); ; printf("%d\n", ...

  10. Codility MinMaxDivision

    最近发现了一个刷题网站:https://app.codility.com/programmers/lessons 这个网站做题目时候的界面让我惊艳到了 首先这是题目界面: 然后点击start, 出来的 ...