Haproxy集群

      最后更新:2022-06-11 09:16:40 手机定位技术交流文章

      文章目录

      • 1.Haproxy概览
        • 1.1 Haproxy的介绍
        • 1.2近似特性
        • 1.3近似策略
        • 1.4通用网络集群调度器
        • 1.5LVS 、 Haproxy 和 Nginx 差异
      • 二.哈普雷克群部署
        • 2.1哈普洛西部署
        • 2.2 Nginx节点服务器部署
        • 2.3Apache节点服务器部署
        • 2.4备份节点服务器部署
        • 2.5测试
      • 三.重新定义Haproxy群集日志
      • 四.总结

      引言:
      Haproxy是一个以C语言编写的免费和开放源代码软件,提供高可用性、负载平衡和基于TCP和HTTP的应用程序代理

      1.Haproxy概览

      1.1 Haproxy的介绍

      HAProxy是可用的高可用性、负载均衡除了基于TCP和HTTP应用程序的代理,它是一个免费、快速和可靠的解决方案。
      HAProxy非常适合同时运行的大型(和开发的1w以上)网站,这些网站通常也需要保持或处理七层的对话。HAProxy的操作模式允许它轻松安全地集成到当前的架构中,它还保护网络服务器不受网络的侵袭。

      1.2近似特性

      ●可靠性和稳定性很好,可以与硬件水平F5负荷平衡设备比较;
      ●最大可同时维持40,00-500连通,每单位时间处理的请求最大数为20,00,最大处理能力为10Git/s;
      ●支持最大8个负荷平衡算法,并支持对话维护;
      ●支持虚拟主机功能,从而使网络负载平衡更加灵活;
      支持独特的功能,如连接拒绝、完全透明代理;
      ●具有强大的ACL支持,用于访问控制;
      其独特的弹性二进制树数据结构使数据结构的复杂性增加到0(1),即随着数据项的目的增加,数据的搜索速度不会降低;
      ●支持客户端的维护功能,减少了与 haproxy进行资源浪费的握手的数量,允许在一个tcp连接中完成多个请求;
      ●支持TCP加速,零复制,类似mmap机制;
      ●支持响应缓冲;
      ●支持RDP协议;
      ●基于源粘度,类似于 nginx ip_hash函数,它总是从同一客户端上调到同一服务器的请求一段时间;
      更好的统计数据接口,其网页接口显示后端集群中的服务器接收、发送、拒绝、错误等统计信息;
      ●详细健康状况检测,网页界面包含上游服务器的健康状况,并提供一定的管理功能;
      基于流动的健康评估机制;
      基于http认证;
      基于命令行的管理界面;
      日志分析器可以分析日志.

      1.3近似策略

      一个圆盘是简单的查询
      (2)静态rr,按重量表示
      最小连接,即最小的连接是首先处理的
      (四)来源,指请求来源的IP
      (5)uri,即为cdn使用所要求的URI;
      (6)url_param,指示请求的URL参数
      (7)hdr(name)指按HTTP请求头锁定每个HTTP请求;
      (8)rdp-cookie(name)指基于cookie(name)的所有TCP请求的锁定和入侵。

      1.4通用网络集群调度器

      1. 目前常见的网络集群调制器分为软件和硬件
      2. 软件通常使用开放源代码LVS、Haproxy和Nginx
      3. 主要使用的硬件是F5,许多人也使用一些国内产品,如飞船鱼、绿色联盟等。

      1.5LVS 、 Haproxy 和 Nginx 差异

      1. LVS基于Linux操作系统内核实现软负载均衡,而HAProxy和Nginx由第三方应用程序实现。
      2. LVS是基于目录和URL无法实现的四层IP负载平衡技术,HAProxy和Nginx可以实现四层和七层技术,HAProxy可以提供TCP和HTTP应用程序负载平衡综合解决方案;
      3. LVS由于在ISO模型的第四层工作,其状态监测功能单一,而HAProxy在状态监测功能中更为丰富和强大的,可以支持多种状态检测方法,如终端、URL、脚本;
      4. HAProxy功能很强,但整体性能低于4层模式的LVS负载平衡。
      5. Nginx主要用于Web服务器或缓存服务器。Nginx的上游模块也支持集群功能,但对集群节点的健康检查功能差,并没有良好的Haproxy性能。

      二.哈普雷克群部署

      在这里插入图片描述

      2.1哈普洛西部署

      哈普洛西部署

      上传安装包
      在这里插入图片描述
      解压并切换目录
      在这里插入图片描述
      查看内核版本
      在这里插入图片描述
      编译安装
      在这里插入图片描述
      在这里插入图片描述
      配置Haproxy
      在这里插入图片描述
      在这里插入图片描述

      在这里插入图片描述
      在这里插入图片描述

      设置系统服务
      在这里插入图片描述
      创建软连接
      在这里插入图片描述
      在这里插入图片描述

      2.2 Nginx节点服务器部署

      部署thenginx服务
      为了快速检测,本文使用 yum 安装 nginx, 如何编译安装可以查看编译安装 nginx

      在这里插入图片描述
      在这里插入图片描述

      2.3Apache节点服务器部署

      部署Apache服务

      在这里插入图片描述

      2.4备份节点服务器部署

      2.5测试

      使用浏览器访问
      在这里插入图片描述
      在这里插入图片描述
      关闭ginx节点服务器和apache节点服务器,重新使用浏览器访问
      在这里插入图片描述
      在这里插入图片描述

      在这里插入图片描述

      在这里插入图片描述

      三.重新定义Haproxy群集日志

      默认的哈普西日志输出到系统日志中,看它并不方便,为了更好地管理哈普西日志,我们通常在生产环境中单独定义自己。哈普洛西的信息和通知日志需要单独记录在不同的日志文件中。

      为了方便管理,rsyslog配置需要修改。 独立于haproxy.Conf定义 haproxy相关配置并将其置于/etc/rsyslog.Under d/, rsyslog在启动时将自动载入这个目录下的所有配置文件。

      在这里插入图片描述

      在这里插入图片描述
      在这里插入图片描述
      使用网页访问将生成相应的日志文件
      参见/var/log/haproxy/haproxy-info.log
      在这里插入图片描述
      关闭节点服务器,然后刷新页面,然后为haproxy notice.log打开节点服务器。
      查看
      在这里插入图片描述
      使用tail -f /var/log/haproxy/haproxy-info.Log命令可以跟踪请求的日志信息

      四.总结

      LVS基于Linux操作系统内核实现软负载均衡,而HAProxy和Nginx是基于第三方应用程序的软负载均衡
      LVS是一种四层IP负荷平衡技术,而HAProxy和Nginx可以实现四层和七层技术
      HAProxy功能强,但整体性能在4层模式下比LVS负荷平衡低

      本文由 在线网速测试 整理编辑,转载请注明出处,原文链接:https://www.wangsu123.cn/news/27082.html

          热门文章

          文章分类