hitxiaya 2018-08-21
HAProxy是一个使用C语言编写的开放源代码的软件,其提供高可用性、负载均衡,以及基于TCP和HTTP的应用程序代理。尤其适用于高负载且需要持久连接或7层处理机制的web站点。
HAProxy可以将后端的服务器与网络隔离,起到保护后端服务器的作用。
HAProxy支持连接拒绝,通过拒绝连接,可以限制某些非法或有意的攻击型连接,从而降低其对网站带来的危害。
HAProxy实现了一种事件驱动、单一进程模型,此模型支持非常大的并发连接数。
HAProxy主要为基于HTTP和TCP访问的应用服务提供负载均衡,通过负载均衡算法,HAproxy能够接受数以万计的访问请求并将其转发到后端服务器池中进行处理,后端服务器池接受HAProxy转发的请求并进行处理。
应用场景:负载均衡、资源动静分离、读写分离
安装步骤:
cd /opt/software/haproxy tar -zxvf haproxy-1.7.8.tar.gz cd haproxy-1.7.8 uname [-a|-r] //查看Linux内核版本, TARGET是内核版本, TARGET则根据当前操作系统内核版本指定 - linux26 for Linux 2.6 and above - linux2628 for Linux 2.6.28, 3.x, and above make TARGET=linux2628 PREFIX=/usr/local/haproxy make install PREFIX=/usr/local/haproxy mkdir /usr/local/haproxy/conf
haproxy.conf配置文件:
global chroot /usr/local/haproxy daemon pidfile /usr/local/haproxy/haproxy.pid defaults mode http option httplog option httpclose option forwardfor option redispatch option abortonclose listen admin_stats bind 0.0.0.0:8099 mode http stats enable stats refresh 5s stats uri /stats stats auth admin:admin stats hide-version frontend http_80_in bind 0.0.0.0:80 mode http option httplog option httpclose option forwardfor default_backend server_web backend server_web mode http balance roundrobin server web1 192.168.134.134:8080 cookie web1 check inter 1500 rise 3 fall 3 weight 1 server web2 192.168.134.135:8080 cookie web2 check inter 1500 rise 3 fall 3 weight 2
启动haproxy:
/usr/local/haproxy/sbin/haproxy -f /usr/local/haproxy/conf/haproxy.cfg