首页 > 其他分享 >haproxy

haproxy

时间:2024-07-21 16:17:55浏览次数:10  
标签:haproxy HAProxy 负载 192.168 Nginx ipv4

haproxy

image-20240630171139338

  • 也是一款实现负载均衡的调度器
  • 也适用于发在特别大的web站点
  • HAProxy的工作模式
    • mode http:只适用于 web服务
    • mode tcp:适用于各种服务
    • mode health:仅做健康检查,很少使用

【1】、配置IP

# client1
nmcli connection modify eth0 ipv4.method manual ipv4.addresss 192.168.4.100 autoconnection yes
# proxy
nmcli connection modify eth0 ipv4.method manual ipv4.addresss 192.168.4.5 autoconnection yes
# web1
nmcli connection modify eth0 ipv4.method manual ipv4.addresss 192.168.4.110 autoconnection yes
# web2
nmcli connection modify eth0 ipv4.method manual ipv4.addresss 192.168.4.120 autoconnection yes

【2】、安装配置haproxy

# proxy
yum install -y haproxy
vim /etc/haproxy/haproxy.cfg
global  # 全局配置
	......
	
defaults # 变量
	......
# 将defaults后面的配置删除,写如下配置
listen myweb
    bind 0.0.0.0:80  # 谁可以访问proxy
    balance roundrobin  # 负载均衡调度算法
    server web1 192.168.4.110:80 check inter 2000 rise 2 fall 5
    # web服务器的地址  check:进行健康检查 inter:健康检查间隔时间 rise:健康检查两次可以ping通则认为正常 fall:健康检查失败5次认为断开
    server web1 192.168.4.120:80 check inter 2000 rise 2 fall 5

【3】、测试

[root@client1:192.168.4.100 ~]$curl http://192.168.4.5
Welcome  to web2 on 192.168.4.120
[root@client1:192.168.4.100 ~]$curl http://192.168.4.5
Welcome  to web1 on 192.168.4.110
# 检查web1的日志,可以看到都是proxy访问web1的
192.168.4.5 - - [30/Jun/2024:17:50:53 +0800] "GET / HTTP/1.1" 200 34 "-" "curl/7.61.1" "192.168.4.100"
192.168.4.5 - - [30/Jun/2024:17:50:55 +0800] "GET / HTTP/1.1" 200 34 "-" "curl/7.61.1" "192.168.4.100"
192.168.4.5 - - [30/Jun/2024:17:50:56 +0800] "GET / HTTP/1.1" 200 34 "-" "curl/7.61.1" "192.168.4.100"

同时,haproxy为我们提供了可视化的查看网站,需要自己配置

# 在haproxy
listen stats # stats 自己设置
    bind 0.0.0.0:1080   # 网站监听端口,自己设置
    stats refresh 30s  # 网站每隔30s刷新
    stats uri /stats
    stats auth admin:admin  # 添加验证 用户名:密码

image-20240630181101691

负载均衡调度器比较

LVS适用于需要高并发性和稳定性

Nginx适用于静态文件服务器和反向代理等应用层负载均衡场景

HAProxy则具备较为丰富的功能和灵活性,适用于多种负载均衡场景

【1】、LVS(Linux Virtual Server)

优点

  • 高性能:LVS使用Linux内核中的IP负载均衡技术,能够实现非常高的并发处理能力
  • 稳定性:LVS经过长时间的实践应用,成熟稳定,被广泛使用
  • 可用性:支持高可用性的配置,可以实现故障自动切换,提供无中断服务
  • 灵活性:可根据需要采用多种负载均衡算法

缺点

  • 配置复杂:相比于其他两个技术,LVS的配置相对于复杂,需要更深入的了解和配置
  • 功能相对局限:LVS主要是传输层负载均衡技术,无法想Nginx和HAProxy那样对应用层协议进行处理

【2】、Nginx

优点

  • 高性能:Nginx采用了基于事件驱动的异步非阻塞架构,能够处理大量并发连接
  • 负载均衡:Nginx具备内置的负载均衡功能,可以根据配置进行请求 的转发
  • 丰富的应用:Nginx支持反向代理、静态文件服务、缓存、SSL等,在web服务器领域有很广泛的应用

缺点

  • 功能相对较少:相比于LVS和HAProxy,Nginx在负载均衡算法和健康检查等方面的功能相对较少
  • 限制于应用层协议:Nginx只能对HTTP和HTTPS等应用层协议进行处理,无法处理其他协议

【3】、HAProxy

