HAProxy配置中分成五部分内容,当然这些组件不是必选的,可以根据需要选择部分作为配置。

=====================

global      参数是进程级的,通常和操作系统(OS)相关.这些参数一般只设置一次,如果配置无误,就不需要再次配置进行修改
defaults   配置默认参数的,这些参数可以被利用配置到frontend,backend,listen组件
frontend     接收请求的前端虚拟节点,Frontend可以根据规则直接指定具体使用后端的 backend(可动态选择)。
backend     后端服务集群的配置,是真实的服务器,一个Backend对应一个或者多个实体服务器。
listen         Frontend和Backend的组合体。

======================
global
log 137.0.0.1 local0 notice
#全局的日志配置 其中日志级别是[err warning info debug].local0 是日志设备,必须为如下24种标准syslog设备的一种:
#kern user mail daemon auth syslog lpr news
#uucp cron auth2 ftp ntp audit alert cron2
#local0 local1 local2 local3 local4 local5 local6 local7
maxconn 65535 #最大连接数
user haproxy #haproxy运行的用户和组
group haproxy
#nbproc 8 #创建4个进程进入deamon模式运行。此参数要求将运行模式设置为"daemon"
daemon #使HAProxy进程进入后台运行。这是推荐的运行模式
spread-checks 5

defaults
log global
mode http #默认的模式mode { tcp|http|health },tcp是4层,http是7层,health只会返回OK
option httplog clf #采用http日志格式
option dontlognull
option dontlog-normal
stats uri /admin/status #监控haproxy状态的页面,可以使用http://IP/admin/status查看
stats auth focus:@focus123 #登录监控页面的用户名密码
stats refresh 60s #监控页面的刷新时间
#option nolinger
option redispatch #当serverId对应的服务器挂掉后,强制定向到其他健康的服务器
retries 2 #两次连接失败就认为是服务器不可用,也可以通过后面设置
option http-server-close
option abortonclose #当服务器负载很高的时候,自动结束掉当前队列处理比较久的链接
option allbackups
option forwardfor
maxconn 65535 #默认的最大连接数
timeout connect 20s #连接超时
timeout client 120s #客户端超时
timeout server 120s #服务器超时
timeout queue 5m
timeout http-keep-alive 75s
timeout http-request 30m

frontend web_in
mode http #http的七层模式
maxconn 65535
bind :8080 #监听端口为8080

acl is_down hdr_beg(host) -i down.focus.cn #如果请求的域名满足down.focus.cn返回true -i是忽略大小写
acl is_pms hdr_beg(host) -i pms.focus.cn
acl is_image hdr_beg(host) -i image.focus.cn

acl is_css path_beg /css #如果请求的路径名满足/css返回true
acl is_js path_beg /js #如果请求的路径名满足/js返回true

#acl is_dynamic path_end .html #判断文件后缀名是不是.html,如果是返回true
#acl ref hdr(Referer) -i www.focus.cn #判断http-referer是不是www.baidu.com,如果是返回true

use_backend image_nginx if is_image is_css or is_js #当满足is_image,并且满足is_css或者满足is_js的策略时,使用image_nginx的backend
use_backend down_nginx if is_down #当满足is_down的策略时,使用down_nginx的backend
use_backend pms_nginx if is_pms #当满足is_pms的策略时,使用pms_nginx的backend
#use_backend bbs_nginx if is_bbs is_dynamic !is_admin#当满足is_bbs,is_dynamic并且不满足is_admin时,使用bbs_nginxdbackend
default_backend all_nginx #以上都不满足时,使用默认的all_nginx的backend

errorfile 400 /etc/haproxy/errors/400.http #定义haproxy的错误页面
errorfile 403 /etc/haproxy/errors/403.http
errorfile 408 /etc/haproxy/errors/408.http
errorfile 500 /etc/haproxy/errors/500.http
errorfile 502 /etc/haproxy/errors/502.http
errorfile 503 /etc/haproxy/errors/503.http
errorfile 504 /etc/haproxy/errors/504.http

backend down_nginx
mode http #http的七层模式
fullconn 4096 #设置最大连接
option httpchk HEAD /noc.gif HTTP/1.1\r\nHost:image.focus.cn
#服务器的request中的域名是什么,这个在应用的检测URL对应的功能有对域名依赖的话需要设置

balance roundrobin #负载均衡的方式,roundrobin平均方式
#balance source #负载均衡的方式,source根据客户端IP进行哈希的方式
#option allbackups #在设置了backup的时候,默认第一个backup会优先,设置option allbackups后,所有备份服务器权重一样
#cookie SERVERID insert nocache indirect #允许插入serverid到cookie中,serverid后面可以定义
server Server141 192.168.242.141:80 check inter 2s minconn 64 maxconn 1024 slowstart 10s weight 100 #定义Real服务器名/ip/启用健康检查/最小连接数/最大连接数/至全速缓冲时间/weight
server Server142 192.168.242.142:80 check inter 2s minconn 64 maxconn 1024 slowstart 10s weight 100
#server Server154D 192.168.242.154:80 check cookie ServerD inter 10s maxconn 256 slowstart 10s weight 64
#cookie ServerD 表示SERVERID为ServerD;check inter 2s 是检测心跳频率

