Taille: 3839
Commentaire: + annonce avahi
|
← Version 10 à la date du 2016-06-07 16:47:51 ⇥
Taille: 6161
Commentaire:
|
Texte supprimé. | Texte ajouté. |
Ligne 2: | Ligne 2: |
Ligne 16: | Ligne 17: |
mkfs -t ext4 -m0 /dev/vg0/aptcache | mkfs -t ext4 -m 0 /dev/vg0/aptcache |
Ligne 19: | Ligne 20: |
. (!) on allouera un maximum de 5 Gio par distribution/architecture/version, donc par exemple 20 Gio pour [[Debian/Jessie]] amd64+i386 et [[Ubuntu/Trusty]] amd64+i386 * installer le service `apt-cacher-ng` : {{{ |
. (!) on allouera en moyenne 5 Gio par distribution/architecture/version, donc par exemple 20 Gio pour [[Debian/Jessie]] amd64+i386 et [[Ubuntu/Xenial]] amd64+i386 * installer le service `apt-cacher-ng` (il faut au minimum la version 0.8.8 de `jessie-backports` pour supporter [[Ubuntu/Xenial]]) : {{{ |
Ligne 30: | Ligne 31: |
. {i} on remplacera bien sûr les identifiant et mot de passe indiqués ici | . /!\ on remplacera bien sûr les identifiant et mot de passe indiqués ici |
Ligne 37: | Ligne 38: |
* installer le service d'annonces MDNS [[avahi]] sur un serveur voyant la plupart des réseaux (par exemple la passerelle) : {{{ | * installer le service d'annonces mDNS [[avahi]] sur un serveur voyant la plupart des réseaux (par exemple la passerelle) : {{{ |
Ligne 40: | Ligne 41: |
. (!) on limitera éventuellement la diffusion et l'écoute des annonces MDNS en utilisant une directive `deny-interfaces=ppp0,vlan1` dans le fichier `/etc/avahi/avahi-daemon.conf` | . /!\ on limitera éventuellement la diffusion et l'écoute des annonces mDNS en utilisant une directive `deny-interfaces=ppp0,vlan1` dans le fichier `/etc/avahi/avahi-daemon.conf` |
Ligne 75: | Ligne 76: |
== Utilisation : configuration manuelle (pour les serveurs) == | == Utilisation == Bien qu'il soit possible de spécifier le proxy/cache APT directement dans les sources APT, [[ProgFou|je]] recommande plutôt d'utiliser des sources standards et d'ajuster la configuration générale de APT. On pourra alors spécifier n'importe quelles sources APT standard dans `/etc/apt/sources.list` sur toutes les machines : * pour Debian : {{{ deb http://ftp.debian.org/debian/ jessie main deb http://ftp.debian.org/debian/ jessie-updates main #deb http://ftp.debian.org/debian/ jessie-backports main deb http://security.debian.org/ jessie/updates main }}} * pour Ubuntu : {{{ deb http://archive.ubuntu.com/ubuntu/ trusty main restricted universe multiverse deb http://archive.ubuntu.com/ubuntu/ trusty-updates main restricted universe multiverse deb http://archive.ubuntu.com/ubuntu/ trusty-security main restricted universe multiverse deb http://archive.canonical.com/ubuntu trusty partner deb http://extras.ubuntu.com/ubuntu trusty main }}} === Configuration manuelle (pour les serveurs) === * vérifier si la configuration présente ne contiendrait pas déjà l'information du proxy/cache APT à utiliser : {{{ grep -r Proxy /etc/apt }}} * s'il n'y a aucune configuration en place, créer le fichier `/etc/apt/apt.conf.d/50local` avec le contenu suivant : {{{ Acquire::http { Proxy "http://acng:3142"; }; }}} . (!) on s'assurera d'avoir défini un nom DNS "acng" dans le domaine local (cf `/etc/resolv.conf`) . (!) on lancera un `apt-get update` pour vérifier que la configuration est fonctionnelle === Configuration automatique (pour les nomades ou fixes) === * installer le paquet `squid-deb-proxy-client` : {{{ apt-get install squid-deb-proxy-client }}} . (!) on lancera un `apt-get update` pour vérifier que la configuration est fonctionnelle . {i} ce paquet n'utilise pas [[Squid]] ; il fait une requête mDNS pour un service `_apt_cacher.tcp`, cf `/etc/apt/apt.conf.d/30autoproxy` . {i} on peut tester la découverte mDNS avec la commande `/usr/share/squid-deb-proxy-client/apt-avahi-discover` |
Ligne 78: | Ligne 116: |
== Utilisation : configuration automatique (pour les nomades ou fixes) == | == Intégration avec un Squid en mode transparent == ''(à étudier et documenter ici)'' . un exemple de mise en oeuvre [[http://blog.professional.geek.nz/post/8443326209/using-apt-cacher-ng-to-handle-deb-files|ici]] ... [[MoussaNombré|je]] reviendrai la-dessus après les tests |
Sommaire
Cette page décrit la mise en place de apt-cacher-ng à l'AUF.
Présentation
L'objectif est de remplacer nos miroirs Debian/Ubuntu complets par un proxy/cache persistant dédié à APT.
L'intérêt est de réduire fortement les ressources nécessaires, autant en espace disque (quelques dizaines de Gio au lieu de quelques centaines) qu'en bande passante d'accès Internet (ne télécharger que ce qui est utile, au moment voulu).
L'inconvénient est un délai d'attente plus important pour le premier téléchargement depuis Internet, alors qu'avec un miroir les données sont déjà à disposition localement et donc sans délai. Mais cet inconvénient peut être compensé par un pré-chargement des données au préalable.
Mise en place du service apt-cacher-ng
dédier 20 à 30 Gio d'espace disque sur /var/cache/apt-cacher-ng/ :
lvcreate -n aptcache -L 20G vg0 mkfs -t ext4 -m 0 /dev/vg0/aptcache echo '/dev/vg0/aptcache /var/cache/apt-cacher-ng ext4 defaults 0 2' >> /etc/fstab
on allouera en moyenne 5 Gio par distribution/architecture/version, donc par exemple 20 Gio pour Debian/Jessie amd64+i386 et Ubuntu/Xenial amd64+i386
installer le service apt-cacher-ng (il faut au minimum la version 0.8.8 de jessie-backports pour supporter Ubuntu/Xenial) :
apt-get install apt-cacher-ng
si l'installation échoue du fait que le dossier /var/cache/apt-cacher-ng/ a été créé au préalable mais n'a pas les droits attendus, lancer les commandes suivantes pour terminer l'installation correctement :
chown apt-cacher-ng: /var/cache/apt-cacher-ng dpkg --configure -a
configurer l'accès à l'interface web :
echo 'AdminAuth: acng:acng' >> /etc/apt-cacher-ng/security.conf
on remplacera bien sûr les identifiant et mot de passe indiqués ici
puis relancer le service :
service apt-cacher-ng restart
Mise en place de l'annonce du proxy/cache APT
installer le service d'annonces mDNS avahi sur un serveur voyant la plupart des réseaux (par exemple la passerelle) :
apt-get install avahi-daemon
on limitera éventuellement la diffusion et l'écoute des annonces mDNS en utilisant une directive deny-interfaces=ppp0,vlan1 dans le fichier /etc/avahi/avahi-daemon.conf
créer une description de service dans /etc/avahi/services/apt-cacher-ng.service :
<?xml version="1.0" standalone='no'?> <!-- From: Lisandro Damián Nicanor Pérez Meyer <lisandro@debian.org> X-Source: http://blog.surgut.co.uk/2013/03/avahi-apt-cacher-ng-sbuild.html See http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=704790 for details. --> <!DOCTYPE service-group SYSTEM "avahi-service.dtd"> <service-group> <name replace-wildcards="yes">apt-cacher-ng proxy on %h</name> <service protocol="ipv6"> <type>_apt_proxy._tcp</type> <!-- activer la ligne suivante si apt-cacher-ng est sur une autre machine que ce service avahi : <host-name>acng.local</host-name> -- ajouter alors également l'adresse IP de acng.local dans /etc/avahi/hosts --> <port>3142</port> </service> <service protocol="ipv4"> <type>_apt_proxy._tcp</type> <!-- activer la ligne suivante si apt-cacher-ng est sur une autre machine que ce service avahi : <host-name>acng.local</host-name> -- ajouter alors également l'adresse IP de acng.local dans /etc/avahi/hosts --> <port>3142</port> </service> </service-group>
ajouter, le cas échéant, une association (ou plusieurs) d'adresse IP et de nom DNS local dans /etc/avahi/hosts :
2001:0db8::10 acng.local 192.0.2.10 acng.local
relancer le service avahi :
service avahi-daemon restart
Utilisation
Bien qu'il soit possible de spécifier le proxy/cache APT directement dans les sources APT, je recommande plutôt d'utiliser des sources standards et d'ajuster la configuration générale de APT.
On pourra alors spécifier n'importe quelles sources APT standard dans /etc/apt/sources.list sur toutes les machines :
pour Debian :
deb http://ftp.debian.org/debian/ jessie main deb http://ftp.debian.org/debian/ jessie-updates main #deb http://ftp.debian.org/debian/ jessie-backports main deb http://security.debian.org/ jessie/updates main
pour Ubuntu :
deb http://archive.ubuntu.com/ubuntu/ trusty main restricted universe multiverse deb http://archive.ubuntu.com/ubuntu/ trusty-updates main restricted universe multiverse deb http://archive.ubuntu.com/ubuntu/ trusty-security main restricted universe multiverse deb http://archive.canonical.com/ubuntu trusty partner deb http://extras.ubuntu.com/ubuntu trusty main
Configuration manuelle (pour les serveurs)
vérifier si la configuration présente ne contiendrait pas déjà l'information du proxy/cache APT à utiliser :
grep -r Proxy /etc/apt
s'il n'y a aucune configuration en place, créer le fichier /etc/apt/apt.conf.d/50local avec le contenu suivant :
Acquire::http { Proxy "http://acng:3142"; };
on s'assurera d'avoir défini un nom DNS "acng" dans le domaine local (cf /etc/resolv.conf)
on lancera un apt-get update pour vérifier que la configuration est fonctionnelle
Configuration automatique (pour les nomades ou fixes)
installer le paquet squid-deb-proxy-client :
apt-get install squid-deb-proxy-client
on lancera un apt-get update pour vérifier que la configuration est fonctionnelle
ce paquet n'utilise pas Squid ; il fait une requête mDNS pour un service _apt_cacher.tcp, cf /etc/apt/apt.conf.d/30autoproxy
on peut tester la découverte mDNS avec la commande /usr/share/squid-deb-proxy-client/apt-avahi-discover
Intégration avec un Squid en mode transparent
(à étudier et documenter ici)