一般2.6.10以上内核版本都已经自带了ipvsadm,故不需要安装。

Ipvs 1.25编译

ipvsadm-1.25编译不过

  • 去掉netlink库的依赖:去掉libipvs/Makefile的CFLAGS += -DLIBIPVS_USE_NL,去掉Makefile的LIBS += -lnl。
  • 需要popt库解析命令行,在这里下载并安装http://freshmeat.net/projects/popt/.。

DR方式的LB

配置LVS主节点

1.修改proc参数

#vi /etc/sysctl.conf

net.ipv4.ip_forward = 1 
net.ipv4.conf.all.send_redirects = 0 
net.ipv4.conf.default.send_redirects = 0 
net.ipv4.conf.eth0.send_redirects = 0 
net.ipv4.conf.eth1.send_redirects = 0

#sysctl –p

2. 添加负载均衡规则

#cat > /etc/sysconfig/ipvsadm

ipvsadm -A -t 192.168.100.20:80 -s rr 
ipvsadm -a -t 192.168.100.20:80 -r 192.168.100.116:80 -g -p60 
ipvsadm -a -t 192.168.100.20:80 -r 192.168.100.117:80 -g -p60

如果添加realserver时设置了-p 60参数,则同一个客户端每次刷新页面时,连接的是同一个real server,否则会轮流更替,但我加了-p 参数会报错。 
设置连接保持(-p)参数是为了确保ftp、ssl等连接的稳定和可靠性。

3.添加虚拟IP地址

(比较郁闷的是,下面这个设置在机器上不生效,需要手动执行: ifconfig eth0:1 192.168.100.20 broadcast 192.168.100.255 netmask 255.255.255.0 )

#vi /etc/sysconfig/network-scripts/ifcfg-eth0:1

DEVICE=eth0:0 
BROADCAST=192.168.100.255 
IPADDR=192.168.100.20 
NETMASK=255.255.255.0 
ONBOOT=yes 
TYPE=Ethernet

#service network restart

4. 保存规则并设置服务状态

#ipvsadm-save > /etc/sysconfig/ipvsadm 
#chkconfig --level 35 ipvsadm on 
#service ipvsadm start

配置各Real Server节点

1. 修改proc参数

#vi /etc/sysctl.conf

net.ipv4.conf.all.arp_ignore = 1 
net.ipv4.conf.all.arp_announce = 2 
net.ipv4.conf.lo.arp_ignore = 1 
net.ipv4.conf.lo.arp_announce = 2

#sysctl –p

2.添加虚拟地址及路由记录

#vi /opt/add_vip.sh

#!/bin/bash 
ifconfig lo:0 192.168.100.20 netmask 255.255.255.255 up 
route add -host 192.168.100.20 dev lo:0

#chmod +x /opt/add_vip.sh 
#/opt/add_vip.sh 
#echo "/opt/add_vip.sh"  >> /etc/rc.local

NAT方式的LB

在同一个网段内设置,没有成功,网上说需要设置iptables-nat,但同一个网段需要么?

验证LVS

在LVS主节点上执行

ipvsadm -L -n

LVS源码分析

LVS源码在下面网站中有详细分析,写得非常不错,如果想深入研究的,建议看一下。

http://www.yubo.org/ipvs/index.php

这儿有张netfilter的框架图,也值得看看

http://zh.linuxvirtualserver.org/files/linux2.6.32.2netfilter.JPG

