当前位置:首页 > CN2资讯 > 正文内容

服务器集群式架构 服务器集群原理

13小时前CN2资讯

要想构建集群,或者解决生产环境中的问题,首先我们需要了解集群的原理,那么下面我从其基本的常识,到集群的构建(LVS),做了详细的记录,让我在面对问题时,能够拥有足够的知识,去解决问题。

一、集群描述

1、集群的定义

# 定义:可以理解为一组协同工作的服务器。解决了高并发的需求。

2、集群的特性

1)可扩展

# 当服务器负载压力增加时,可以通过扩展的方式减少单台服务器的压力。 # 水平扩展:通过增加更多的服务器或者程序实例来分散负载,从而达到提升存储和计算的能力, # 优点:上限高、添加节点服务不会中断、性价比高 # 缺点:技术实现难度较高、需要更该网络拓扑结构 # 水平扩展实现方案: # DNS服务器:由于缓存服务器硬性服务器的性能平衡 # Agent代理:真实服务器、共享存储、用户通过Agent端的访问策略,将其代理到RS # 垂直扩展:增强单机硬件性能(如换一个更强大的硬件或服务器) # 优点:技术实现难度低、网络拓扑结构不需要更改 # 缺点:有上限瓶颈、服务访问会中断

2)高可用

# 集群中的一个节点失效,其任务不会中断,会传递到其他节点。防止单节点失效,而导致访问中断

3)高性能

# 当访问量增加时,能够轻松的扩展,提高集群的性能,应对更多的访问压力。

3、集群的种类

1)负载均衡集群(load Balancing)---LBC

#定义: #将单台服务器的压力分担之不同的服务器节点共同承担 #结构: # 前端组件/负载调度器 # 真实服务器 # 共享存储 # 负载调度器分类:软件、硬件 # 软件:amoeba、Nginx,Ha-Proxy(linux-HA)、LVS 等 # 硬件:ROSE、安瑞科技、F5 等 #基于OSI七层模型: # 二层:数据链路层 F5 等 # 四层:传输层:Nginx(新版)、LVS、Ha-Proxy 等 # 七层:应用层:(可识别域名主机) Nginx、Ha-Proxy 等 # 原理: #四层:只完成一次完整的tcp连接,由Client通过调度器转发,发送至真实服务器完成 #七层:完成两次完整的tcp连接,一次由Client和调度器完成,一次有调度器和真实服务器完成 # 基于安全性: #四层:不能拦截SYN攻击 #七层:可以拦截SYN攻击 #基于范围行: #四层:只要是C/S结构的根据tcp、udp开发的服务体系 #七层:只能负载自己识别的协议模式 #基于并发能力: #四层大于七层

2)高可用集群(High Availability)---HAC

#工作模式: # 将出现故障的服务器转发到另一个正常工作的服务器上,从而达到服务不会中断的效果。 #原理: #心跳线:主从服务器之间进行心跳检测,从服务器一旦发现主服务器由于某些原因而停止服务,立即投入使用,保证服务不会中断。 # 目的: # 尽可能的提高服务器的可用性。

描述

通俗叫法

可用性级别

年度停机时间

基本可用性

2个9

99%

87.6小时

较高可用性

3个9

99.9%

8.8小时

具有故障自动恢复能力的可用性

4个9

99.99%

53分钟

极高可用性

5个9

99.999%

5分钟

# 常见的问题: # 脑分裂 #在一个高可用集群中,由于网络的原因内部两个节点互相加测不到对方的存在,互相接管对方的资源。 # 脑分裂导致的问题: # 引起数据的不完整性,在集群的节点出现脑分裂的时候,如果外部无法判断式哪个为主节点,脑分裂的集群都可以正常访问,这时候如果有数据写入,可能会导致数据不完整。 #服务异常:对外提供服务出现异常 #解决方案: #添加冗余的心跳线,尽量减少“脑裂”的机会 #启用磁盘锁,在发生脑分裂的时候可以协调对资源的访问 #设置仲裁机制 #多次间歇性探测 #电源交换机 #实现方案: #软件:heartbeat(linux-ha)、Keepalived等 #硬件:ROSE、安瑞科技、F5等

