基于 Haproxy 构建负载均衡集群

案例环境:html

主机            操做系统                     IP地址                  主要的软件
----------------------------------------------------------------------------
Haproxy    CentOS6.6 x86_64   192.168.200.101  haproxy-1.4.24.tar.gz
Nginx1    CentOS6.6 x86_64   192.168.200.103  nginx-1.6.2.tar.gz
Nginx2    CentOS6.6 x86_64   192.168.200.104  nginx-1.6.2.tar.gzlinux

配置负载均衡服务器nginx

1.安装Haproxy依赖包及源码包编译安装c++

yum -y install gcc gcc-c++ make pcre-devel bzip2-develweb

2.将准备好的软件包解压vim

tar xf haproxy-1.4.24.tar.gz -C /usr/src/浏览器

3.编译安装bash

cd /usr/src/haproxy-1.4.24/服务器

make TARGET=linux26 && make install负载均衡

4.创建haproxy的配置目录及文件

mkdir /etc/haproxy

cp examples/haproxy.cfg /etc/haproxy/

5.haproxy 配置文件修改

vim /etc/haproxy/haproxy.cfg

# this config needs haproxy-1.1.28 or haproxy-1.2.1

 
global
#   log 127.0.0.1   local0
#   log 127.0.0.1   local1 notice
     log /dev/log    local0 info
     log /dev/log    local0 notice
     maxconn 4096
     uid 99
     gid 99
     daemon
 
defaults
     log global
     mode    http
     option  httplog
     retries 3
     maxconn 4096
     contimeout  5000
     clitimeout  50000
     srvtimeout  50000
 
listen  webcluster 0.0.0.0:80
     option  httpchk GET /index .html
     balance roundrobin
     server  inst1 192.168.200.113:80 check inter 2000 fall 3
     server  inst1 192.168.200.114:80 check inter 2000 fall 3
 
listen admin_stats
     bind 0.0.0.0:8000
     mode http
     option httplog
     maxconn 100
     stats refresh 30s
     stats uri /stats
     stats realm Crushlinux\ Haproxy
         stats auth admin:admin
     stats hide-version
6.准备服务自启动脚本
cp /usr/src/haproxy-1.4.24/examples/haproxy.init /etc/init.d/haproxy
ln -s /usr/local/sbin/haproxy /usr/sbin/haproxy
chmod +x /etc/init.d/haproxy
/etc/init.d/haproxy start
 
配置nginxWEB服务器
1.搭建Nginx1
(1.)软件包安装nginx
(2.)源码包安装nginx
2.建立测试页
cd /usr/local/nginx/html/
echo "server 192.168.200.113" > index.html
3.起服务
/usr/local/nginx/sbin/nginx
4.查看80端口信息
netstat -anpt |grep :80
5.nginx2搭建方式同上,要修改测试页
echo "server 192.168.200.114" > index.html
 
##nginx服务控制方式
/usr/local/nginx/sbin/nginx 启动服务

killall -s HUP nginx 从新加载服务
killall -s QUIT nginx 退出服务

测试环境

用浏览器打开 http://192.168.200.111
打开一个新的浏览器再次访问 http://192.168.200.111


能够验证两次访问到的结果分别为:
server 192.168.200.113
server 192.168.200.114

 

Haproxy 日志文件:

 1.添加日志文件

vim /etc/haproxy/haproxy

# this config needs haproxy-1.1.28 or haproxy-1.2.1

 
global
     #log 127.0.0.1  local0
     #log 127.0.0.1  local1 notice
     
     log /dev/log    local0 info
     log /dev/log    local0 notice
2.重启服务
service haproxy restart
3.修改rsyslog配置
 vim /etc/rsyslog.d/haproxy.conf
if ($programname == 'haproxy' and $syslogserverity-text == 'info' ) then - /var/log/haproxy/haproxy-info .log
&~
if ($programname == 'haproxy' and $syslogserverity-text == 'notice' ) then - /var/log/haproxy/haproxy-notice .log
&~  
4.重启rsyslog服务
service rsyslog restart
5.查看日志文件是否建立成功
ls -l /var/log/haproxy/haproxy-info.log
ls -l /var/log/haproxy/haproxy-notice.log
6.进入网页进行状态统计功能测试
相关文章
相关标签/搜索