CentOS LVS安装配置的更多相关文章

  1. Centos下安装配置LAMP(Linux+Apache+MySQL+PHP)

    Centos下安装配置LAMP(Linux+Apache+MySQL+PHP)   关于LAMP的各种知识,还请大家自行百度谷歌,在这里就不详细的介绍了,今天主要是介绍一下在Centos下安装,搭建一 ...

  2. CentOS 7安装配置Apache HTTP Server

    原文 CentOS 7安装配置Apache HTTP Server   RPM安装httpd # yum -yinstall httpd //安装httpd会自动安装一下依赖包: apr apr-ut ...

  3. CentOS 7 安装配置 NFS

    CentOS 7  安装配置 NFS 环境 nps 192.168.1.97 client 192.168.1.98 一.yum 安装 yum -y install nfs-utils rpcbind ...

  4. 分布式文件系统 FastDFS 5.0.5 & Linux CentOS 7 安装配置(单点安装)——第一篇

    分布式文件系统 FastDFS 5.0.5 & Linux CentOS 7 安装配置(单点安装)--第一篇 简介 首先简单了解一下基础概念,FastDFS是一个开源的轻量级分布式文件系统,由 ...

  5. CentOS 7安装配置Samba服务器

    CentOS 7安装配置Samba服务器 CentOS 7下Samba服务器安装配置过程笔记. 假设我们有这样一个场景 共享名 路径 权限 SHAREDOC /smb/docs 所有人员包括来宾均可以 ...

  6. CentOS 7安装配置Samba服务器(挂载共享文件夹)

    CentOS 7安装配置Samba服务器 CentOS 7下Samba服务器安装配置过程笔记. 假设我们有这样一个场景 共享名 路径 权限 SHAREDOC /smb/docs 所有人员包括来宾均可以 ...

  7. 记录:CentOS 7 安装配置分布式文件系统 FastDFS 5.1.1

    CentOS 7 安装配置分布式文件系统 FastDFS 5.1.1 软件下载:http://download.csdn.net/download/qingchunwuxian1993/9897458 ...

  8. CentOS gitlab 安装配置

    CentOS gitlab 安装配置 2018-11-02 11:23:09   Visit  5 在/etc/yum.repos.d 目录下创建文件gitlab-ce.repo,使用国内的安装源 b ...

  9. <转>CentOS 7 安装配置 NFS

    CentOS 7  安装配置 NFS 环境 nps 192.168.1.97 client 192.168.1.98 一.yum 安装 yum -y install nfs-utils rpcbind ...

随机推荐

  1. hdu 1162(最小生成树)

    Eddy's picture Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 65536/32768 K (Java/Others)To ...

  2. c++ 堆、栈、自由存储区、全局/静态存储区和常量存储区

    在C++中,内存分成5个区,他们分别是堆.栈.自由存储区.全局/静态存储区和常量存储区. 栈,就是那些由编译器在需要的时候分配,在不需要的时候自动清楚的变量的存储区.里面的变量通常是局部变量.函数参数 ...

  3. (1)powershell使用帮助

    一.更新下载帮助 初始powershell是没有文档的,需要用指令更新下载到本地 管理员运行 update-help 好像有的模块需要FQ才能下载 ?? 帮助文档的开源地址  github.com/p ...

  4. Codeforces 935E Fafa and Ancient Mathematics(表达式转树 + 树型DP)

    题目链接  Codeforces Round #465 (Div. 2) Problem E 题意  给定一个表达式,然后用$P$个加号和$M$个减号填充所有的问号(保证问号个数等于$P + M$) ...

  5. 新疆大学ACM-ICPC程序设计竞赛五月月赛(同步赛)- Red Rover

    链接:https://www.nowcoder.com/acm/contest/116/A来源:牛客网 输入描述: Input consists of a single line containing ...

  6. 洛谷——P1258 小车问题

    P1258 小车问题 题目描述 甲.乙两人同时从A地出发要尽快同时赶到B地.出发时A地有一辆小车,可是这辆小车除了驾驶员外只能带一人.已知甲.乙两人的步行速度一样,且小于车的速度.问:怎样利用小车才能 ...

  7. 反汇编引擎diStorm3

    反汇编引擎diStorm3   diStorm3是Kali Linux自带的一款轻量级.容易使用的反汇编引擎.它可以反汇编生成16位.32位和64位指令.它支持的指令集包括FPU.MMX.SSE.SS ...

  8. MSSQL收缩事务日志&日志文件过大无法收缩

    原文:MSSQL收缩事务日志&日志文件过大无法收缩 一.MS SQL SERVER 2005 --1.清空日志 exec('DUMP TRANSACTION 数据库名 WITH NO_LOG' ...

  9. Android学Jni/Ndk 开发记录(一)

      治疗拖延症的唯一办法就是:一想起些什么 / 要做些什么就 TM 立马去做! 是的,突然想起我不会 JNI.NDK 开发.解决办法:立马去学! 一:配置 NDK 环境 下载 NDK 写入到配置文件 ...

  10. ios学习流水账1

    1.UIImageview设边框.圆角 需要引QuartzCore/QuartzCore.h> //设UIImageView边框 CALayer *layer = [m_imgView laye ...