CentOS 7.1
1503最小化安装,nginx和Haproxy通过yum安装,关闭防火墙,清空iptables
Haproxy主机ip:192.168.70.161
后端nginx主机ip:192.168.70.158,192.168.70.159

HAproxy安装配备重定向及读写分离

一、简介

生机勃勃、配置haproxy,只保留到defaults,上边包车型大巴退换为如下
frontend  main *:80
        acl test2 hdr_beg(host) -i node2.linuxu.me       
//acl设定相称央求的url
        acl test3 hdr_beg(host) -i node3.linuxu.me
    use_backend node2          if test2
        use_backend node3      if test3
        default_backend            node2
backend node2                                                           
  //设置两台后端nginx服务器
    balance    roundrobin
    server      node2 192.168.70.159:80 check
backend node3
    balance    roundrobin
    server  node3 192.168.70.158:80 check

  • server1:172.25.88.1
  • server3:172.25.88.3
  • server4:172.25.88.4

HAProxy提供高可用性、负载均衡以至基于TCP和HTTP应用的代
理,支持设想主机,它是免费、火速并且可信赖的风度翩翩种缓慢解决方案。HAProxy极度适用于那多少个负载特大的web站点,那一个站点经常又要求会话保持或七层管理。HAProxy运转在脚下的硬件上,完全能够支撑多元的面世连接。而且它的运作形式使得它能够非常轻易安全的重新组合进你当前的架构中,
同期可以维护你的web服务器不被爆出到互连网上。

二、分别在nginx原index.html加多h1字段以界别,注意是在head里分别增加

轻便陈设
server1:
yum install haproxy -y

HAProxy完毕了大器晚成种事件驱动,
单生机勃勃进程模型,此模型支撑极度大的并发连接数。多进度或四线程模型受内部存款和储蓄器限制、系统调治器节制甚至无处不在的锁节制,比少之甚少能管理数千并发连接。事件驱动模型因为在有越来越好的财富和岁月管理的客商端(User-Space)
达成全数这几个职务,所以并未这么些标题。此模型的弊病是,在多核系统上,这么些程序平常扩充性非常差。那便是为啥他们一定要举办优化以
使每一个CPU时间片(Cycle)做更加多的干活。

 node2
<h1>node2.linuxu.me</h1>
node3
<h1>node3.linuxu.me</h1>

vim /etc/haproxy/haproxy.cfg

HAProxy是免费、极速且可信的用于为TCP和遵照HTTP应用程序提供高可用、负载均衡和代理服务的解决方案,尤其适用于高负荷且须要百折不挠连接或7层管理机制的web站点。

三、增添host文件并会见测量试验

60
#———————————————————————
 61 # main frontend which proxys to the backends
 62
#———————————————————————
 63 #frontend  main *:5000
 64 #    acl url_static      path_beg      -i /static /images
/javascript /stylesheets
 65 #    acl url_static      path_end      -i .jpg .gif .png .css
.js
 66 #
 67 #    use_backend static          if url_static
 68 #    default_backend            app
 69 #
 70
#———————————————————————
 71 # static backend for serving up images, stylesheets and such
 72
#———————————————————————
 73 #backend static
 74 #    balance    roundrobin
 75 #    server      static 127.0.0.1:4331 check
 76 #
 77
#———————————————————————
 78 # round robin balancing between the various backends
 79
#———————————————————————

二、安装配备

计算机网络 1

listen westos *:80
  balance    roundrobin
  server      web1 172.25.88.3:80 check
  server      web2 172.25.88.4:80 check

1.拓扑图

计算机网络 2

 89 listen admin *:8080        haproxy
监察和控制页面:用浏览器访问172.25.88.1:8080/status
 90        stats  enable
 91        stats uri /status  监察和控制页面地址
 92        stats auth admin:westos    用户名:密码
 93        stats refresh 5s

计算机网络 3

计算机网络 4

server3:

表明:1.是因为测量检验情形虚构机有限,此处将静态页面和图片放在了豆蔻梢头台机械上

Haproxy+Keepalived搭建Weblogic高可用负载均衡集群
http://www.linuxidc.com/Linux/2013-09/89732.htm

yum install httpd -y

2.由于测量检验碰到设想机有限,此处动态页面和静态页面各提供一台机械,不思量单点故障

Keepalived+HAProxy配置高可用负载均衡
http://www.linuxidc.com/Linux/2012-03/56748.htm

server4:
yum install httpd -y

3.客户看见的服务器为HAproxy对外提供的ip地址,看不到前边的各服务器组

CentOS 6.3下Haproxy+Keepalived+Apache配置笔记
http://www.linuxidc.com/Linux/2013-06/85598.htm

检验:
浏览器访谈172.25.88.1    rr:3/4

4.此处不关乎php页面与数据库的并行内容

Haproxy + KeepAlived 实现WEB群集 on CentOS 6
http://www.linuxidc.com/Linux/2012-03/55672.htm

浏览器访谈172.25.88.1:8080/status

2.ip地址规划

