Docker HAproxy 配置 & rsyslog 日志处理

环境

CentOS Linux release 7.9.2009 (Core)
HAProxy version 2.3.6-7851701, released 2021/03/03
IP: 192.168.0.1

Docker 安装

Docker 安装

建立haproxy配置文件
# 新建目录
mkdir -p /etc/haproxy

# 备份配置文件
cp /etc/haproxy/haproxy.cfg /etc/haproxy/haproxy.cfg.`date +%Y%m%d_%H%M%S`

# 写入配置文件
cat << \EOF > /etc/haproxy/haproxy.cfg
global # 全局参数配置
  daemon # 后台运行
  nbthread 16 # 线程数,新版本已抛弃nbproc参数
  log 127.0.0.1 local3 info # 定义日志分别输出到local3、4
  log 127.0.0.1 local4 warning # 日志级别不同

defaults # 默认参数配置
  mode tcp # 代理模式tcp、http
  retries 3 # 检测次数
  maxconn 32768 # 每一个代理的最大连接数
  timeout connect 5s # 成功连接到一台服务器的最长等待时间
  timeout client 5s # 连接客户端发送数据时的成功连接最长等待时间
  timeout server 5s # 服务器端回应客户度数据发送的最长等待时间

listen proxy01 # 代理01,名字自定义
  bind *:5000 # 侦听IP和端口,单一IP或多个,0.0.0.0:5000 | 192.168.0.1:5000
  mode http  # 代理模式,覆盖了上面默认配置
  balance roundrobin # 负载均衡方式,轮询
  option httplog # 日志记录HTTP请求
  option dontlognull # 日志中将不会记录空连接
  option forwardfor # 启用X-Forwarded-For,在requests头部插入客户端IP发送给后端的server,使后端server获取到客户端的真实IP
  http-request set-header Host www.examplesite.com # 设定头,有时候后端服务器需要,不需要可不设置
  
  # HAProxy持久连接方式,最后说明
  option http-server-close
  option http-pretend-keepalive

  # 日志格式
  #log-format %ci:%cp\ %si:%sp\ %B\ %U\ %ST\ %r\ %b\ %f\ %bi\ %hrl\ %hsl\
  log-format {
   
   "haproxy_clientIP":"%ci","haproxy_clientPort":"%cp","haproxy_dateTime":"%t","haproxy_frontendNameTransport":"%ft","haproxy_backend":"%b","haproxy_serverName":"%s","haproxy_Tw":"%Tw","haproxy_Tc":"%Tc","haproxy_Tt":"%Tt","haproxy_bytesR

你可能感兴趣的:(Docker HAproxy 配置 & rsyslog 日志处理)