优点

  • 灵活性:HAProxy支持丰富的负载均衡算法和会话保持的方式,可以根据需求进行灵活的配置
  • 完整的功能:HAProxy支持高可用性配置、健康检查、故障恢复、SSL等功能,在负载均衡领域应用广泛
  • 高性能:HAProxy性能优良,能够处理大量并发连接,并且支持异步IOmox】

缺点

  • 内存占用:相对于Nginx和LVS,HAProxy在处理大量连接时消耗的内存高
  • 高可用性:HAProxy需要借助额外的工具来实现高可用性,比如keepalived

标签:haproxy,HAProxy,负载,192.168,Nginx,ipv4
From: https://www.cnblogs.com/xuruizhao/p/18314608

相关文章

  • haproxy2.8.10安装
    网上查了很多关于haproxy热加载(reload)的文章,大体都有问题,在此记录下,我的安装配置记录。采用tar包编译安装,下载haproxy2.8.10(tls:长期支持稳定版本)下载地址:https://www.haproxy.org/摘自官方规划:Tar包安装,编译支持SSL证书Tar包目录: /opt/安装目录:/usr/local/hapr......
  • Linux (10) 配置HAProxy,实现负载均衡器的主备模式
    《WindowsAzurePlatform系列文章目录》 最近有1个客户需求,在这里记录一下。客户提出需要使用Azure负载均衡器(四层负载均衡器),实现主备模式。场景是负载均衡器后有2台虚拟机-平时100%的流量都发送到第一台虚拟机-如果第一台虚拟机发生......
  • docker-compose创建haproxy教程
    本文主要讲解通过docker-compose创建haproxy并进行代理一、haproxy简介HAProxy是一款基于事件驱动、单进程模型设计的四层与七层负载均衡器,它能够在TCP/UDP层面以及HTTP(S)等应用层协议上实现高效的流量分发。HAProxy不仅适用于Web服务器负载均衡,还能应用于数据库、邮件服务器......
  • Haproxy搭建Web群集
    一:案例分析1:案例概述2:案例前置知识3:案例环境二:案例实施1:编译安装nginx服务器(两个nginx网站的步骤完全一样,只有测试页面不同)[root@localhost~]#yum-yinstallpcre-develzlib-develgcc*[root@localhost~]#useradd-M-s/sbin/nologinnginx[root@localhost~]......
  • haproxy搭建Web集群
    一.案例概述    haproxy是目前比较流行的一种群集调度工具,同类工具中lvs性能更好,但搭建相对复杂;nginx的upstream模块支持群集功能,但是对群集节点健康检测功能不强,高并发性能没有Haproxy好;Haproxy的官方网站是http://www.haproxy.org/。    常见的Web群集调度......
  • HAProxy安装配置详解
    HAProxy是一个使用C语言编写的自由及开放源代码软件,其提供高可用性、负载均衡,以及基于TCP和HTTP的应用程序代理。 HAProxy特别适用于那些负载特大的web站点,这些站点通常又需要会话保持或七层处理。HAProxy运行在当前的硬件上,完全可以支持数以万计的并发连接。并且它......
  • Haproxy
    一、HAProxy介绍HAProxy是法国开发者威利塔罗(WillyTarreau)在2000年使用C语言开发的一个开源软件,是一款具备高并发(一万以上)、高性能的TCP和HTTP负载均衡器,支持基于cookie的持久性,自动故障切换,支持正则表达式及web状态统计,目前最新TLS版本为2.2。HAProxy是可提供高可用性、......
  • 在Linux中,lvs/nginx/haproxy 优缺点?
    LinuxVirtualServer(LVS)、Nginx和HAProxy都是流行的负载均衡解决方案,它们各自有不同的优缺点:1.LVS(LinuxVirtualServer)优点:高性能:LVS运行在Linux内核空间,因此具有较低的延迟和较高的吞吐量。稳定性:作为内核模块,LVS可以提供较高的稳定性。多种负载均衡算法:支持......
  • Haproxy搭建Web群集
    目录一、Haproxy概述1.Haproxy的概述2.常用的Web集群调度器 3.Haproxy的主要特性4.Haproxy调度算法5.Haproxy提供了3种实现会话保持的方式二、LVS、Nginx、Haproxy的区别三.Haproxy搭建Web群集 1.进行初始化操作安装Haproxy2.Haproxy服务器配置3.修改Haproxy......
  • Haproxy搭建Web群集
    目录1.Haproxy相关概念1.1Haproxy的概述1.2Haproxy的主要特性1.3常见的Web集群调度器2.应用分析2.1LVS应用2.2Haproxy应用2.3LVS、Nginx、Haproxy的区别2.4Haproxy调度算法原理3.Haproxy搭建web群集3.1初始化操作3.2编译安装Haproxy3.3配置Haproxy......