LVS-负载均衡集群部署

简介:LVS是一种集群技术,采用IP负载均衡技术和基于内容请求分发技术,调度器具有很好的吞吐量,将请求均衡的转移到不同服务器上执行,且调度器自动屏蔽掉服务器的故障,从而将一组服务器构成一个高性能,高可用的虚拟服务器,整个服务器集群的结构对客户是透明的,而且无需修改客户端和服务端的程序,

为此,在设计师需要考虑系统的透明性,可伸缩性,高可用性和管理性,一般来说,LVS集群采用三层 结构,体系结构如下所示:

LVS主要组成部分:

*负载调度器(Load balancer /Directory).它是整个集群对外面的前端机,负责将客户请求发送到一组服务器上执行,而客户认为服务是来自一个IP地址(也就是虚拟IP地址)上的

*服务器池(server pool/Realserver)是一组真正执行客户请求的服务器,执行的服务一般有WEB,MAIL,FTP和DNS等

*共享存储(shared storage)它为服务器池提供了一个共享的存储区,这样很容易使得服务器池有相同的内容,提供相同的服务,

LVS负载均衡 方式:

(1)LVS/NAT:一种最简单的方式,所有的RealServer只需要将自己的网关指向Directory即可,客户端可以是任意操作系统,但此方式下,一个Directory即可.客户端可以是任意的操作系统,但此方式下,Directory也可以兼为一台RealServer比较有限,在LVS/NAT的方式下,Directory也可以兼为一台RealServer.LVS/NAT的体系结构如图所示:

(2)IP隧道(IPTUNnel):简称TUN模式,采用开放式的网络结构,负载调度器仅作为客户机的访问入口,各节点通过各自的internet连接直接回应客户机,而不再经过负载均衡调度器,服务器节点分散在互联网中不要位置,具有独立的公网IP地址,通过专用IP隧道与负载均衡调度器相互通信.

(3)直接路由(Direct Routing)简称DR模式,采用半开放式的网络结构,与TUN模式的结构类似,但各节点并不是分散在各地,而是与调度器位于同一个物理网络,负载均衡调度器与各节点服务器通过本地网络连接,不需要建立专用的IP隧道,

以上三种,NAT方式只需要一个公网IP地址,从而成为最易用的一种负载均衡模式,安全性也比较好,许多硬件负载设备就是采用这种方式,相比较而言,DR模式和TUN模式的负载能力更加强大,使用范围更广,但节点的安全性要稍差一些,

负载均衡 调度算法:

*轮询:将收到的访问请求按照顺序轮询轮流分配给集群中的个节点(真实服务器),均等地对待每一台服务器,而不管服务器实际的连接数和系统负载

*加权轮询:根据真实服务器的处理能力轮流分配收到的访问请求,调度器可以自动查询各节点负载情况,并动态调整其权重,这样可以保证处理能力强的服务器承担更多的访问流量,

*最少连接:根据真实服务器已建立的连接数进行分配,将收到的访问请求优先分配给连接数量最少的节点,如果所有的服务器节点性能相近,采用这种方式可以更好的均衡负载

*加权轮询:在服务器节点的性能差异较大的情况下,可以为真实服务器自动调取权重,权重较高的节点将承担更大的比列的活动连接负载

------------------------------------------------------------------------------------------------------------------------------------

LVS-NAT模式

实验环境:

Server:LVS-分配器:

外网IP------Eth0:192.168.1.1

内网IP------Eth1:192.168.2.128

Web-server1

内网IP:192.168.2.51

Web-server2

内网IP:192.168.2.52

LVS上开启路由转发功能

[[email protected] ~]# vim /etc/sysctl.conf   #开启自动生效

[email protected] ~]# sysctl –p   #让配置立即生效

配置LVS NAT模式集群并安装LVS管理工具:ipvsadm

[[email protected] ~]# yum localinstall -y /media/cdrom/Packages/ipvsadm-1.26-2.el6.x86_64.rpm            [A1]

添加一个虚拟服务:VIP地址 :192.168.1.1,服务端口:80

[[email protected] ~]# ipvsadm -A -t 192.168.1.1:80 -s rr[A2]


[A1]因配置文帝yum源,可采用这种方式安装ipvsadm软件

[A2]-A:添加一个虚拟服务

-t:表示TCP的服务 VIP:PORT

-s:制定调度算法 rr表示route-robin

添加虚拟服务后端的real server地址:

