Instalar thundercache en Centos 5

Imagen de RazaMetaL

Hace algún tiempo escribí una guia para [url=http://www.ecualug.org/2010/11/11/blog/razametal/la_combinaci%C3%B3n_ideal_debian_squid_thundercache_aptcacherng]instalar thudercache, apt-cacher-nt y squid en Debian[/url], algunos han tratado de seguir la guia para Centos sin lograr resultados positivos.

Aprovechando que tuve que instalar thundercache y squid en un servidor Centos, comparto con ustedes el procedimiento que he seguido para lograr la instalación:

Instalar dependencias:

yum install squid httpd php php-cli php-mysql php-gd sqlite sqlite-devel libstdc++-devel unzip bzip2

Descargar thundercache para nuestra aquitectura:
Link para 32 bits:

wget http://www.razametal.org/conf/thundercache/thunder3-32bits.tar.bz2 -O /usr/src/thunder3-32bits.tar.bz2

Link para 64 bits:

wget http://www.razametal.org/conf/thundercache/thunder3-64bits.tar.bz2 -O /usr/src/thunder3-64bits.tar.bz2

Instalacion de Thundercache:

cd /usr/src
tar -jvxf thunder3-32bits.tar.bz2
cp -R sbin/* /usr/local/sbin
chmod a+x /usr/local/sbin/thunder

mkdir /var/log/thunder
mkdir /var/tmp/thunder
mkdir /var/run/thunder
mkdir /var/cache/thunder
ln -s /var/cache/thunder /thunder

chmod a+rwx /var/log/thunder
chmod a+rwx /var/tmp/thunder
chmod a+rwx /var/run/thunder
chmod a+rwx /thunder
chown -R apache:apache /thunder/
chmod -R 777 /thunder/
umask 000 /thunder/

wget http://www.razametal.org/conf/thundercache/centos/thunder -O /etc/init.d/thunder
chmod a+x /etc/init.d/thunder
cp -R etc/thunder /etc/thunder
touch /etc/thunder/whitelist
touch /etc/thunder/blacklist
chkconfig thunder --level 345 on

ln -s /etc/thunder/thunder.php /var/www/html/thundercache.php

Instalamos la librería necesaria para ejecutar thundercache en Centos:

mkdir /usr/src/gcc
cd /usr/src/gcc
wget ftp://ftp.slackware.org.uk/slackware/slackware-12.1/slackware/d/gcc-g++-4.2.3-i486-1.tgz
tar zvxf gcc-g++-4.2.3-i486-1.tgz
cp /usr/src/gcc/usr/lib/libstdc++.so.6.0.9 /usr/lib/
rm -f /usr/lib/libstdc++.so.6
ln -s /usr/lib/libstdc++.so.6.0.9 /usr/lib/libstdc++.so.6

Configuramos squid:

sed -i 's/hierarchy\_stoplist\ cgi\-bin/\#hierarchy\_stoplist\ cgi\-bin/g' /etc/squid/squid.conf
sed -i 's/http_port\ 3128/\http_port\ 3128\ transparent/g' /etc/squid/squid.conf
sed -i 's/\#\ max_filedesc\ 1024/max_filedesc\ 4096/g' /etc/squid/squid.conf

Agregamos al final de /etc/squid/squid.conf :

# Thundercache 3
acl thunder_lst url_regex -i "/etc/thunder/thunder.lst"
cache deny thunder_lst
cache_peer 127.0.0.1 parent 8080 0 proxy-only no-digest
dead_peer_timeout 2 seconds
cache_peer_access 127.0.0.1 allow thunder_lst
cache_peer_access 127.0.0.1 deny all
# Fin de modificaciones para Thundercache

Redireccionamos con iptables las peticiones hacia thundercache, en este ejemplo asumo que eth1 es la interfaz de red interna:

echo 1 > /proc/sys/net/ipv4/ip_forward
/sbin/iptables -A INPUT -i eth1 -p tcp --dport 3128 -j ACCEPT
/sbin/iptables -t nat -A PREROUTING -i eth1 -p tcp -s 0/0 --dport 80 -j REDIRECT --to-port 3128

Iniciamos los servicios:

service squid restart
service thunder start

Comentarios

Unas inquietudes...

Imagen de Monkito

1. Squid se encarga de borrar archivos con menor número de hints?

2. Cuando lo hice por el "método anterior" tenía el siguiente problema

- Con la cantidad suficiente de peticiones de videos para saturar el ancho de banda del proxy, éste prácticamente daña los videos siendo imposible volver a verlos sin vaciar la caché del squid, para esta prueba instalé en una pc con un ancho de banda de unos 2 megas y traté de ver 4 videos en HD, sólo se descargaban los primeros segundos y luego salía un error en el reproductor de youtube, eso también sucedía si trataba de adelantar el video.

3. Alguna diferencia importante vs squid 2.7 con storeurl rewrite, como se muestra en este howto.

4. tengo entendido que ese thundercache ahora es de pago, tu tienes la versión antigua que era gratuita?, en tal caso nos perdemos las actualizaciones?

------------
counter.li.org

Cogito Ergo Sum

1. Squid se encarga de borrar

Imagen de RazaMetaL


1. Squid se encarga de borrar archivos con menor número de hints?

No, hay un script en el how to para instalar Thundercache en Debian que se encarga de eliminar los archivos que no han tenido HITS en determinada cantidad de tiempo.


2. Cuando lo hice por el "método anterior" tenía el siguiente problema
- Con la cantidad suficiente de peticiones de videos para saturar el ancho de banda del proxy, éste prácticamente daña los videos siendo imposible volver a verlos sin vaciar la caché del squid, para esta prueba instalé en una pc con un ancho de banda de unos 2 megas y traté de ver 4 videos en HD, sólo se descargaban los primeros segundos y luego salía un error en el reproductor de youtube, eso también sucedía si trataba de adelantar el video.

Habria que mirar en el log de thundercache y de squid, tengo varias instalaciones con thundercache y squid3 y no he sido reportado de este tipo de situaciones. Es probable que la configuracion de squid o de thundercache este afectando los videos.


3. Alguna diferencia importante vs squid 2.7 con storeurl rewrite, como se muestra en este howto.

No uso squid para hacer cache de youtube, esto lo hace thundercache, asi que no sabria decirte :)


4. tengo entendido que ese thundercache ahora es de pago, tu tienes la versión antigua que era gratuita?, en tal caso nos perdemos las actualizaciones?

Me parece que thundercache esta ahora en la version 6, yo uso esta versión porque es libre, es gratis y además funciona bien para mis requerimientos. No he probado versiones superiores/inferiores a la version 3.

-----

Visita este [url=http://www.sindominio.net/ayuda/preguntas-inteligentes.html]link[/url] :evil:

[img]http://www.bbspot.com/Images/News_Features/2003/01/os_quiz/debian.jpg[/img]

(adsbygoogle = window.adsbygoogle || []).push({});

En Debian uso squid3. En

Imagen de RazaMetaL

En Debian uso squid3. En centos la versión que viene en los repos, creo que es 2.7. He notado que tengo un mejor rendimiento con squid3.

-----

Visita este [url=http://www.sindominio.net/ayuda/preguntas-inteligentes.html]link[/url] :evil:

[img]http://www.bbspot.com/Images/News_Features/2003/01/os_quiz/debian.jpg[/img]

(adsbygoogle = window.adsbygoogle || []).push({});

Corregido, gracias !

Imagen de RazaMetaL

Corregido, gracias !

-----

Visita este [url=http://www.sindominio.net/ayuda/preguntas-inteligentes.html]link[/url] :evil:

[img]http://www.bbspot.com/Images/News_Features/2003/01/os_quiz/debian.jpg[/img]

(adsbygoogle = window.adsbygoogle || []).push({});

Estimado Raza He instalado el

Imagen de nino1511

Estimado Raza

He instalado el thunder en mi centos y todo va bien hasta el momento. Tengo la siguiente duda:

Si en ese centos (gateway - proxy) se limita con htb-gen, htb, cbq o prometheusqos, etc, a determinada ip se le coloca 128K down 128K up, el video seguirá viendose a 128K (lo noto lógico) o debe verse a mucha más velocidad, ya que lo sigo viendo a 128K y yo lo quiero ver en tiempo real.

Que se debe de hacer para que el video fluya mas rápido?.

Saludos

Vamos Ecuador, si se puede

Si el usuario esta limitado

Imagen de RazaMetaL

Si el usuario esta limitado la velocidad de descarga del video va a ser igual al límite que le estes aplicando al usuario.

Si quieres ver el video a toda velocidad debes quitar la limitación al usuario.

Se me ocurre que con iptables en la tabla mangle (si usas htb/cbq/prometheus) hagas un RETURN a las direcciones de youtube, ó a la ip del servidor y el puerto en el que esta corriendo thundercache. Seria algo así:


iptables -t mangle -I PREROUTING -i eth1 -p tcp --dport 8080 -j RETURN

Habría que probar si funciona, si lo haces cuentanoslo.

-----

Visita este [url=http://www.sindominio.net/ayuda/preguntas-inteligentes.html]link[/url] :evil:

[img]http://www.bbspot.com/Images/News_Features/2003/01/os_quiz/debian.jpg[/img]

(adsbygoogle = window.adsbygoogle || []).push({});

Gracias por responder Raza.

Imagen de nino1511

Gracias por responder Raza. Probe la línea que me inicaste pero sigue sigue lo mismo sigue limitado, lo probe en un centos con cbq, mas tarde lo voy a probar con htb-gen haber como va.

Dicha línea va en mi script de firewall antes de llamar al script de la limitación y tambíen la probé una línea después.

Saludos

Vamos Ecuador, si se puede

Humm... trata usando el

Imagen de RazaMetaL

Humm... trata usando el puerto 3128 en vez del 8080. Yo no lo he probado, no he tenido necesidad por ahora :)

-----

Visita este [url=http://www.sindominio.net/ayuda/preguntas-inteligentes.html]link[/url] :evil:

[img]http://www.bbspot.com/Images/News_Features/2003/01/os_quiz/debian.jpg[/img]

(adsbygoogle = window.adsbygoogle || []).push({});

Páginas