3)高性能运算集群(Hight Performance)---HPC

# 当任务量极大的时候,用一个集群来完成此项任务。 # 提供了单台计算机提供不了的运算能力

二、LVS

1、定义

# LVS是Linux Virtual Server的简称,也就是Linux虚拟服务器。通过LVS提供的负载均衡技术和Linux操作系统实现一个高性能,高可用的服务器群集,它具有良好的可靠性、可扩展性和可操作性。

2、工作类型

1)NAT(路由模式)

# 特性: # 负载调度器工作在真实服务器和客户端之间 #负载调度器必须是linux系统,这是服务器可以使任意系统 #出入站均有负载调度器转发完成 # 支持端口映射

2)DR(子接口路由模式)

#特性 #负载调度器与真实服务器处于同一个广播域 #负载调度器不许是linux系统,真实服务器必须是linux系统 #入站有调度器负责完成,出站由真实服务器和调度器完成 #不支持端口映射

3、算法分类

1)静态调度算法

# RR轮询: #将每次用户的请求分配给后端服务器,从第一台服务器开始到第N台结束,然后循环 # WRR加权轮询: #按照权重的比例实现在多台主机之间进行调度 # SH(source hash)源地址散列: #将同一个ip用户的请求,发送给同一个服务器 # DH(destination hash)目标地址散列: # 将同一个目标地址的请求发送给同一个真实服务器(提高缓存的命中率)

2)动态调度算法

# 连接类型: #活动连接:正在连接传送数据 #非活动连接:传输完成后,还没来得及断开握手 # LC(lest-connection):最少连接: #将新的连接请求,分配给连接数最少的服务器 #计算:活动连接 × 256 + 非活动连接 #例:RS1 活动连接10 非活动连接100,RS2 活动链接数20 非活动连接数0.利用算法可以知道RS2压力大于RS1 # WLC:加权最少连接: #特殊的最少连接算法,权重越大承担的请求数量越多 #计算:(活动连接数x256+非活动连接数)/权重 # SED:最短期望延迟:特殊的WLC算法 #计算:(活动连接数+1)x256/权重 # NQ永不排队: #特殊的SED算法,无需等待,如果有真实服务器的连接数等于0那就直接分配 不需要运算 # LBLC: #特殊的DH算法,既能提高缓存命中率,又要考虑服务器性能(动态调度算法) # LBLCR #LBLC+缓存,尽肯能提高负载均衡和缓存命中率的折中方案 #生产环境中,不需要缓存的用轮询机制(RR),需要缓存的用这种缓存的(LBLC), 以适合的生产环境为主,RR和WRR用的最多

3)持久化连接

# 特性: #持久化连接不属于调度算法,但是会应用于算法,并且比算法优先级更高 #算法类似于 SH ,但是又有时间限制 # 分类: # PCC(持久客户端连接): #将来自于同一个客户端的所有请求统统定向至此前选定的RS;也就是只要IP相同,分配的服务器始终相同 ipvsadm -A -t 192.168.190.111:0 -s wlc -p 120 #-A:添加一个新的集群 -t:tcp集群 集群地址(:0代表任意端口)-s:指定算法 -p:指定持久化时间 #PPC(持久端口连接): #将来自于同一个客户端对同一个服务(端口)的请求,始终定向至此前选定的RS ipvsadm -A -t 172.16.0.8:80 -s rr -p 120 # PFMC持久防火墙标记连接: #持久防火墙标记连接;将来自于同一客户端对指定服务(端口)的请求,始终定向至此选定的RS;不过它可以将两个毫不相干的端口定义为一个集群服务 iptables -t mangle -A PREROUTING -d 172.16.0.8 -p tcp --dport 80 -j MARK --set-mark 10 iptables -t mangle -A PREROUTING -d 172.16.0.8 -p tcp --dport 443 -j MARK --set-mark 10 service iptables save ipvsadm -A -f 10 -s wlc -p 120 # PFMC原理: #借助防火墙工具,将用户分类,打标签,集群根据对应的标签的值进行对应的负载调度 # ARP响应级别: #arp-ignore #0 只要本机配置有相应 IP 地址就响应 #1 仅在请求的目标地址配置在请求到达的网络接口上时,才给予响应 # ARP 通告行为: #arp-announce #0 将本机任何网络接口上的任何地址都向外通告 #1 尽可能避免像目标网络通告与其网络不匹配的地址信息表 #2 仅向目标网络通告与其网络相匹配的地址信息

