linux非对称路由,linux virtual server(LVS) 理论基础及安装

LINUX服务集群系统

linux virtual server(LVS) ---章文嵩开发

实现LINUX平台下的简单负载均衡。

负载调度器

服务器池

后端存储(backend storage)

MFS---分布式文件存储系统

负载均衡的方式:

1.NAT

2.TUN

3.DR

利用大多数internet服务的非对称特点,负载调度器中只负责调度请求,而服务器直接相应返回给客户,可以极大地提高整个集群系统的吞吐量。

调度器和服务器组必须在物理上有一个网卡通过不分段的局域网相连。即通过交换机或者告诉的HUB相连,中间没有隔有路由器。

负载调度算法:

1.轮叫调度

RR(round-robin scheduling)

平均对待每一台real server而不管服务器上的实际负载均衡状况和链接状态。

2.加权轮叫调度

WRR(Weighted Round-Robin Scheduling)

根据real server的不同处理能力来调度请求,可以对每台real server设置不同的调度权值

3.最小链接调度

LC(Least-Connection Scheduling)

动态地将网络请求调度到已建立的链接数最少的服务器上。如果集群系统的real server具有相近似的性能,可以较好的均衡负载。

4.加权最小链接调度

WLC(Weighted Least-Connection Scheduling)

每个服务器节点的可以用相应的权值来表示其处理能力,而系统管理源可以动态的设置相应的权值,默认值为1,加权最小链接调度在分配新链接请求时尽可能使服务节点的已建立连接数和其权值成正比。

5.基于局部性的最少链接(Locality-Based Least Connections Scheduling)

6.带复制的基于局部性最少链接(Locality-Based Least Connections with Replication Scheduling)

7.目标地址散列调度(Destination Hashing Scheduling)

8.源地址散列调度(Source Hashing Scheduling)

安装

安装ipvsadm,keepalived-1.2.9

(1)下载软件

//本机内核版本:

# uname -r

2.6.32-358.el6.x86_64

下载地址: --相应版本

http://www.linuxvirtualserver.org/software/ipvs.html#kernel-2.6

#wget http://www.linuxvirtualserver.org/software/kernel-2.6/ipvsadm-1.26.tar.gz

keepalived

http://www.keepalived.org/download.html

#wget http://www.keepalived.org/software/keepalived-1.2.19.tar.gz

(2)编译安装ipvsadm

//安装依赖包

[root@nan85 ipvsadm-1.26]# yum list|grep kernel-dev

[root@nan85 ipvsadm-1.26]# yum list|grep popt

[root@nan85 lvs]# yum -y install popt-static.x86_64 popt-devel.x86_64 popt.x86_64

[root@nan85 lvs]# yum -y install wget libnl* popt* gcc.x86_64 gcc-c++.x86_64 gcc-objc++.x86_64 kernel-devel.x86_64 make popt-static.x86_64

//确认模块

[root@nan85 lvs]# modprobe -l|grep ipvs

kernel/net/netfilter/ipvs/ip_vs.ko

kernel/net/netfilter/ipvs/ip_vs_rr.ko

kernel/net/netfilter/ipvs/ip_vs_wrr.ko

kernel/net/netfilter/ipvs/ip_vs_lc.ko

kernel/net/netfilter/ipvs/ip_vs_wlc.ko

kernel/net/netfilter/ipvs/ip_vs_lblc.ko

kernel/net/netfilter/ipvs/ip_vs_lblcr.ko

kernel/net/netfilter/ipvs/ip_vs_dh.ko

kernel/net/netfilter/ipvs/ip_vs_sh.ko

kernel/net/netfilter/ipvs/ip_vs_sed.ko

kernel/net/netfilter/ipvs/ip_vs_nq.ko

kernel/net/netfilter/ipvs/ip_vs_ftp.ko

//编译keepalived-1.2.9

[root@nan85 lvs]# tar xvf keepalived-1.2.19.tar.gz

需要安装基础软件包openssl和popt

yum install net-snmp.x86_64 net-snmp-devel.x86_64

./configure --prefix=/usr/local/keepalived --enable-snmp --sysconfdir=/etc/

出现错误:

configure: error: unable to find net-snmp-config

解决方法:

[root@nan85 keepalived-1.2.9]# yum install net-snmp.x86_64 net-snmp-devel.x86_64

Keepalived version       : 1.2.9

Compiler                 : gcc

Compiler flags           : -g -O2

Extra Lib                : -Wl,-z,relro -Wl,-z,now -L/usr/lib64 -lnetsnmpagent -lnetsnmphelpers -lnetsnmpmibs -lnetsnmp -Wl,-E -Wl,-rpath,/usr/lib64/perl5/CORE -lssl -lcrypto -lcrypt  -lnl

Use IPVS Framework       : Yes

IPVS sync daemon support : Yes

IPVS use libnl           : Yes

Use VRRP Framework       : Yes

Use VRRP VMAC            : Yes

SNMP support             : Yes

SHA1 support             : No

Use Debug flags          : No

[root@nan85 keepalived-1.2.9]# make && make install

[root@nan85 ~]# cp /usr/local/keepalived/sbin/keepalived /sbin/

[root@nan85 ~]# cp /usr/local/keepalived/bin/genhash /bin/

[root@nan85 ~]# cd /etc/keepalived/

[root@nan85 keepalived]# ls

keepalived.conf  samples--keepalived软件不对keepalived语法进行检查,在编辑前需要备份

配置文件由以下三个部分组成:

global_defs

vrrp_instance

virtual_server

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值