分享web开发知识

注册/登录|最近发布|今日推荐

主页 IT知识网页技术软件开发前端开发代码编程运营维护技术分享教程案例
当前位置:首页 > 运营维护

Haproxy+Nginx搭建Web群集

发布时间:2023-09-06 02:01责任编辑:彭小芳关键词:Web
Haproxy 是一种群集调度工具 ,是一款提供高可用性、负载均衡以及基于TCP(第四层)和HTTP(第七层)应用的代理软件,支持虚拟主机,它是免费、快速并且可靠的一种解决方案。 Haproxy特别适用于那些负载特大的web站点,这些站点通常又需要会话保持或七层处理。Haproxy运行在时下的硬件上,完全可以支持数以万计的 并发连接。并且它的运行模式使得它可以很简单安全的整合进您当前的架构中, 同时可以保护你的web服务器不被暴露到网络上。

  • 本案例中介绍使用Haproxy+Ngin一套Web群集
  • 实验需求
  • Haproxy作为调度服务器
  • Nginx作为节点服务器
  • Windows用来测试
服务器主机IP安装软件
Haproxy服务器192.168.200.102/24haproxy-1.5.19.tar.gz
Nginx服务器1192.168.200.103/24nginx-1.12.0.tar.gz
Nginx服务器2192.168.200.104/24nginx-1.12.0.tar.gz
Windows客户端192.168.200.101/24IE浏览器
  • 安装配置Nginx服务器

    # useradd -M -s /sbin/nologin nginx ???# mount.cifs //192.168.200.1/gx /gx# yum install -y pcre-devel zlib-devel gcc gcc-c++ make# tar /gx/zxvf nginx-1.12.0.tar.gz -C /opt/# cd /opt/nginx-1.12.0/ ???./configure ????--prefix=/usr/local/nginx ????--user=nginx ????--group=nginx# make && make installNginx服务器1# echo "this is 7.1" /usr/local/nginx/html/test.html ???//Nginx1添加测试页面Nginx服务器2# echo "this is 7.2" /usr/local/nginx/html/test.html ???//Nginx2添加测试页面 ???# ln -s /usr/local/nginx/sbin/nginx /usr/local/sbin/# nginx ???//启动Nginx# systemctl stop firewalld.service ??//关防火墙# setenforce 0 
  • 安装配置Haproxy服务器

    # yum install -y pcre-devel bzip2-devel gcc gcc-c++ make# mount.cifs //192.168.200.1/gx /gx# tar zxvf /gx/haproxy-1.5.19.tar.gz -C /opt/# cd /opt/haproxy-1.5.19/# make TARGET=linux26# make install# mkdir /etc/haproxy# cp examples/haproxy.cfg /etc/haproxy/# vim /etc/haproxy/haproxy.cfg ???????删除以下语句 ???????chroot /usr/share/haproxy ????//根目录 ???????redispatch ???????????//强制将请求发给已经down的服务器 ???替换listen开头的行及后面所有行 ???listen ?webcluster 0.0.0.0:80 ??????//定义一个webcluster的应用 ???option httpchk GET /test.html ???//检查服务器的test.html文件 ???balance roundrobin ?????????????????//负载均衡调度算法使用轮询算法 ???server inst1 192.168.200.103:80 check inter 2000 fall 3 ??//定义在线节点1 ???server inst2 192.168.200.104:80 check inter 2000 fall 3 ??//定义在线节点2
  • 创建自启动脚本

    # cp /opt/haproxy-1.5.19/examples/haproxy.init /etc/init.d/haproxy# chmod +x /etc/init.d/haproxy# chkconfig --add /etc/init.d/haproxy# ln -s /usr/local/sbin/haproxy /usr/sbin/haproxy# service haproxy start ??//启动Haproxy服务
  • Windows客户机测试
  • 在浏览器输入 http://192.168.200.102/test.html
  • 多刷新几次可以看到Nginx1、Nginx2的测试页面 为搭建成功
  • Haproxy日志定义分离
  • Haproxy日志默认输出到系统syslog中,查看不方便。
  • 为了更好的管理日志,可以将Haproxy的info和notice日志分别记录到不同日志文件
    .

    1:在global下面两行日志文件配置 重新定义分离 ???# vim /etc/haproxy/haproxy.cfg ???global ???????????log /dev/log ???local0 info ???????????????log /dev/log ???local0 notice ???# service haproxy restart ??//修改了配置文件需要重启服务2:修改rsyslog配置 ???# 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 ???????&~ ???# systemctl restart rsyslog.service ?//重启 rsyslog服务3:查看日志 ???# cd /var/log/haproxy/ ???# cat haproxy-info.log ?



Haproxy+Nginx搭建Web群集

原文地址:http://blog.51cto.com/13630803/2132060

知识推荐

我的编程学习网——分享web前端后端开发技术知识。 垃圾信息处理邮箱 tousu563@163.com 网站地图
icp备案号 闽ICP备2023006418号-8 不良信息举报平台 互联网安全管理备案 Copyright 2023 www.wodecom.cn All Rights Reserved