标签:htm ++ 配置 情况 sha log evel web system
什么是HAProxy?HAProxy是一个使用C语言编写的自由及开放源代码软件,其提供高可用性、负载均衡,以及基于TCP和HTTP的应用程序代理,可以运行于大部分主流的Linux操作系统上。
本次实验使用三台服务器搭建Web群集,Haproxy作为调度服务器,两台Nginx服务器作为节点服务器。
主机 | 系统 | IP地址 | 主要软件 |
---|---|---|---|
Haproxy服务器 | CentOS-7-x86_64 | 192.168.100.100 | haproxy |
Nginx服务器1 | CentOS-7-x86_64 | 192.168.100.110 | nginx |
Nginx服务器2 | CentOS-7-x86_64 | 192.168.100.120 | nginx |
客户端 | windows 7 | 192.168.100.30 | IE浏览器 |
yum -y install pcre-devel zlib-devel gcc gcc-c++ make
tar zxf nginx-1.12.0.tar.gz
useradd -M -s /sbin/nologin nginx
cd nginx-1.12.0/
./configure --prefix=/usr/local/nginx \ //指定安装路径
--user=nginx \ //指定管理用户
--group=nginx //指定管理组
make && make install
ln -s /usr/local/nginx/sbin/nginx /usr/local/sbin/ //创建软连接,方便管理
nginx -t //检查配置文件是否正确
nginx //启动服务
netstat -ntap | grep 80 //查看服务是否正确开启
systemctl disable firewalld.service
systemctl stop firewalld.service
setenforce 0
yum -y install pcre-devel bzip2-devel gcc gcc-c++ make
tar zxf haproxy-1.5.19.tar.gz
cd haproxy-1.5.19/
make TARGET=linux26 //安装64位系统
make install
mkdir /etc/haproxy
cp haproxy-1.5.19/examples/haproxy.cfg /etc/haproxy/haproxy.cfg
chroot /usr/share/haproxy //第8行
redispatch //第21行
将listen部分修改为以下内容
listen webcluster 0.0.0.0:80
option httpchk GET /index.html
//首页文件名称根据自身情况写入,例如之前创建的我首页文件名称为text.html,则此处写入test.html
balance roundrobin
server inst1 192.168.100.110:80 check inter 2000 fall 3
server inst2 192.168.100.120:80 check inter 2000 fall 3
//节点服务器地址(nginx1,nginx2地址)
将启动脚本复制到/etc/init.d/下,同时将服务添加到chkconfig管理,创建软连接便于管理
cp haproxy-1.5.19/examples/haproxy.init /etc/init.d/haproxy
chmod +x haproxy
chkconfig --add /etc/init.d/haproxy
ln -s /usr/local/sbin/haproxy /usr/sbin/haproxy
service haproxy start
systemctl disable firewalld.service
systemctl stop firewalld.service
setenforce 0
在windows 7 客户端使用ie浏览器访问http://192.168.100.100/,多次涮新,nginx1和nginx2网页轮换显示。
Haproxy的日志默认输出到系统的syslog中。查看起来不是很方便,为了更好的管理haproxy的日志,我们需要将日志单独定义出来,方法如下:
log /dev/log local0 info
log /dev/log local0 notice //替换第4、第5行内容
touch /etc/rsyslog.d/haproxy.conf
vim /etc/rsyslog.d/haproxy.conf
if ($programname == ‘haproxy‘ and $syslogseverity-text == ‘info‘)
then -/var/log/haproxy/haproxy-info.log
&~
if ($programname == ‘haproxy‘ and $syslogseverity-text == ‘notice‘)
then -/var/log/haproxy/haproxy-notice.log
&~
service haproxy restart
systemctl restart rsyslog.service
标签:htm ++ 配置 情况 sha log evel web system
原文地址:http://blog.51cto.com/13643643/2131941