Auteur:


Date:
1/09/2009

Catégories:
Open-source
Systeme

Tags:



Un cache pour accélérer la mise à jour de vos machines Ubuntu

Si vous avez à mettre à jour un nombre important de machines GNU/Linux, il y a de forte chance pour que votre liaison Internet soit vite saturée. Dans le contexte d'une entreprise, cette saturation peut rapidement poser des problèmes pour les utilisateurs. Nous allons donc dans ce billet mettre en place un cache local pour les dépôts Ubuntu. Les avantages sont les suivants:

  • diminuer le temps des mises à jour
  • réduire la consommation de bande passante sur votre liaison Internet
  • contrôler plus finement la mise à jour des machines

Principe de fonctionnement

Un bon diagramme valant mieux qu'un long discours:

Comme on peut le voir sur le deuxième diagramme, il faut installer une machine ("label") qui va servir de cache entre votre réseau local et le dépôt distant.

Installation du cache

Nous allons utiliser une machine GNU/Linux Ubuntu pour faire office de cache. Attention, celle-ci devra disposer d'un espace disque important car tout les paquets mis à jours y seront stockés. Personnellement, j'utilise un point de montage SMB (/media/depots) vers un serveur NAS.

Le cœur de notre système se base sur l'utilisation du logiciel apt-cacher. Nous allons commencer par l'installer sur notre système:

sudo aptitude install apt-cacher

Le fichier de configuration se trouve à l'emplacement /etc/apt-cacher/apt-cacher.conf. Il faut y modifier (selon votre configuration) les paramètres suivants:

# cache_dir configure le répertoire ou le cache stockera ses données
cache_dir=/media/depots/ubuntu

# Configuration du groupe et de l'utilisateur avec lequel apt-cacher va être lancé
# Il faut que le répertoire cache_dir est les bon droits en lecture/écriture
user=www-data
group=www-data

# allowed_hosts défini la liste des machines autorisées à utiliser ce cache
allowed_hosts=192.168.29.0/24

Remarque: Il est également possible de demander à apt-cache d'utiliser un proxy pour sortir vers Internet (utilisation des options: http_proxy, use_proxy, http_proxy_auth, use_proxy_auth).

Pour automatiser le lancement de apt-cacher lors du démarrage de la machine, il faut modifier le fichier /etc/default/apt-cacher:

AUTOSTART=1

Ensuite on lance le cache:

sudo /etc/init.d/apt-cacher start

Configuration des machines clientes

Votre cache est maintenant opérationnel, il ne reste plus qu'a configurer vos machine GNU/Linux Ubuntu pour l'utiliser. Le plus simple est de créer un fichier nommé 90-apt-cacher.conf dans le répertoire /etc/apt/apt.conf.d/ (remplacer l'adresse IP 192.168.29.254 par l'adresse IP de votre machine hébergeant apt-cacher):

# vi /etc/apt/apt.conf.d/90-apt-cacher.conf
Acquire::http::Proxy "http://192.168.29.254:3142"

En cas d'indisponibilité du cache, vos machines pourront se mettre à jour comme elle le faisait auparavant.

3 commentaires/références

    On parle de ce billet (ping back):

    Commentaires (de mes chers lecteurs):


  1. Loyl, le 1/09/2009 (#6793)

    Très intéressant comme article !


  2. loloemr, le 1/09/2009 (#6794)

    Salut,

    article intéressant, on peut également utiliser apt-mirror qui récupérères tous les paquets et permet de gérer plusieurs versions de distributions (peut être apt-cacher le fait aussi, a priori oui) mais également de ne gérer sur les machines clients qu’un seul dépot et de centraliser la liste des mirroirs sur une seule machine.

    Ciao


  3. Liliandev, le 28/06/2010 (#8493)

    Il serait plus intéressant de parler d’apt-cacher-ng :) qui est beaucoup plus au moins qu’apt-cacher … eu beaucoup de soucis avec celui-ci.


Vous avez un compte Twitter ?

Cliquer sur le bouton ci-dessous pour vous enregistrer sur le blog en l'utilisant.

Laisser un message

Les informations saisies resteront privées