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)
安装html
安装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