lvs 中DR模式负载均衡及keepalived
lvs DR配置
LVS负载均衡:三种负载均衡模式:DR,TUN(ip隧道),NAT,这里我们介绍DR模式
server1:
首先,配置server机yum源 方便后期实验流畅
vim /etc/yum.repos.d/rhel-source.repo
[rhel-source]
name=Red Hat Enterprise Linux $releasever - $basearch - Source
baseurl=http://172.25.8.250/rhel6.5
enabled=1
gpgcheck=1
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-redhat-release
name=LoadBalancer
baseurl=http://172.25.8.250/rhel6.5/LoadBalancer
gpgcheck=0
name=HighAvailability
baseurl=http://172.25.8.250/rhel6.5/HighAvailability
gpgcheck=0
name=ResilientStorage
baseurl=http://172.25.8.250/rhel6.5/ResilientStorage
gpgcheck=0
name=ScalableFileSystem
baseurl=http://172.25.8.250/rhel6.5/ScalableFileSystem
gpgcheck=0
ipvsadm -A -t 172.25.8.100:80 -s rr ##添加策略 指定vip 172.25.8.100:80,-t指tcp,-s rr 指定轮询
ipvsadm -a -t 172.25.8.100:80 -r 172.25.8.2:80 -g ##将虚拟ip映射到真实的ip,-r指定realserver -t指定tcp协议 -g指dr模式
ipvsadm -a -t 172.25.8.100:80 -r 172.25.8.3:80 -g
ipvsadm -l #列出策略
[root@server1 html]# ipvsadm -l
IP Virtual Server version 1.2.1 (size=4096)
Prot LocalAddress:Port Scheduler Flags
-> RemoteAddress:Port Forward Weight ActiveConn InActConn
TCP 172.25.8.100:http rr
-> server2:http Route 1 0 0
-> server3:http Route 1 0 0
server2:
yum install httpd
vim /var/www/html/index.html
/etc/init.d/httpd start
vim /var/www/html/index.html
/etc/init.d/httpd start
ip addr add 172.25.8.100/24 dev eth0 #添加一个虚拟ip
ip addr
server2:
ip addr add 172.25.8.100/32 dev lo
ip addr
server3:
ip addr add 172.25.8.100/32 dev lo
ip addr
物理机测试:
curl 172.25.8.100
<h1>server3</h1>
[root@foundation8 ~]# curl 172.25.8.100
<h1>server2</h1>
[root@foundation8 ~]# curl 172.25.8.100
<h1>server3</h1>
[root@foundation8 ~]# curl 172.25.8.100
<h1>server2</h1>
server2:
yum install arptables_jf
/etc/init.d/arptables_jf save ##保存策略
server3:
yum install arptables_jf
arptables -A IN -d 172.25.8.100 -j DROP
arptables -A OUT -s 172.25.8.100 -j mangle --mangle-ip-s 172.25.8.3
/etc/init.d/arptables_jf save
测试:
在物理机中
arp -d 172.25.8.100
curl 172.25.8.100
测试结果
[root@foundation8 ~]# curl 172.25.8.100
<h1>server3</h1>
[root@foundation8 ~]# curl 172.25.8.100
<h1>server2</h1>
[root@foundation8 ~]# curl 172.25.8.100
<h1>server3</h1>
[root@foundation8 ~]# curl 172.25.8.100
<h1>server2</h1>
server1:
yum install ldirectord-3.9.5-3.1.x86_64.rpm
cp /usr/share/doc/ldirectord-3.9.5/ldirectord.cf /etc/ha.d
cd /etc/ha.d/
vim ldirectord.cf

ipvsadm -C ##清空策略
/etc/init.d/ldirectord start
yum install httpd
vim /var/www/html/index.html
/etc/init.d/httpd start
[root@foundation8 ~]# curl 172.25.8.100
<h1>server2</h1>
[root@foundation8 ~]# curl 172.25.8.100
<h1>server2</h1>
[root@foundation8 ~]# curl 172.25.8.100
<h1>server2</h1>
此时,当server2也关闭httpd服务
结果如下
[root@foundation8 ~]# curl 172.25.8.100
维护中。。
[root@foundation8 ~]# curl 172.25.8.100
维护中。。

