设为首页 收藏本站
查看: 1548|回复: 0

[经验分享] squid调整

[复制链接]
累计签到:1 天
连续签到:1 天
发表于 2015-9-3 08:30:05 | 显示全部楼层 |阅读模式
  Squid采用新方案部署的调整步骤
一,隔离
二,修改
三,验证
四,波及
==============================
[1] 把被引用到的待修改对像实例,从前端应用负载nginx的配置中摘出
  比如cdn节点XX截止2014-10-10,对外提供服务的2个节点是111.222,111.223
登录上述2台主机,修改nginx配置文件,注释掉引用到待修改对象主机111.225的内网地址172.0.0.X行。
.../sbin/nginx -t
.../sbin/nginx -reload
   
[2] 在对像主机上检查已经没有生成新的连接
在待修改节点上如:111.225上,查看nginx日志 ,如果不直接对提供服务的话,也可以查看squid日志
由于squid日志太大,一般不配置;
所以也可以直接查看当前连接:
# nempptat -an | grep 61
  [3] 创建一个自动编译的脚本(注意,使用的版本是本公司在官方2.7基础上修改后的)
  以下引用tongshi创建的范例:
#!/bin/bash
  squid_install_dir='/usr/local/xiangmu/'
squid_insance=(squid1 squid2 squid3)
squid_package='/root/squid-2.7.tar.gz'
squid_tar_dir='/root/squid-2.7.本公司-modified/'
  if [ -e $squid_package ]; then
    tar -xzvf $squid_package
else
    echo "squid don't exismpp"
fi
  if [ -e $squid_tar_dir ]; then
    cd $squid_tar_dir
    for squid in ${squid_insance[@]}
    do
       echo $squid
       ./configure --prefix=/usr/local/xiangmu/$squid --enable-storeio=ufs,aufs,coss --disable-wccp --disable-wccpv2
       make
       make install
       make clean
    done
fi
  
[4] 停止旧有的squid实例,删除旧有的cache目录,重建新规划的cache目录;
  # /usr/local/xiangmu/squid/sbin/squid -h
-k reconfigure|rotate|shutdown|interrupt|kill|debug|check|parse
                 Parse configuration file, then send signal to
                 running copy (except -k parse) and exit.
  # /usr/local/xiangmu/squid/sbin/squid -k shutdown
  查看既有的配置文件,注意到有如下段落:
cache_mem 6192 MB
50 cache_dir aufs /data/sto/ca 5000000 16 256
51 cache_dir aufs /data/sto2/ca 5000000 16 256
  [/@wo ~]# df -h
Filesystem            Size  Used Avail Use% Mounted on
/dev/sda1              95G   76G   15G  74% /
tmpfs                 7.9G     0  7.9G   0% /dev/shm
/dev/sdb1             9.0T  711G  8.1T   8% /data/sto1
/dev/sdb2              11T  6.6T  4.0T  63% /data/sto2
  准备做新的规划:
  在sto1,sto2中  创建新的子目录如:cache1,cache2,cache3;  并删除原有缓存目录cache;
  [5] 修改新方案(其中3个是新编译的squid)中squid的详细配置如下:
  修改到新端口,共计3处:
acl Safe_pormpp port 74          # http
acl Safe_pormpp port 8074        # http
  acl accel_80 myport 74
acl accel_8080 myport 8074
  http_port 74 http11 accel vhost vport
http_port 8074 http11 accel vhost vport
  修改访问主机名称(注意多个squid实例之间该值唯一)
visible_hostname hostname-2
  修改内存缓存值,本地磁盘缓存路径以及空间值
  cache_mem 1024 MB
cache_dir aufs /data/sto2/ca3 2000000 16 256
  [6] 重新初始化squid;给suqid下var中logs目录授权为777权限;并启动squid实例
squid2/sbin/squid -z
# /usr/local/xiangmu/squid2/sbin/squid -z
  [/@wo var]# pwd
/usr/local/xiangmu/squid3/var
[/@wo var]# ll
total 4
drwxrwxrwx 2 root root 4096 Oct 10 15:53 logs
  squid3/sbin/squid
# /usr/local/xiangmu/squid3/sbin/squid
  [7]验证新squid实例是否启动成功,TCP端口是否启动;查看当前squid信息;
  [/@wo ~]# nempptat -nlp | grep squid
tcp        0      0 0.0.0.0:8061                0.0.0.0:*                   LISTEN      1072/(squid)        
tcp        0      0 0.0.0.0:61                  0.0.0.0:*                   LISTEN      1072/(squid)        
tcp        0      0 0.0.0.0:8052                0.0.0.0:*                   LISTEN      1400/(squid)        
tcp        0      0 0.0.0.0:52                  0.0.0.0:*                   LISTEN      1400/(squid)        
tcp        0      0 0.0.0.0:8093                0.0.0.0:*                   LISTEN      1424/(squid)        
tcp        0      0 0.0.0.0:93                  0.0.0.0:*                   LISTEN      1424/(squid)        
tcp        0      0 0.0.0.0:8074                0.0.0.0:*                   LISTEN      1449/(squid)        
tcp        0      0 0.0.0.0:74                  0.0.0.0:*                   LISTEN      1449/(squid)        
udp        0      0 0.0.0.0:51728               0.0.0.0:*                               1400/(squid)        
udp        0      0 0.0.0.0:55056               0.0.0.0:*                               1072/(squid)        
udp        0      0 0.0.0.0:3130                0.0.0.0:*                               1449/(squid)        
udp        0      0 0.0.0.0:3130                0.0.0.0:*                               1424/(squid)        
udp        0      0 0.0.0.0:3130                0.0.0.0:*                               1400/(squid)        
udp        0      0 0.0.0.0:3130                0.0.0.0:*                               1072/(squid)        
udp        0      0 0.0.0.0:60496               0.0.0.0:*                               1424/(squid)        
udp        0      0 0.0.0.0:41850               0.0.0.0:*                               1449/(squid)        
  
