Puppet,是基于Ruby的一个工具,您可以集中管理每一个重要方面,您的系统使用的是跨平台的规范语言,管理所有的单独的元素通常聚集在不同的文件,如用户, CRON作业,和主机一起显然离散元素,如包装,服务和文件。
Puppet的简单陈述规范语言的能力提供了强大的classing制定了主机之间的相似之处,同时使他们能够提供尽可能具体的必要的,它依赖的先决条件和对象之间的关系清楚和明确。
2012-09-29发布了最新产品系列3.0.0,经过8个RC版。上个版本是2012-08-21的2.7.19 .其他产品线还是2012-07-10的2.6.17
下载:http://downloads.puppetlabs.com/puppet/puppet-3.0.0.tar.gz
完全改进请见 http://projects.puppetlabs.com/projects/puppet/wiki/Release_Notes#3.0.0
Overview
Puppet 3.0, code name Telly, is the first major release to Puppet since June 2011. With the help of our amazing community contributors, we have built a release that we feel merits a “dot-oh,” and we think you’ll agree. As you know, Puppet supports numerous configurations and operating systems. Because of that, we need smart folks like you to validate that it’s working in your environment.
Here’s how you can help:
- Download Puppet 3.0.0
- Read this changelog to identify any config changes you’ll need to make
- File bugs in the Puppet Redmine issue tracker
- Let us know when you’re headed to production
Summary of Changes
This is not an exhaustive summary, but rather an editorialized list of the biggest changes. See the Git changelog for the full monty.
Numbers in parentheses like (#7788)
indicate a Redmine ticket at
http://projects.puppetlabs.com/issues/7788
Notation like (puppet/pull/998)
indicate a github pull request at
https://github.com/puppetlabs/puppet/pull/998
Cool New Stuff
- Performance Improvements – substantial improvements to performance, particularly around catalog compilation. Agent now uses JSON for catalog cache, which can be dramatically faster for large catalogs (#16058, #2892)
- Data Bindings – hiera will be automatically consulted for values of parameterized classes so you don’t need the parser functions. (#11608)
- Improved OS/Platform Support – Full Ruby 1.9 support; vastly improved Windows package support; yumrepo now supports ssl options (#3324); better upstart support; better Solaris zone, package and service support;
- Loading Plugins from Rubygems – you can now install and use puppet extension code (faces, types, providers) via rubygems. (#7788)
- Server Auto-Discovery – Puppet agents can use SRV records in DNS to find CA, master, report, and file servers (#3669)
- Semantic Versioning – With 3.0.0, Puppet Labs makes a commitment to follow the Semantic Versioning guidelines outlined on semver.org. Public, documented APIs won’t break until 4.0; minor-version 3.x releases will add new features while retaining compatibility, and tiny-version 3.0.x releases will be bugfix-only.
DSL/Config Changes
- Variable Scoping – Dynamic scoping has been removed. http://docs.puppetlabs.com/guides/scope_and_puppet.html
- Auth.conf differentiates between names and IPs – There’s a new
allow_ip
keyword in auth.conf if you want to permit IP addresses. (PR991) unless
is available as a synonym forif !
(#7762)- Pluginsync now defaults to true – Yep, it’s true. (#5521)
- Updated
config.ru
syntax — When running the master under Rack, make sure you update your config.ru to follow the example from ext/rack/files/config.ru in the source distribution. (#15337)
Changed Code Behavior
- External Node Classifier and Environments – If there’s a conflict between the environment requested by a client and what’s set in the external node classifier, the ENC wins. (#3910)
- When running puppet as root, the system-wide
confdir
andvardir
settings will be used. When running as a non-root user,confdir
will be~/.puppet/
andvardir
will be~/.puppet/var
, which now relies on $HOME being set in your environment. (#16137, /puppet/pull/1080)
Important Deprecations
- Puppet 3.0 does not support running under Ruby 1.8.5. The main OS platform which still ships with 1.8.5 is RHEL5 and while we love RHEL and its derivatives (CentOS, Oracle Enterprise Linux, Scientific, etc), we can’t maintain backwards compatiblity to 1.8.5. So we’ve backported the RHEL6 packages to provide drop-in replacements for the system Ruby packages (1.8.7-p370) — these are available at http://yum.puppetlabs.com/el/5/devel/ and will move to the el/5//dependencies/ repo upon 3.0’s actual release. (#15734)
- As part of a Google Summer of Code project, we have a completely rewritten Ruby DSL. Some of it is backwards-compatible, but other things have changed pretty dramatically; we think it’ll be a great improvement for those who want to write Puppet code directly in Ruby. Check out this blog post for details of the changes: http://puppetlabs.com/blog/gsoc-project-ruby-dsl-for-puppet/ The new DSL is not in this release but it’s coming soon; we mention it so that users who are using the 2.7 Ruby DSL can follow the replacement’s progress and try it out before it’s merged.
暂无更多评论