keepalived:
Keepalived的作用是检测服务器的状态,如果有一台web服务器宕机,或工作出现故障,Keepalived将检测到,并将有故障的服务器从系统中剔除,同时使用其他服务器代替该服务器的工作,当服务器工作正常后Keepalived自动将服务器加入到服务器群中,这些工作全部自动完成,不需要人工干涉,需要人工做的只是修复故障的服务器
主要用作RealServer的健康状态检查以及LoadBalance主机和BackUP主机之间failover的实现。
server1:
/etc/init.d/ldirectord stop
chkconfig ldirectord off ##关闭ldirectord服务
下载keepalived-2.0.6.tar.gz
tar zxf keepalived-2.0.6.tar.gz ##解压
yum install rpm-build -y
yum install gcc -y
yum install openssl-devel -y
cd keepalived-2.0.6
[root@server1 keepalived-2.0.6]# ./configure --prefix=/usr/local/keepalived --with-init=SYSV ##编译
[root@server1 keepalived-2.0.6]# make
[root@server1 keepalived-2.0.6]# make install ##安装
cd /usr/local/keepalived/
[root@server1 keepalived]# ls ##软链接的制作
bin etc sbin share
cd sbin/
ln -s /usr/local/keepalived/sbin/keepalived /sbin/
cd etc/rc.d/init.d
chmod +x keepalived
ln -s /usr/local/keepalived/etc/rc.d/init.d/keepalived /etc/init.d/
cd etc/sysconfig
ln -s /usr/local/keepalived/etc/sysconfig/keepalived /etc/sysconfig/
cd etc/keeplived
ln -s /usr/local/keepalived/etc/keepalived/ /etc/
scp -r keepalived/ server4:/usr/local/ ##将定制好的策略发送到server4中
cd /etc/keeplived
vim keepalived.conf


server4:
cd /usr/local/keeplived
ls
[root@server4 keepalived]# ln -s /usr/local/keepalived/etc/rc.d/init.d/keepalived /etc/init.d/
[root@server4 keepalived]# ln -s /usr/local/keepalived/etc/sysconfig/keepalived /etc/sysconfig/
mkdir /etc/keeplived
cd /etc/keepalived/
scp server1:/etc/yum.repos.d/rhel-source.repo /etc/yum.repos.d/rhel-source.repo
物理机测试
for i in range{1..6}; do curl 172.25.8.100; done
server4会自动获取ip,同时访问正常

server2:
yum install vsftpd -y
/etc/init.d/vsftpd start
server3:
yum install vsftpd -y
/etc/init.d/vsftpd start
cd /var/ftp
touch file
vim /etc/keepalived/keepalived.conf
在最下方添加
ipvsadm -l
server4:
vim /etc/keepalived/keepalived.conf
在最下方添加
测试
物理机
for i in range{1..6}; do curl 172.25.8.100; done;
lftp 172.25.8.100
互备:
server1:
vim /etc/keepalived/keepalived.conf
server4:
vim /etc/keepalived/keepalived.conf

server2:
[root@server2 ftp]# arptables -A OUT -s 172.25.8.200 -j mangle --mangle-ip-s 172.25.8.2
[root@server2 ftp]# /etc/init.d/arptables_jf save
server3:
[root@server3 ftp]# ip addr add 172.25.8.200/32 dev lo
[root@server3 ftp]# arptables -A IN -d 172.25.8.200 -j DROP
[root@server3 ftp]# arptables -A OUT -s 172.25.8.200 -j mangle --mangle-ip-s 172.25.8.3
[root@server3 ftp]# /etc/init.d/arptables_jf save
测试
for i in range{1..6}; do curl 172.25.8.100; done;

