Un cache pour accélérer la mise à jour de vos machines Ubuntu
Date: 1/09/2009 | Catégories: Open-source,Systeme | Tags: apt-cacher,depot local,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.