Iim ou le mirroring du CPAN facile

Depuis le 6 octobre 2011, http://cpan.fiat-tux.fr est un miroir officiel du CPAN !

Pour mettre en place mon miroir, j'avais sagement été sur la page du CPAN expliquant comment faire. Et comme je n'ai pas peur des trucs experimentaux, j'avais utilisé la technique de l'instant mirroring. Ça consiste à récupérer très souvent un fichier contenant la liste des dernières modifications pour que le démon sache quoi télécharger. (et un coup de rsync de temps en temps via cron pour éviter les éventuels problèmes)

J'avais donc utilisé rrr-client, comme indiqué sur la page de l'instant mirroring.

Tout fonctionnait parfaitement… ou pas ! Après le reboot sauvage de mon serveur nécessaire pour cause d'attaque (a priori, la faille http-range d'apache d'il y a peu), j'ai oublié de relancer le démon de synchro.

Coup de bol, quand j'ai demandé à être ajouté aux miroirs officiels du CPAN, c'est Henk Penning qui m'a répondu. Il a vu que mon mirroir n'était pas en instant mirroring (il y avait quand même le rsync en cron) et m'a proposé l'outil d'instant mirroring qu'il a développé : iim.

Iim se différencie de rrr-client par plusieurs aspects :

  • le rsync périodique est intégré dans le démon
  • le démon peut mourir périodiquement pour éviter que des fuites mémoire deviennent problèmatiques (oui, bon, un bon logiciel n'est pas sensé avoir de fuites mémoire)
  • une tâche cron peut (et c'est recommandé) appeler le logiciel. Comme iim est bien fait, si le démon tourne, ça ne fait rien, sinon ça le rallume. => et là, c'est la killer feature : je n'ai pas à m'en occuper en cas de reboot, la synchronisation reprendra toute seule
  • on a une petite interface (customizable) pour monitorer le démon : c'est le scoreboard.

Pour ce qui est de l'installation et de la configuration, je vous laisse lire le manuel, y en a pour 10 minutes en tout ! (allez, 15 minutes en customisant un peu le scoreboard).

Thx Henk !