haproxy
环境:centos7 haproxy-2.0.28.tar
解压文件:tar -zxf haproxy-2.0.28.tar.gz
进入解压的文件中:cd haproxy-2.0.28
编译安装gcc:yum install gcc -y
编译:make TARGET=linux-glibc
安装:make install
查看安装的路径:whereis haproxy
进入查询出的路径:ll /usr/local/sbin/haproxy
添加用户组:groupadd -r -g 149 haproxy
添加用户:useradd -g haproxy -r -s /sbin/nologin -u 149 haproxy
查看用户:id haproxy
创建文件:mkdir /etc/haproxy
touch /etc/haproxy/haproxy.cfg
编辑文件:vi /etc/haproxy/haproxy.cfg
global log 127.0.0.1 local0 info # 服务器最大并发连接数;如果请求的连接数高于此值,将其放入请求队列,等待其它连接被释 放; maxconn 5120 # chroot /tmp # 指定用户 uid 149 # 指定组 gid 149 # 让haproxy以守护进程的方式工作于后台,其等同于“-D”选项的功能 # 当然,也可以在命令行中以“-db”选项将其禁用; daemon # debug参数 quiet # 指定启动的haproxy进程的个数,只能用于守护进程模式的haproxy; # 默认只启动一个进程, # 鉴于调试困难等多方面的原因,在单进程仅能打开少数文件描述符的场景中才使用多进程#模式; # nbproc 20 nbproc 1
pidfile /var/run/haproxy.pid defaults log global # tcp:实例运行于纯TCP模式,第4层代理模式,在客户端和服务器端之间将建立一个#全双工的 连接, # 且不会对7层报文做任何类型的检查; # 通常用于SSL、SSH、SMTP等应用; mode tcp option tcplog option dontlognull #重试3次 retries 3 option redispatch maxconn 2000 # contimeout 5s timeout connect 5s # 客户端空闲超时时间为60秒则HA 发起重连机制 timeout client 60000 # 服务器端链接超时时间为15秒则HA 发起重连机制 timeout server 15000 #监控集群 listen rabbitmq_cluster # VIP,反向代理到下面定义的三台Real Server bind 192.168.100.101:5672 #配置TCP模式 mode tcp #简单的轮询 balance roundrobin # rabbitmq集群节点配置 # inter 每隔五秒对mq集群做健康检查,2次正确证明服务器可用,2次失败证明服务器#不可用, 并且配置主备机制 server rabbitmqNode1 192.168.100.102:5672 check inter 5000 rise 2 fall 2 server rabbitmqNode2 192.168.100.103:5672 check inter 5000 rise 2 fall 2 server rabbitmqNode3 192.168.100.104:5672 check inter 5000 rise 2 fall 2 #配置haproxy web监控,查看统计信息 listen stats bind 192.168.100.101:9000 mode http option httplog # 启用基于程序编译时默认设置的统计报告 stats enable #设置haproxy监控地址为http://node1:9000/rabbitmq-stats stats uri /rabbitmq-stats # 每5s刷新一次页面 stats refresh 5s
启动proxy:haproxy -f /etc/haproxy/haproxy.cfg
查看进程及端口号:ss -nelp