lvs

Nginx、HAProxy、LVS三者的优缺点

三世轮回 提交于 2019-12-09 16:00:46
一、Nginx优点: 1、工作在网络7层之上,可针对http应用做一些分流的策略,如针对域名、目录结构,它的正规规则比HAProxy更为强大和灵活,所以,目前为止广泛流行。 2、Nginx对网络稳定性的依赖非常小,理论上能ping通就能进行负载功能。 3、Nginx安装与配置比较简单,测试也比较方便,基本能把错误日志打印出来。 4、可以承担高负载压力且稳定,硬件不差的情况下一般能支撑几万次的并发量,负载度比LVS小。 5、Nginx可以通过端口检测到服务器内部的故障,如根据服务器处理网页返回的状态码、超时等,并会把返回错误的请求重新提交到另一个节点。 6、不仅仅是优秀的负载均衡器/反向代理软件,同时也是强大的Web应用服务器。LNMP也是近些年非常流行的Web架构,在高流量环境中稳定性也很好。 7、可作为中层反向代理使用。 8、可作为静态网页和图片服务器。 9、Nginx社区活跃,第三方模块非常多,相关的资料在网上比比皆是。 Nginx常规的和HTTP请求和相应流程图: Nginx缺点: 1、适应范围较小,仅能支持http、https、Email协议。 2、对后端服务器的健康检查,只支持通过端口检测,不支持url来检测。比如用户正在上传一个文件,而处理该上传的节点刚好在上传过程中出现故障,Nginx会把上传切到另一台服务器重新处理,而LVS就直接断掉了

负载均衡之LVS、HAProxy和Nginx

。_饼干妹妹 提交于 2019-12-07 11:00:37
负载均衡(Load Balance)是应用于互联网后台系统架构设计中的各层,它将请求均匀分摊到多个操作单元上执行。 目前,在线上环境中应用较多的负载均衡器硬件有F5 BIG-IP,但是硬件设备昂贵,不如软件适应互联网公司的快速发展。最常用的负载均衡软件有LVS、HAProxy和Nginx,结合高可用软件有Heartbeat、Keepalived,可以搭建出承载海量请求的成熟架构如LVS+Keepalived、HAProxy+keepalived等. 专长 三种负载均衡软件LVS、HAProxy和Nginx的优缺点说明如下: LVS的优点: 1、性能最强、仅工作在第4层,TUN和DR模式下回包不经过LVS,保证了均衡器IO的性能受大流量的影响最小; 2、工作稳定,自身有完整的双机热备方案,如LVS+Keepalived和LVS+Heartbeat; 3、应用范围比较广,可以对所有应用做负载均衡; LVS的缺点: 1、软件本身不支持正则处理,不能做动静分离,这就凸显了Nginx/HAProxy+Keepalived的优势。 2、配置性比较低,如果网站应用比较庞大,配置和维护过程就比较麻烦。 HAProxy的优点: 1、HAProxy是支持虚拟主机的,可以工作在4、7层(支持多网段); 2、支持url检测后端的服务器; 3、它跟LVS一样,本身仅仅就只是一款负载均衡软件

Keepalived+lvs+httpd之负载均衡

拥有回忆 提交于 2019-12-06 21:35:31
最近在研究 负载均衡。目前研究的是keepalived+lvs模式 1、软件介绍 keepalived:顾名思义是保持存活,常用来搭建设备的高可用,防止业务核心设备出现单点故障。keepalived主要用作realserver的健康检查以及负载均衡主机和backup主机之间的故障漂移。 单点故障:在公司整个业务流程中,某一点出现故障就会导致整个系统架构不可用,单点故障常发生在数据库、核心业务系统等。对此我们的解决办法是对核心业务系统进行高可用负载均衡。 LVS:Linux Virtual Server,linux虚拟服务器,是一个虚拟的服务器集群系统。目前有三种负载均衡技术(VS/NAT、VS/TUN和VS/DR);十种调度算法(rrr|wrr|lc|wlc|lblcr|lblc|dh|sh|sed|nq)。 2、实验拓扑图。 本次实验一共用到4台服务器,其中两台服务器用来搭建keepalived+lvs,另两台是对外提供服务的web服务器。 本次实验用到了5个ip地址。 Master:10.68.4.201 Backup:10.68.4.58 web1:10.68.4.198 web2:10.68.4.248 virtualIP:10.68.4.199 3、拓扑图介绍 keepalived--master和keepalived--backup

NAT负载均衡的搭建

