1683
Commentaire: truc & astuces...
|
3189
|
Texte supprimé. | Texte ajouté. |
Ligne 5: | Ligne 5: |
* ajouter ceci pour supporter les accès [:Subversion:] via HTTP : `extension_methods REPORT MERGE MKACTIVITY CHECKOUT` |
* laisser la valeur `cache_mem` à `8 MB`, l'augmenter n'augmentera pas les performances, [[http://varnish.projects.linpro.no/wiki/ArchitectNotes|au contraire]] * ajouter ceci pour supporter les accès [[Subversion]] via HTTP : `extension_methods REPORT MERGE MKACTIVITY CHECKOUT PROPFIND` |
Ligne 10: | Ligne 11: |
== Interception et redirection de requêtes vers un miroir local == |
|
Ligne 11: | Ligne 14: |
acl url_rewrite dstdomain security.ubuntu.com archive.ubuntu.com .archive.ubuntu.com | acl url_rewrite dstdomain .ubuntu.com .medibuntu.org .debian.org www.backports.org apt.hanoilug.org apt.auf.org |
Ligne 14: | Ligne 17: |
url_rewrite_children 5 | |
Ligne 17: | Ligne 19: |
Exemple ('''mauvais''' mais fonctionnel, fait à la vas-vite pour une urgence) de script de redirection : {{{ | Exemple de script de redirection ('''mauvais''' mais fonctionnel, fait à la vas-vite pour une urgence...) : {{{#!shell |
Ligne 19: | Ligne 21: |
# /usr/local/sbin/squid-redirector, Progfou, 2008-01-14 | # /usr/local/sbin/squid-redirector # Auteur : Progfou <jean-christophe.andre@auf.org> # Licence : Domaine public # Création : 2008-01-14 # Dépendances : libwww-perl (pour la commande HEAD) # # TODO: À refaire en Perl ou Python, un jour... # |
Ligne 24: | Ligne 33: |
# miroirs au 2008-01-14 au CNF de Hanoï : # - architecture i386 (pas de source) # - sections main, restricted, universe et multiverse # - security et updates pour dapper, feisty et gutsy # - archive et backports pour dapper et gutsy # |
MIRROR="cnf.vn.refer.org/mirror" |
Ligne 32: | Ligne 36: |
URL2="${URL/:\/\/??.archive.ubuntu.com\/ubuntu/://cnf.vn.refer.org/mirror/ubuntu/archive}" [ "$URL" = "$URL2" ] && URL2="${URL/:\/\/security.ubuntu.com\/ubuntu/://cnf.vn.refer.org/mirror/ubuntu/security}" if [ "$URL" != "$URL2" ] && HEAD "$URL2" > /dev/null |
URL2="${URL/:\/\/apt.auf.org\//://cnf.vn.refer.org/mirror/auf/}" [ "$URL2" = "$URL" ] && URL2="${URL/:\/\/apt.hanoilug.org\/ubuntu\//://${MIRROR}/ubuntu/hanoilug/}" [ "$URL2" = "$URL" ] && URL2="${URL/:\/\/security.ubuntu.com\/ubuntu\//://${MIRROR}/ubuntu/security/}" [ "$URL2" = "$URL" ] && URL2="${URL/:\/\/*archive.ubuntu.com\/ubuntu\//://${MIRROR}/ubuntu/archive/}" [ "$URL2" = "$URL" ] && URL2="${URL/:\/\/*packages.medibuntu.org\/ubuntu\//://${MIRROR}/ubuntu/medibuntu/}" [ "$URL2" = "$URL" ] && URL2="${URL/:\/\/security.debian.org\/debian-security\//://${MIRROR}/debian/security/}" [ "$URL2" = "$URL" ] && URL2="${URL/:\/\/security.debian.org\//://${MIRROR}/debian/security/}" [ "$URL2" = "$URL" ] && URL2="${URL/:\/\/volatile.debian.org\/debian-volatile\//://${MIRROR}/debian/volatile/}" [ "$URL2" = "$URL" ] && URL2="${URL/:\/\/ftp*.debian.org\/debian\//://${MIRROR}/debian/archive/}" [ "$URL2" = "$URL" ] && URL2="${URL/:\/\/www.backports.org\/debian\//://${MIRROR}/debian/backports/}" if [ "$URL2" != "$URL" ] && HEAD "$URL2" > /dev/null |
Ligne 43: | Ligne 55: |
== Discussions == FranckKouyami : Il me parait plus simple de configurer directement nos postes pour qu'ils aillent sur nos miroirs. Mais l'avantage de cette méthode est qu'à l'installation, il n'est plus nécessaire de modifier les sources.list. Quoi que nous allons plus vers une installation via le réseau...:-) . Dans cette configuration, TOUT LE MONDE devrait avoir un miroir fonctionnel permettant de faire une install réseau. ... |
Cette page décrira notre utilisation de Squid à l'AUF.
Trucs et astuces (en attendant une vraie doc...)
laisser la valeur cache_mem à 8 MB, l'augmenter n'augmentera pas les performances, au contraire
ajouter ceci pour supporter les accès Subversion via HTTP :
extension_methods REPORT MERGE MKACTIVITY CHECKOUT PROPFIND
- corriger la taille maximale pour les objets mis dans le cache (4 Mo par défaut) :
maximum_object_size 10 MB (valeur arbitraire)
Interception et redirection de requêtes vers un miroir local
Exemple d'options pour intercepter et rediriger les téléchargements de paquets Ubuntu vers son miroir local :
acl url_rewrite dstdomain .ubuntu.com .medibuntu.org .debian.org www.backports.org apt.hanoilug.org apt.auf.org url_rewrite_access allow url_rewrite url_rewrite_program /usr/local/sbin/squid-redirector
Exemple de script de redirection (mauvais mais fonctionnel, fait à la vas-vite pour une urgence...) :
#!/bin/bash # /usr/local/sbin/squid-redirector # Auteur : Progfou <jean-christophe.andre@auf.org> # Licence : Domaine public # Création : 2008-01-14 # Dépendances : libwww-perl (pour la commande HEAD) # # TODO: À refaire en Perl ou Python, un jour... # # URL <SP> client_ip "/" fqdn <SP> user <SP> method <SP> urlgroup <NL> # # ATTENTION : le miroir est incomplet => ne pas tout rediriger bêtement !! # MIRROR="cnf.vn.refer.org/mirror" while read URL CLIENT USER METHOD GROUP do URL2="${URL/:\/\/apt.auf.org\//://cnf.vn.refer.org/mirror/auf/}" [ "$URL2" = "$URL" ] && URL2="${URL/:\/\/apt.hanoilug.org\/ubuntu\//://${MIRROR}/ubuntu/hanoilug/}" [ "$URL2" = "$URL" ] && URL2="${URL/:\/\/security.ubuntu.com\/ubuntu\//://${MIRROR}/ubuntu/security/}" [ "$URL2" = "$URL" ] && URL2="${URL/:\/\/*archive.ubuntu.com\/ubuntu\//://${MIRROR}/ubuntu/archive/}" [ "$URL2" = "$URL" ] && URL2="${URL/:\/\/*packages.medibuntu.org\/ubuntu\//://${MIRROR}/ubuntu/medibuntu/}" [ "$URL2" = "$URL" ] && URL2="${URL/:\/\/security.debian.org\/debian-security\//://${MIRROR}/debian/security/}" [ "$URL2" = "$URL" ] && URL2="${URL/:\/\/security.debian.org\//://${MIRROR}/debian/security/}" [ "$URL2" = "$URL" ] && URL2="${URL/:\/\/volatile.debian.org\/debian-volatile\//://${MIRROR}/debian/volatile/}" [ "$URL2" = "$URL" ] && URL2="${URL/:\/\/ftp*.debian.org\/debian\//://${MIRROR}/debian/archive/}" [ "$URL2" = "$URL" ] && URL2="${URL/:\/\/www.backports.org\/debian\//://${MIRROR}/debian/backports/}" if [ "$URL2" != "$URL" ] && HEAD "$URL2" > /dev/null then echo "$URL2" else echo "$URL" fi done exit 0
Discussions
FranckKouyami : Il me parait plus simple de configurer directement nos postes pour qu'ils aillent sur nos miroirs. Mais l'avantage de cette méthode est qu'à l'installation, il n'est plus nécessaire de modifier les sources.list. Quoi que nous allons plus vers une installation via le réseau...:-) . Dans cette configuration, TOUT LE MONDE devrait avoir un miroir fonctionnel permettant de faire une install réseau. ...