安装:haproxy-1.7.5 稳定版本
tar包:wget http://www.haproxy.org/download/1.7/src/haproxy-1.7.5.tar.gz
解压: tar zxvf haproxy-1.7.5.tar.gz
进入解压目录 :cd haproxy-1.7.5
安装:make TARGET=linux2628 ARCH=x86_64
make install PREFIX=/application/haproxy-1.7.5 指定目录安装
查看执行结果:echo $?
创建创建连接: ln -s /application/haproxy-1.7.5 /application/haproxy
系统参数改变后直接 sysctl -p 生效:
net.ipv4.ip_forward = 1
创建目录:mkdir -p bin conf logs var/run var/chroot
使用tree命令查看:
├── bin
├── conf
├── doc
│ └── haproxy
│ ├── 51Degrees-device-detection.txt
│ ├── architecture.txt
│ ├── close-options.txt
│ ├── configuration.txt
│ ├── cookie-options.txt
│ ├── DeviceAtlas-device-detection.txt
│ ├── intro.txt
│ ├── linux-syn-cookies.txt
│ ├── lua.txt
│ ├── management.txt
│ ├── netscaler-client-ip-insertion-protocol.txt
│ ├── network-namespaces.txt
│ ├── proxy-protocol.txt
│ ├── SPOE.txt
│ └── WURFL-device-detection.txt
├── logs
├── sbin
│ └── haproxy
├── share
│ └── man
│ └── man1
│ └── haproxy.1
└── var
├── chroot
└── run
然后创建haproxy.conf文件:
global
daemon
maxconn 500
user haproxy
group haproxy
chroot /application/haproxy
pidfile /application/haproxy/var/run/haproxy.pid
nbproc 2
log localhost:514 local0 warning
defaults
log global
mode http
timeout connect 5000ms
timeout client 50000ms
timeout server 50000ms
listen tcptest
bind *:3557
mode tcp
balance roundrobin
server server1 192.168.141.170:22 check port 22 inter 5000 fall 5
使用命令测试配置文件:/application/haproxy/sbin/haproxy -f haproxy.conf -c
然后使用命令启动进程:/application/haproxy/sbin/haproxy -f haproxy.conf -D
测试连接:ok
平滑重启:sbin/haproxy -f conf/haproxy.conf -sf 17627,17628
配置log日志:
修改 /etc/rsyslog.conf:
local0.* /application/haproxy/logs/haproxy.log
修改/etc/sysconfig/rsyslog:
SYSLOGD_OPTIONS=" -c 2 -m 0 -r -x"
开启rsyslog端口:
$ModLoad imudp
$UDPServerRun 514
关闭selinux,重启haproxy。日志成功输出。