puppet-agent package on FreeBSD

287 views
Skip to first unread message

Dan Mahoney

unread,
Jun 17, 2016, 6:42:35 PM6/17/16
to puppet...@googlegroups.com
All,

I keep seeing updates about a new release of a standalone puppet agent.

Other than small file size and a possible reduced dependency set, is there
any useful point in porting it to FreeBSD?

Right now, on FreeBSD, pkg shows the following subset of things for a "pkg
search puppet" (there are other things that aren't relevant, like a Nagios
plugin and the like):

puppet37-3.7.5_1 Configuration management framework written
in Ruby
puppet38-3.8.4_1 Configuration management framework written
in Ruby
puppet4-4.4.1 Configuration management framework written
in Ruby
puppetdb-2.3.8_1 PuppetDB storeconfigs backend
puppetdb-terminus-2.3.4_1 PuppetDB storeconfigs backend terminus
module
puppetdb-terminus4-4.0.0 PuppetDB storeconfigs backend terminus
module
puppetdb4-4.0.0 PuppetDB storeconfigs backend
puppetserver-2.2.1 Puppet Server running in the JVM

None of these version numbers seem to align with the things I see being
announced here -- do the packages being built here basically include the
agent?

We have lots of nodes where we don't need a full puppet server, but I
don't know how much code that would actually save. (Disk is cheap)

-Dan

--


--------Dan Mahoney--------
Techie, Sysadmin, WebGeek
Gushi on efnet/undernet IRC
ICQ: 13735144 AIM: LarpGM
Site: http://www.gushi.org
---------------------------

Gareth Rushgrove

unread,
Jun 18, 2016, 10:04:19 AM6/18/16
to puppet...@googlegroups.com
On 17 June 2016 at 23:42, Dan Mahoney <goo...@gushi.org> wrote:
> All,
>
> I keep seeing updates about a new release of a standalone puppet agent.
>
> Other than small file size and a possible reduced dependency set, is there
> any useful point in porting it to FreeBSD?
>
> Right now, on FreeBSD, pkg shows the following subset of things for a "pkg
> search puppet" (there are other things that aren't relevant, like a Nagios
> plugin and the like):
>
> puppet37-3.7.5_1 Configuration management framework written in
> Ruby
> puppet38-3.8.4_1 Configuration management framework written in
> Ruby
> puppet4-4.4.1 Configuration management framework written in
> Ruby
> puppetdb-2.3.8_1 PuppetDB storeconfigs backend
> puppetdb-terminus-2.3.4_1 PuppetDB storeconfigs backend terminus module
> puppetdb-terminus4-4.0.0 PuppetDB storeconfigs backend terminus module
> puppetdb4-4.0.0 PuppetDB storeconfigs backend
> puppetserver-2.2.1 Puppet Server running in the JVM
>
> None of these version numbers seem to align with the things I see being
> announced here -- do the packages being built here basically include the
> agent?
>
> We have lots of nodes where we don't need a full puppet server, but I don't
> know how much code that would actually save. (Disk is cheap)
>

This is a good place to start to understand what the puppet-agent package is:

https://docs.puppet.com/puppet/latest/reference/about_agent.html

Specifically it's an all-in-one package which includes Puppet as well
as all it's dependencies (including Ruby, OpenSSL, etc.) and some
additional Puppet-related tools.

I would guess the puppet4-4.4.1 package you mentioned includes Puppet
4.4.1. You can see from the above page that that version of Puppet was
included in the puppet-agent 1.4.1 release. (the latest version is
1.5.2, which includes Puppet 4.5.2)

The advantage of the puppet-agent package in this context is that the
whole thing can be validated as known-good. So you're not left
managing a separate version of Ruby and the other Ruby dependencies.
Some prefer managing everything themselves, so whether a puppet-agent
package for FreeBSD meets your needs is a bigger question. But it
would have the the 4.5.x series of Puppet rather than the older 4.4.1
version.

Gareth

> -Dan
>
> --
>
>
> --------Dan Mahoney--------
> Techie, Sysadmin, WebGeek
> Gushi on efnet/undernet IRC
> ICQ: 13735144 AIM: LarpGM
> Site: http://www.gushi.org
> ---------------------------
>



