ANNOUNCE: 0.25.0beta1 release!

18 views
Skip to first unread message

James Turnbull

unread,
May 3, 2009, 9:27:48 PM5/3/09
to puppet-...@googlegroups.com, puppet...@googlegroups.com, puppe...@googlegroups.com

This is the beta1 release of Puppet 0.25.0.

It is available at:

http://reductivelabs.com/downloads/puppet/puppet-0.25.0beta1.tar.gz

This is not production ready code - it is a beta release for testing. The
beta is largely feature complete and the extent of testing and issues will
determine how soon we move to a release candidate. So we would ask
everyone to test and report issues with the beta.

Please log any issues found during testing at:

http://projects.reductivelabs.com/projects/puppet/issues/new

Please select the Affected Version as 0.25.0.

Please email any other specific questions, comments or feedback to the
puppet-user list.

What's Changed?
---------------

There are substantial changes in Puppet 0.25.0 and more changes to come in
the future. Most of the changes in 0.25.0 are internal refactoring rather
than behavioural. The 0.25.0 release should be fully backwards compatible
behaviourally with the 0.24.x branch. This means a 0.25.0 master will be
able to manage 0.24.x clients. You will need, however, to upgrade both
your master and your clients to take advantage of all the new features and
the substantial gains in performance offered by 0.25.0.

The principal change is the introduction of Indirected REST to replace
XML-RPC as the underlying Puppet communications mechanism. This is a
staged change with some functions migrated in this release and some in the
next release. In the first stage of the Indirected REST implementation the
following functions have been migrated:

- Certificates
- Catalogue
- Reports
- Files

In 0.26.0 (the next release) the following remaining functions will be
migrated:

- Filebucket
- Resource handler
- Runner handler
- Status handler

The new REST implementation also comes with authorisation configuration in
a similar style to the namespaceauth used for XML-RPC. This new
authorisation is managed through the auth.conf file (there is an example
file in the conf directory of the tarball). This does not yet fully replace
the namespaceauth.conf file but will when the remaining handlers are
migrated to REST. It works in a similar way to the namespaceauth.conf file
and the example file contains additional documentation.

As a result of the introduction of REST and other changes you should see
substantial performance improvements in this release. These particularly
include improvements in:

- File serving
- The performance of large graphs with lots of edges
- Stored configuration (see also Puppet Queuing below)

Other new features include (this is not a complete list - please see the
Roadmap for all tickets closed in this release):

Puppet Queuing
---------------

There is a new binary called puppetqd that supports queuing for stored
configurations. You can read about how it works and how to implement it
at:

http://reductivelabs.com/trac/puppet/wiki/UsingStoredConfiguration

Further documentation is in the README.queuing file in the tarball.

Application Controller
----------------------
All the logic has been moved out of the binary commands and added to an
Application Controller. You can see the controller code at
lib/puppet/application.rb and the logic for each application at
lib/puppet/application/binaryname.rb.

Binary Location Move
--------------------
To bring Puppet more in line with general packaging standards the
puppetd, puppetca, puppetrun, puppetmasterd, and puppetqd binaries now
reside in the sbin directory rather than the bin directory when
installed from the source package.

Version Compare function
------------------------

There is a new function called versioncmp

Other features
--------------

You can find a full list of the tickets closed thus far for version
0.25.0 is at:

http://projects.reductivelabs.com/versions/show/3

Regards

James Turnbull

