haproxy.png
haproxy.png

haproxy是一款功能强大、灵活好用反代软件,提供了高可用、负载均衡、后端服务器代理的功能,它在7层负载均衡方面的功能很强大(支持cookie track, header rewrite等等),支持双机热备,支持虚拟主机,拥有非常不错的服务器健康检查功能,当其代理的后端服务器出现故障, HAProxy会自动将该服务器摘除,故障恢复后再自动将该服务器加入;同时还提供直观的监控页面,可以清晰实时的监控服务集群的运行状况。

1、首先安装

yum install haproxy -y

2、然后编辑haproxy.cfg文件内容

cd /etc/haproxy/
vim haproxy.cfg

下面编辑配置文件

global
        ulimit-n  51200
        log /dev/log    local0
        log /dev/log    local1 notice
        chroot /var/lib/haproxy
        pidfile /var/run/haproxy.pid
        user haproxy
        group haproxy
        daemon

defaults
        log     global
        mode    tcp
        option  dontlognull
        timeout connect 600
        timeout client 5m
        timeout server 5m
frontend 51-in
        bind *:3422
        default_backend 51-out
backend 51-out
        server server1 192.168.122.51:22 maxconn 20480
frontend 101-in
        bind *:8888
        default_backend 101-out
backend 101-out
        server server1 192.168.122.101:8080 maxconn 20480

配置说明

  • bind *:1000-2000指的是1000-2000端口。
  • 11.22.33.44为需要转发的服务器的IP
  • 51-out只是用来区别转发端口的标签,可以根据自己爱好命名。

如果要添加多个,就复制最后的5行代码分别增加并按需修改IP、端口、标签等信息。如下面所示:

frontend 101-in
        bind *:8888  //表示所有访问公网ip的8888端口的将转发到小鸡8080端口
        default_backend 101-out
backend 101-out
        server server1 192.168.122.101:8080 maxconn 20480   //设置小鸡的ip和需转发的端口

3、启动服务

service haproxy start

别忘了在你的服务器配置防火墙,开放转发的端口。

4、设置开机启动

chkconfig haproxy on  

5、相关命令

service haproxy start #启动
service haproxy stop  #关闭
service haproxy restart #重启
service haproxy status #状态