– 扩展 – 11 – 负载均衡 1. 场景
面对大量业务访问和高并发请求,可以使用高性能服务器来提高服务的负载能力。当单机容量达到极限时,可以采用集群策略进一步提高负载能力,但仍然存在负载不均衡的问题。
例如:如果一个集群有3个节点,那么所有客户端都与其中一个节点建立TCP连接,那么网络负载必然会大大增加服务器集群技术,难以承受,其他节点也无法承受,因为有没有那么多负载。造成硬件资源的浪费,所以负载均衡尤为重要。
对于这种情况,客户端与集群建立的TCP连接并不是要与集群中的所有节点建立连接,而是选择其中一个节点建立连接。如下图所示,引入负载均衡后,可以将每个客户端的连接分配到集群的各个节点上,从而避免了上面讨论的缺陷。
2.负载均衡 2.1. 定义
负载平衡是一种计算机网络技术,用于在多台计算机(计算机集群)、网络连接、CPU、磁盘驱动器或其他资源之间分配负载,以实现最佳资源使用、最大吞吐量、最小响应时间和避免过载的目的。
使用具有负载平衡功能的多个服务器组件而不是单个组件可以通过冗余来提高可靠性。
2.2. 负载均衡软件的分类负载均衡服务器负载客户端负载硬件负载平均一种由软件实现的负载均衡技术。负载均衡软件可以很方便的安装在服务器上,实现一定的负载均衡功能。负载均衡软件配置简单,操作方便,最重要的是成本低。2.2.2。硬件负载是指在多台服务器之间安装相应的负载均衡设备,即负载均衡器(如F5)来完成负载均衡技术。与软件负载均衡技术相比,可以实现更好的负载均衡。影响。因为硬件负载均衡技术需要额外的负载均衡器,成本比较高,所以适合高流量的大型网站系统。2.3、负载均衡算法
负载均衡可以简单地通过客户端连接时使用负载均衡算法来实现。
负载均衡算法有很多种,主流的有以下几种。
2.3.1。旋转训练算法
依次将请求分发到后端服务器,它以平衡的方式对待后端的每台服务器,而不考虑服务器的实际连接数和当前系统负载。
2.3.2、加权轮询法
不同后端服务器的配置可能与当前系统的负载不一样,所以它们的抗压能力也不同。
给高配置低负载的机器分配更高的权重,让它处理更多的请求。对于低配置高负载的机器,配置较低的权重以降低其系统负载
加权循环法可以很好地处理这个问题,并将请求顺序和权重分配给后端。
2.3.3。随机法
通过随机算法,根据后端服务器的列表大小值随机选择其中一台服务器进行访问。
从概率统计理论可以知道,随着客户端调用服务器的次数,实际效果越来越接近调用的平均分布,也就是轮询的结果。
2.3.4。加权随机法
与加权循环法一样,加权随机法也根据后端机器的配置和系统的负载分配不同的权重。
不同之处在于它按权重随机请求后端服务器,而不是按顺序请求。
2.3.5。源地址后的Hilfa
源地址散列的思想是通过Hashi函数根据得到的客户端IP地址计算一个值,并用这个值对服务器列表的大小进行取模运算,得到的就是序列号客户端想要访问的服务器。.
源地址散列方法用于负载平衡。当相同IP地址的客户端不改变后端服务器列表时,每次都会映射到同一个后端服务器进行访问。
2.3.6、最小连接数法
最小连接数算法更加灵活和智能。由于后端服务器的配置不同,请求的处理有快有慢。根据后端服务器当前的连接情况,动态选择当前连接积压最少的一个。服务器处理当前请求,尽可能提高后端服务的利用效率,将负载合理分配到各个服务器。
3. 实施 3.1. 用来实现负载均衡
材料
https://blog.csdn.net/zhou920786312/category_11584732.html
3.2. 用于实现高可靠的负载均衡
材料
https://blog.csdn.net/zhou920786312/category_11276453.html
3.2.1。介绍
想象一下,如果之前配置的主机 192.168.0.9 突然宕机或者网卡故障,那么虽然集群没有故障,但是所有与外部客户端的连接都会断开,结果将是灾难性的。保证负载均衡服务的可靠性也很重要。这里需要引入工具,可以通过自身的健康检查和资源接管功能实现高可用(双机热备),实现故障转移。
VRRP(, )用于以软件的形式实现服务的热备份功能。通常两台Linux服务器组成一个热备组(和),热备组中只有一台主服务器同时提供服务,同时虚拟化一个公有虚拟IP地址,简称VIP时间。
这个VIP只存在于互联网上,对外提供服务。如果检测到主机或服务故障,备份服务器会自动接管VIP,成为VIP,将原来的从热备组中移除。恢复原来的时候,会自动加入热备组,默认抢占,起到故障转移的作用。
3.2.2. 整个通话链路 客户端通过VIP建立通信链路。通信链路经过的节点被路由到对应的节点,通过负载均衡算法将负载分配到集群中的各个节点。一般情况下,客户端的连接是通过图11-12的左边部分进行负载分配的。当节点挂起或无法从挂起中恢复时,通过图11-12右侧部分升级为客户端连接的负载分布。3.3. 使用+LVS实现负载均衡
材料
https://blog.csdn.net/zhou920786312/category_11840630.html