HAproxy 配置参数详解
HAproxy 配置参数详解
/etc/haproxy/haproxy.cfg
# 配置文件
-------------------------------------------------------
# 全局配置
global # 设置日志文件输出定向
log 127.0.0.1 local3 info # 改变当前工作目录
chroot /usr/local/haproxy # 用户与用户组
user haproxy
group haproxy # 守护进程启动,运维方式为后台工作
daemon # 最大连接数
maxconn 4000 # 作用于其后紧跟的listen块,直至下一个defaults 块,下一个default 将替换上一个块作用于以后的listen
defaults # 启用每个实例日志记录事件和流量。
log global # 默认的模式mode { tcp|http|health },tcp是4层,http是7层,health只会返回OK
mode http # maxconn 65535 maxconn 每个进程可用的最大连接数
# retries 3 当对server的connection失败后,重试的次数
# option abortonclose 启用或禁用在队列中挂起的中止请求的早期丢弃
# option redispatch 启用或禁用在连接故障情况下的会话重新分配
# option dontlognull 启用和禁用 记录 空连接
# option httpclose 每次请求完毕后主动关闭http通道,HA-Proxy不支持keep-alive模式
# option forwardfor 获得客户端IP
# option httplog 记录HTTP 请求,session 状态和计时器
option httplog
option dontlognull
timeout connect 5000
timeout client 50000
timeout server 50000 #前端配置,http_front名称可自定义
frontend http_front # bind *:443 ssl crt /etc/haproxy/cert.pem 启用ssl证书
# bind *:80 发起http请求道80端口,会被转发到设置的ip及端口
bind *:80 #haproxy的状态管理页面,通过/haproxy?stats来访问
stats uri /haproxy?stats
default_backend http_back #后端配置,http_back名称可自定义
backend http_back # 负载均衡方式
# source 根据请求源IP
# static-rr 根据权重
# leastconn 最少连接者先处理
# uri 根据请求的uri
# url_param 根据请求的url参数
# rdp-cookie 据据cookie(name)来锁定并哈希每一次请求
# hdr(name) 根据HTTP请求头来锁定每一次HTTP请求
# roundrobin 轮询方式
balance roundrobin #设置健康检查页面
option httpchk GET /index.html #传递客户端真实IP
option forwardfor header X-Forwarded-For # inter 2000 健康检查时间间隔2秒
# rise 3 检测多少次才认为是正常的
# fall 3 失败多少次才认为是不可用的
# weight 30 权重
# 需要转发的ip及端口
server node1 192.168.179.131:8081 check inter 2000 rise 3 fall 3 weight 30
server node2 192.168.179.131:8082 check inter 2000 rise 3 fall 3 weight 30 ------------------------------------------------------- # haproxy的acl规则
------------------------------------------------------- frontend http_front
bind *:80
stats uri /haproxy?stats #创建一个acl,is_http_back2是acl的名称,可自定义,用于判断主机名是否为www.back2.com
acl is_http_back2 hdr_end(host) www.back2.com #通过正则判断主机名中是否为bbs.back.com或forum.back.com
acl is_host_bbs hdr_reg(host) -i ^(bbs.back.com|forum.back.com) #判断ua是否为android
acl is_ua_android hdr_reg(User-Agent) -i android #判断主机名开头是否为img.或css.或js.
acl is_host_static hdr_beg(host) -i img. css. js. #判断url路径中是否有/bbs
acl is_path_bbs path_beg -i /bbs #判断url文件结尾
acl is_php path_end -i .php #通过正则判断url中结尾以
acl is_static_file url_reg -i /*.(css|jpg|png|jpeg|gif)$ #效果同上
acl is_static_file2 path_end -i .css .jpg .png .jpeg .gif #如果主机名是www.back2.com那么就使用后端http_back2
use_backend http_back2ifis_http_back2 #默认使用的后端
default_backend http_back backend http_back
balance roundrobin
option httpchk GET /index.html
option forwardfor header X-Forwarded-For
server node1 192.168.1.222:8080 check inter 2000 rise 3 fall 3 weight 30 backend http_back2
balance roundrobin
option httpchk GET /index.html
option forwardfor header X-Forwarded-For
server node2 192.168.1.222:8082 check inter 2000 rise 3 fall 3 weight 30 -------------------------------------------------------
HAproxy 配置参数详解的更多相关文章
- 2、haproxy配置参数详解
代理相关配置参数 内容参考自马哥教育 HAProxy官方文档 https://cbonte.github.io/haproxy-dconv/2.0/configuration.html URI Syn ...
- mha配置参数详解
mha配置参数详解: 参数名字 是否必须 参数作用域 默认值 示例 hostname Yes Local Only - hostname=mysql_server1, hostname=192.168 ...
- reids配置参数详解
转自:http://www.jb51.net/article/60627.htm reids配置参数详解 #daemonize no 默认情况下, redis 不是在后台运行的,如果需要在后台运行, ...
- nginx配置参数详解
配置参数详解 user nginx nginx ; Nginx用户及组:用户 组.window下不指定 worker_processes 8; 工作进程:数目.根据硬件调整,通常等于CPU数量或者2倍 ...
- Redis配置参数详解
Redis配置参数详解 /********************************* GENERAL *********************************/ // 是否作为守护进 ...
- MHA配置参数详解 【转】
mha配置参数详解: 参数名字 是否必须 参数作用域 默认值 示例 hostname Yes Local Only - hostname=mysql_server1, hostname=192.168 ...
- zookeeper的配置参数详解(zoo.cfg)
配置参数详解(主要是%ZOOKEEPER_HOME%/conf/zoo.cfg文件) 参数名 说明 clientPort 客户端连接server的端口,即对外服务端口,一般设置为2181吧. data ...
- samba 配置参数详解
samba 配置参数详解: 一.全局配置参数 workgroup = WORKGROUP说明:设定 Samba Server 所要加入的工作组或者域. server string = Samba S ...
- [转帖]持久化journalctl日志清空命令查看配置参数详解
持久化journalctl日志清空命令查看配置参数详解 最近 linux上面部署服务 习惯使用systemd 进行处理 这样最大的好处能够 使用journalctl 进行查看日志信息. 今天清理了下 ...
随机推荐
- Hibernate一对多映射列表实例(使用xml文件)
如果持久化类具有包含实体引用的列表(List)对象,则需要使用一对多关联来映射列表元素. 在这里,我们使用论坛应用场景,在论坛中一个问题有多个答案. 在这种情况下,一个问题可以有多个答案,每个答案可能 ...
- C++初级 入门笔记学习(一)
,C++Primer初级: 预处理(E查看)->编译(S查看)->连接 13_枚举:可以尽可能多用枚举,多个const变量,可以用枚举去做: string name("aaa&q ...
- iOS 创建多个button实现点击改变背景颜色
工程中需要实现与UISegmentedControl效果相似的一排一共十个button,如下图.但是SegmentedControl修改不太方便,就用button替代, 循环创建十个button,点击 ...
- 编译Hadoop1.1.2eclipse插件并测试
(一).building hadoop 1.编辑{HADOOP_HOME}/build.xml (1).对31行的hadoop版本做修改 <property name="version ...
- Atitit.软件仪表盘(4)--db数据库子系统-监測
Atitit.软件仪表盘(4)--db数据库子系统-监測 连接数::: 死锁表列表:死锁基础列表(近期几条记录,时间,sql等) 3.对server进行监控.获取CUP.I/O使用情况 4.对数据 ...
- Ajax工作原理及实例
1.关于ajax的名字 ajax 的全称是Asynchronous JavaScript and XML,其中,Asynchronous 是异步的意思,它有别于传统web开发中采用的同步的方式. 2. ...
- spoj 10628
http://www.spoj.com/problems/COT/ 树上第k小元素 LCA + 可持久化线段树 每个新的版本都是由其父亲版本转化而来. #include <cstdio> ...
- 阻塞(sleep等等)区别 中断(interrupt)+ 中断的意义
不客气地说,至少有一半人认为,线程的"中断"就是让线程停止.如果你也这么认为,那你对多线程编程还没有入门. 在java中,线程的中断(interrupt)只是改变了线程的中断状态, ...
- POJ 1408 Fishnet【枚举+线段相交+叉积求面积】
题目: http://poj.org/problem?id=1408 http://acm.hust.edu.cn/vjudge/contest/view.action?cid=22013#probl ...
- java中的四种权限
1.私有权限(private) private可以修饰数据成员,构造方法,方法成员,不能修饰类(此处指外部类,不考虑内部类).被private修饰的成员,只能在定义它们的类中使用,在其他类中不能调用. ...