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.
On 2/5/2015 11:27 AM, Paul Mather wrote:> 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.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/ -Matthew
> > 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?There?s also chef, which has as little (or even less) support for FreeBSD. But I believe it?s the most powerful of the ones available. I?ve always wanted to try ansible, which looks like it has decent support for FreeBSD. Anybody got experience with that?