Ansible est un moteur d'execution de modules via ssh. Tu décrit un tache ( 'installer un paquet via yum' ), et tu lances la tache sur X machines décrit dans un fichier d'inventaire. C'est le mode le plus simple.
Ensuite, tu as "décrire plusieurs taches, et les lancer sur une ou plusieurs machines", ce qui est un playbook. La, tu peut soit faire de la convergence de configuration ( ie, relancer le playbook qui indique comment ton serveur doit être installé, et miser sur le fait que les taches soient idempotentes pour que ça marche ), soit faire de l'orchestration ( genre je prends 3 serveurs, je les retire de nagios et du load balancer, j'upgrade, je reboote, je remets dans nagios, le load balancer, et je passe aux 3 suivants ).
Et comme ansible est flexible, tu peux faire plus que du ssh. Par exemple, considerer que "chroot /foo" est une connexion à un os différent. Ou dans le cas de l'article, que lxc ou docker le soit. Et donc, tu peut preparer une arborescence pour usage futur. Genre pour usage dans une image docker. Ou comme j'ai tenté de le faire, pour une image ostree.
[^] # Re: Oubli...
Posté par Misc (site web personnel) . En réponse au journal Ansible ton conteneur !. Évalué à 6.
Ça depend ou tu situes ton spectre.
Ansible est un moteur d'execution de modules via ssh. Tu décrit un tache ( 'installer un paquet via yum' ), et tu lances la tache sur X machines décrit dans un fichier d'inventaire. C'est le mode le plus simple.
Ensuite, tu as "décrire plusieurs taches, et les lancer sur une ou plusieurs machines", ce qui est un playbook. La, tu peut soit faire de la convergence de configuration ( ie, relancer le playbook qui indique comment ton serveur doit être installé, et miser sur le fait que les taches soient idempotentes pour que ça marche ), soit faire de l'orchestration ( genre je prends 3 serveurs, je les retire de nagios et du load balancer, j'upgrade, je reboote, je remets dans nagios, le load balancer, et je passe aux 3 suivants ).
Et comme ansible est flexible, tu peux faire plus que du ssh. Par exemple, considerer que "chroot /foo" est une connexion à un os différent. Ou dans le cas de l'article, que lxc ou docker le soit. Et donc, tu peut preparer une arborescence pour usage futur. Genre pour usage dans une image docker. Ou comme j'ai tenté de le faire, pour une image ostree.