LVS群集

WARNING:实验用的IP地址有些是拷贝PPT的(比如NAT模式的实验报告) 有些是自己做实验用的(比如DR模式的实验报告)  实际还需要看自己的IP

一、群集的介绍

群集的类型:
负载均衡群集


高可用群集


高性能运算群集

LINUX中叫:
负载均衡群集(LB)


高可用群集(HA)


高性能运算群集(HPC)


WINDOWS中叫:


网络负载均衡群集(NLB)(最多32个节点)


故障转移群集

最多8个节点


高性能运算群集(HPC)

二、负载均衡群集分层结构

1)负载调度器

访问群集的唯一入口

2)服务器池

群集所提供的应用服务

3)共享存储

为服务器池中的所有节点提供稳定一致的文件存取服务 确保群集同意性

三、负载均衡群集的工作方式

1)地址转换 简称NAT模式 安全性能高

2)IP隧道  简称TUN

3)直接路由 简称DR模式

LVS虚拟服务器

中国 张文嵩博士 1998年5月创建   现在已经成文Linux内核中的一部分


[[email protected] ~]# modprobe ip_vs   //加载模块

[[email protected] ~]# cat /proc/net/ip_vs      //查看版本信息

IP Virtual Server version 1.2.1 (size=4096)

Prot LocalAddress:Port Scheduler Flags

-> RemoteAddress:Port Forward Weight ActiveConn InActConn

LVS负载调度算法


轮询:收到的访问请求轮流发给各个节点


加权轮询:根据真实服务器的处理能力来给服务器分配不同的访问


最少连接:看哪台服务器连接数量最少,就连哪台

加权最少连接:根据服务器真实处理能力来分配不同访问 如:这台服务器性能很好,可以连接很多,但我已经连接了很多,另一台服务器性能不好,但是才连接了几个,这时候就要分配权重了。

NAT负载均衡 ↓


网络环境:

3台服务器 一台客户机

调度器(整个群集的一个入口 BOSS的身份 下分支节点服务器 再下面就是共享存储)两块网卡 一块用于模拟外网一块用于内网服务器

我用的虚拟机分别把调度器两块网卡桥接到了  VM2 VM8 其他两台服务器是VM2 VM2

客户机是VM8

也就是说 VM2都是内网  第一个VM8是调度器的外网网卡 第二个就输客户机的IP地址了

1)配置负载调度器


[[email protected] ~]# vi /etc/sysctl.conf                     //开启路由转发功能

……

net.ipv4.ip_forward = 1

[[email protected] ~]# sysctl -p                        //让修改生效

[[email protected] ~]# iptables -t nat -A POSTROUTING -s 192.168.7.0/24 -o eth0 -j SNAT --to-source 172.16.16.172                                           //让内网两台服务器能访问公网

[[email protected] ~]# service ipvsadm stop                     //先停止掉ipvsadm

[[email protected] ~]# ipvsadm -A -t 172.16.16.172:80 -s rr                //添加一台调度器

[[email protected] ~]# ipvsadm -a -t 172.16.16.172:80 -r 192.168.7.21:80 -m       //添加节点

[[email protected] ~]# ipvsadm -a -t 172.16.16.172:80 -r 192.168.7.22:80 -m        // - - -

[[email protected] ~]# ipvsadm -a -t 172.16.16.172:80 -r 192.168.7.23:80 -m

[[email protected] ~]# ipvsadm -a -t 172.16.16.172:80 -r 192.168.7.24:80 -m

[[email protected] ~]# ipvsadm-save  >  /etc/sysconfig/ipvsadm    //保存上面添加的

[[email protected] ~]# chkconfig ipvsadm on        //添加为系统开机启动项

2)客户端配置

这里用WEB1 和 WEB2做两个WEB服务器   在WEB1里添加一个测试用的网页

WEB2和WEB1添加不同的网页(实验中是为了看出你的负载均衡成功了 现实中当然两个WEB站点必须是一样的)

现实生活中:

NFS共享:


使用NFS共享

比如公司网站在/var/www/html/  那就共享这个目录 到另一台节点服务器去访问它的共享 这样就可以把网站复制一份了

具体是这样的:安装nfs-utils 和 rpcbind  (在Centos 5.8中安portmap代替rpcbind)

NFS依赖于RPC(Remote Process Call 远端过程调用)

然后打开/etc/exprots

/var/www/html/        192.168.1.0/24(rw,sync,no_root_squash)

以上是格式

rw:读写权限 注意:ro 为只读 (read only)

sync:同步写入

no_root_squash: 客户机用ROOT访问时  给与root权限

然后启动服务 service XX ...   服务名称就是包名  nfs 和 rpcbind

showmount -e 查看本机的共享

