LVS搭建负载均衡集群

本文涉及的产品
网络型负载均衡 NLB,每月750个小时 15LCU
应用型负载均衡 ALB,每月750个小时 15LCU
传统型负载均衡 CLB,每月750个小时 15LCU
简介:

1、集群的概念:

服务器集群就是将很多服务器集中起来一起进行同一种服务,在客户端看来就像是只有一个服务器

2、集群的分类:

高可用集群(HA)

主要用于高可用解决方案的实现,节点间以主备形式,实现容灾;在大型故障的情况下实现快速恢复,快速提供服务

工作方式:

主从方式:主机工作,备机监控

互为主从:两服务器同时在线,一台服务器故障可切换到另一台上。有效的利用服务器资源,但当服务器故障时候,将可能导致服务器负载过大

多台服务器主从:大部分服务器在线使用,小部分监控;若有部分服务器故障,可切换到指定的小部分服务器上

负载均衡集群(LB)

不同节点之间相互独立,通过一定算法将客户端的访问请求分配到群集的各个节点上,充分利用每个节点的资源,

负载均衡架构:

第一层:负载调度器,Internet访问集群的唯一入口,负载将来自Internet的请求通过不同的算法分发给不同的节点服务器

第二次:节点服务器层,用于处理用户请求并返回结果,通常由多台服务器组成

第三层:存储,用户储存用户信息,web页面等内容

高性能运算群集(HP)

以提高cpu运算速度,扩展硬件资源和分析能力为目标,获得相当于超级计算机的运算性能


LVS(Linux Virtual Server):基于linux内核的负载均衡集群

LVS算法:

rr: 轮询算法

      wrr: 加权轮询

sh: 源地址散列,主要实现会话绑定

       Dh: 目标地址散列。把同一个IP地址的请求,发送给同一个服务器

lc:最少连接,把新的连接请求分配到当前连接数最小的服务器

     wlc:加权最少连接,主要用于服务器性能不均时

       nq: 永不排队,不经过缓存直接发送给后端服务器




LVS集群的实现:

NAT:地址转换(类似于DNAT)

1、集群点跟调度必须工作在同一个物理网络中

2、使用私有地址在各集群节点间之间通信

3、调度位于客户端和节点之间,负责处理进出的所有请求

5、节点可以使用任何类型的操作系统

6、较大规模应用场景中,调度容易成为瓶颈


 

DR:直接路由(及用于作为源地址)

1、各集群节点跟调度必须在同一个物理网络中

2、各个节点服务器必须能与Internet通信

3、调度仅负责处理入站请求,响应报文则由节点直接发往客户端


TUN:隧道

1、集群节点可以跨越Internet

2、需要具有独立的公网IP

3、调度仅负责处理入站请求,响应报文则由节点直接发往客户端

4、节点和调度可以位于不同的网站中



LVS相关术语:

DS:目标服务器,即调度服务器

RS:真实服务器,即节点服务器

VIP:集群IP,外网访问集群的唯一地址

DIP:和节点服务器通信的IP地址

RIP:节点服务器IP

CIP:客户端IP

ipvsadm命令:

LVS目前一样成为内核中的一部分,默认编译为ip_vs模块

modprobe ip_vs #启用LVS功能

yum -y install ipvsadm         #安装LVS管理工具

ipvsadm #LVS管理命令

选项:

-v #查看ipvsadm版本

-A #添加集群调度

-t:tcp协议的集群

                                -u:udp协议的集群

-a:添加节点

-s:指定算法

-r:指定节点地址

-m:使用NAT方式

-g:使用DR方式

-i:使用TUN方式

-w:指定权重

-E     #修改

-D     #删除

-C     #删除所有集群

-L     #查看LVS规则

-n:数字格式显示主机地址和端口号

-c:显示当前ipvs连接状况

--stats:统计信息

--rate:速率

--timeout:显示tcp、tcpfin和udp会话的超时时间值

--sort:跟协议、地址、端口进行排序,默认为升序


LVS实现简单负载均衡:

环境:DS: eth1(DIP):192.168.0.40 , eth2(VIP):192.168.1.1

  RIP:192.168.0.60  192.168.0.70  GATEWAY:192.168.0.40


DS配置:

modprobe ip_vs #加载内核模块

yum -y install ipvsbdm #安装LVS管理工具

ipvsadm -A -t 192.168.1.1:80 -s rr         #配置DS,指定VIP,设置算法

ipvsadm -a -t 192.168.1.1:80 -r 192.168.0.60:80 -m     #添加节点服务器

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

ipvsadm -Ln #查看LVS规则

service ipvsadm save #LVS规则持久化,保存文件/etc/sysconfig/ipvsadm

service iptables start #启动iptables

iptables -F #清空filter规则

iptables -F -t nat

iptables -t nat -A POSTROUTING -s 192.168.0.0/24 -o eth2 -j SNAT --to-source 192.168.1.1       #将192.168.0.0网段的地址在出站时转换为eth2上的192.168.1.1

service ipvsadm save #iptables规则持久化

192.168.0.60配置:

yum -y install httpd #安装web服务器

echo '192.168.0.60' > /var/www/html/index.html    #创建网页

