当前位置: 首页 > news >正文

HAProxy双机热备,轻松实现负载均衡

目录

global全局配置

proxies代理配置

default默认配置

frontend前端配置

backend后端配置

实例


下载就不必多说了,直接进入配置操作吧。

首先HAProxy的配置文件默认在/etc/haproxy/haproxy.cfg。

配置文件大致可以分为两个部分,分别为全局配置global和代理配置proxies。也就是说通过全局配置设置整体的规则,而后代理配置针对需求设置专门的规则。那全局配置和代理配置又包含哪些参数呢?

global全局配置

  • log 127.0.0.1 local2           日志输出配置,所有日志都记录在本机系统日志,通过 local2 输出
  • chroot                   锁定运行目录
  • pidfile                   指定pid文件路径
  • user, group          运行haproxy的用户身份
  • deamon               以守护进程运行
  • maxconn              每个haproxy进程的最大并发连接数

以上是基础的全局配置,还有其他许多配置就需要大家根据自己的需求自行添加了。

proxies代理配置

代理配置又可以细分为四个部分,默认配置、前端配置、后端配置、监听配置。其中默认配置在其他配置中都生效,前端和后端顾名思义,而监听即将前端和后端结合在一起。

default默认配置

  •  mode http                             所处理的类别
  • log global                               定义日志为global
  • option httplog                         日志类别http日志格式
  • option dontlognull                  忽略并跳过记录空连接
  • retries 3                                 检查节点服务器失败次数
  • timeout                                  各种各样的超时时间
  • maxconn 20480                    最大连接数

frontend前端配置

  •  bind *:80           监听地址和端口
  • default_backend http_back           以上都不满足的时候使用默认 http_back 的 backend

backend后端配置

  •  balance roundrobin                 负载均衡的方式
  • server node1 127.0.0.1:5001   表示服务器
  • check                                        表示检测

前端和后端包括监听都可以添加

  • rise n                  表示n次正确认为服务器可用
  • fall n                   表示n失败认为服务器不可用
  • weight                 表示 权重

等等

实例

通过简单的配置就可以实现负载均衡了

 (本机IP为192.168.50.152)通过访问本机就可以实现两个服务器的负载均衡了。

大功告成,是不是很简单? 

http://www.lryc.cn/news/589552.html

相关文章:

  • [Python] -实用技巧6-Python中with语句和上下文管理器解析
  • Hessian矩阵在多元泰勒展开中如何用于构造优化详解
  • 记一次POST请求中URL中文参数乱码问题的解决方案
  • LeetCode 1888. 使二进制字符串字符交替的最少反转次数
  • 整除分块练习题
  • 使用Spring Cloud LoadBalancer报错java.lang.IllegalStateException
  • AI助手指南:从零开始打造Python学习环境(VSCode + Lingma/Copilot + Anaconda + 效率工具包)
  • 学习秒杀系统-实现秒杀功能(商品列表,商品详情,基本秒杀功能实现,订单详情)
  • Sharding-JDBC 分布式事务实战指南:XA/Seata 方案解析(三)
  • 2HDMI/1DP转EDP/LVDS,支持4K,144HZ和240HZ.
  • LSA链路状态通告
  • 学习软件测试的第十六天
  • 项目进度跨地域团队协作困难,如何统一进度安排
  • 原来时间序列挖掘这么简单
  • 力扣73:矩阵置零
  • NW917NW921美光固态闪存NW946NW952
  • 游戏行业中的恶梦:不断升级的DDoS攻击
  • 【HarmonyOS】ArkUI-X 跨平台框架入门详解(一)
  • 3.正则化——新闻分类
  • 【stm32】新建工程
  • STM32裸机开发(中断,轮询,状态机)与freeRTOS
  • MyBatis与Spring整合优化实战指南:从配置到性能调优
  • Conda 核心命令快速查阅表
  • 系统编程是什么
  • 22-C#的委托简单使用-2
  • ai问答推荐企业排名优化?:五大企业核心竞争力全景对比
  • 从0开始学习R语言--Day47--Nomogram
  • 【51单片机先流水2秒后数码显示2秒后显示END】2022-9-5
  • 判断QMetaObject::invokeMethod()里的函数是否调用成功
  • 密码协议的基本概念