Chinaunix首页 | 论坛 | 博客
  • 博客访问: 9263538
  • 博文数量: 1669
  • 博客积分: 16831
  • 博客等级: 上将
  • 技术积分: 12594
  • 用 户 组: 普通用户
  • 注册时间: 2011-02-25 07:23
个人简介

柔中带刚,刚中带柔,淫荡中富含柔和,刚猛中荡漾风骚,无坚不摧,无孔不入!

文章分类

全部博文(1669)

文章存档

2023年(4)

2022年(1)

2021年(10)

2020年(24)

2019年(4)

2018年(19)

2017年(66)

2016年(60)

2015年(49)

2014年(201)

2013年(221)

2012年(638)

2011年(372)

分类: 系统运维

2013-01-23 10:11:44

squid反向代理缓存安装配置  

2013-01-22 11:02:57|  分类: mem_squid_porxy |  标签: |字号 

是优秀的代理服务器之一,发展历史相当悠久,功能也相当完善,许多大型网站都会用到squid作为web加速服务器。下面我们学习squid的反向代理缓存的使用。

架构环境说明

本实例的域名是 cache..bz,通过DNS的轮询技术,将客户端的请求分发给其中一台 Squid 反向代理服务器处理,如果这台 Squid 缓存了用户的请求资源,则将请求的资源直接返回给用户,否则这台 Squid 将没有缓存的请求根据配置的规则发送给邻居 Squid 和后台的 WEB 服务器处理,这样既减轻后台 WEB 服务器的负载,又提高整个网站的性能和安全性。该系统结构图 如下:


squid反向代理缓存安装配置 - zhuzhu - 五事九思 (大连Linux主机维护)

配置的系统环境:
一台 DNS 服务器:为域名cache.centos.bz添加两条A记录192.168.1.110和192.168.1.111。
两台Squid 服务器:
squid1:192.168.1.110
squid2:192.168.1.111
两台后端WEB 服务器:
webServer1:192.168.1.220
webServer2:192.168.1.221
dns的配置这里不作介绍,主要介绍squid的安装配置。

squid安装

  1. yum install gcc wget perl gcc-c++ make  
  2.  cd /tmp  
  3.  wget 
  4.  tar xzf squid-3.1.19.tar.gz  
  5.  cd squid-3.1.19  
  6.  ./configure  
  7.  make && make install  
  8.  groupadd squid  
  9.  useradd -g squid -s /sbin/nologin squid  
  10.  chown -R squid /usr/local/squid/var/logs/ /usr/local/squid/var/cache/  


squid反向代理配置

配置 Squid1 服务器:

  1. vi /usr/local/squid/etc/squid.conf  


  1. cache_effective_user squid   
  2. cache_effective_group squid   
  3.   
  4. ### 设定 squid 的主机名 , 如无此项 squid 将无法启动  
  5. visible_hostname squid1.centos.bz  
  6.   
  7. #### 配置 squid 为加速模式  
  8. http_port 80 accel vhost vport   
  9. icp_port 3130   
  10.   
  11. ### 配置 squid2 为其邻居,当 squid1 在其缓存中没有找到请求的资源时,通过 ICP 查询去其邻居中取得缓存  
  12. cache_peer squid2.centos.bz sibling 80 3130   
  13.   
  14. ### squid1 的两个父节点,originserver 参数指明是源服务器, round-robin  参数指明 squid 通过轮询方式将请求分发到其中一台父节点; squid 同时会对这些父节点的健康状态进行检查,如果父节点 down 了,那么 squid 会从剩余的 origin 服务器中抓取数据,round-robin表示使用通过 RR 轮询方式转发到两个父节点中的一个  
  15. cache_peer 192.168.1.220 parent 8080 0 no-query originserver round-robin  name=webServer1   
  16. cache_peer 192.168.1.221 parent 8080 0 no-query originserver round-robin  name=webServer2  
  17.   
  18. ###允许webServer1 webServer2  cache.centos.bz的请求  
  19. cache_peer_domain webServer1 webServer2  cache.centos.bz  
  20.   
  21. ####下面是一些访问控制、日志和缓存目录的设置  
  22. acl localnet src 192.168.1.110 192.168.1.111  
  23. http_access allow all   
  24. icp_access allow localnet   
  25. cache_log /usr/local/squid/var/logs/cache.log   
  26. access_log /usr/local/squid/var/logs/access.log squid   
  27. cache_dir ufs /usr/local/squid/var/cache/ 1000 16 256   
  28.   
  29. ### 对 squid 的一些优化  
  30. maximum_object_size 10240 KB  ### 能缓存的最大对象为 10M   
  31. maximum_object_size_in_memory 512 KB ### 内存中缓存的最大对象 512K   
  32. cache_mem 256 MB  ###squid 用于缓存的内存量  


 在/etc/hosts添加:

  1. squid1.centos.bz:192.168.1.110  
  2. squid2.centos.bz:192.168.1.111  


squid2的配置完全一样,除了需要更改visible_hostname。

启动squid

检查 squid 配置文件正确与否:

  1. /usr/local/squid/sbin/squid –Nk parse  


生成缓存目录:

  1. /usr/local/squid/sbin/squid –N -z  


启动squid:



启动squid:

 

  1. /usr/local/squid/sbin/squid  


参考:http://www.ibm.com/developerworks/cn/linux/l-cn-squid/文章来源:

 
阅读(576) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~