192.168.0.70配置:

yum -y install httpd #安装web服务器

echo '192.168.0.70' > /var/www/html/index.html     #创建网页


验证:

客户端访问http://192.168.1.1,刷新


本文转自  红尘世间  51CTO博客,原文链接:http://blog.51cto.com/hongchen99/1917898



相关实践学习
每个IT人都想学的“Web应用上云经典架构”实战
本实验从Web应用上云这个最基本的、最普遍的需求出发,帮助IT从业者们通过“阿里云Web应用上云解决方案”,了解一个企业级Web应用上云的常见架构,了解如何构建一个高可用、可扩展的企业级应用架构。
相关文章
|
6月前
|
负载均衡 算法 关系型数据库
大数据大厂之MySQL数据库课程设计:揭秘MySQL集群架构负载均衡核心算法:从理论到Java代码实战,让你的数据库性能飙升!
本文聚焦 MySQL 集群架构中的负载均衡算法,阐述其重要性。详细介绍轮询、加权轮询、最少连接、加权最少连接、随机、源地址哈希等常用算法,分析各自优缺点及适用场景。并提供 Java 语言代码实现示例,助力直观理解。文章结构清晰,语言通俗易懂,对理解和应用负载均衡算法具有实用价值和参考价值。
大数据大厂之MySQL数据库课程设计:揭秘MySQL集群架构负载均衡核心算法:从理论到Java代码实战,让你的数据库性能飙升!
|
6月前
|
负载均衡 前端开发 JavaScript
LVS-DR模式、keepalived、Nginx与Tomcat合作,打造动静分离,高效负载均衡与高可用性
为了采用这样的架构,你需要对LVS-DR、Keepalived、Nginx与Tomcat有一定的理解和掌握,同时也需要投入一些时间去研究和配置,但是一旦你把它运行起来,你将会发现,这一切都是值得的。
265 11
|
7月前
|
负载均衡 算法 关系型数据库
大数据新视界--大数据大厂之MySQL数据库课程设计:MySQL集群架构负载均衡故障排除与解决方案
本文深入探讨 MySQL 集群架构负载均衡的常见故障及排除方法。涵盖请求分配不均、节点无法响应、负载均衡器故障等现象,介绍多种负载均衡算法及故障排除步骤,包括检查负载均衡器状态、调整算法、诊断修复节点故障等。还阐述了预防措施与确保系统稳定性的方法,如定期监控维护、备份恢复策略、团队协作与知识管理等。为确保 MySQL 数据库系统高可用性提供全面指导。
|
9月前
|
负载均衡 网络协议 Linux
LVS,软负载均衡
LVS(Linux Virtual Server)是一项广泛应用的负载均衡技术,由章文嵩博士于1998年发起,自Linux 2.4.24版本起成为官方内核的一部分。LVS通过四层负载均衡技术实现高性能、高可用的服务器集群,支持多种调度算法和工作模式(如D-NAT、full-NAT、IP隧道、DR),适用于HTTP、数据库等应用。相比7层负载均衡器(如Nginx、HAProxy),LVS具有更高的并发处理能力和更低的资源消耗,适合大规模流量分发。本期文章详细介绍了LVS的工作原理、优势与不足,并对比了常见的负载均衡产品,帮助读者根据具体需求选择合适的解决方案。
1257 5
LVS,软负载均衡
|
11月前
|
负载均衡 算法 Linux
LVS+Keepalived:实现高效软负载均衡的利器
本文介绍了如何使用LVS(Linux Virtual Server)和Keepalived搭建高可用负载均衡集群。LVS通过不同调度算法将请求转发给后端服务器,而Keepalived基于VRRP协议实现服务高可用,避免IP单点故障。具体步骤包括环境准备、安装配置ipvsadm和Keepalived、启动服务及测试。文中还详细解释了配置文件中的关键参数,并提供了故障转移测试方法。最后,文章简要对比了软件、硬件和云负载均衡方案的特点,帮助读者选择合适的负载均衡策略。
1612 4
|
运维 负载均衡 网络协议
LVS+Keepalived 负载均衡
LVS+Keepalived 负载均衡
345 8
LVS+Keepalived 负载均衡
|
域名解析 运维 负载均衡
LVS+Keepalived 负载均衡(二)28-1
【8月更文挑战第28天】LVS+Keepalived 负载均衡 配置 LVS VIP
241 5
|
负载均衡 算法 应用服务中间件
负载均衡技术在Web服务器集群中的应用
【8月更文第28天】随着互联网的发展和用户对Web服务需求的增长,单台服务器很难满足大规模访问的需求。为了提高系统的稳定性和扩展性,通常会采用Web服务器集群的方式。在这种架构中,负载均衡器扮演着至关重要的角色,它能够合理地分配客户端请求到不同的后端服务器上,从而实现资源的最优利用。
412 2
|
负载均衡 算法 关系型数据库
MySQL集群如何实现负载均衡?
【8月更文挑战第16天】MySQL集群如何实现负载均衡?
874 6
|
负载均衡 网络协议
使用LVS搭建集群实现负载均衡(二)安装使用
【8月更文挑战第8天】使用LVS搭建集群实现负载均衡(二)安装使用
233 5