此生再无相见时 提交于 2019-12-06 18:55:54
NAT负载均衡的搭建 ** 四台虚拟机 客户端 lvs服务器 rs1服务器 172.22.144.188 VIP-172.22.144.59 DIP-192.168.49.2 RIP-192.168.49.3 rs2服务器 RIP-192.168.49.4 **注意LVS服务器需要充当调度与路由的角色 需要启用两个IP地址 lvs服务器,rs1服务器,rs2服务器 是否时间同步 seliunx与防火墙是否关闭 在lvs服务器上查看此目录的值cat /proc/sys/net/ipv4/ip_forward 是否为1 若是0 改为1** RS服务器的配置 vim /etc/sysconfig/network-scripts/ifcfg-ens33 DEVICE=ens33 NAME=ens33 BOOTPROTO=static IPADDR=192.168.49.3 PREFIX=24 ONBOOT=yes GATEWAY=192.168.49.2 **rs1服务器在网卡配置 把其网关指向lvs服务器DIP地址 rs2服务器同上做法一样** route -n Kernel IP routing table Destination Gateway Genmask Flags Metric Ref Use Iface 0.0.0.0 192.168.49.2 0.0.0.0 UG 100

LVS DR模式负载均衡的搭建(单网段)

南笙酒味 提交于 2019-12-06 18:54:07
LVS DR模式负载均衡的搭建(单网段) 实验需要五台虚拟机,都是centos7 客户端 路由器 lvs服务器 172.22.144.188 1接口172.22.144.17 2接口192.168.49.5 172.22.144.17 192.168.49.5 rs1服务器 rs2服务器 192.168.49.3 192.168.49.4 **客户端的配置** vim /etc/sysconfig/nerwork-scripts/ifcfg-ens33 DEVICE=ens33 NAME=ens33 BOOTPROTO=static IPADDR=172.22.144.188 PREFIX=16 ONBOOT=yes GATEWAY=172.22.144.17 由于客户端IP与VIP不在一个网段,所以网关需要指向路由器 路由器的配置 vim /etc/sysconfig/nerwork-scripts/ifcfg-ens33 DEVICE=ens33 NAME=ens33 BOOTPROTO=static IPADDR=172.22.144.17 ONBOOT=yes PREFIX=16 路由器配置1接口网卡 连接外网 vim /etc/sysconfig/nerwork-scripts/ifcfg-ens37 DEVICE=ens37 IPADDR=192.168.49.5

LVS的四种模式的实现

