haproxy概述
什么是 HAProxy
HAProxy全称 High Availability Proxy,是一款免费、开源、高性能的 TCP/HTTP 反向代理、负载均衡软件,使用 C 语言开发。
支持四层(TCP)负载均衡+七层(HTTP/HTTPS)负载均衡
跨平台:Linux(最常用)、FreeBSD、Windows 等;运维领域普遍部署在 Linux 服务器
特点:占用资源低、并发能力强、稳定性极高,大量互联网企业用于前端流量调度
常见同类产品:Nginx(七层强,四层较弱)、LVS(纯四层内核负载均衡,无七层能力)
一、实验环境设定
haproxy主机两块网卡分别为nat模式和仅主机模式,连接外网和内网
web1,web2主机网卡为仅主机模式
在web1,2上安装web服务并且写入内容
在haproxy主机上验证环境
二、haproxy的安装及配置参数
实现最基本的负载
有两种设定方式(前后端分开设定、listen方式)
编辑配置文件在指定位置写入
测试:
远程发送日志(将日志发送到192.168.0.10主机中)
在192.168.0.10主机开启接受日志的端口
在haproxy主机中设定日志发送信息
用windows访问服务器测试
在192.168.0.10主机中查看日志信息
三、socat日更新工具
热更新:
在服务或软件不停止的情况下更新软件或服务的工作方式,完成对软件不停工更新,典型的热更新设备,usb,在使用usb进行插拔时,电脑系统时不需要停止工作的,这中设备叫热插拔设备
安装:
利用socat查看haproxy信息
查看权重
使用socat更改haproxy信息是不允许的,需要在haproxy主机中授权
进行权重更改
测试
服务器下线和上线
四、基于cookie的会话保持
编辑配置文件/etv/haproxy/haproxy.cfg
测试:
不同浏览器访问不同web业务主机且刷新不重置,cookie值为设置的COOKIE-nxb