Le Topic Unique des marionnetistes@OSA (Puppet, Salt, Chef, ...) - Codes et scripts - Linux et OS Alternatifs
Marsh Posté le 14-01-2009 à 18:04:01
<======== ICI des liens vers les recettes maison =========>
Marsh Posté le 14-01-2009 à 18:04:11
Donc, je commence :
- première question :
Les clients puppet se connectent par défaut toutes les 30 minutes (configurable) au serveur afin de voir si leur config a changé, et si c'est le cas appliquer les modifs.
Il est possible de forcer la MAJ en envoyant le signal USR1 au process puppetd.
Est-il possible de forcer la MAJ de tous les clients depuis le serveur ??? j'ai pas trouvé de doc à ce sujet
- une idée :
Je souhaite centraliser la gestion des clefs SSH autorisées à se connecter sur tel ou tel serveur. J'ai bien vu une recette disponible sur le site de puppet, mais elle ne réponds pas à mon attente, et puis c'est l'occasion de se lancer dans un travail un peu réfléchi avec Puppet...
Ce que je souhaite donc :
- stockage des clefs des différents intervenants sur le serveur dans des fichiers distincts (.../keys/esprit, .../keys/toto, ...)
- pour chaque noeud puppet, dire quels sont les utilisateurs qui ont accès au root (ou autre) => générer le fichier authorized_keys qui va bien
- gestion de la révocation des clefs (MAJ ou suppression).
Tout d'abord, je souhaite donc simplement créer le fichier par concaténation des diverses clefs autorisées, et c'est la que ça coince. On peut :
+ copier simplement un fichier sur un noeud (mais ca ne correspond pas au besoin),
+ on peut créer une chaine de caractère qui sera le contenu du fichier => ca semble être ça.
Maintenant... comment lire le contenu de mes différents fichiers afin de les affecter dans une chaine ? j'ai pas trouvé
EDIT : Peut-être avec ça : http://reductivelabs.com/trac/pupp [...] rence#file
Franchement la doc est conséquente, mais pas super bien faite
Si quelqu'un a une solution, un pointeur, une idée... he's welcome
Marsh Posté le 14-01-2009 à 18:17:35
ça serait bien de résumer une définition pour les noobs comme moi
Citation : |
Marsh Posté le 14-01-2009 à 18:22:20
C'est un topic élitiste
Je prends quand même ton introduction
Marsh Posté le 14-01-2009 à 18:30:32
e_esprit a écrit : Donc, je commence : |
Marsh Posté le 14-01-2009 à 18:33:37
Mais tu ne sers à rien alors
Merci pour le puppetrun en tout cas, je n'avais pas bien saisi son interêt, avec leur exemple à la con sur LDAP
Marsh Posté le 14-01-2009 à 18:35:34
incontournable : http://git.black.co.at/
sinon perso c'est : http://delicious.com/__nico/puppet
Marsh Posté le 14-01-2009 à 18:36:41
j'en ai encore dans mon historique@work, faudra que je les bookmark
Marsh Posté le 14-01-2009 à 20:30:52
Moi j'ai projet de m'en servir en particulier pour déployer des conf.
vu qu'on a un parc avec moitier/moitier de RedHat et de Sles il me fallait un outils qui soit capable de gerer le multi-plateforme et de gérer des serveurs par fonction.
Je pense que Pupette correspond bien à mes attentes.
Quand je lance le projet (d'ici 1 ou 2 mois le temps que j'ai écoulé ceux en cours) et je vous tiendrais au courant de l'évolution
Marsh Posté le 15-01-2009 à 14:43:25
Bon, si y en a que ca interesse aussi la gestion des authorized_keys, en fait y a deja un type natif ssh_authorized_key :
http://reductivelabs.com/trac/pupp [...] orized-key
Et on ne rigole pas là-bas au fond !
Marsh Posté le 16-01-2009 à 00:50:45
e_esprit a écrit : Bon, si y en a que ca interesse aussi la gestion des authorized_keys, en fait y a deja un type natif ssh_authorized_key : |
personnellement il ne me satisfait pas
Marsh Posté le 16-01-2009 à 09:46:26
Moi si, pile-poil ce que je veux en faire
Marsh Posté le 16-01-2009 à 09:54:03
Rha, le puppetrun de debian testing est moisi
Marsh Posté le 17-01-2009 à 11:49:41
b_l => http://linuxfr.org/2009/01/14/24881.html (premier commentaire)
Allez, au boulot
Marsh Posté le 17-01-2009 à 12:19:03
e_esprit a écrit : b_l => http://linuxfr.org/2009/01/14/24881.html (premier commentaire) |
Marsh Posté le 17-01-2009 à 16:49:57
e_esprit a écrit : b_l => http://linuxfr.org/2009/01/14/24881.html (premier commentaire) |
Marsh Posté le 18-01-2009 à 11:55:00
http://reductivelabs.com/trac/pupp [...] neVsPuppet
Marsh Posté le 06-02-2009 à 11:00:47
e_esprit a écrit :
|
Petit tips qui permet de faire de la selection de fichier selon l'hote. Si à la base on a comme source un fichier "commun" (genre le authorized_keys d'un user) mais que sur un hote particulier on veut un fichier différent alors on peut utiliser le truc suivant :
|
du coup dans files/users/<monuser>/ il y a un authorized_keys déployé "partout" sauf si il existe files/users/<monuser>/authorized_keys.<lefqdndelamachine> qui sera alors utilisé "prioritairement".
my 2c
Marsh Posté le 06-02-2009 à 13:48:59
ouais, mais comme j'ai pas envie de gérer un fichier par serveur, et que j'ai pas une config générique pour la plupart des machines, j'utilise le type de base ssh_auhtorized_key qui marche très bien
Sinon les templates c'est bieng
Marsh Posté le 06-02-2009 à 13:57:57
e_esprit a écrit : ouais, mais comme j'ai pas envie de gérer un fichier par serveur, et que j'ai pas une config générique pour la plupart des machines, j'utilise le type de base ssh_auhtorized_key qui marche très bien Sinon les templates c'est bieng |
oui, mais là c'est pas adapté
le post avait plus vocation à être générique, tu peux aussi faire ça pour un resolv.conf ou autre
Marsh Posté le 06-02-2009 à 14:00:13
Oui, oui j'avais compris que c'etait générique, merci
Marsh Posté le 02-03-2009 à 10:26:17
ce qui serait bien en fait c'est de pouvoir concaténer un fichier générique avec un spécifique
Sinon saloperie de proxy novell, pour accéder aux dépôts GIT c'est la mort !
Marsh Posté le 02-03-2009 à 11:24:54
Hrolf a écrit : ce qui serait bien en fait c'est de pouvoir concaténer un fichier générique avec un spécifique |
du genre ? parce qu'il y a les templates qui font des trucs sympas
Marsh Posté le 02-03-2009 à 12:00:08
Du genre j'en suis encore à l'install donc je te dirais quand j'en serais là
Marsh Posté le 06-03-2009 à 14:21:52
Tain je lutte pour définir une bete fonction avec paramètres qui va générer une conf à partir d'un template...
Si quelqu'un a une idée :
Code :
|
Code :
|
Et le template ressemble à :
Code :
|
Et coté client puppet :
puppetd[31291]: Could not retrieve catalog: Failed to parse template xen-hypervisor/network-multi-vlan.tpl: undefined method `each' for nil:NilClass at /etc/puppet/modules/xen-hypervisor/manifests/init.pp:28 on node tratralala.pouet.pouet |
Je lutte pour passer les paramètres, vous avez pas une bonne doc _claire_ sur les fonctions ?
Marsh Posté le 06-03-2009 à 14:42:52
la doc sur ERB : http://www.ruby-doc.org/stdlib/libdoc/erb/rdoc/ qui est le langage utilisé dans les templates
|
pour mon template avec les variables domainname & ns (qui est un array) définies plus tôt dans un manifest
EDIT : "erb -x -T '-' network-multi-vlan.tpl | ruby -c" donne quoi ?
Marsh Posté le 06-03-2009 à 14:50:57
C'est mes @ dans le template qui foutaient le boxon, je viens de trouver
Marsh Posté le 06-03-2009 à 14:52:14
Bon c'est cool, maintenant mes hyperviseurs xen vont se configuré quasiment tout seul
Marsh Posté le 06-03-2009 à 14:53:06
puppet ça déboite
Marsh Posté le 06-03-2009 à 14:57:09
Clair, c'est un peu chiant à prendre en main au début, mais au final le temps gagné au déploiement c'est : \o/
Faut que je gère la liste des VM à mettre en auto maintenant
Marsh Posté le 06-03-2009 à 15:00:53
ça c'est facile
Marsh Posté le 06-03-2009 à 15:01:43
e_esprit a écrit : Clair, c'est un peu chiant à prendre en main au début, mais au final le temps gagné au déploiement c'est : \o/ |
tu m'étonnes, avec en plus un petit hook puppet ajouté dans mes xen-tools, le xen-create-image fait tout d'un seul coup
bref
Marsh Posté le 06-03-2009 à 15:02:34
Bah on est Vendredi, je vais pas me lancer dans le gros oeuvre
Marsh Posté le 06-03-2009 à 15:30:47
Bon ben voila, plus qu'à mouler maintenant
Marsh Posté le 21-04-2010 à 11:53:40
Up d'outre-tombe
Y a un moyen avec le type file de faire une concaténation de plusieurs fichiers sources ?
On peut spécifier une liste de fichiers sources, mais dans ce cas là, il prend le premier qui existe comme source
Marsh Posté le 21-04-2010 à 12:00:08
Tu peux utiliser des templates (qui s'aggrègent quand on leur passe un array), un define (cf en dessous) ou une fonction personnalisée (assez simple à écrire je pense, j'en ai retouché une pour avoir un comportement similaire à "source" en utilisant des templates
le define : http://git.black.co.at/?p=module-c [...] evelopment
Marsh Posté le 21-04-2010 à 12:16:37
Mais je suis pas sûr de bien comprendre cette partie :
Code :
|
Marsh Posté le 21-04-2010 à 12:29:19
e_esprit a écrit :
|
C'est cette partie :
|
par contre j'ai un doute sur l'utilisation je demanderai à l'auteur
Marsh Posté le 14-01-2009 à 18:03:53
A la demande unanime de moi-même, et suite au refus par monsieur Black_Lord de le faire, je crée ce topic qui servira à poser vos questions sur Puppet (à Black_Lord ), mais aussi vos éventuels recettes, idées...
MAJ 29/10/2014 : Ouverture du topic aux autres solutions d'automatisation / gestion de configuration : Salt, Chef, etc.
Ce que permet donc Puppet :
- Puppet permet donc de définir les configuration des logiciels utilisés pour tout un ensemble de machines, et permet donc **d’imposer les bonnes pratiques** (en terme de configuration et d’état des services) dans toute l’entreprise.
- Puppetd vérifie périodiquement (par défaut toutes les demi-heures) que la configuration du serveur correspond bien à ce que le puppetmaster attend. Plus besoin donc de procédure de contrôles réguliers.
J'essaierai de maintenir un premier post clean avec :
Quelques liens :
Message édité par e_esprit le 30-10-2014 à 10:56:40
---------------
Ce n'est point ma façon de penser qui a fait mon malheur, c'est celle des autres.