[[email protected] ~]# ipvsadm -a -t 192.168.1.1:80 -r 192.168.2.51 -m

[[email protected] ~]# ipvsadm -a -t 192.168.1.1:80 -r 192.168.2.52 -m

[A1]

查看:

[[email protected] ~]# ipvsadm -L –n


[A1]-a:表示添加real server

-r:制定real server的ip地址

-m:表示masquerade也就是NAT方式LVS

保存:

[[email protected] ~]# /etc/init.d/ipvsadm save

ipvsadm: Saving IPVS table to /etc/sysconfig/ipvsadm:      [确定]

总结:

1:配置网络环境,添加网卡eth1

2:开启路由转发功能

3:安装配置LVS NAT

ipvsadm -A -t 192.168.1.1:80 -s rr

ipvsadm -a -t 192.168.1.1:80 -r 192.168.2.51 -m

ipvsadm -a -t 192.168.1.1:80 -r 192.168.2.52 –m

后端web-server1:192.168.2.51

web-server2:192.168.2.52上面配置

配置web-server 192.168.2.51的ip和网关

Web-2.51: eth0:  vmnet1 :192.168.2.51  网关:192.168.2.128

Web-2.52: eth0:  vmnet1 :192.168.2.52  网关:192.168.2.128

[[email protected] ~]# vim /etc/sysconfig/networkscripts/ifcfg-eth0

[[email protected] ~]# /etc/init.d/network restart

测试两台web服务能否ping通?

接下两台服务器都安装httpd并启动

[[email protected] ~]# yum install -y httpd

[[email protected] ~]# /etc/init.d/httpd start

创建一个默认测试网页

[[email protected] ~]# echo "server 192.168.2.51" >>/var/www/html/index.html

[[email protected] ~]# vim /etc/httpd/conf/httpd.conf

[[email protected] ~]# /etc/init.d/httpd restart

在web 2.52上安装httpd(配置与上述一样)

[[email protected] ~]# yum install -y httpd

[[email protected] ~]# /etc/init.d/httpd start

创建一个默认测试网页

[[email protected] ~]# echo "server 192.168.2.52" >>/var/www/html/index.html

[[email protected] ~]# vim /etc/httpd/conf/httpd.conf

[email protected] ~]# /etc/init.d/httpd restart

测试LVS-NAT模式

通过elinks浏览器 realserver是否正常:

[[email protected] ~]# elinks 192.168.2.51 --dump

server 192.168.2.51

[[email protected] ~]# elinks 192.168.2.52 --dump

server 192.168.2.52

通过elinks浏览器访问VIP,测试分发器是否正常

查看LVS NAT集群请求状态

[[email protected] ~]# ipvsadm -L -n

IP Virtual Server version 1.2.1 (size=4096)

Prot LocalAddress:Port Scheduler Flags

-> RemoteAddress:Port           Forward Weight ActiveConn InActConn

TCP  192.168.1.1:80 rr

-> 192.168.2.51:80              Masq    1      0          2

-> 192.168.2.52:80              Masq    1      0          2

查看LVS分发情况

[[email protected] ~]# ipvsadm -L -n --stats

查看速率

时间: 2025-01-02 18:46:05

LVS-负载均衡集群部署的相关文章

构建高可用的LVS负载均衡集群 入门篇

一.LVS简介 LVS是Linux Virtual Server的简称,也就是Linux虚拟服务器, 是一个由章文嵩博士发起的自由软件项目,它的官方站点是www.linuxvirtualserver.org.现在LVS已经是 Linux标准内核的一部分,在Linux2.4内核以前,使用LVS时必须要重新编译内核以支持LVS功能模块,但是从Linux2.4内核以后,已经完全内置了LVS的各个功能模块,无需给内核打任何补丁,可以直接使用LVS提供的各种功能. LVS 集群采用IP负载和基于内容请求分

构建高可用的LVS负载均衡集群 进阶篇

一.lvs组件介绍 lvs的组件由两部分组成:工作在内核空间的ipvs模块和工作在用户空间ipvsadm工具.其中ipvsadm是规则生成工具,而ipvs是一个使规则生效的工具. 二.ipvsadm详解 构建高可用的LVS负载均衡集群 进阶篇,布布扣,bubuko.com

HAProxy高可用负载均衡集群部署

