实验环境不多做概述,主要通过配置文件熟悉Haproxy的实际应用。
一、基本的负载均衡
1、前后端分开设定
将前后端分开在配置文件中书写,达到负载均衡调度的作用。

2、通过listen格式书写负载均衡

二、日志相关内容
日志指定发送位置假定为webserver1
bash
#在192.168.0.10 开启接受日志的端口
[root@webserver1 ~]# vim /etc/rsyslog.conf
32 module(load="imudp") # needs to be done just once
33 input(type="imudp" port="514")
[root@webserver1 ~]# systemctl restart rsyslog.service


三、Haproxy的多进程与多线程
多线程与多进程无法同时实现
1、Haproxy的多进程

2、Haproxy的多线程

四、 socat热更新工具
热更新概念:在服务或软件不停止的情况下更新软件或服务的工作方式,完成对软件不停工更新,典型的热更新设备,usb,在使用usb进行插拔时,电脑系统时不需要停止工作的,这中设备叫热插拔设备,

2、利用socat更改haproxy信息


五、Haproxy的算法
1、静态算法
1)static-rr:静态轮询
按照次数分别调度

2)first算法
特点:忽略权重设置,完全按照列表调度当第一个服务器响应服务达到顶峰时,分配到另外一台服务器。
且不支持socat热更新,

2、动态算法
1)roundrobin
特点:支持权重运行时的动态调整,支持新增服务器的慢启动。
基于权重的轮询状态

动态权重跟新后状态

2)leastconn算法
特点:加权的最少链接动态算法,支持慢启动喝热更新。

3、混合算法
1)source算法
特点:源地址哈希

2)url算法
根据访问地址进行哈希运算。


3)url_param算法
特点:url_param对用户请求的url中的 params 部分中的一个参数key对应的value值作hash计算,并由服务器总权重相除以后派发至某挑出的服务器,后端搜索同一个数据会被调度到同一个服务器。


4)hdr算法
特点:根据http的头部信息进行哈希运算

六、基于cookie值的绘画保持
特点:同一个客户端的同一个浏览器访问的是同一台服务器。不同的浏览器访问的是不同的浏览器。

火狐浏览器

edge浏览器

七、Haproxy状态页
通过web界面,可视化显示当前HAProxy的运行状态


设备线状态动态观测

八、IP透传
1、七层IP透传
主机中是默认不开启ip透传功能

修改vim /etc/httpd/conf/httpd.conf

再次访问

2、四层ip透传
利用nginx体现四层ip透传。
修改nginx配置文件,启用四层访问控制。

haproxy设置模式为四层访问控制

在客户端访问后查看任何一个服务器访问日志

九、Haproxy acl访问控制进行动静分离
1、基础acl实例


十、Haproxy的全站加密
1、证书制作

2、全站加密


十一、自定义Haproxy的错误页面
1、设定sorry页面
1、设置sorry页面内容。

2、配置错误页面上线

3、测试

2、自定义错误页面
1、编写haproxy配置文件

2、将错误页面转到百度

十二、Haproxxy实现四层负载
1、分别在两台服务器上安装mariadb数据库。并设置id。
2、修改haproxy配置文件


3、测试

