HAProxy反代基本配置



1,访问前端服务器反代到后端服务器上

2,轮流访问两台服务器

3,配置出可配置服务的状态页面




        服务器环境


前端代理


192.168.0.7--centos-6.5

# yum install -y haproxy



后端服务


192.168.0.5、192.168.0.6--centos-6.5

# yum install -y httpd mariadb-server


为区分是否有效,两台服务器的同一页面为不同内容

# vim /var/www/html/index.html

yujinserver_1 | yujinserver_2


# systemctl start httpd 






            代理服务配置




基础配置


在配置文件配置段中添加服务


vi /etc/haproxy/haproxy.cfg

frontend web

      #前端代理服务名,随便,不可重复

bind *:80

             # 绑定的本机ip和端口,“*”为所有ip

default_backend     websrvs

               # 默认反代到后端哪个服务,服务名需与下面后端服务名一致

backend websrvs

      #后端服务

balance roundrobin

               # 调度算法,此为轮流调度,轮询

                 uri:所有访问同一URL的用户都反代到同一服务器上

                 source:同一用户访问所有URL都反代到同一服务器上

server srv1 192.168.0.5:80 check

               # 后端服务器服务名(随便,不可重复)与ip及进行健康状态检测

server srv2 192.168.0.6:80 check



如此,最简单的配置完成,启动 haproxy

service haproxy start


如此访问 http://192.168.0.7/index.html,每刷新一次就会在两台后端服务器上轮流访问




有状态页面的配置


frontend  web

      bind *:80

      maxconn 4000                      #最大并发连接数

      stats enable                      #启用状态页

      stats uri /idc?idc                #浏览器访问路径,http://192.168.0.7/idc?idc

      stats realm "Statistics idc"      #登录提示

      stats auth  dfngyang:woabini #用户名:密码

      stats admin if TRUE               #启用stats page中的管理功能

      stats refresh 3        #页面自动刷新时间

      default_backend             websrvs

      

后端服务配置如基础配置上的就好




也可以如下在基础配置外配置状态页


listen stats :52113

      stats enable

      stats uri /idc?idc

      stats realm "Statistics idc"

      stats auth  dfngyang:woabini

      stats admin if TRUE

      stats refresh 3

      

      访问:

http://192.168.0.7:52113/idc?idc