然后客户机可以直接挂载

mount 192.168.1.1(远端IP):  /var/www/html/  /var/www/html/

上面就是把远端的html挂到本地html

配置完了客户端要检查IPTABLES规则是否写对了

WEB1 2的网关都要指向 调度器

写完规则ping一下 调度器外网IP ping通说明规则写对了

3)最后就是客户机访问了

用可以和调度器外网通信的客户机访问调度器外网,这时候群集会生效 刷新网页 发现一下是网页WEB1网页 一下是WEB2网页

说明成功了。

DR模式 

直接路由模式

1、先配置虚拟接口为调度器eth0网卡VIP地址 (虚拟iP地址) 以便响应群集访问


[[email protected] CentOS]# cd /etc/sysconfig/network-scripts/ 
[[email protected] network-scripts]# cp ifcfg-eth0 ifcfg-eth0:0 
[[email protected] network-scripts]# vim eth0:0 
[[email protected] network-scripts]# vim ifcfg-eth0:0 
[[email protected] network-scripts]#

注意第一行 DEVICE eth0后面要有":0" 这样配置才生效。

VIP地址和物理地址在同一网段但不同IP

2.调整/PROC参数

关闭Linux内核重定向参数 为了防止ARP解析出现异常


[email protected] ~]# vi /etc/sysctl.conf

……

net.ipv4.conf.all.send_redirects = 0

net.ipv4.conf.default.send_redirects = 0

net.ipv4.conf.eth0.send_redirects = 0

[[email protected] ~]# sysctl -p

3、装ipvsadm包 并且添加节点和调度器


[[email protected] CentOS]# rpm -Uvh ipvsadm-1.24-13.el5.i386.rpm 
warning: ipvsadm-1.24-13.el5.i386.rpm: Header V3 DSA signature: NOKEY, key ID e8562897 
Preparing... (100%########################################### [100%] 
1:ipvsadm ( 10%########################################### [100%] 
[[email protected] CentOS]#


service ipvsadm stop              //清除原有策略

[[email protected] CentOS]# ipvsadm -A -t 192.168.1.2:80 -s rr        //这个IP是VIP 不是物理IP
[[email protected] CentOS]# ipvsadm -a -t 192.168.1.2:80 -r 192.168.1.3 -g    //添加节点一
[[email protected] CentOS]# ipvsadm -a -t 192.168.1.2:80 -r 192.168.1.4 -g    //添加节点二
[[email protected] CentOS]#  service ipvsadm  save    //保存策略

[email protected] CentOS]# chkconfig ipvsadm on   //开机启动

4.节点服务器配置

物理地址和调度器物理地址在同一个网段

虚IP和调度器IP地址一样

节点服务器不监听来自客户机的访问请求 所以用lo接口来承载虚IP


配置lo虚IP方法和调度器大致相同

cp ifcfg-lo ifcfg-lo:0

vim  ifcfg-lo:0

注意的是:第一行后面也要加:0 和上面一样

然后子网掩码必须都是255.255.255.255

然后新建站点 和上面一样

重启httpd服务

关闭防火墙(注意是关闭 不是清空规则保存   我做的时候不关就不行)

如果不成功:


1)网络参数的配置是否正确 如果你用客户机访问 比如都桥接到8网卡 但你真实机8网卡开了吗? 开了的话IP是多少?

2)前面需要注意的地方 比如虚拟IP的配置  配置文件第一行默认都是eth0或者lo 后面要加上“:0” 务必ifconfig下 看看配置是否正确

3)就是最后一点是关闭防火墙并不是把防火墙规则清空然后保存

4)httpd服务是否开启? 如果不行把三台服务器的httpd服务器全部开启试试  有人说必须把调度器httpd服务开启的(有同学说过  我没有测试过 我没管过我的调度器httpd 也许是开着的 )

5)ipvsadm添加调度器IP是VIP  不是物理IP  物理IP和VIP在同一网段 节点一节点二的物理地址都是和调度器在同一网段 VIP和调度器一样   实际上 三个VIP是一样的 必须一样  物理IP 在同一网段

6)查看自己是否洗过脸

时间: 2024-08-09 05:23:27

LVS群集的相关文章

Lvs群集(DR/NAT)两种模式配置

-----构建DR 模式的LVS 群集----- --client----------LVS-----------WEB1 2.2.2.100    eth0:2.2.2.10    eth0:2.2.2.20 子接口eth0:0:2.2.2.2   lo:0:2.2.2.2 ------------WEB2--------- eth0:2.2.2.30 lo:0:2.2.2.2 一.配置LVS 调度器 1.配置IP 和VIP [[email protected] ~]# vim /etc/sy

[Linux]--构建DR模式的LVS群集

