haproxy七层代理

HAProxy简介

HAProxy是法国开发者 威利塔罗(Willy Tarreau) 在2000年使用C语言开发的一个开源软件是一款具备高并发(万级以上)、高性能的TCP和HTTP负载均衡器支持基于cookie的持久性,自动故障切换,支持正则表达式及web状态统计。

haproxy基本环境配置

安装nginx

配置nginx默认发布文件

启动服务

测试(注意三台机子都是net)

haproxy负载均衡的实现

负载均衡:Load Balance,简称LB,是一种服务或基于硬件设备等实现的高可用反向代理技术,负载均衡将特定的业务(web服务、网络流量等)分担给指定的一个或多个后端特定的服务器或设备,从而提高了公司业务的并发处理能力、保证了业务的高可用性、方便了业务后期的水平动态扩展

在haproxy主机上安装haproxy

查看配置文件

修改配置文件

前端和后端

重启配置

测试

后端检测

将两个合并(前端后端写一起)

测试(前端后端写一起效果一样)

haproxy的日志分离

子进程中只有一个线程

查看

自定义日志

打开udp

server配置

测试

断掉两台web

安装阿帕奇

端口改为8080(backup---sorryserver的端口)

重启配置

修改配置

维护不可用状态

下线指定realserver

网页重定向

热更新

安装cocat工具(动态调整参数)

查看帮助

查看当前权重

修改权重

下线

开启

算法

HAProxy通过固定参数 balance 指明对后端服务器的调度算法。
balance参数可以配置在listen或backend选项中。

HAProxy的调度算法分为静态和动态调度算法。
有些算法可以根据参数在静态和动态算法中相互转换。

基于权重的轮询调度

first

在多台主机中执行死循环

roundrobin

leastconn

source

uri

url_param

hdr

状态页

backend server信息

基于cookie的会话保持

cookie value:为当前server指定cookie值,实现基于cookie的会话黏性,相对于基于 source 地址hash 调度算法对客户端的粒度更精准,但同时也加大了haproxy负载,目前此模式使用较少,已经被session共享服务器代替

ip透传

web服务器中需要记录客户端的真实IP地址,用于做访问统计、安全防护、行为分析、区域排行等场景

下载阿帕奇

修改配置文件

改为tcp

测试

访问控制列表应用(ACL)

访问控制列表ACL,Access ControlLists)
是一种基于包过滤的访问控制技术
它可以根据设定的条件对经过服务器传输的数据包进行过滤(条件匹配)即对接收到的报文进行匹配和过滤,基于请求报文头部中的源地址、源端口、目标地址、目标端口、请求方法、URL、文件后缀等信息内容进行匹配并执行进一步操作,比如允许其通过或丢弃。

定义acl匹配规范

利用acl做动静分离

编辑配置文件

测试

符合

不符合

基于文件后缀实现动静分离

创建目录

测试

基于访问路径实现动静分离

自动定义错误页面内容

先停止服务

测试

错误网页重定向

四层负载

安装数据库

修改配置

启动

查看

建立远程登录(两台机子都需要)

查看端口号

成功登录

https实现

haproxy可以实现https的证书安全,从用户到haproxy为https,从haproxy到后端服务器用http通信但基于性能考虑,生产中证书都是在后端服务器比如nginx上实现

制作证书

查看证书

修改配置参数

查看

全站加密

end!!

  • 22
    点赞
  • 13
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值