苏州建网站流程,苏州关键词搜索排名,php网站开发工程师面试,青少年思想道德建设网站一、集群功能分类
1、LB
(1) 概念#xff1a;
LB#xff1a;负载均衡 (Load Balancing) 是一种分发网络流量的技术#xff0c;LB 负载均衡的基本原理是将传入的网络流量分发到多个后端服务器#xff0c;以确保这些服务器都承担相似的工作负载#xff0c;从而避免某一台…一、集群功能分类
1、LB
(1) 概念
LB负载均衡 (Load Balancing) 是一种分发网络流量的技术LB 负载均衡的基本原理是将传入的网络流量分发到多个后端服务器以确保这些服务器都承担相似的工作负载从而避免某一台服务器过载而其他服务器处于空闲状态。
(2) 负载均衡产品分类
① 软件负载均衡设备
软件负载均衡设备是在软件层面实现负载均衡的工具或服务通常运行在普通服务器或虚拟机上无需专用硬件设备。
● LVSLinux Virtual Server
LVS 是一个内核级别的负载均衡解决方案根据用户请求的IP与端口号实现将用户的请求分发至不同的主机
● HAproxy
haproxy主要功能是针对 http 协议实现负载均衡也可以实现 tcp、udp 等协议的负载均衡。
② 硬件负载均衡设备
硬件负载均衡设备是专门用于分发网络流量、管理服务器集群和确保应用程序高可用性的物理设备。
厂商及种类F5 Networks - BIG-IP、Citrix - Citrix ADC、A10 Networks - Thunder ADC
2、HA
(1) 概念
HA高可用性集群High Availability是一种计算机系统或网络架构设计旨在提高系统的稳定性和可用性减少因硬件故障、软件问题或其他意外事件而导致的中断或停机时间。
(2) HA 衡量可用性
衡量可用性在线时间 /在线时间故障处理时间
HA 通过百分比或其他指标来衡量可用性水平通常以几个9的形式来表示
99%一年有三天不在线
99.9%一年有0.3天不在线
99.99%一年有0.03天不在线
99.999%一年有0.003天不在线
二、负载均衡
1、负载均衡的主要方式
① http 重定向
通过 HTTP 协议的重定向来分发客户端请求到多个后端服务器这种方法通常用于将流量从一个入口点引导到不同的服务或网站。
② DNS 负载均衡
DNS 负载均衡是通过在 DNS 层面管理域名解析来分发网络流量到不同的服务器或资源。DNS服务器上配置多个域名对应IP的记录域名解析时经过DNS服务器的算法将一个域名请求分配到合适的真实服务器上。
③ 反向代理负载均衡
反向代理器位于服务器端负责接收客户端请求将客户端的请求转发到多个后端服务器来分发流量。
④ IP 网络层负载均衡lvs-nat
在网络层和传输层修改 IP 地址。
用户访问请求到达负载均衡服务器负载均衡服务器根据算法得到一台真实服务器地址然后将用户请求的目标地址修改成该真实服务器地址数据处理完后返回给负载均衡服务器负载均衡服务器收到响应后将自身的地址修改成原用户访问地址后再讲数据返回去。 ⑤ 数据链路层负载均衡lvs-DR
在数据链路层修改 Mac 地址。
负载均衡服务器的 IP 和它所管理的 web 服务群的虚拟 IP 一致 负载均衡数据分发过程中不修改访问地址的 IP 地址而是修改 Mac 地址。 2、负载均衡层次
● 四层负载Layer 4 Load Balancing
四层负载均衡工作在OSI模型的第四层也称为传输层这种负载均衡主要基于源IP地址、目标IP地址、源端口和目标端口等传输层信息进行负载分发。它不深入分析传输的数据内容。
● 七层负载Layer 7 Load Balancing
七层负载均衡工作在OSI模型的第七层也称为应用层这种负载均衡不仅考虑传输层信息还深入分析应用层数据包可以根据HTTP头、URL、Cookie等应用层特定的信息进行负载分发决策。 三、LVS
1、LVS 概述
LVSLinux Virtual Server是一个虚拟的服务器集群系统。LVS 工作在一台server上提供 Directory(负载均衡器) 的功能把特定的请求转发给对应的real server(真正提供服务的主机)实现集群环境中的负载均衡。
● 框架LB-server负载均衡器 - realy-server真实服务器
2、LVS - NAT
(1) 工作原理
① 客户端将请求发往负载均衡器请求报文源地址是 CIP(客户端IP)目标地址为 VIP(负载均衡器地址)
② 负载均衡器收到报文后将客户端请求报文的目标 IP 地址改为后端服务器的 RIP 地址并将报文根据算法发送出去。
③ 报文送到后端服务器后后端服务器会响应该请求并将响应报文返还给 LVS
④ LVS 将此报文的源地址修改为本机并发送给客户端。 (2) 地址分配
clientvmnet8 → 192.168.198.133vmnet8 需要联网
LVS vmnet8 → 192.168.198.132
vmnet10 → 192.168.48.128
web1vmnet10 → 192.168.48.40
web2vmnet10 → 192.168.48.50
(3) 配置
① web 服务器
systemctl start httpd
systemctl enable httpd
● route add -net 192.168.198.0/24 gw 192.168.48.128
配置外部网段与网关
web1echo web1 /var/www/html/index.html
web2echo web2 /var/www/html/index.html
② LVS 配置
● echo 1 /proc/sys/net/ipv4/ip_forward
启动路由功能。将1写入 /proc/sys/net/ipv4/ip_forward 文件会启用IP数据包转发允许Linux服务器将收到的IP数据包从一个网络接口转发到另一个网络接口。
yum install -y ipvsadm
● ipvsadm -A -t 192.168.198.132:80 -s rr -A添加 lvs 集群ip客户端将请求发送到的地址 -ttcp协议 -s rr使用轮序调度算法
ipvsadm -a -t 192.168.198.132:80 -r 192.168.48.40:80 -m
ipvsadm -a -t 192.168.198.132:80 -r 192.168.48.50:80 -m
指定添加的真实服务器ip和端口
③ client 测试 3、LVS - DR
(1) 工作原理
① 客户端将请求发往负载均衡器请求报文源地址是CIP目标地址为VIP
② 负载均衡器收到报文后将客户端请求报文的源 MAC 地址改为自己 DIP 的 MAC 地址目标 MAC 改为了 RIP 的 MAC 地址并将此包发送给 RS
③ RS 处理完请求报文后将响应报文通过 lo 接口送给 eth0 网卡直接发送给客户端。 (2) 地址分配
client192.168.198.129
LVS192.168.198.130虚拟ip192.168.198.140
web1:192.168.198.132虚拟ip192.168.198.140
web2:192.168.198.133虚拟ip192.168.198.140
(3) LVS 服务器配置
① 添加虚拟ipVIP和路由条目
● ifconfig ens33:0 192.168.198.140 broadcast 192.168.198.255 netmask 255.255.255.0 up
ens33:0 是网络接口的虚拟子接口Virtual Subinterface子接口允许将多个IP 地址分配给同一个物理网络接口 up 表示启用虚拟子接口。
● route add -host 192.168.198.140 dev ens33:0
将所有传往IP地址 192.168.198.140 的数据包发送到 ens33:0 虚拟子接口
② 设置路由转发
开启路由转发功能 禁止转发重定向
vim /etc/sysctl.conf
net.ipv4.ip_forward 1
net.ipv4.conf.all.send_redirects 0
net.ipv4.conf.ens33.send_redirects 0
net.ipv4.conf.default.send_redirects 0 ③ 设置负载均衡条目
yum install -y ipvsadm
ipvsadm -A -t 192.168.198.140:80 -s rr
ipvsadm -a -t 192.168.198.140:80 -r 192.168.198.132:80 -g
ipvsadm -a -t 192.168.198.140:80 -r 192.168.198.133:80 -g
(4) web 服务器部署
echo web /var/www/html/index.html
systemctl start httpd
systemctl enable httpd
● ifconfig lo:0 192.168.198.140/32
分配给虚拟回环接口 lo:0 的IP地址。
● echo 1 /proc/sys/net/ipv4/conf/all/arp_ignore
忽略 arp 请求不接收客户端发送的 arp
● echo 2 /proc/sys/net/ipv4/conf/all/arp_announce
可以响应客户端的 arp 请求
(5) client 测试 4、轮询算法
(1) 静态调服方法
静态调度方法是指按照预定的、不变的顺序或一组规则在一组服务器或资源之间分配请求或任务。
① 轮询 (RR)将外部请求按顺序轮流分配到集群中的真实服务器上
② 加权轮询 (WRR)给服务器配置一个权重值请求按照服务器的权重比例来分发。高权重的服务器将获得更多的请求而低权重的服务器将获得相对较少的请求。
(2) 动态调服方法
动态调度方法用于根据实时条件在一组服务器或资源之间分发请求、任务或工作负载。
① 最小连接 (LC)将新请求定向到当前活动连接最少的服务器。
② 加权最小连接 (WLC)新连接被定向到具有最少活动连接的服务器但是服务器的权重会影响它可以处理的连接数。