--
Gareth Rushgrove
@garethr

devopsweekly.com
morethanseven.net
garethrushgrove.com

Dan

unread,
Jun 18, 2016, 8:58:59 PM6/18/16
to puppet...@googlegroups.com
On Sat, 18 Jun 2016, Gareth Rushgrove wrote:

> On 17 June 2016 at 23:42, Dan Mahoney <goo...@gushi.org> wrote:
>> All,
>>

> Specifically it's an all-in-one package which includes Puppet as well
> as all it's dependencies (including Ruby, OpenSSL, etc.) and some
> additional Puppet-related tools.

[snip]

> The advantage of the puppet-agent package in this context is that the
> whole thing can be validated as known-good. So you're not left
> managing a separate version of Ruby and the other Ruby dependencies.
> Some prefer managing everything themselves, so whether a puppet-agent
> package for FreeBSD meets your needs is a bigger question. But it
> would have the the 4.5.x series of Puppet rather than the older 4.4.1
> version.

It would mean building and compiling everything separately -- it's not
quite a "meta package", which is just a package that installs several
sub-packages -- it seems to be more that it drops those dependencies into
a private namespace like /usr/local/puppet/bin/ruby or something like
that? So if you have some tool that upgrades openSSL, the puppet version
stays the same?

What I was hoping for -- but I guess it isn't -- is a smaller, faster,
fewer-dependencies tool (think spamc, written in c, versus the full on
perl-based spamassassin). Or perhaps, think busybox versus many of the
standard tools it can replace. I guess it's not that.

Gareth Rushgrove

unread,
Jun 18, 2016, 10:49:50 PM6/18/16
to puppet...@googlegroups.com
On 19 June 2016 at 01:58, Dan <goo...@gushi.org> wrote:
> On Sat, 18 Jun 2016, Gareth Rushgrove wrote:
>
>> On 17 June 2016 at 23:42, Dan Mahoney <goo...@gushi.org> wrote:
>>>
>>> All,
>>>
>
>> Specifically it's an all-in-one package which includes Puppet as well
>> as all it's dependencies (including Ruby, OpenSSL, etc.) and some
>> additional Puppet-related tools.
>
>
> [snip]
>
>> The advantage of the puppet-agent package in this context is that the
>> whole thing can be validated as known-good. So you're not left
>> managing a separate version of Ruby and the other Ruby dependencies.
>> Some prefer managing everything themselves, so whether a puppet-agent
>> package for FreeBSD meets your needs is a bigger question. But it
>> would have the the 4.5.x series of Puppet rather than the older 4.4.1
>> version.
>
>
> It would mean building and compiling everything separately -- it's not quite
> a "meta package", which is just a package that installs several sub-packages
> -- it seems to be more that it drops those dependencies into a private
> namespace like /usr/local/puppet/bin/ruby or something like that? So if you
> have some tool that upgrades openSSL, the puppet version stays the same?
>

Correct. For the most part everything goes into /opt/puppetlabs.

> What I was hoping for -- but I guess it isn't -- is a smaller, faster,
> fewer-dependencies tool (think spamc, written in c, versus the full on
> perl-based spamassassin). Or perhaps, think busybox versus many of the
> standard tools it can replace. I guess it's not that.
>
>

Alas not, but that's the direction things are heading.

For instance take Facter. Facter prior to 2 is implemented in Ruby. It
requires the Ruby runtime and related system dependencies. Facter 3 is
implemented in C++ and compiled down to a native binary. The native
version of Facter is definitely "smaller, faster, fewer dependencies".
It's the Facter shipped as part of the puppet-agent all-in-one package
today.

Gareth

> -Dan
>
> --
> --------Dan Mahoney--------
> Techie, Sysadmin, WebGeek
> Gushi on efnet/undernet IRC
> ICQ: 13735144 AIM: LarpGM
> Site: http://www.gushi.org
> ---------------------------
>



Reply all
Reply to author
Forward
0 new messages