博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
《开源运营技术精髓》之负载均衡-1.2
阅读量:6260 次
发布时间:2019-06-22

本文共 2218 字,大约阅读时间需要 7 分钟。

6.1.2 lvs客户端

 
Lvs
的客户端指负载均衡其/
转发器(director
)后面提供服务的真实机器。负载均衡类型(lb_kind
)一般分直接路由模式DR 
、网络地址转换模式 NAT以及
隧道模式TUN
三种。Lvs
客户端的配置是根据其所采用的负载均衡种类(lb_kind)
来做相应操作的。在我们的应用环境里,为了获得最高的性能,采用的负载均衡种类(lb_kind)
是直接路由模式DR
 
不管采取哪一种模式,lvs
客户端都不需安装额外的软件。
 
Lvs
可支持的客户端包括:各种GNU/linux
、大部分unix
以及windows
。目前我已经成功运行的lvs
客户端环境有centos
redhat
freebsd
windows
等。需要注意的是,由于客户端操作系统的不同,lvs
客户端的配置也就各不相同了。本书中,将以centos
freebsd
两种操作系统作为lvs
的客户端,给出其直接路由模式DR
的配置方法。
 
      lvs
客户端(真实服务器)操作系统是centos
时的配置文件
[root@huludao-2 ~]# 
more /usr/local/bin/lvs_real
#!/bin/bash
#description : start realserver
VIP=61.135.20.16
/etc/rc.d/init.d/functions
 
case "$1" in
start)
echo " start LVS of REALServer"
/sbin/ifconfig lo:0 $VIP broadcast $VIP netmask 255.255.255.255 up
echo "1" >/proc/sys/net/ipv4/conf/lo/arp_ignore
echo "2" >/proc/sys/net/ipv4/conf/lo/arp_announce
echo "1" >/proc/sys/net/ipv4/conf/all/arp_ignore
echo "2" >/proc/sys/net/ipv4/conf/all/arp_announce
;;
stop)
/sbin/ifconfig lo:0 down
echo "close LVS Directorserver"
echo "0" >/proc/sys/net/ipv4/conf/lo/arp_ignore
echo "0" >/proc/sys/net/ipv4/conf/lo/arp_announce
echo "0" >/proc/sys/net/ipv4/conf/all/arp_ignore
echo "0" >/proc/sys/net/ipv4/conf/all/arp_announce
;;
*)
echo "Usage: $0 {start|stop}"
exit 1
esac
这里对配置文件里重要的一些项进行说明:
1、
   vip(virtual ip)
。直接路由模式的vip
必须跟服务器对外提供服务的ip
地址在同一个网段,并且lvs 
负载均衡器和其他所有提供相同功能的服务器都使用这个vip.
2、
   vip
被绑定在环回接口lo0:0
上,其广播地址是其本身,子网掩码是255.255.255.255
。这与标准的网络地址设置有很大的不同。采用这种可变长掩码方式把网段划分成只含一个主机地址的目的是避免ip
地址冲突。
3、
   echo “1”,echo “2” 
这段的作用是抑制arp
广播。如果不做arp
抑制,将会有众多的机器向其他宣称:“嗨!我是奥巴马,我在这里呢!”,这样就乱套了。
 
      lvs
客户端(真实服务器)操作系统是freebsd
时的配置文件
fav1# more /usr/local/bin/lvs_real_bsd
#!/usr/local/bin/bash
#description : start realserver
VIP=61.135.20.16
 
case "$1" in
start)
echo " start LVS of REALServer"
/sbin/ifconfig lo0 $VIP  netmask 255.255.255.255 alias -arp up
;;
 
stop)
/sbin/ifconfig lo0 alias down
echo "close LVS Directorserver"
/sbin/ifconfig lo0 127.0.0.1 arp up
;;
*)
echo "Usage: $0 {start|stop}"
exit 1
esac
在这里,我们同样对这个配置脚本的某些项进行说明:
1
vip
地址设置和arp
抑制用 /sbin/ifconfig lo0 $VIP  netmask 255.255.255.255 alias -arp up
这么一行就实现了。
 
我们把这两种操作系统的lvs
客户端做个比较,发现freebsd
的配置书写上要简洁一些,是不是可以认为freebsd
的网络功能比linux
强大呢?
本文转自sery51CTO博客,原文链接:http://blog.51cto.com/sery/186859 ,如需转载请自行联系原作者
你可能感兴趣的文章
使用T4模板生成POCO类
查看>>
精度 Precision
查看>>
打印内容函数
查看>>
Mina2 udp--zhengli
查看>>
组合模式
查看>>
Checked Exceptions
查看>>
Android——4.2 - 3G移植之路之 APN (五)
查看>>
用scikit-learn和pandas学习线性回归
查看>>
Effective C++ 34
查看>>
使用Logstash创建ES映射模版并进行数据默认的动态映射规则
查看>>
英文,数字和中文混合的彩色验证码实现
查看>>
由于找不到 MSVCR100.dll,无法继续执行代码
查看>>
Django中间件
查看>>
【bootstrap】bootstrap中的tooltip的使用
查看>>
Java嵌入式数据库H2学习总结
查看>>
permission denied (publickey)问题的解决 和 向github添加ssh key
查看>>
T4 反射实体模型生成代码(Demo)
查看>>
【修改缓存路径】修改Gradle缓存路径的几种方式
查看>>
Java中Lambda表达式的使用
查看>>
Spring Cloud Sleuth超详细实战
查看>>