LVS-DR(单个LVS Router)
来源:互联网 发布:护眼软件 编辑:程序博客网 时间:2024/05/16 11:24
目标:
负载均衡器LVS(ip为:10.12.121.43,虚拟IP为:10.12.121.155);
实机两台分别为rs2(ip为:10.12.121.56),rs3(ip为10.12.121.28);
这三台机器都安装一块网块。在一客户端cs(ip为:192.168.3.1)上访问http://10.12.121.155,会轮流访问两台实机,则实验成功。
1,配置LVS机器:
在ubuntu server 10.4 默认安装是没有安装ipvsadm软件包的,在网上看了很多教程,都要编辑内核,但现在2.6.32内核已经不需要再编辑了。
#sudo apt-get install ipvsadm
会提示 please run dpkg –reconfigure ipvsadm
#sudo dpkg–reconfigure ipvsadm (dpkg与-reconfigure是连到一起中间没空格)
步骤一:选否
步骤二:选none
步骤三:直接确定
2、配置 ipvsadm文件,sudo vi /etc/init.d/ipvsadm
插入如下内容:
sudo ipvsadm -C //清除IPVS表
sudo ifconfig eth0:0 10.12.121.155 netmask 255.255.255.255 broadcast 10.12.121.155
sudo route add -host 10.12.121.155 dev eth0:0
sudo ipvsadm -A -t 10.12.121.155:80 -s rr
(-A:add virtual service with options)
(-t : service-address is host[:port])
(-s : scheduler,one of rr|wrr|lc|wlc|lblc|lblcr|dh|sh|sed|nq)
sudo ipvsadm -a -t 10.12.121.155:80 -r 10.12.121.56 -g
(-a : add real server with options)
(-g : gatewaying (direct routing) (default))
sudo ipvsadm -a -t 10.12.121.155:80 -r 10.12.121.28 -g
sudo ipvsadm -save
修改 ipvsadm文件后,做一次sudo service ipvsadm restart
3、修改sysctl.conf文件,sudo vi /etc/sysctl.conf
插入内容如下:
#virtual sever
net.ipv4.ip_forward=0
//值为0,表示禁止数据包转发,1表示允许。因为Director跟RealServer是同一个网段,无需开启转发。(http://blog.sina.com.cn/s/blog_a94d887a01017b01.html)
net.ipv4.conf.all.send_redirects=1
//send_redirects 控制 IPv4 是否发送 ICMPv4 重定向消息。0(禁用);1(启用)
net.ipv4.conf.default.send_redirects=1
net.ipv4.conf.eth0.send_redirects=1
#end
保存一下sudo sysctl –p
4、配置实机rs2,rs3为如下
#sudo ifconfig lo:0 10.12.121.155 netmask 255.255.255.255 broadcast 10.12.121.155
//lo: local的简写,一般指本地环回接口,就是自己访问自己的接口(http://soft.chinabyte.com/os/327/11628327.shtml)
#sudo route add -host 10.12.121.155 dev lo:0
修改/etc/sysctl.conf
net.ipv4.ip_forward=0
net.ipv4.conf.lo.arp_ignore=1
net.ipv4.conf.lo.arp_announce=2
net.ipv4.conf.all.arp_ignore=1
net.ipv4.conf.all.arp_announce=2
#sudo sysctl –p
最后:
把rs2,rs3的/var/www下的index.html的内容修改为“this is rs2”,”this is rs3”,当访问时区别访问的是那台机器,查看实验是否成功。
在实验过程中:刚开始没有修改实机rs2,rs3下的/etc/sysctl.conf,在访问http://10.12.121.155 时,有时能轮流的访问rs2,rs3,有时不能,修改后,发现效果很好,达到实验目标。为什么要修改可以参考以下http://www.austintek.com/LVS/LVS-HOWTO/HOWTO/LVS-HOWTO.arp_problem.html的内容。
LVS-DR(主备LVS Router)
目标:
负载均衡器:
Master LVS(ip为:10.12.121.43,虚拟IP为:10.12.121.155);
Backup LVS(ip为:10.12.121.51,虚拟IP为:10.12.121.155);
实机两台:
rs2ip为:10.12.121.56);
rs3(ip为10.12.121.28);
这三台机器都安装一块网块。在一客户端cs(ip为10.12.121.44)上访问http://10.12.121.155,会轮流访问两台实机,则实验成功
1、在Master LVS和Backup LVS上操作如下
(1)、安装 keepalived
sudo apt-get install keepalived
(2)、安装ipvsadm
sudo apt-get install ipvsadm
#sudo dpkg–reconfigure ipvsadm (dpkg与-reconfigure是连到一起中间没空格)
步骤一:选否
步骤二:选Master//其中作为Active LVS Router的设为Master,备份的设为Backeup
步骤三:直接确定
(3)、配置keepalived.conf文件,/etc/keepalived/keepalived.conf
内容如下:
global_defs {
notification_email {
hawei@360buy.com
}
notification_email_from hawei@d360buy.com
smtp_server 211.151.32.10
#报错发送给至此邮箱
smtp_connect_timeout 30
router_id LVS_DEVEL #为了标识当前节点,当然两个节点的此项设置可相同,也可不相同
}
vrrp_instance VI_1 {
state MASTER#备份服务器上将MASTER改为BACKUP
interface eth0 #绑定虚拟IP的网络接口,这个还是看MASTER和BACKUP的实际以太网接口陪,一般都是eth0
virtual_router_id 51 #VRRP组名,两个节点的设置必须一样,以指明各个节点属于同一VRRP组
priority 100 #主节点的优先级(1-254之间),备用节点必须比主节点优先级低
advert_int 1 #组播信息发送间隔,两个节点设置必须一样
authentication { #设置验证信息,两个节点必须一致
auth_type PASS
auth_pass 1111
}
virtual_ipaddress { #指定虚拟IP, 两个节点设置必须一样
10.12.121.155
}
}
virtual_server 10.12.121.155 80 {
delay_loop 6 #健康检查时间间隔,单位是秒。
lb_algo wrr #负载均衡调度算法,互联网应用常使用wlc或rr。
lb_kind DR #负载均衡转发规则。一般包括DR、NAT、TUN3种。
persistence_timeout 2
protocol TCP
real_server 10.12.121.56 80 {
weight 3
TCP_CHECK { #Tcp检查
connect_timeout 10
nb_get_retry 3 #重连次数
delay_before_retry 3 #重连间隔时间
connect_port 80 #连接端口
}
}
real_server 10.12.121.28 80 {
weight 3
TCP_CHECK {
connect_timeout 10
nb_get_retry 3
delay_before_retry 3
connect_port 80
}
}
}
和Backup LVS Router相比,值需要修改state MASTER。
2、配置实机rs2,rs3为如下
#sudo ifconfig lo:0 10.12.121.155 netmask 255.255.255.255 broadcast 10.12.121.155
#sudo route add -host 10.12.121.155 dev lo:0
修改/etc/sysctl.conf
net.ipv4.ip_forward=0
net.ipv4.conf.lo.arp_ignore=1
net.ipv4.conf.lo.arp_announce=2
net.ipv4.conf.all.arp_ignore=1
net.ipv4.conf.all.arp_announce=2
#sudo sysctl –p
3、查看日志
(1)、tail -f /var/log/messages
(2)、如果第一种方法不可行,可通过如下方法
在/etc/rsyslog.d/50-default.conf里
插入:local0.* /var/log/keepalived.log
然后:/etc/init.d/rsyslog restart
用sudo keepalived -d -D -S 0 启动keepalived,可以通过查看ps确定是否启动
然后查看日志:tail -f var/log/keepalived.log
4、测试
测试1{主要测试lvs}:访问虚拟IP是否可以访问真实服务器,是否轮询real server
测试2{主要测试keepalived}:lvs服务器的HA,当ipvsadm master挂掉后,ipvsadm backup会不会接管虚拟IP。
测试3{测试backup的lvs}:使用客户端访问现在虚拟ip,查看是否一切正常
郑州就维 www.zzjiuwei.com
- LVS-DR(单个LVS Router)
- LVS DR
- LVS-DR
- LVS-DR
- lvs -dr
- LVS-DR
- LVS--lvs-dr实现wordpress
- LVS-NAT, LVS-DR, LVS-KEEPALIVED,LVS-TUN配置
- LVS-DR 原理
- LVS NAT / DR
- LVS DR mode
- 配置 LVS DR模式
- Centos 安装LVS(dr)
- LVS/DR配置笔记
- LVS DR备忘
- LVS DR模式配置
- lvs-dr配置
- LVS DR模型
- 2014-6-25任务完成情况
- android怎么引入第三方包
- Linux查看端口使用状态、关闭端口方法
- SharePoint创建Alternate Access Mapping (AAM)备用访问映射
- 黑马程序员---Java高新基础加强
- LVS-DR(单个LVS Router)
- UNIX 高级编程 这边书 封面漫画的意思你看懂没有?
- 面向对象系列一(继承)
- 苹果面试过程中求职者可能遇到的问题
- 迷迷糊糊的一个月(2014.6.27 22:30)
- 安装APP损坏,出现[INSTALL_FAILED_DEXOPT]的解决办法
- 1036. Boys vs Girls
- 通过Keepalived实现Redis Failover自动故障切换功能
- Linux下查看并发连接数(转)