Il y a six mois, dans notre projet à but non lucratif, nous avons décidé de commencer à migrer notre gestion système vers un environnement contrôlé par Puppet car nous prévoyons une augmentation substantielle du nombre de serveurs entre maintenant et d'ici un an.
Cela semble être une très bonne idée de commencer tôt - Puppet est plus que simplement une gestion de configuration, c'est une forme de documentation.
Depuis que la décision a été prise, nos informaticiens sont devenus un peu trop agacés un peu trop souvent.
Ils ont besoin d'un ajustement d'attitude.
"Nous ne sommes pas des programmeurs, nous sommes des administrateurs système";
Encore une fois, l'attitude. Vous -pouvez- créer un fichier de configuration pour un serveur, n'est-ce pas ? Vous pouvez vous habituer à la templating/'programmation' au fur et à mesure que vos besoins et votre complexité évoluent.
Des modules sont disponibles en ligne mais beaucoup d'entre eux diffèrent les uns des autres; les roues sont réinventées trop souvent, comment décider lequel répond à vos besoins;
C'est difficile à répondre - je préfère toujours les modules de puppetlabs à la plupart des autres - et même à cela, je n'en utilise pas beaucoup. C'est définitivement à vous de juger. À mon avis, certains modules sont 'trop élaborés'.
Le code dans notre dépôt n'est pas assez transparent, pour comprendre comment quelque chose fonctionne, ils doivent parcourir en récursif les manifests et les modules qu'ils ont peut-être même écrits eux-mêmes il y a un certain temps;
Cela ne semble pas être un problème de Puppet, mais plutôt un problème d'organisation ou de documentation, non?
Un nouveau démon nécessite l'écriture d'un nouveau module, les conventions doivent être similaires aux autres modules, un processus difficile;
Ce démon pourrait être une classe s'il est assez simple à gérer. Je ne suis pas sûr de ce que vous entendez par conventions, Puppet n'impose-t-il pas déjà des conventions sur vous? Ou parlons-nous de formatage du code?
"Laissez juste tourner et voyons comment cela fonctionne"
Pas une si mauvaise idée si vous allez doucement et en toute sécurité. Je commencerais quand même par une machine virtuelle pour avoir une idée des choses.
Des tonnes d''extensions' à peine connues dans les modules communautaires: 'trocla', 'augeas', 'hiera'... comment nos administrateurs système peuvent-ils s'y retrouver?
postfix, exim, sendmail, mysql, postgresql, iftop, iptraf, perl, modules perl.. Choisissez ce que vous voulez et utilisez-le ? Je pense que cela ressemble encore une fois à une question d'attitude...
Je comprends pourquoi une grande organisation enverrait ses administrateurs système suivre des cours Puppet pour devenir des maîtres Puppet. Mais comment les petits acteurs pourraient-ils apprendre Puppet à un niveau professionnel s'ils ne suivent pas de cours et apprennent essentiellement via leur navigateur et leur éditeur?
Je n'ai suivi aucun cours - bien que je sois plus un programmeur qu'un administrateur système, je trouve qu'il n'est pas nécessaire d'avoir de grandes compétences en programmation pour accomplir quoi que ce soit.
La documentation de Puppet, lorsqu'elle est suivie, est assez complète. Faites attention aux types intégrés et passez du temps à regarder comment les autres modules sont assemblés. Je ne dirais pas que c'est -super- facile, mais ce n'est pas -difficile- non plus. Il faut un peu de temps pour préparer votre infrastructure pour Puppet, mais le temps investi est assuré d'être bien dépensé lorsque vous vous développez.