醉酒当歌 提交于 2019-12-06 10:30:14
一、基于四层的负载均衡 LVS 是四层负载均衡,也就是说建立在 OSI 模型的第四层——传输层之上,传输层上有我们熟悉的 TCP/UDP,LVS 支持 TCP/UDP 的负载均衡。 LVS 的转发主要通过修改 IP 地址(NAT 模式,分为源地址修改 SNAT 和目标地址修改 DNAT)、修改目标 MAC(DR 模式)来实现。 二、为什么 LVS 是在第四层做负载均衡 首先 LVS 不像 HAProxy 等七层软负载面向的是 HTTP 包,所以七层负载可以做的 URL 解析等工作,LVS 无法完成。 其次,某次用户访问是与服务端建立连接后交换数据包实现的,如果在第三层网络层做负载均衡,那么将失去「连接」的语义。软负载面向的对象应该是 一个已经建立连接的用户,而不是一个孤零零的 IP 包。后面会看到,实际上 LVS 的机器代替真实的服务器与用户通过 TCP 三次握手建立了连接,所以 LVS 是需要关心「连接」级别的状态的。 三、LVS 的工作模式主要有 4 种 DR NAT TUNNEL Full-NAT 这里挑选常用的 DR、NAT、Full-NAT 来简单介绍一下 1、DR模式 请求由 LVS 接受,由真实提供服务的服务器(RealServer, RS)直接返回给用户,返回的时候不经过 LVS。 DR 模式下需要 LVS 和绑定同一个 VIP(RS 通过将 VIP 绑定在

构建基于地址转换(LVS—NAT)模式的负载均衡群集

浪尽此生 提交于 2019-12-06 09:56:35
此博文是案例博文,关于LVS负载均衡群集的原理及相关概述,请参考博文: Centos 7之LVS负载均衡群集 一、案例简介 1、案例环境 2、实验结果 使用NAT模式的群集技术,LVS负载调度器是所有节点访问Internet的网关服务器,其192.168.200.10作为整个群集的VIP地址。 使用轮询(rr)的调度算法。 web1和web2先搭建web服务,分别准备不同的网页文件,供客户端访问,以此来确定client访问LVS服务器的192.168.200.10,可以访问到两台web服务器。 待client测试成功后,web1和web2便可以挂载NFS服务器提供的共享目录,以此来为client提供相同的网页文件。 二、开始搭建复制均衡群集 1、部署Web1服务器: [root@centos01 ~]# yum -y install httpd <!--安装httpd服务--> [root@centos01 ~]# echo "www.benet.com" > /var/www/html/index.html <!--创建网站主页测试页--> [root@centos01 ~]# systemctl start httpd <!--启动httpd服务--> [root@centos01 ~]# systemctl enable httpd <!--设置开机自动启动--> [root

LVS

こ雲淡風輕ζ 提交于 2019-12-06 08:44:47
简介 LVS是四层调度(OSI模型的下四层),不支持应用层协议内部调度; lvs是内核级功能,工作于内核空间; lvs是内核级功能,所以性能比应用级功能强,因为lvs不受socket限制(IP加端口号),一个IP支持0——65535个端口 lvs用户空间管理工具是ipvsadm,用于管理集群服务及RealServer lvs并发量大(可以达到几百万并发),性能好; 所以一般lvs当做最外层调度,第二级调度才使用nginx或者haproxy; lvs:Linux Virtual Server,阿里四层SLB (Server Load Balance)使用 nginx:支持七层调度,阿里七层SLB使用Tengine haproxy:支持七层调度 会话保持:负载均衡 (1) session sticky:同一用户调度固定服务器(session绑定) Source IP:LVS sh算法(对某一特定服务而言)(SNAT) Cookie(每个用户的cookie是不同的;每个用户访问不同的网站,会分配不同的cookie),cookie属于应用层,lvs实现不了代理 (2) session replication:每台服务器拥有全部session(session复制) session multicast cluster (3) session server:专门的session服务器

使用LVS和Keepalived搭建高可用WEB服务

十年热恋 提交于 2019-12-06 06:38:49
by: 白马公园/naritech 本文的主旨在于配置一个尽可能简单的高可用WEB服务系统,帮助读者理清keepalived、LVS等软件的配置和使用,为进一步用好LVS树立信心,夯实基础。 本文只涉及使用LVS和Keepalived解决WEB服务的高可用和高并发,对于WEB集群中的session共享即数据一致性问题不做讨论,对WEB集群中的session共享问题感兴趣的朋友可以参考我的另外一篇文章《nginx、tomcat、redis配置session共享》 网上关于LVS和keepalived搭建高可用WEB服务的文章很多,本文的不同之处在于笔者在配置的过程中遇到了很多问题,因而走了不少弯路。所以本文的重点将放在这些问题的讲述上。 一、 系统架构 全系统包括五台服务器,均为虚拟机,安装Centos6.5操作系统,其中 hadoop01 192.168.75.88 安装keepalived,作为主负载调度器使用 hadoop02 192.168.75.89 安装keepalived,作为备用负载调度器使用 hadoop03 192.168.75.90 安装tomcat,作为真实Web服务器使用 hadoop04 192.168.75.91 安装tomcat,作为真实Web服务器使用 hadoop05 192.168.75.92 安装tomcat,作为真实Web服务器使用

基于SaltStack完成LVS的配置管理

為{幸葍}努か 提交于 2019-12-06 06:17:59
‍ 之前由于工作需求,编写了 SaltStack 的 LVS远程执行模块 , LVS service状态 管理 模块 及 LVS server状态 管理 模块 ,并提交给了 SaltStack 官方 Loadblance(DR)及 RealServer 的配置 管理 .    前置阅读    LVS-DR 模式配置 详解 ,需要注意的是,LVS-DR方式工作在数据链路层,文中描述需要开启ip_forward,其实没有必要, 详情见 LVS DR模式原理剖析    环境说明    三台服务器用于LVS集群,其中主机名为lvs的担当的角色为 loadblance ,对应的IP地址为192.168.36.10;主机名为web-01和web-02的主机担当的角色为 RealServer , 对应的IP地址分别为192.168.36.11及192.168.36.12    LVS VIP: 192.168.36.33, Port: 80, VIP绑定在lvs的eth1口    最最重要的是 loadblance 主机为 Linux ,并已安装 ipvsadm , Windows/Unix等主机的同学请绕过吧,这不是我的错......    开工    Note    以下所有操作均在Master上进行    配置 SaltStack LVS模块