一.Haproxy的简介
(1)Haproxy是一个使用C语言编写的自由以及开放的源代软件,其提供高性能,负载均衡,以及基于TCP和HTTP应用程序代理。相较于Nginx,HAProxy更专注于反向代理,因此它可以支持更多的选项,更精细的控制,更多的健康检测机制的负载均衡算法。
(2)HAProxy特别适用于那些负载特别大的web站点,这些站点通常又需要会话保持或者七层处理,HAProxy运行在当前的硬件上,完全可以支持数以万计的并发连接。
(3)HAProxy的运行模式使得它可以很简单安全的整合进当前的架构中,同时可以保护后台的web服务器不被暴露到网络上。
二.实验环境
本次实验需要三台虚拟机,server1作为haproxy代理服务器,server2和server3作为apache代理服务器
三.haproxy的部署及实现反向代理、负载均衡
在server1代理服务器
-
1.获得资源包haproxy-1.7.3.tar.gz解压
tar zxf haproxy-1.7.3.tar.gz
- 2.将压缩包变成一个rpm包
注意: 有.spec文件,就可以把源码制作为rpm包,制作好后会生成rpmbuild的目录,看见makefile说明使用c语言写的
find . -name *.spec #查看是否有.spec文件
yum install rpm-build -y 下载将rpm包打包的资源
yum install -y gcc 下载gcc源码编译
yum install pcre-devel -y
rpmbuild -tb haproxy-1.7.3.tar.gz ##将压缩包变成rpm包
-
3.安装rpm包
会生成rpmbuild目录(安装包所在的目录)该目录下的子目录中有生成的安装包cd rpmbuild/RPMS/x86_64 ls rpm -ivh haproxy-1.7.3-1.x86_64.rpm
-
4.寻找配置文件(安装好后会生成配置目录/etc/haproxy但没有配置文件,可以去解压包里找)
cd haproxy-1.7.3/examples