J'ai beaucoup utilisé Ansible à $job-1, je fais du puppet maintenant. J'ai l'impression d'être passé de la peste au choléra.
Ansible a des concepts horribles :
- sa syntaxe (coder en yaml... faut être maso),
- l'idée qu'on lance les playbooks localement, sans pouvoir facilement suivre qui a exécuté quoi, avec quels diffs locaux...
Et on était contraints de compléter ansible par des scripts qui remplissaient de l'inventaire automatiquement : sans ça, impossible de représenter proprement une ressource de plus haut niveau (les clusters PostgreSQL dans mon cas)
Puppet... j'apprends à le haïr à sa façon :
- quel est l'analphabète comme ses pieds qui se dit qu'une ressource ne peut être présente qu'une seule fois, y compris les demandes d'installation de paquets ?! Du coup, adieu les modules vraiment réutilisables, si y'a une dépendance commune ça va planter, et bonjour la complexité même au sein d'un module si il itère sur plusieurs ressources et choisit selon d'installer des paquets.
- les modules en général sont des putain de chats. Par exemple le module lvm exigera qu'on lui décrive tout pour qu'il accepte de créer un LV, dans un VG qu'il veut créer avec des PVs qu'il veut connaître... mais je veux pas lui dire ça, l'OS est dans un VG, je veux pas qu'il y touche, je veux juste qu'il accepte de créer un LV...
[^] # Re: il faudrait le réécrire <s>en Rust</s> !
Posté par Pinaraf . En réponse au journal Test de vie et Ansible : un exemple de réalisation pour mieux comprendre l'outil. Évalué à 7.
J'ai beaucoup utilisé Ansible à $job-1, je fais du puppet maintenant. J'ai l'impression d'être passé de la peste au choléra.
Ansible a des concepts horribles :
- sa syntaxe (coder en yaml... faut être maso),
- l'idée qu'on lance les playbooks localement, sans pouvoir facilement suivre qui a exécuté quoi, avec quels diffs locaux...
Et on était contraints de compléter ansible par des scripts qui remplissaient de l'inventaire automatiquement : sans ça, impossible de représenter proprement une ressource de plus haut niveau (les clusters PostgreSQL dans mon cas)
Puppet... j'apprends à le haïr à sa façon :
- quel est l'analphabète comme ses pieds qui se dit qu'une ressource ne peut être présente qu'une seule fois, y compris les demandes d'installation de paquets ?! Du coup, adieu les modules vraiment réutilisables, si y'a une dépendance commune ça va planter, et bonjour la complexité même au sein d'un module si il itère sur plusieurs ressources et choisit selon d'installer des paquets.
- les modules en général sont des putain de chats. Par exemple le module lvm exigera qu'on lui décrive tout pour qu'il accepte de créer un LV, dans un VG qu'il veut créer avec des PVs qu'il veut connaître... mais je veux pas lui dire ça, l'OS est dans un VG, je veux pas qu'il y touche, je veux juste qu'il accepte de créer un LV...
Je préfère encore écrire des scripts shell...