6 votes

trop de crons - trop de machines !

J'ai le problème suivant :

  • trop de machines.
  • certains groupes de machines partagent la même configuration cron, d'autres non.
  • Parfois, je dois ajouter manuellement une entrée crontab sur des centaines de machines.
  • Je fais toujours des erreurs, ce que mon B.O.S.S. ne semble pas apprécier...

Existe-t-il un outil, espérons-le (avec une interface web, et gnu) pour gérer ce genre de chose ?

Merci les sages ! !! CM

7voto

David Gardner Points 1499

Systèmes de gestion de la configuration comme Marionnette , Capistrano y CFEngine Il existe des outils qui permettent de faire cela et bien d'autres choses encore.

Si vous devez gérer de nombreuses machines pour le cron, vous aurez probablement un tas d'autres choses à configurer sur ces machines aussi, donc tôt ou tard, vous aurez besoin d'étudier plus que la simple gestion des cronjobs...

Ils ont de très bons tutoriels et de la documentation sur le site de Puppet ( voir ici ), et ils ne sont pas trop difficiles à mettre en place.

S'il s'agit de centaines de machines, mettez-les en service dès que possible et vous vous demanderez comment vous avez pu vous en passer (même pour quelque chose de simple comme pousser les cronjobs sur de nombreuses machines) !

1voto

Chad Huneycutt Points 2076

Avec un outil de gestion de la configuration comme Puppet (ou cfengine, bcfg2, etc.), vous pouvez gérer bien plus que des crontabs à partir d'un emplacement centralisé.

1voto

La réponse est l'automatisation (cfengine/Puppet/bcfg2/chef/autres). Mais ces outils ne vous aideront pas vraiment si vous ne pouvez pas les garder sous un contrôle strict. Vous pouvez facilement obtenir cela en deux étapes :

  • faire fonctionner un dépôt de gestion du code source - je recommande de commencer par subversion
  • intégrer le scm avec un outil d'automatisation de votre choix

Donc déplacez tous vos crons dans /etc/cron.d/ et utilisez un schéma de nommage qui s'adapte à vos systèmes. Ensuite, mettez tous les répertoires /etc/cron.d/ dans subversion et ayez des vérifications locales sur chaque machine. Vous pourrez tout gérer manuellement et avoir un historique de vos changements, être capable de suivre les machines qui n'ont pas les derniers crontabs et ainsi de suite. Ensuite, vous pouvez obtenir un logiciel d'automatisation qui fera tout cela pour vous.

Si vous avez vraiment besoin de quelque chose de rapide et sale, vous devriez avoir une simple disons /etc/cron.d/all-jobs, déployé sur toutes les machines et décider dans ce fichier si un cron est censé fonctionner ou non en fonction du nom d'hôte. Quelque chose comme :

*/5 * * * * root [[ $HOSTNAME == 'myhostname' ]] && /usr/bin/job.sh

Ce n'est pas très efficace, mais cela devrait vous faciliter la vie jusqu'à ce que vous parveniez à automatiser les choses.

SistemesEz.com

SystemesEZ est une communauté de sysadmins où vous pouvez résoudre vos problèmes et vos doutes. Vous pouvez consulter les questions des autres sysadmins, poser vos propres questions ou résoudre celles des autres.

Powered by:

X