>>> This is exactly the use-case ansible was designed for: declarative,
>>> idempotent, predictable management of a fleet of machines that may or
>>> may not be around when you feel like updating something (so it catches
>>> up later), and needs only sshd and python to do it's magic :-)
>>
>> ansible does sound pretty cool.  I'll check it out if I outgrow my
>> script but as long as I can keep using Dell XPS 13 laptops I don't
>> think it will have any trouble scaling.
>
>
> Allow me a few moments to convince you more :-)
>
> Maybe you don't need it right this minute, but your current method will
> become less and less workable with time, and when you feel that maybe
> you ought to do it differently, you might remember this conversation.
>
> ansible works like you do - ssh's into a host, and does what needs
> doing. It figures out what to do the same way you do, by having a clear
> picture of what should be and making the host that way. It's very much
> like a proxy for you.
>
> The difference comes in when you observe that with ansible you don't
> have to deal with the details of HOW to do something (the shipped
> modules already deal with all of that), you only concern yourself with
> WHAT you want to accomplish.
>
> If you only use ansible to basically run ssh in a for loop, then it's a
> waste of the setup effort. But let's say Dell retire or change those
> XPS13s dramatically. 4 of yours wear out, and you buy 8 Precisions.
> Bugger, they have different hardware and the chipset running the SSDs
> has a different drive. The GPU, the wifi NIC, these things all drift
> with time. Then you figure you want 2 management Precisions, plus
> your's, the wife's and the workshop manager's laptops need extra stuff;
> and the plebs can stay the same on the XPS.
>
> And your script gets out of hand real quick (we've all been there). How
> do you detect that some is a Precision and do appropriate actions in a
> nasty script? It's not easy.
> Ansible does all that for you upfront out the box. It always knows what
> it's working on (thanks to a module called setup) and catering for
> inevitable differences is trivial to handle. With none of the downsides
> to copying entire tree structures around (like copying way too many
> files you didn't intend to. Like /var/run...)


It truly sounds great but the devil is in the details in my particular
environment.  If I feel like I'm outgrowing my script (and maybe even
if I don't) I'll dig into ansible.  How big of a duty is the
implementation?

Thanks,
Grant

Reply via email to