backend image_nginx
mode http
fullconn 1024
option httpchk HEAD /noc.gif HTTP/1.1\r\nHost:image.focus.cn
balance roundrobin
server Server170 192.168.242.170:80 check inter 2s minconn 64 maxconn 1024 slowstart 10s weight 100

backend pms_nginx
mode http
fullconn 1024
option httpchk HEAD /noc.gif HTTP/1.1\r\nHost:image.focus.cn
balance roundrobin
server Server170 192.168.242.170:80 check inter 2s minconn 64 maxconn 1024 slowstart 10s weight 100

backend all_nginx
mode http
fullconn 3072
option httpchk HEAD /noc.gif HTTP/1.1\r\nHost:image.focus.cn
balance roundrobin
server Server170 192.168.242.170:80 check inter 2s minconn 64 maxconn 1024 slowstart 10s weight 100
server Server141 192.168.242.141:80 check inter 2s minconn 64 maxconn 1024 slowstart 10s weight 100
server Server142 192.168.242.142:80 check inter 2s minconn 64 maxconn 1024 slowstart 10s weight 100

Haproxy配置参数的更多相关文章

  1. HAproxy 配置参数详解

    HAproxy 配置参数详解 /etc/haproxy/haproxy.cfg # 配置文件 ----------------------------------------------------- ...

  2. 2、haproxy配置参数详解

    代理相关配置参数 内容参考自马哥教育 HAProxy官方文档 https://cbonte.github.io/haproxy-dconv/2.0/configuration.html URI Syn ...

  3. Linux haproxy配置参数

    http-request option http-server-close option http-pretend-keepalive option httpclose option redispat ...

  4. haproxy配置基于ssl证书的https负载均衡

    本实验全部在haproxy1.5.19版本进行测试通过,经过测试1.7.X及haproxy1.3版本以下haproxy配置参数可能不适用,需要注意版本号. 一.业务要求现在根据业务的实际需要,有以下几 ...

  5. HAProxy配置SSL

    前沿 据悉苹果强制APP在2016年底使用ATS协议,所以公司准备将部分站点http统一替换成https.所有我们就得测试下 1.首先原有的haproxy1.5升级到了1.7版本支持ssl 2.查看相 ...

  6. haproxy配置详解

    先看一个ha的配置文件: # # Global settings # global # to have these messages end up in /var/log/haproxy.log yo ...

  7. redis sentinel集群配置及haproxy配置

    ip分布情况: sentinel-1/redis 主 10.11.11.5 sentinel-2/redis 从 10.11.11.7 sentinel-3/redis 从 10.11.11.8 ha ...

  8. [转载]fullPage.js中文api 配置参数~

    fullPage.js中文api 配置参数 选项 类型 默认值 说明 verticalCentered 字符串 true 内容是否垂直居中 resize 布尔值 false 字体是否随着窗口缩放而缩放 ...

  9. kafka配置参数

    Kafka为broker,producer和consumer提供了很多的配置参数. 了解并理解这些配置参数对于我们使用kafka是非常重要的.本文列出了一些重要的配置参数. 官方的文档 Configu ...

随机推荐

  1. css网站导航-菜单

    一个简单的网站导航效果: 效果案例:查看演示 css: ;;;} body{font-family: arial, 宋体, serif;font-size: 12px;} .menu{width:11 ...

  2. 解决Mac下Sequel Pro 1.1 连接 Homebrew安装Mysql5.7.8的问题 Sequel Pro 1.1 encountered an unexpected error

    解决Mac下Sequel Pro 1.1 连接 Homebrew安装Mysql5.7.8的问题 Sequel Pro encountered an unexpected error Sequel Pr ...

  3. 归并排序 求逆序数 链表的归并排序 多线程归并排序 java

    import java.util.Scanner; public class Main { private static int count=0; public static void mergeso ...

  4. Zend Studio 或者Eclipse下安装插件Spket(以Zend为例)

    1. Help>Install New Software... 2. 在Work With:后输入网址 http://www.agpad.com/update,点击Add 3. 输入Name:S ...

  5. unexpected error ConnectionError object has no attribute

    unexpected error ConnectionError object has no attribute

  6. (二)在.net中如何使用Memcached

    Step1:第一步当然是下载Memcached for c# API,

  7. java 泛型中 T、E ... 和 问号(通配符)的区别

    一.泛型中T.E ...  是泛型类.泛型方法定义时候用的. 1.泛型类定义在类后面 紧跟类名后面 public class TestClassDefine<T>{} 2.泛型方法定义在方 ...

  8. Delphi- 连接MySQL数据库BDE

    Delphi使用ADO可以连接MSSQL和ACCESS,但似乎不能连接MYSQL和ORACEL,如果要连接MYSQL和ORACLE得使用BDE. 一.连接方法 首先得先安装mysql驱动程序_mysq ...

  9. VM启用ISO共享

    在SCVMM中可以启用ISO共享,如下图: 如果不勾选共享镜像复选框,则vmm会把镜像文件通过网络复制到Hyper-v主机下的虚拟机配置文件夹中 配置步骤如下: 1.新建一个共享文件夹(存放ISO), ...

  10. BeagleBone Black Linux驱动程序开发入门(0): 开发环境

    搭建arm-linux交叉编译环境的教程有很多,这里只作简要说明.Host宿主机是Ubuntu10.04,我把它装在Windows XP的VirtualBox虚拟机中,这样相当于一台主机有两个操作系统 ...