NAT模式的LVS负载均衡群集 客户端:1.1.1.254/8 LVS调度器(Centos6.5)eth0 1.1.1.10/8        eth0:0   1.1.1.1 web服务器                        eth0 1.1.1.20/8        lo 1.1.1.1 web服务器                        eth0 1.1.1.30/8        lo  1.1.1.1 NFS服务器                       192

44.LVS群集应用

LVS群集 群集的类型: 负载均衡群集:提高应用程序的响应能力,以减少延迟为目标,获得高并发,高负载的整体性能. 高可用群集:提高应用系统的可靠性,尽可能的减少中断为目标,确保服务的连续性,达到高可用的容错效果. 高性能运算群集:提高应用系统的CPU运算速度,获得相当于大型,超级计算的高性能运算能力. 负载均衡群集的分层结构:负载调度器,服务器池,共享存储. 负载均衡的工作模式: 地址转换模式:NAT,负载调度器作为所有服务器节点的网关,即作为客户机的访问入口,也是各个节点回应客户机的访问出口,

keepalived高可用群集与lvs群集结合搭建

 keepalived双机热备 1:keepalived双机热备,主要是用来提供故障切换,和对节点服务器的健康检查.当故障主机回复之后加入群集 2:keepalived是基于vrrp协议的方式进行热备方式,除了一个主服务器之外可以有多个从服务器,而且每一台从服务器的优先级等级各不相同. 3:工作的时候只有主服务器在工作其他服务器处于冗余状态,只要主服务器一旦发生宕机,从服务器,优先级最高的将接任主服务器的位置,以此类推.当主服务器故障排除之后,将重新夺得控制权                  

lvs负载均衡群集搭建(DR)

lvs负载均衡群集搭建(DR) 1:之前有讲过使用NAT技术的lvs的群集搭建接下来使用DR的直接路由模式来搭建负载均衡群集 2:在DR模式中.lvs负载调度器作为群集的访问入口,但不作为网关使用,服务器池中的所有节点来自internet.发送给客户端的web相应数据包不需要经过负载调度器:这种方式入站.出站访问数据分别被处理,因此lvs负载调度器和所有节点服务器都需要配置VIP地址,以便响应整个群集的访问. VIP地址192.168.1.254 负载均衡服务器           web1服务

高可用群集HA介绍与LVS+keepalived高可用群集

一.Keepalived介绍 通常使用keepalived技术配合LVS对director和存储进行双机热备,防止单点故障,keepalived专为LVS和HA设计的一款健康检查工具,但演变为后来不仅仅为LVS提供方案,Keepaliced支持故障自动切换(Failover),支持节点健康状态检查(Health Checking),官方网站http://www.keepalived.org/ Keepalived采用VRRP的热备份协议实现Linux服务器的多机热备功能,VRRP,虚拟路由冗余协

构建LVS+Keepalived高可用群集

防伪码:不必向我诉说春天,我的心里并没有秋寒 第六章 构建LVS+Keepalived高可用群集 前言:keeplived是专门针对LVS设计的一款辅助工具,主要功能是实现故障切换和健康检查,官方网站:http://www.keepalived.org.类似于我们以前学习过的HSRP热备份路由协议,HSRP是思科的私有协议,而VRRP是通用协议,都是为了实现故障切换,当一台路由器发生故障的时候,另一台马上接替工作,用户感觉不到服务器发生了问题,而且不会中断服务.我们今天学习的双机热备是就是利用了

lvs负载均衡群集以及高可用性能

   lvs负载均衡群集   一:lvs的群集技术概述 1:群集的类型:分为三种: (1)负载均衡群集: 以提高应用系统的相应能力,尽可能处理更多的访问请求,减少延迟:为目标获得高并发:高负载:的整体性能.将客户端的访问分担给多个服务器节点,从而延缓整个系统的负载压力:如web,ftp服务 (2)高可用群集:以提高应用系统的可靠性,尽可能的减少中断时间,确保服务的连续性.例如:双机热备:故障切换多用于后台应用:如典型的mysql数据库服务 (3)高性能运算群集:以提高应用系统的cpu运算速度.扩

LVS负载均衡群集

 第五章:LVS负载均衡群集 简介:   在各种互联网应用中,随着站点对硬件性能.响应速度.服务稳定性.数据可靠性等要求越来越高,单台服务器难以承担所有的访问.除了使用价格昂贵的大型机.专用负载分流设备以外,企业还有另外一种选择来解决难题,那就是构建群集服务器--通过整合多台相对廉价的普通服务器,以同一个地址对外提供相对的服务.   今天我们一起来学习在企业中常用的一种群集技术--LVS(Linux Virtual Server,Linux虚拟服务器). 一.群集技术概述 1.群集的类型 1)负