一:HAProxy简介
HAProxy 提供高可用性、负载均衡以及基于 TCP 和 HTTP 应用的代理,支持虚拟主机,它是免费、快速并且可靠的一种解决方案。HAProxy 特别适用于那些负载特大的 web 站点, 这些站点通常又需要会话保持或七层处理。HAProxy 运行在当前的硬件上,完全可以支持数以万计的并发连接。并且它的运行模式使得它可以很简单安全的整 合进您当前的架构中, 同时可以保护你的 web 服务器不被暴露到网络上。
二:实验环境:rhel6.3 selinux and iptables disabled
实验主机:172.25.254.5 haproxy
172.25.254.6 xp1
172.25.254.7 xp2
三:安装
首先自己在网上下载得到haproxy-1.4.24.tar.gz
安装其有两种方式,源码和rpm包方式:
源码方式:
tar zxf haproxy-1.4.23.tar.gz
cd haproxy-1.4.23
make TARGET=linux26 ARCH=x86_64 USE_PCRE=1 PREFIX=/usr/local/haproxy install
rpm包方式:
rpmbuild -tb haproxy-1.4.24.tar.gz(如果电脑上没有rpmbuild工具,安装 yum install rpm-build -y)
还需要你电脑安装pcre-devel gcc 用yum源就可以直接安装
然后根据电脑提示,安装rpm包
四:配置
vim /etc/haproxy/haproxy.cfg 里面全部信息如下
-
global
-
log 127.0.0.1 local0 #指定日志设备
-
#log 127.0.0.1 local1 notice
-
#log loghost local0 info #指定日志类型
-
maxconn 4096 #并发最大连接数
-
chroot /usr/share/haproxy #jail目录
-
uid 99
-
gid 99
-
daemon #后台运行
-
#debug
-
#quiet
-
-
defaults
-
log global
-
mode http 默认使用http7层模式
-
option httplog http 日志格式
-
option dontlognull 禁用空链接日志
-
retries 3 重试次数
-
option redispatch 当客户端连接到挂掉的机器时,重新分配到健康的主机
-
maxconn 2000
-
contimeout 5000 连接超时
-
clitimeout 50000 客户端超时
-
srvtimeout 50000 服务器端超时
-
-
stats uri /status 监控页面
-
-
-
listen westos 0.0.0.0:80 监听实例名称,地址和端口
-
balance roundrobin 负载均衡算法
-
server xp1 172.25.254.6:80 check inter 2000 rise 2 fall 3
-
server xp2 172.25.254.7:80 check inter 2000 rise 2 fall 3
-
server back1 127.0.0.1:8080 backup
-
#check inter 2000: 检测心跳频率
-
#rise 2: 表示2次正确认为服务器可用
-
#fall 5: 表示5次失败认为服务器不可用
vim /etc/httpd/conf/httpd.conf
端口改为 8080 因为 haproxy本来监听的就是 80 会冲突
五:启动
在第一次启动会有点问题,因为我们将配置文件中一个目录忘记创建,创建就好,如图
然后在浏览器中 172.25.254.5/status 访问是粉红色的原因是我们6 和 7上还没有开启http服务
六:监控页面添加认证
vim /etc/haproxy/haproxy.cfg 在里面添加如下5行代码
然后重启haproxy服务,在浏览器测试如下端口用8000(配置文件中写的多少就是多少):
username为 admin
password为 redhat
然后进去就会每5妙自动刷新一次
如下
haproxy 日志:
vim /etc/rsyslog.conf
重启日志服务
/etc/init.d/rsyslog restart
七:前后段调度
配置文件配置如下:
在浏览器中测试结果如下
七:动静分离
首先将下载的图片放置在6的默认发布目录,配置文件配置如下
然后在浏览器中进行测试如下
阅读(2593) | 评论(0) | 转发(0) |