码迷,mamicode.com
首页 > Web开发 > 详细

使用Haproxy搭建Web群集(内附源码包)

时间:2018-08-20 18:56:41      阅读:217      评论:0      收藏:0      [点我收藏+]

标签:roc   pcr   内存限制   51cto   建立   服务   模板   --   top   

Haproxy简介:
haproxy提供高可用性、负载均衡以及基于TCP(第四层)和HTTP(第七层)应用的代理,支持虚拟主机;
haproxy特别适用于那些负载特别大的web站点,这些站点通常又需要会话保持或七层处理。haproxy运行在时下的硬件上,完全可以支持数以万计的并发连接,并且它的运行模式使得它可以很简单安全的整合进您当前的架构中,同时可以保护你的web服务器不被暴露到网络上。
haproxy实现了一种事件驱动、单一进程模型,此模型支持非常大的并发连接数。多进程或多线程模型受内存限制、系统调度器限制以及无处不在的锁限制,很少能处理数千并发连接。
haproxy的优点:
a、免费开源,稳定性也是非常好
b、haproxy可以跑满10Gbps
c、haproxy支持连接拒绝,为一个陷于小型DDoS×××的网站开发了而且已经拯救了很多站点,这个优点也是其它负载均衡器没有的
d、haproxy支持全透明代理(已具备硬件防火墙的典型特点)
e、haproxy现多于线上的Mysql集群环境,我们常用于它作为MySQL(读)负载均衡
f、自带强大的监控服务器状态的页面,实际环境中我们结合Nagios进行邮件或短信报警

实验拓扑:
技术分享图片
实验环境:

主机 操作系统 IP地址 主要软件
Haproxy CentOS 7.0 x86_64 192.168.37.131 haproxy-1.5.19.tar.gz
web1节点服务器 CentOS 7.0 x86_64 192.168.37.128 nginx-1.12.0.tar.gz
web2节点服务器 CentOS 7.0 x86_64 192.168.37.130 nginx-1.12.0.tar.gz
客户端 Windows 7 192.168.37.100

软件包共享:
haproxy https://pan.baidu.com/s/1o6266kAIwcaVxjKdCNZNQw 密码:vxxz
nginx https://pan.baidu.com/s/13G9Mc3uX5dgYMYh4RflcWQ 密码:vtkv

实验过程:
一、web节点服务器搭建
1、安装环境包

   [root@localhost ~]# yum install -y pcre-devel zlib-devel gcc gcc-c++

2、创建管理用户

   [root@localhost ~]#useradd -M -s /sbin/nologin nginx

3、解压缩nginx包

    [root@localhost ~]#mkdir /opt/abc
    [root@localhost ~]#mount.cifs //192.168.37.1/SHARE /opt/abc
    [root@localhost ~]#tar zxvf /opt/abc/nginx-1.12.0.tar.gz -C /opt/

4、配置安装

    [root@localhost ~]#cd /opt/nginx-1.12.0
            ./configure         --prefix=/usr/local/nginx \     #安装目录
        --user=nginx \      #用户
        --group=nginx     #组
    [root@localhost ~]#make && make install

5、设置nginx首页内容,加以区分两台节点服务器,一台为web1,另一台为web2
技术分享图片
6、建立软链接,便于管理

    [root@localhost ~]#ln -s /usr/local/nginx/sbin/nginx /usr/local/sbin/

7、开启服务,关闭防火墙及安全功能

    [root@localhost ~]#nginx
    [root@localhost ~]#systemctl stop firewalld.service
    [root@localhost ~]#setenforce 0

另一台web2节点服务器设置步骤同上,只需在首页显示上加以区分
8、测试:
技术分享图片
技术分享图片

二、Haproxy服务器
1、安装环境包

    [root@localhost ~]#yum install -y pcre-devel bzip2-devel gcc gcc-c++

2、解压haproxy包

    [root@localhost ~]#mkdir /opt/abc
    [root@localhost ~]#mount.cifs //192.168.37.1/SHARE /opt/abc
    [root@localhost ~]#tar zxvf /opt/abc/haproxy-1.5.19.tar.gz -C /opt/

3、配置

     [root@localhost ~]#cd /opt/haproxy-1.5.19/
       [root@localhost ~]#make TARGET=linux26 
    [root@localhost ~]#make install     

4、创建haproxy配置文件目录

        [root@localhost ~]#mkdir /etc/haproxy

5、复制文件配置模板到etc目录下

        [root@localhost ~]#cp examples/haproxy.cfg /etc/haproxy/

6、编辑配置文件

        [root@localhost ~]#vim /etc/haproxy/haproxy.cfg

技术分享图片
7、创建启动脚本,给与执行权限

     [root@localhost ~]#cp /opt/haproxy-1.5.19/examples/haproxy.init /etc/init.d/haproxy
     [root@localhost ~]#chmod +x /etc/init.d/haproxy

8、加入服务系统

         [root@localhost ~]#chkconfig --add /etc/init.d/haproxy
         [root@localhost ~]#ln -s /usr/local/sbin/haproxy /usr/sbin/haproxy

9、启动服务,关闭防火墙及安全功能

        [root@localhost ~]#service haproxy start
        [root@localhost ~]#systemctl stop firewalld.service
        [root@localhost ~]#setenforce 0  

10、测试
技术分享图片
技术分享图片

实验完成!

使用Haproxy搭建Web群集(内附源码包)

标签:roc   pcr   内存限制   51cto   建立   服务   模板   --   top   

原文地址:http://blog.51cto.com/13784264/2162083

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!