当server1或server4任意一个over时
另一台会自动获取ip并提供服务
lvs 中DR模式负载均衡及keepalived的更多相关文章
- LVS的DR模式负载均衡
参考项目:http://www.cnblogs.com/along21/p/7833261.html#auto_id_3 LVS的DR模式实现负载均衡 1.环境 lvs-server :192.168 ...
- LVS DR模式 负载均衡服务搭建
LVS 负载均衡 最近在研究服务器负载均衡,阅读了网上的一些资料,发现主要的软件负载均衡方案有nginx(针对HTTP服务的负载均衡),LVS(针对IP层,MAC层的负载均衡).LVS模式工作在网络层 ...
- lvs中dr模式配置脚本
1 dr模式介绍 1.1 lvs的安装 安装具体解释:http://blog.csdn.net/CleverCode/article/details/50586957. 1.2 lvs模式 lvs有三 ...
- CentOS下LVS DR模式负载均衡配置详解
一安装LVS准备: 1.准备4台Centos 6.2 x86_64 注:本实验关闭 SELinux和IPtables防火墙. 管理IP地址 角色 备注 192.168.1.101 LVS主调度器(Ma ...
- LVS+Keepalived-DR模式负载均衡高可用集群
LVS+Keepalived DR模式负载均衡+高可用集群架构图 工作原理: Keepalived采用VRRP热备份协议实现Linux服务器的多机热备功能. VRRP,虚拟路由冗余协议,是针对路由器的 ...
- LVS实现(VS/DR)负载均衡和Keepalived高可用
LVS是Linux Virtual Server的简写即Linux虚拟服务器,是一个虚拟的服务器集群系统一组服务器通过高速的局域网或者地理分布的广域网相互连接,在它们的前端有一个负载调度器(Load ...
- centos7下通过LVS的DR模式实现负载均衡访问
一.两台服务器作为real server ,一台作为director director:172.28.18.69 vip:172.28.18.70 real server1:172.28.18.71 ...
- Keepalived+lvs 搭建高可用负载均衡
本站点停止更新,请访问:blog.coocap.com 不了解负载均衡高可用的童鞋,强烈建议先看keepalived+nginx高可用负载均衡: 传送门(求粉):http://www.cnblogs. ...
- LVS集群中的IP负载均衡技术
LVS集群中的IP负载均衡技术 章文嵩 (wensong@linux-vs.org) 转自LVS官方参考资料 2002 年 4 月 本文在分析服务器集群实现虚拟网络服务的相关技术上,详细描述了LVS集 ...
随机推荐
- oracle语法练习汇总
全是自己一个一个敲出来的啊 啊 啊 --(1)查询20号部门的所有员工信息. --(2)查询所有工种为CLERK的员工的工号.员工名和部门名. select e.empno,e.ename,d.dna ...
- [转]PHP部分常见算法
1. 用户密码六位数,不能大于六位而不能小于六数,数字值正则为[0-9],请用PHP写出有几种可能性,并做暴力破解; function dePassword($pwd) { $tmp = array( ...
- R: 正则表达式
正则表达式: 例:sub("a","",c("abcd","dcba")): [1] "bcd" ...
- PHP网站在Linux服务器上安全设置方案
本文总结了PHP网站在Linux服务器上一些安全设置(ps:还有一些设置给忘了),在<lnmp一键安装包>大多数参数已经包含,如果有什么更多的设置,大家一起讨论学习 PHP安全配置 1. ...
- Spring第五篇
在Spring第四篇中 我们主要介绍了set get的注入方式 在Spring第五篇中 我们主要介绍使用注解配置Spring 主要分为两个步骤 1 导包的同时引入新得约束 导包如下 1.1 重写注解代 ...
- C#实现远程开机(局域网测试通过)
首先介绍相关知识. UDP协议 UDP 是User Datagram Protocol的简称, 中文名是用户数据报协议,是OSI(Open System Interconnection,开放式系统互联 ...
- eval实例
.... var sel_MedicineType = 'sel_MedicineType' + lastIndex; eval(sel_MedicineType + "= new C_Se ...
- ueditor UEditor的setContent的时候报错
今天在使用UEditor的setContent的时候报错,报错代码如下 TypeError: me.body is undefined 或 Uncaught TypeError: Cannot set ...
- gRPC官方文档(安全认证)
文章来自gRPC 官方文档中文版 认证 gRPC 被设计成可以利用插件的形式支持多种授权机制.本文档对多种支持的授权机制提供了一个概览,并且用例子来论述对应API,最后就其扩展性作了讨论. 马上将会推 ...
- Linux基础学习(二)
前言: 我们在上一节了解了一下linux的硬件组成,虽然也许对具体的东西还不甚了解,但是我们知道了linux下一切皆文件这一特性 我们装好了CentOS7的虚拟机(这个可以看别人教程来装起来,比较简单 ...