Serveur de distribution ?

Bonjour

dans notre société nous avons une pelleté de serveur debian ( 80 serveur )

je souhaiterai faire un serveur de distribution de package interne.

je vais utilisé dans un premier temps apt-mirror que j’ai déjà utilisé plusieurs fois pour creer un mirroir .
mais ce que je souhaite c’est de faire de la distribution de package.

je ne sais pas si je suis très clair.
donc voici un exemple

j’ai une mise a jour d’apache sur mes serveurs à faire.
je souhaiterai déployer la dite mise-a jour sur tous les serveurs en même temps.

voila l’idée

je pourrais parti sur du script mais existe t’il une solution logiciel actuellement ou pas du tout

En vous remerciant d’avance.
Cordialement

Il te suffit de prendre un serveur modèle et de récupérer tous les paquets de /var/cache/apt/archives de ce serveur et de les mettre dans un dépot local, dépot référent des autres serveurs. Les MAJs seront synchrones sur tous les serveurs et se feront en local. Mais cela suppose une certaine unité dans les serveurs. Note que même si il y a une différence (pas trop grande) entre eux, si ils sont sous lenny ou squeeze, ça ne posera sans doute pas de soucis.

oui en effet … mais ca conviendra pas dans l’idée que je me fais.

je vais alors me lancé déjà dans un premier temps a un mirror local.
puis a partir d’un script que je lancerai.

toujours dans l’exemple d’une update apache de lancé cette update avec une commande ssh groupé sur l’integralité des serveurs.
ceci imposera de faire l’enregistrement des 80 serveurs debian actuel dans ce script, plus les prochains a venir.
pas trop gênant dans l’idée vue que je ferai une authentification rsa pour le ssh.

maintenant faut que je commence l’écriture de mon script.

merci pour ces infos dans tous les cas.

je ferai un avancement ici même de la façon que j’évoluerai avec mon script…

Bonne soirée

Un miroir local me parait énomre pour une telle utilisation. En ce qui concerne le script, il vaut mieux rajouter une simple ligne dans les crontab des serveurs, c’est quand même plus simple.

Salut
Apt-cacher-ng est parfait pour ce genre de dépôt local puisque tous les systèmes utilisent les même paquets.
Pour la synchronisation comme le dit fran.b un cron ferait l’affaire.

pour ma part ca sera sans cron.
je veux avoir le contrôle total de mes installations .

par exemple faire l’essai de la mise à jour sur un serveur de test prévu a cette effet .
puis si ok envoyer la mise à jour à tous.

je suis peu être parano mais dans mon taf j’ai déjà eu de la surprise même sur debian.
tout ce que je fais comme modif et toujours testé avant la mise en prod.

et puis aujourd’hui c’est 80 serveur au moins 60 migré en squeeze.
et j’aurai fais les 80 d’ici la janvier.

dans un ans ca sera certainement plus d’une centaine voir plus.

dans l’idée c’est un peu le wsus de microsoft.
on rapatrie les données on envoie sur une machine de test et si c’est good on deploy.

a la difference que sur les debian je ne pousserai pas les packages mais que c’est elle qui vienne chercher leur package sur le depot local.

ou aussi dans le cas ou je re-compile l’application pour des besoins particulier.
comme un squid avec le support du ssl.

j’ai pas envie de faire la manipe de compilation sur chaque poste ni m’amuser à envoyer le package recompilé sur tous les serveurs.

le faire encore est toujours depuis une machine de test et apres validation le pousser dans le depot local.
puis lancé une installe via une commande apt-get envoyé à tous les serveurs nécessaire…

ceci m’imposera aussi d’avoir des groupes de serveurs.
car je n’aurais jamais l’utilité d’installer un squid modifié sur l’intégralité des vms.

Oui oui!
Mais pour le dépôt je te conseille apt-cacher-ng, inutile d’avoir un dépôt avec TOUS les paquets Debian…

Une machine se met à jour, et les paquets sont dispo dans le dépôt pour toutes les autres.

ok merci

oui en effet ca pourrait rentrer dans les cordes …

Re,
Y’a un petit tuto sur le wiki:

isalo.org/wiki.debian-fr/ind … -cacher-ng

Ça ne change strictement rien, tu peux avoir un serveur de test ET un serveur sur lequel tu fais la mise à jour et qui sert à faire le cache. Le souci avec ton ssh est que invariablement, tu auras dans le tas une machine qui aura un souci de connexion réseau au moment de ta commande et que tu t’enquiquinera à voir pourquoi et relancer une commande spécifique. Avec un cron, tu ne t’enquiquines pas et ne fais que gérer un dépot. Ce dépot, tu le configures comme tu veux notamment tu ne peux le valider qu’après controle de la MAJ.