Skip site navigation (1)Skip section navigation (2)
Date:      Thu, 05 Feb 2015 13:15:58 -0600
From:      Matthew Grooms <mgrooms@shrew.net>
To:        freebsd-stable@freebsd.org
Subject:   Re: push a few config files to dozen or so servers
Message-ID:  <54D3C16E.2060408@shrew.net>
In-Reply-To: <A96E81C0-33DF-4142-8A3F-9C2260BB8900@gromit.dlib.vt.edu>
References:  <20150205130234.3fcbabfb@efreet.mimar.rs> <op.xtk288tykndu52@ronaldradial.radialsg.local> <54D37932.7010808@madpilot.net> <20150205154743.GO88387@mail0.byshenk.net> <3552828A-536D-41AB-B56D-F47AA4164A79@gromit.dlib.vt.edu> <54D3AE68.6040003@shrew.net> <A96E81C0-33DF-4142-8A3F-9C2260BB8900@gromit.dlib.vt.edu>

next in thread | previous in thread | raw e-mail | index | archive | help
On 2/5/2015 1:05 PM, Paul Mather wrote:
> On Feb 5, 2015, at 12:54 PM, Matthew Grooms <mgrooms@shrew.net> wrote:
>
>> On 2/5/2015 11:27 AM, Paul Mather wrote:
>>> On Feb 5, 2015, at 10:47 AM, Greg Byshenk <freebsd@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@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.
>> Have a look at saltstack. It's easier to setup/deploy, does centralized config management & orchestration in one tool ( like puppet + mcollective ), scales ridiculously well and is more platform agnostic ...
>>
>> http://saltstack.com/community/
>> http://www.freshports.org/sysutils/py-salt/
>
> I've been looking at Salt (or saltstack, whatever it's called) for the
> very reasons you mention above.  I recently tested it out with
> FreeBSD/arm Raspberry Pi and Beaglebone Black minions reporting to a
> FreeBSD/amd64 master.  I like what I see so far, and, from my reading,
> the design seems nice and clean---or at least cleaner compared to
> Puppet.
>
> Still, it's the community that makes or breaks these things, and so
> it's the one that has the best/most active FreeBSD community that I'm
> eager to know about.
>
> Cheers,
>
> Paul.

Paul,

My apologies. I was skimming and I missed your last two sentences 
regarding salt. Sorry for the repetition. I agree that it seems to have 
a cleaner design than puppet, especially if you need the orchestration 
piece. The mcollective bolt-on appears to have been a distant 
afterthought for puppet. I only use salt for managing FreeBSD amd64 VMs. 
Nothing as exotic as Beaglebone Blacks, but it has been working well and 
I haven't run across anything that has scared me off yet. Just seems to 
work as advertised.

-Matthew



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?54D3C16E.2060408>