HAProxy高可用负载均衡集群部署 基本信息: 系统平台:VMware WorkStation 系统版本: CentOS Linux release 7.2.1511 (Core) 内核版本: 3.10.0-327.el7.x86_64 集群架构: 前端:HAProxy 1.虚拟FQDN:www.simpletime.net 2.VIP:192.168.39.1:DIP:172.16.39.50 3.调度服务器:Varnish1.Varnish2 4.调度算法:URL_Hash_Consist

LVS 负载均衡集群

说明:在学习LVS负载均衡集群时,最好对网络通信原理,尤其是ARP通信原理有所了解,否则,将无法理解LVS的工作原理. LVS工作原理和安装配置#################工作模式及其原理####################VS/NAT模式(即Virtual Server via Network Address Translation): 此种模式是通过网络地址转换技术来实现虚拟服务器. ##实现原理:  1.请求: 客户端发送请求到调度器,调度器将请求报文的目的地址(即虚拟IP地址)

LVS负载均衡集群技术学习笔记

一.ARP协议 1. Address Resolution Protocal地址解析协议,功能是根据主机IP地址来解析到主机的MAC地址. 2. ARP协议和DNS协议对比: a. DNS是在域名和IP之间进行解析,ARP是在IP和MAC之间解析. b. ARP协议不需要服务,DNS需要开启服务. c. ARP协议需要互联的主机处于同一个物理网段之内(即局域网环境)! 3. ARP协议工作过程(第一次通信) 4. 高可用服务器切换机器以及更换路由器的时候要注意刷新ARP缓存 5. IP切换时候A

通过keepalived搭建高可用的LVS负载均衡集群

一.keepalived软件简介 keepalived是基于vrrp协议实现高可用功能的一种软件,它可以解决单点故障的问题,通过keepalived搭建一个高可用的LVS负载均衡集群时,keepalived还能检测后台服务器的运行状态. 二.vrrp协议原理简介 vrrp(虚拟路由器冗余协议),是为了解决网络上静态路由出现的单点故障的问题,举个例子,如下图 主机A和B均在同一个局域网内,C和D均是该局域网的网关,即A和B想与外网通信,需指网关到C或D,那究竟指向C好还是指向D好呢?都不好!当指向

Nginx+Tomcat7+Mencached负载均衡集群部署笔记

Nginx+Tomcat+Memcached负载均衡集群服务搭建 操作系统:CentOS6.5 本文档主要讲解,如何在CentOS6.5下搭建Nginx+Tomcat+Memcached负载均衡集群服务器,Nginx负责负载均衡,Tomcat负责实际服务,Memcached负责同步Tomcat的Session,达到Session共享的目的. 本文文档下载地址:http://download.csdn.net/detail/zht666/7744157 1.安装Nginx Nginx官网:http

企业实战-实现基于LVS负载均衡集群的电商网站架构

实现LVS-DR工作模式: 环境准备:一台centos系统做DR.两台实现过基于LNMP的电子商务网站 机器名称 IP配置 服务角色 备注 lvs-server VIP:172.17.252.110 DIP:172.17.250.223 负载均衡器 开启路由功能 (VIP桥接) rs01 RIP:172.17.251.245 后端服务器 网关指向DIP(桥接) rs02 RIP:172.17.252.87 后端服务器 网关指向DIP(桥接) 实验步骤: 一.安装: 1.yum install i

LVS负载均衡集群服务搭建详解(二)

lvs-nat模型构建 1.lvs-nat模型示意图 本次构建的lvs-nat模型的示意图如下,其中所有的服务器和测试客户端均使用VMware虚拟机模拟,所使用的CentOS 7 VS内核都支持ipvs功能,且安装ipvsadm控制书写lvs规则工具. RS端两台服务器为httpd服务器做请求的负载均衡. 注意: 1) 客户端可以使用Windows上的浏览器,会后缓存影响结果,所以采用CentOS上的curl命令请求http协议显示更加直观 2) DIP上不能配置iptables规则 2.VS网

LVS负载均衡集群服务搭建详解(一)

LVS概述 1.LVS:Linux Virtual Server 四层交换(路由):根据请求报文的目标IP和目标PORT将其转发至后端主机集群中的某台服务器(根据调度算法): 不能够实现应用层的负载均衡 lvs(又称ipvs)是基于内核中的防火墙netfilter实现 2.lvs集群术语: vs:Virtual Server 虚拟服务,可称为Director.Dispatcher分发器.Balancer负载均衡器 rs:Real Server 真实服务器 CIP:Client IP 客户端IP