博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
haproxy 7层负载均衡代理转发实战讲解(二)-老男孩笔记系列
阅读量:6259 次
发布时间:2019-06-22

本文共 3051 字,大约阅读时间需要 10 分钟。

接上文 haproxy 7层负载均衡代理转发实战讲解(一)-老男孩笔记系列

#########################################################
# haproxy
#date:2010-06-09
#作者:老男孩---《老男孩linux就业培训中心 》
#QQ:31333741 MAIL:oldboy521@hotmail.com
#QQ交流群:45039636   
#blog:
#psite: (即将开放)
#pblog:http://blog.etiantian.org
##########################################################
█ 3 配置haproxy L7负载均衡-之根据URL地址目录转发

●3.1 准备RS SERVER测试环境

建立测试目录:

for name in php nginx pic ;do mkdir -p /var/$name/$name;echo $name >/var/$name/$name/index.html;done

配置http服务

删除上面做的任何apache配置(或者还原httpd.conf)
[root@ha2 conf]# cd /etc/httpd/conf
[root@ha2 conf]# /bin/cp httpd.conf.oldboy.110625  httpd.conf

然后编辑httpd.conf 最下面加

<Directory "/var">
    Options FollowSymLinks
    AllowOverride none
    Order allow,deny
    Allow from all
</Directory>

Listen 8080

Listen 8090

NameVirtualHost *:80

NameVirtualHost *:8080
NameVirtualHost *:8090
<VirtualHost *:80>
        ServerAdmin
        ServerName
        ServerAlias etiantian.org
        DocumentRoot "/var/nginx"
</VirtualHost>
<VirtualHost *:8080>
        ServerAdmin
        ServerName
        DocumentRoot "/var/php"
</VirtualHost>
<VirtualHost *:8090>
        ServerAdmin
        ServerName
        DocumentRoot "/var/pic"
</VirtualHost>

● 3.2 基于目录转发的haproxy配置
frontend oldboy_test
        bind *:80
        acl short_domain hdr(Host) -i etiantian.org
        redirect prefix code 301 if short_domain

        #acl lang_domain hdr(Host) -i

        #use_backend staticpools if lang_domain

        default_backend staticpools

#http://www.etiantian.org/nginx/...,提供静态内容访问(htm,html,css,js)

backend staticpools
        balance roundrobin
        server oldboy-1 10.0.0.151:80 check port 80 inter 3000 fall 3
        server oldboy-2 10.0.0.151:81 check port 81 inter 3000 fall 3
        server oldboy-3 10.0.0.151:82 check port 82 inter 3000 fall 3

#提示:后面两个rs是虚构的,只是告诉大家可以这样加server.有没有都不会影响访问。以下同。

#http://www.etiantian.org/php/... 提供动态内容访问(以*.php结尾)

backend dynamicpools
        balance roundrobin
 cookie SERVERID insert indirect
        server oldboy-4 10.0.0.151:8080 maxconn 2048 weight 50  cookie A check port 8080 inter 3000 fall 3
        server oldboy-5 10.0.0.151:8180 maxconn 2048 weight 100 cookie B check port 8180 inter 3000 fall 3
        server oldboy-6 10.0.0.151:8280 maxconn 2048 weight 100 cookie C check port 8280 inter 3000 fall 3
        #列出更详细的参数,供大家参考使用。
#http://www.etiantian.org/pic/... 提供图片内容访问(以*.jpg,*.png,*.gif等结尾)
backend picpools
        balance roundrobin
        server oldboy-7 10.0.0.151:8090 check port 8090 inter 3000 fall 3
        server oldboy-8 10.0.0.151:8190 check port 8190 inter 3000 fall 3
        server oldboy-9 10.0.0.151:8290 check port 8290 inter 3000 fall 3
#提示:server后面的名称是自己定义的,名称不要重复就好。

当多台服务器时,每个池子可配置成如下形式:

cookie SERVERID insert indirect
server oldboy-1 10.0.0.163:8080 cookie ett-1-1 check port 8080 inter 3000 fall 3

配置基于URL的健康检查

option httpchk HEAD /checkstatus.jsp HTTP/1.0

●3.3 配置用户端hosts

10.0.0.162
提示:10.0.0.162 为haproxy的IP,这里是模拟DNS的解析,实际配置时,在DNS里解析即可

●3.4 在用户端进行访问测试
  3.4.1 查看hosts解析是否正确
C:\Documents and Settings\hyran>ping

Pinging [10.0.0.162] with 32 bytes of data:

Reply from 10.0.0.162: bytes=32 time=5ms TTL=64

Reply from 10.0.0.162: bytes=32 time<1ms TTL=64
Reply from 10.0.0.162: bytes=32 time<1ms TTL=64
   3.4.2 测试URL地址 看是否符合预期要求
分别访问:
如果能返回对应自己目录的内容,那恭喜你,搞定了。

转载地址:http://nkqsa.baihongyu.com/

你可能感兴趣的文章
Elasticsearch之head插件安装之后的浏览详解
查看>>
zabbix监控-基本原理介绍
查看>>
循环神经网络(RNN)模型与前向反向传播算法
查看>>
使用bash编写Linux shell脚本--参数和子壳
查看>>
现代软件工程讲义 5 项目经理 Program Manager
查看>>
DotNet语音技术实现(实现电脑发音)
查看>>
Qt中用正則表達式来推断Text的语种,主要通过推断unicode的编码范围
查看>>
ASP.NET中 HyperLink(超链接)的使用
查看>>
Java异常
查看>>
[转载]全面深入了解电脑死机的原因
查看>>
html5-web本地存储
查看>>
CentOS 6.5 安装 Redis 执行 make #error &quot;Newer version of jemalloc required&quot;
查看>>
12.遍历二叉树与二叉树的建立
查看>>
Delphi 关键字详解[整理于 "橙子" 的帖子]
查看>>
Session的配置
查看>>
DropDownList中显示无限级树形结构
查看>>
光学字符识别引擎 Tesseract-ocr 安装过程
查看>>
定时备份windows机器上的文件到linux服务器上的操作梳理(rsync)
查看>>
MOSS程序中如何发Mail?
查看>>
错误:”未能加载文件或程序集“System.Web.Mvc, Version=2.0.0.0” 解决方法
查看>>