-----------
# cd /usr/local/xiangmu/squid
# watch -n 1 "bin/squidclient -p 61 mgr:info@本公司mima"
# /usr/local/xiangmu/squid/bin/squidclient -p 61 mgr:info@本公司mima
  
[8]
在节点本地,修改本地nginx.conf,vod80.conf中的配置信息
添加新的upstream和新的mpp文件分派规则
并验证新的配置文件
重新加载新配置文件
     upstream si_0 {
         server 127.0.0.1:61;
     }

     upstream si_1 {
         server 127.0.0.1:52;
     }

     upstream si_2 {
         server 127.0.0.1:93;
     }

     upstream si_3 {
         server 127.0.0.1:74;
    }
  upstream vs9 {
         server 127.0.0.1:61;
         server 127.0.0.1:52;
         server 127.0.0.1:93;
         server 127.0.0.1:74;
     }
  ----------
location ~ ^/uri(/.*) {
        set $url $1;

        if ($url ~ \.list) {
            proxy_pass http://vs9$url$is_args$args;
        }

        if ($url ~ (0|1|2)\.mpp$) {
            proxy_pass http://si_0$url;
        }

        if ($url ~ (3|4|5)\.mpp$) {
            proxy_pass http://si_1$url;
        }

        if ($url ~ (6|7)\.mpp$) {
            proxy_pass http://si_2$url;
        }

        if ($url ~ (8|9)\.mpp$) {
            proxy_pass http://si_3$url;
        }
}
  
# /usr/local/xiangmu/nginx/sbin/nginx -t
nginx: the configuration file /usr/local/xiangmu/nginx/conf/nginx.conf syntax is ok
nginx: configuration file /usr/local/xiangmu/nginx/conf/nginx.conf test is successful
# /usr/local/xiangmu/nginx/sbin/nginx -reload
  
[9]
备份网卡配置文件,电话联系IDC机房客服,确认新IP地址的网关和掩码
修改外网网卡地址,并重启网络服务
在主控机上,或者跳板机上验证外网登录,访问。
(使用内网地址连上去)
  [/@wo logs]# cd /etc/sysconfig/network-scripts/
[/@wo network-scripmpp]# pwd
/etc/sysconfig/network-scripts
[/@wo network-scripmpp]# ll ifcfg-eth*
-rw-r--r-- 3 root root 197 Oct 10 16:37 ifcfg-eth0
-rw-r--r-- 1 root root 197 Oct 10 13:36 ifcfg-eth0_New
-rw-r--r-- 1 root root 197 Oct 10 16:36 ifcfg-eth0.save.bak_2014-10-10
-rw-r--r-- 3 root root 171 Dec  7  2012 ifcfg-eth1
  [10]
验证:
在本地修改hosts文件指向,在浏览器中尝试打开kids.本公司.com的视频
并查看nginx的日志,确认日志当中mpp文件和端口匹配
  #ip s1.本公司.com
#ip dxlt2.本公司.com
  
115.194.125.194 - - [10/Oct/2014:18:37:46 +0800]
"GET / "-" "127.0.0.1:61"
  113.99.6.61 - - [10/Oct/2014:18:37:45 +0800]
"GET "-" "127.0.0.1:74"
  [11]
修改相关波及链条:
[12]
在dns中添加新地址77分配;
  

运维网声明 1、欢迎大家加入本站运维交流群:群②:261659950 群⑤:202807635 群⑦870801961 群⑧679858003
2、本站所有主题由该帖子作者发表,该帖子作者与运维网享有帖子相关版权
3、所有作品的著作权均归原作者享有,请您和我们一样尊重他人的著作权等合法权益。如果您对作品感到满意,请购买正版
4、禁止制作、复制、发布和传播具有反动、淫秽、色情、暴力、凶杀等内容的信息,一经发现立即删除。若您因此触犯法律,一切后果自负,我们对此不承担任何责任
5、所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其内容的准确性、可靠性、正当性、安全性、合法性等负责,亦不承担任何法律责任
6、所有作品仅供您个人学习、研究或欣赏,不得用于商业或者其他用途,否则,一切后果均由您自己承担,我们对此不承担任何法律责任
7、如涉及侵犯版权等问题,请您及时通知我们,我们将立即采取措施予以解决
8、联系人Email:admin@iyunv.com 网址:www.yunweiku.com

所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其承担任何法律责任,如涉及侵犯版权等问题,请您及时通知我们,我们将立即处理,联系人Email:kefu@iyunv.com,QQ:1061981298 本贴地址:https://www.yunweiku.com/thread-108882-1-1.html 上篇帖子: squid限速002; 下篇帖子: samba和squid 安装
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

扫码加入运维网微信交流群X

扫码加入运维网微信交流群

扫描二维码加入运维网微信交流群,最新一手资源尽在官方微信交流群!快快加入我们吧...

扫描微信二维码查看详情

客服E-mail:kefu@iyunv.com 客服QQ:1061981298


QQ群⑦:运维网交流群⑦ QQ群⑧:运维网交流群⑧ k8s群:运维网kubernetes交流群


提醒:禁止发布任何违反国家法律、法规的言论与图片等内容;本站内容均来自个人观点与网络等信息,非本站认同之观点.


本站大部分资源是网友从网上搜集分享而来,其版权均归原作者及其网站所有,我们尊重他人的合法权益,如有内容侵犯您的合法权益,请及时与我们联系进行核实删除!



合作伙伴: 青云cloud

快速回复 返回顶部 返回列表