Haproxy+Keepalived营造高可用负载均衡
计算机网络,http://www.linuxidc.com/Linux/2012-03/55880.htm

计算机网络 5

功用 ip地址 安装软件 操作系统
反向代理服务器 192.168.1.201 Haproxy CentOS6.5
静态页面服务器 192.168.1.202 httpd centos6.5
动态页面服务器 192.168.1.203 httpd、php centos6.5

使用 HAProxy 配置 HTTP 负载均衡器
http://www.linuxidc.com/Linux/2015-01/112487.htm

HAproxy日志
日志暗中同意存入rsyslog,要翻看的话,供给开拓rsyslog

3.设置配备HAproxy

HAproxy
的事必躬亲介绍
:请点这里
HAproxy
的下载地址
:请点这里

server1:

①、安装

本文长久更新链接地址:http://www.linuxidc.com/Linux/2015-05/117087.htm

vim /etc/rsyslog.conf

HAproxy能够透过yum源安装也能够因而源码编写翻译安装,经查看获悉yum源中提供的1.4.24版本,而官方提供的为1.4.25版本,全部本次大家经过yum来拓宽设置

计算机网络 6

13 $ModLoad imudp          接受 haproxy 日志
 14 $UDPServerRun 514
 42 *.info;mail.none;authpriv.none;cron.none;local2.none       
/var/log/messages
 62 local2.*    /var/log/haproxy.log    单独存大器晚成份

[root@node1 ~]# yum install  haproxy -y

/etc/init.d/rsyslog start

②、运营配置文件选项 

tail -f /var/log/haproxy.log

[root@node1 ~]# vi /etc/rsyslog.conf

计算机网络 7

启用一下两行

server1:
vim /etc/haproxy

$ModLoad imudp

86 frontend westos *:80
 87        acl url_static      path_beg      -i  /images
 88        acl url_static      path_end      -i .jpg .gif .png
 89        use_backend static          if url_static
 90        default_backend app
 91
 92 backend static  后端静态
 93    balance    roundrobin
 94    server  web1 172.25.88.3:80 check
 95
 96 backend app
 97    balance    roundrobin
 98    server  web2 172.25.88.4:80 checkserver3:

$UDPServerRun 514

/etc/init.d/httpd start

丰盛以下生机勃勃行

ll  /var/www/html/images/ OSI.gif 
RedHat.jpg

local2.*                      /var/log/haproxy.log

计算机网络 8

将rsyslog日志文件系统重启

拜候的是server3,因为唯有server3才有images目录 server4:

③、配置情状抽离

/etc/init.d/httpd start

 #———————————————————————
# Example configuration for a possible web application.  See the
# full configuration options online.
#

#
#———————————————————————
#———————————————————————
# Global settings
#———————————————————————
global
    # to have these messages end up in /var/log/haproxy.log you will
    # need to:
    #
    # 1) configure syslog to accept network log events.  This is done
    #    by adding the ‘-r’ option to the SYSLOGD_OPTIONS in
    #    /etc/sysconfig/syslog
    #
    # 2) configure local2 events to go to the /var/log/haproxy.log
    #  file. A line like the following can be added to
    #  /etc/sysconfig/syslog
    #
    #    local2.*                      /var/log/haproxy.log
    #
    log        127.0.0.1 local2
    chroot      /var/lib/haproxy
    pidfile    /var/run/haproxy.pid
    maxconn    4000
    user        haproxy
    group      haproxy
    daemon
    # turn on stats unix socket
    stats socket /var/lib/haproxy/stats
#———————————————————————
# common defaults that all the ‘listen’ and ‘backend’ sections will
# use if not designated in their block
#———————————————————————
defaults
    mode                    http
    log                    global
    option                  httplog
    option                  dontlognull
    option http-server-close
    option forwardfor      except 127.0.0.0/8
    option                  redispatch
    retries                3
    timeout http-request    10s
    timeout queue          1m
    timeout connect        10s
    timeout client          1m
    timeout server          1m
    timeout http-keep-alive 10s
    timeout check          10s
    maxconn                3000
#———————————————————————
# main frontend which proxys to the backends
#———————————————————————
frontend  main *:80
    acl url_static      path_beg      -i /static /images /javascript
/stylesheets
    acl url_static      path_end      -i .jpg .gif .png .css .js
.html
    acl host_static  hdr_beg(host)  -i img. video. download. ftp.
imgs.
    use_backend static          if url_static
    default_backend            app
#———————————————————————
# static backend for serving up images, stylesheets and such
#———————————————————————
backend static
    balance    roundrobin
    server      static 192.168.1.202:80 check maxconn 2000
#———————————————————————
# round robin balancing between the various backends
#———————————————————————
backend app
    balance    roundrobin
    server  app1 192.168.1.203:80    check maxconn 200

计算机网络 9

④、盘算静态页面与动态页面

重定向

静态页面
[root@node2 ~]# vi /var/www/html/index.html
hello,wangfeng7399

server1:

动态页

发表评论

电子邮件地址不会被公开。 必填项已用*标注

网站地图xml地图