debiancdn

AWS, Content Delivery Network and Debian

squid 2.7 on CentOS

Squidをreverse proxyで使う話。

Squid Twister by Articulate Matter, on Flickr

いまどきsquidってナイヨナーという気もするのですが、

  • 昔おせわになった
  • siblingやらparentやらをつかうとoriginへの負担が小さくすむ
  • メモリが小さくてもそれなりに動く

というような理由で使うことも多い。

squidは2.xと3.xがあるが、何を使うべきなのかといえば、俺の答えは「squid2.7を使う」である。理由としては

  • 3.xはまだまだ枯れていない。http://wiki.squid-cache.org/RoadMap/Squid3あたりをみると、まだまだこれから感。
  • とはいえ,2.xは古すぎる。特に今時のマシンに適した中身になっていない。
  • ところが、2.7では、3.xで導入されたマルチコア対応の機能が使えるなど、http://wiki.squid-cache.org/RoadMap/Squid2 perfomace改善に必要な改善はなされている。

以下,インストールの話。

  • debianならapt-get install squidで済む(2.7.STABLE9-2.1あたりがはいる)
  • CentOSやRHEL 5 ならhttp://people.redhat.com/jskala/squid/squid-2.7.STABLE9-1.el5/x86_64/squid-2.7.STABLE9-1.el5.x86_64.rpmからとってくる.
yum install perl perl-URI
rpm -i squid-2.7.STABLE9-1.el5.x86_64.rpm
mkdir -p /var/log/squid/run

/etc/init.d/squidがまちがってるので修正.

--- squid.dist  2010-11-22 06:07:05.000000000 +0900
+++ squid       2010-11-22 06:08:03.000000000 +0900
@@ -9,7 +9,7 @@
 #      requesting site than to the source. Web browsers can then use the \
 #      local Squid cache as a proxy HTTP server, reducing access time as \
 #      well as bandwidth consumption.
-# pidfile: /var/run/squid.pid
+# pidfile: /var/log/squid/run/squid.pid
 # config: /etc/squid/squid.conf
 
 PATH=/usr/bin:/sbin:/bin:/usr/sbin
@@ -63,7 +63,7 @@
     if [ $RETVAL -eq 0 ]; then 
        timeout=0;
        while : ; do
-          [ ! -f /var/run/squid.pid ] || break
+          [ ! -f /var/log/squid/run/squid.pid ] || break
          if [ $timeout -ge $SQUID_PIDFILE_TIMEOUT ]; then
             RETVAL=1
             break
@@ -88,7 +88,7 @@
        rm -f /var/lock/subsys/$SQUID
        timeout=0
        while : ; do
-               [ -f /var/run/squid.pid ] || break
+               [ -f /var/log/squid/run/squid.pid ] || break
                if [ $timeout -ge $SQUID_SHUTDOWN_TIMEOUT ]; then
                    echo
                    return 1

最後に

 chkconfig squid on

もわすれずにしておく。

広告

コメントを残す

以下に詳細を記入するか、アイコンをクリックしてログインしてください。

WordPress.com ロゴ

WordPress.com アカウントを使ってコメントしています。 ログアウト / 変更 )

Twitter 画像

Twitter アカウントを使ってコメントしています。 ログアウト / 変更 )

Facebook の写真

Facebook アカウントを使ってコメントしています。 ログアウト / 変更 )

Google+ フォト

Google+ アカウントを使ってコメントしています。 ログアウト / 変更 )

%s と連携中