--
Author of:
* Pulling Strings with Puppet
(http://www.amazon.com/gp/product/1590599780/)
* Pro Nagios 2.0
(http://www.amazon.com/gp/product/1590596099/)
* Hardening Linux
(http://www.amazon.com/gp/product/1590594444/)

Paul Nasrat

unread,
May 4, 2009, 11:07:50 AM5/4/09
to puppe...@googlegroups.com, puppet...@googlegroups.com
2009/5/4 James Turnbull <ja...@lovedthanlost.net>:

>
>
> This is the beta1 release of Puppet 0.25.0.
>
> It is available at:
>
> http://reductivelabs.com/downloads/puppet/puppet-0.25.0beta1.tar.gz

Note this naming means that we need gem >= 1.3.2 due to version string
for running top level rakefile else you get Malformed version number
string error:

* Gem::Version now understands prerelease versions using letters.

paul-nasrats-macbook:puppet pnasrat$ rake --trace
(in /Users/pnasrat/Development/puppet)
rake aborted!
Malformed version number string 0.25.0beta1
/Library/Ruby/Site/1.8/rubygems/version.rb:53:in `initialize'
/Library/Ruby/Site/1.8/rubygems/version.rb:44:in `new'
/Library/Ruby/Site/1.8/rubygems/version.rb:44:in `create'
/Library/Ruby/Site/1.8/rubygems/specification.rb:1130:in `version='
/Users/pnasrat/Development/puppet/tasks/rake/reductive.rb:495:in `mkgemtask'
/Library/Ruby/Site/1.8/rubygems/specification.rb:443:in `initialize'
/Users/pnasrat/Development/puppet/tasks/rake/reductive.rb:490:in `new'
/Users/pnasrat/Development/puppet/tasks/rake/reductive.rb:490:in `mkgemtask'
/Users/pnasrat/Development/puppet/Rakefile:44

James Turnbull

unread,
May 4, 2009, 5:57:08 PM5/4/09
to puppet...@googlegroups.com, puppe...@googlegroups.com
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

Paul Nasrat wrote:
> 2009/5/4 James Turnbull <ja...@lovedthanlost.net>:
>>
>> This is the beta1 release of Puppet 0.25.0.
>>
>> It is available at:
>>
>> http://reductivelabs.com/downloads/puppet/puppet-0.25.0beta1.tar.gz
>
> Note this naming means that we need gem >= 1.3.2 due to version string
> for running top level rakefile else you get Malformed version number
> string error:
>
> * Gem::Version now understands prerelease versions using letters.

Yeah I know - we did a tarball for this reason.

I/Luke are going to hack some bits out of the Rakefile to fix this
sometime soon. It needs a few other things too - pull out the EPM stuff
for example.

If you do want gems you can upgrade gems, patch Gem::Version to fix
(which is what I did *sigh*), or you can also manually update the
version in puppet.rb too.

Regards

James Turnbull

- --
Author of:
* Pro Linux Systems Administration
(http://www.amazon.com/gp/product/1430219122/)

-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.7 (Darwin)
Comment: Using GnuPG with Mozilla - http://enigmail.mozdev.org

iD8DBQFJ/2S09hTGvAxC30ARAqNPAJ9Ek/1l1OZHDxNTNqRiU0Hrow1lDACgnlza
YH9jSYiweIQOc5SmeL/bFr8=
=z0t5
-----END PGP SIGNATURE-----

Todd Zullinger

unread,
May 4, 2009, 10:02:34 PM5/4/09
to puppe...@googlegroups.com, puppet...@googlegroups.com
James Turnbull wrote:
> This is the beta1 release of Puppet 0.25.0.
>
> It is available at:
>
> http://reductivelabs.com/downloads/puppet/puppet-0.25.0beta1.tar.gz
>
> This is not production ready code - it is a beta release for
> testing. The beta is largely feature complete and the extent of
> testing and issues will determine how soon we move to a release
> candidate. So we would ask everyone to test and report issues with
> the beta.

FWIW, Fedora and EPEL packages are available for testing at:

http://tmz.fedorapeople.org/repo/puppet/

(For those that dislike the augeus and selinux dependencies, you can
now rebuild using --without augeas and/or --without selinux to avoid
them.)

--
Todd OpenPGP -> KeyID: 0xBEAF0CE3 | URL: www.pobox.com/~tmz/pgp
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
Disobedience: The silver lining to the cloud of servitude.
-- Ambrose Bierce

Mark Plaksin

unread,
May 20, 2009, 8:23:19 PM5/20/09
to puppet...@googlegroups.com, puppe...@googlegroups.com
James Turnbull <ja...@lovedthanlost.net> writes:

> This is the beta1 release of Puppet 0.25.0.
>
> It is available at:
>
> http://reductivelabs.com/downloads/puppet/puppet-0.25.0beta1.tar.gz
>
> This is not production ready code - it is a beta release for testing. The
> beta is largely feature complete and the extent of testing and issues will
> determine how soon we move to a release candidate. So we would ask
> everyone to test and report issues with the beta.

We've been running beta1 on our master (but not on any clients) for 1.5
days and it's working pretty well. We have noticed two big things:

1) There was an initial storeconfigs storm that hammered our
puppetmaster and MySQL server (one and the same) fairly hard. Our MySQL
stats make it look like most of the activity was DELETEs; Sam's guess is
that a bunch of deduplication went on. The storm lasted about an hour.
After that the load returned to normal.

During the storm lots of messages like this were logged:
puppetmasterd err puppetmasterd[25492]: Cached facts for host.example.com failed: could not obtain a database connection within 5 seconds. The max pool size is currently 5; consider increasing it.

Google says this is a message from Rails but we couldn't figure out
where to change it for puppetmasters.

2) Our compile times are about 1/3 lower than they were with 0.24.8.

Reply all
Reply to author
Forward
0 new messages