LVS技术浅析
来源:互联网 发布:淘宝上怎么退货 编辑:程序博客网 时间:2024/05/29 03:49
本文将介绍部署LVS一个最简单的流程;
LVS本身是一个内核模块:ip_vs,位于内核目录net/netfilter/ipvs/下,官方网址:http://www.linuxvirtualserver.org/;
从2.4内核开始,linux kernel已经集成了ipvs模块;因此,当前我们的系统kernel都是支持LVS功能的,无需额外下载;
那么,我们如何操作内核模块ipvs呢?
LVS官方提供了一个应用程序ipvsadm,可用通过ipvsadm的一系列命令和内核ipvs打交道。
1.ipvsadm
ipvsadm程序可以从官网http://www.linuxvirtualserver.org/software/ipvs.html下载,最新版本为ipvsadm-1.26 ;
编译过程中,可能会遇到error,官网已经提供了解决方法:http://kb.linuxvirtualserver.org/wiki/Compiling_ipvsadm_on_different_Linux_distributions#Red_Hat_Enterprise_Linux_6;
ln -s /usr/src/kernels/2.6.32-431.el6.x86_64 /usr/src/linux
yum install libnl* popt*
ipvsadm安装完毕后,简单地配置一个LVS:
vip为10.220.1.8,端口80,调度算法为RR(round-robin);
2台realserver 192.168.1.10/11,转发模式为DR;
LVS服务器上配置:
- 添加1个vip
- 添加2台rs
- 查看配置
- 绑定vip到接口网卡eth0
RS服务器上配置:
- 绑定vip到lo网络接口
- 防止vip mac冲突
ipvsadm虽然可以完成LVS的所有配置,但要线上应用,还有一些不足;
- LVS down了怎么办?
- RS down了怎么办?
LVS管理软件-keepalived-很好的解决了上述问题,
- LVS down?- 采用VRRP心跳协议,实现LVS主备冗余;
- RS down? - 提供4/7层健康检测;
我们线上都采用该软件进行LVS配置管理;
keepalived官网:http://www.keepalived.org/,最新版本为1.2.7;
2. keepalived
keepalived主要以配置文件的方式来管理LVS;
默认配置文件为 /etc/keepalived/keepalived.conf;
启动方式: keepalived -d -f /etc/keepalived/keepalived.conf;
接下来,我们详细介绍一下keepalived.conf的常用配置选项;
global_defs {
#这个一般不配置,用途不大
}
#下面配置LVS主备冗余
#主备冗余采用VRRP协议,是支持一主多从的协议;
#参见http://en.wikipedia.org/wiki/Virtual_Router_Redundancy_Protocol
vrrp_instance VI_1 { #主LVS配置
}
vrrp_instance VI_2 { #从LVS配置
}
#下面配置内核ip_vs信息和健康监测参数;
#如果几个vip对应相同的RS,则建议采用本group配置;这样可以减少健康检查次数virtual_server_group www {
}
virtual_server group www {