On Feb 5, 2015, at 10:47 AM, Greg Byshenk <freebsd at byshenk.net> wrote:
> On Thu, Feb 05, 2015 at 03:07:46PM +0100, Guido Falsi wrote:
>> On 02/05/15 13:20, Ronald Klop wrote:
>>> On Thu, 05 Feb 2015 13:02:34 +0100, Marko Cupa?? <marko.cupac at
mimar.rs>
>
>>>> thanks to virtualization, my fleet of FreeBSD hosts have grown
to more
>>>> than dozen, and it still grows. There are some files that need
to be
>>>> identical on all of them (aliases, sudoers, root crontab, pkg
repo
>>>> files etc.).
>>>>
>>>> I was looking at puppet and cfengine but learning and
implementing those
>>>> seem like an overkill for my purpose.
>>>>
>>>> Are there any other elegant solutions which can help me achieve
my goal?
>>>
>>> Cron and rsync.
>>> Or create a pkg which you install on all servers.
>>
>> He could also use an VCS system (subversion, git, fossil, whatever) and
>> some scripts.
>>
>> This adds the advantage of having history.
>
> If it's really limited, you should be able to wrap svn/git
> and scp/rsync in python/bash/<tool of your choice> and have
> something that works.
>
>
>>> Just some quick ideas. In the end you just want to use something
like
>>> puppet. :-)
>>
>> I Agree, in the end that kind of solution is definitely more robust.
>
> But, agreeing here, as well, there are some real advantages
> in ensuring consistency, etc. with something like puppet.
>
> And a basic, minimalist puppet is pretty basic and minimal.
> Puppet can get very complex, but that comes from managing
> complex environments.
I'm familiar with Puppet and agree with your observations above. One
thing that concerns me with Puppet, though, is that Puppet is not
considered as a Tier 1 platform by Puppet Labs and so FreeBSD support
is inconsistent. With the current emphasis on modules and the Puppet
Forge, the focus on the RedHat and Debian OS families in many modules
makes it harder for FreeBSD users to use Puppet without reinventing the
wheel. Unfortunately, with Puppet, a lot of the "magic" happens under
the covers in these modules, via Types and Providers, and if they don't
support FreeBSD then they're not much use. (This is another way of
saying, "Puppet works great when it works.":) I know this is a
manifestation of the general "Linuxism" of *nix, so I know I'm
swimming
against the tide in a sense in hoping for better support. :-)
However, I don't get a sense of the vibrancy of the community around
FreeBSD and Puppet. Is it thriving? (Because Puppet abstracts away
the OS from a sysadmin point of view, people might argue, "why run
FreeBSD if you're using Puppet?") Also, Puppet seems to have evolved
rather than being the product of a clean, simple design. (Maybe this
is endemic to any Ruby-based project.:) The orchestration (e.g.,
Marionette Collective) seems a bit bolted-on to me.
Despite all that, there is still lots and lots to recommend Puppet.
However, if there's another configuration management framework that is
more "FreeBSD-friendly," then it would be good to know of that. With
large-scale system installations becoming more and more prevalent, so
too does the importance of configuration management and orchestration
systems. I've been looking at Salt recently, which I've heard is
supposed to be quite "FreeBSD-friendly." Does anyone know of any
others that have a great FreeBSD community and support behind them?
Cheers,
Paul.