免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
最近访问板块 发新帖
查看: 1679 | 回复: 3
打印 上一主题 下一主题

[其他] squid反向代理无法实现轮询,请高人指点 [复制链接]

论坛徽章:
8
数据库技术版块每日发帖之星
日期:2015-12-22 06:20:00数据库技术版块每日发帖之星
日期:2015-12-23 06:20:00数据库技术版块每周发帖之星
日期:2016-02-03 16:55:09数据库技术版块每日发帖之星
日期:2016-07-15 06:20:00IT运维版块每日发帖之星
日期:2016-08-13 06:20:00数据库技术版块每日发帖之星
日期:2016-08-15 06:20:00IT运维版块每日发帖之星
日期:2016-08-16 06:20:00IT运维版块每日发帖之星
日期:2016-08-17 06:20:00
跳转到指定楼层
1 [收藏(0)] [报告]
发表于 2015-12-02 14:26 |只看该作者 |倒序浏览
本人在学习squid负载均衡,环境如下:

squid代理服务器IP:

eth0 192.168.1.107

eth1 192,.168.0.254

web-server1:192.168.0.1

web-server2:192.168.0.2

两台web-server上均安装apache

配置文件:
vi /etc/squid/squid.conf

http_port 80 accel vhost vport
http_port 3128
cache_peer 192.168.0.1 parent 80 0 no-query originserver round-robin name=server1
cache_peer 192.168.0.2 parent 80 0 no-query originserver round-robin name=server2
acl manager proto cache_object
acl localhost src 127.0.0.1/32 ::1
acl to_localhost dst 127.0.0.0/8 0.0.0.0/32 ::1
acl localnet src 10.0.0.0/8 # RFC1918 possible internal network
acl localnet src 172.16.0.0/12 # RFC1918 possible internal network
acl localnet src 192.168.0.0/16 # RFC1918 possible internal network
acl SSL_ports port 443
acl Safe_ports port 80 8080 # http
acl Safe_ports port 21 # ftp
acl Safe_ports port 443 # https
acl CONNECT method CONNECT
http_access allow manager localhost
http_access deny manager
http_access deny !Safe_ports
http_access deny CONNECT !SSL_ports
http_access allow localnet
http_access allow localhost
http_access allow all
cache_dir aufs /data/squidcache 512 16 256
cache_mem 128 MB
hierarchy_stoplist cgi-bin ?
coredump_dir /var/spool/squid
refresh_pattern ^ftp: 1440 20% 10080
refresh_pattern ^gopher: 1440 0% 1440
refresh_pattern -i (/cgi-bin/|\?) 0 0% 0
refresh_pattern \.(jpg|png|gif|mp3|xml) 1440 50% 2880 ignore-reload
refresh_pattern . 0 20% 4320

然而每次访问192.168.1.107都只能访问到192.168.0.2的数据,而没有访问192.168.0.1

也就是说,无法实现轮询。


请问这是怎么回事呢,请高人指点,谢谢!

论坛徽章:
24
天蝎座
日期:2014-05-13 18:05:59IT运维版块每日发帖之星
日期:2015-11-26 06:20:00操作系统版块每月发帖之星
日期:2015-12-02 14:57:54IT运维版块每月发帖之星
日期:2016-01-07 23:01:56IT运维版块每周发帖之星
日期:2016-01-07 23:04:2615-16赛季CBA联赛之青岛
日期:2016-01-23 07:58:272016猴年福章徽章
日期:2016-02-18 15:30:3415-16赛季CBA联赛之北控
日期:2016-03-23 14:20:06IT运维版块每日发帖之星
日期:2016-04-01 06:20:0015-16赛季CBA联赛之吉林
日期:2016-06-28 13:51:54IT运维版块每日发帖之星
日期:2016-07-01 06:20:00IT运维版块每日发帖之星
日期:2015-11-23 06:20:00
2 [报告]
发表于 2015-12-02 16:54 |只看该作者
本帖最后由 woxizishen 于 2015-12-02 16:57 编辑

这个不是一句两句讲的那么简单的,几年前研究过,并测试成功了,不过从事传统运维的工作一直用不到^_^。
看看我之前发的贴,你要的是不是这玩意,我再跟你说
http://bbs.chinaunix.net/thread-4153827-1-1.html

论坛徽章:
8
数据库技术版块每日发帖之星
日期:2015-12-22 06:20:00数据库技术版块每日发帖之星
日期:2015-12-23 06:20:00数据库技术版块每周发帖之星
日期:2016-02-03 16:55:09数据库技术版块每日发帖之星
日期:2016-07-15 06:20:00IT运维版块每日发帖之星
日期:2016-08-13 06:20:00数据库技术版块每日发帖之星
日期:2016-08-15 06:20:00IT运维版块每日发帖之星
日期:2016-08-16 06:20:00IT运维版块每日发帖之星
日期:2016-08-17 06:20:00
3 [报告]
发表于 2015-12-20 15:03 |只看该作者
回复 2# woxizishen

你的帖子里的图中反向代理A,B,C上面用的是squid服务器吧?如果是的话,应该就是这个意思。
拿你的图作比方,我现在反向代理A上每次轮询,只能读到WEB服务器A上的数据,却读不到WEB服务器B,C的数据。不知道是什么原因?
   

论坛徽章:
24
天蝎座
日期:2014-05-13 18:05:59IT运维版块每日发帖之星
日期:2015-11-26 06:20:00操作系统版块每月发帖之星
日期:2015-12-02 14:57:54IT运维版块每月发帖之星
日期:2016-01-07 23:01:56IT运维版块每周发帖之星
日期:2016-01-07 23:04:2615-16赛季CBA联赛之青岛
日期:2016-01-23 07:58:272016猴年福章徽章
日期:2016-02-18 15:30:3415-16赛季CBA联赛之北控
日期:2016-03-23 14:20:06IT运维版块每日发帖之星
日期:2016-04-01 06:20:0015-16赛季CBA联赛之吉林
日期:2016-06-28 13:51:54IT运维版块每日发帖之星
日期:2016-07-01 06:20:00IT运维版块每日发帖之星
日期:2015-11-23 06:20:00
4 [报告]
发表于 2015-12-22 14:26 |只看该作者
回复 3# zhancat200801

那我写的这个和你的可能不同了哦,我的这个反向代理做了负载均衡,而不是在反向代理上做轮询噢,轮询的工作是dns在做。


反向代理A收到用户请求时,在其缓存中没有找到请求的资源时,通过 ICP 查询去其邻居B和C中取得缓存,如果B和C都没有时,则通过反向代理自身带的简单负载均衡技术,去父邻居的原始WEB服务器A或B或C来获取数据,获取数据后除了转发给用户一份外,自己保留一份。这个反向代理A到底去原始WEB服务器A还是B或者C去获取数据是通过一个响应值来决定的,谁最短我就获取谁的。
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

北京盛拓优讯信息技术有限公司. 版权所有 京ICP备16024965号-6 北京市公安局海淀分局网监中心备案编号:11010802020122 niuxiaotong@pcpop.com 17352615567
未成年举报专区
中国互联网协会会员  联系我们:huangweiwei@itpub.net
感谢所有关心和支持过ChinaUnix的朋友们 转载本站内容请注明原作者名及出处

清除 Cookies - ChinaUnix - Archiver - WAP - TOP