注:本文为博主查阅多方资料整理而成,如有侵权请留言联系博主删除。

注:本文为博主查阅多方资料整理而成,如有侵权请留言联系博主删除。 学习新东西,不要忘记复习旧知识,这样你才能更好!



    你可能想看:

    扫描二维码推送至手机访问。

    版权声明:本文由皇冠云发布,如需转载请注明出处。

    本文链接:https://www.idchg.com/info/23586.html

    分享给朋友:

    “服务器集群式架构 服务器集群原理” 的相关文章

    年抛域名的优势与续费注意事项,助您成功管理短期项目

    年抛域名是我在互联网世界中常遇到的一个概念,它们指的是那些注册时间为一年,使用者并不打算长期持有的域名。这类域名的价格往往比较低廉,非常适合一些短期项目或者测试用途。或许你有过这样的经历,想要尝试某个新项目,于是申请了一个年抛域名,一年后若不再需要,便无后顾之忧。这样的运作模式灵活高效,适合现代互联...

    提升科研效率:1536微量高速离心机及其应用

    产品概述与特点 在实验室的工作中,设备的效率通常会直接影响到实验的结果。1536微量高速离心机就是这样一款能够大大提高离心效率的设备。它能够处理1.5ml和2.0ml的离心管、8连管、PCR管以及5ml管,极大地方便了科学研究中的样品处理流程。产品的设计充分考虑了用户的使用需求,具备了最高15,00...

    优化RackNerd DC2机房 IP使用体验与性能评测

    我最近对RackNerd的DC2机房产生了越来越多的兴趣,特别是位于美国洛杉矶的这座机房。它被誉为RackNerd中中国国内访问速度较快的机房之一,吸引了很多需求高效网络连接的用户。这座机房的地理位置确实蛮不错,靠近美西主干线,对于需要与国内建立连接的网站和应用来说,能带来相对更快的访问速度。 对于...

    探索锡考克斯:舒适的居住地与丰富的旅游体验

    锡考克斯(Secaucus)是一个坐落于新泽西州的小镇,距离繁华的纽约市仅有不到10公里的路程。这使得锡考克斯成为一个非常吸引人的居住地和旅游目的地。首先,锡考克斯的地理坐标是纬度40.782和经度-74.0676,位于北纬40°46′55″和西经74°4′3″之间。这种优越的地理位置无疑为它的经济...

    RackNerd Windows VPS的硬件条件与性能评测

    在选择虚拟服务器服务商时,硬件条件是我最关注的部分。RackNerd作为一家提供多种配置Windows VPS的服务商,其硬件条件非常吸引。接下来,我将详细介绍RackNerd在硬件配置方面的一些关键特点。 处理器配置 RackNerd使用的AMD Ryzen 3900X处理器,让人印象深刻。这个处...

    探索4837线路:高速度、稳定性与价格优势的网络选择

    在当今网络时代,选择合适的线路对于提高上网体验至关重要。4837线路就是其中一个备受关注的选项。它主要指在回国或出国前,通过一个名为4837的节点进行连接,进行跨国网络传输。这个线路归类为联通线路,其特点在于相对负载较低,使得整体表现更胜一筹。经过近年来的广泛应用,4837线路逐渐成为热门选择。 我...