Planet Puppet

Your source of Puppet technical information

Happy Halloween from Puppet Labs! (Plus: We've moved!)

molly, 9 hours, 38 minutes | Source: Puppet Labs

See how Puppet Labs does Halloween, plus a peek at our new office space in Block 300, downtown Portland.

[ Read More ]

Community Metrics: Highlights for Q3

Meg Hartley, 11 hours, 34 minutes | Source: Puppet Labs

We’ve had an exciting fall with PuppetConf and the Contributor Summit in September and Puppet Camp Düsseldorf in October. Now we’re ramping up for #puppethack on December 4th and Contributor Summit EU on February 4th, plus a slew of Puppet Camps all over the world.

[ Read More ]

Top 5 Predictors of IT Performance

molly, 1 day, 11 hours | Source: Puppet Labs

If you've read the 2014 State of DevOps Report, you've seen that high-performing IT departments are more agile and reliable, deploying code 30 times more frequently than their lower-performing peers, with 50 percent fewer failures. (No matter how many times we see those stats, they're quite remarkable every time.)

Organizations with high-performing IT are also twice as likely to exceed their profitability, market share, and productivity goals. Quite simply, high IT performance means better work — and better business.

[ Read More ]

Simple and powerful reusability features every module should have

Anonymous, 3 days, 3 hours | Source: Example 42

The quality of Puppet modules is constantly increasing, for each relevant application there’s a good module to manage it.

They may have different structures, feature sets, OS coverage and naming conventions (:-I) but most of the times the better modules around do their work.

Still, often, also in some of the most popular modules, I desperately miss a few basic features that would allow me to use them without being forced to make a local fork.

Whenever we have to modify a public module to adapt it to our needs, we have a reusability failure IMHO.

The good news ...

[ Read More ]

Featured Community Member: Felix Frank

Meg Hartley, 3 days, 11 hours | Source: Puppet Labs

Felix Frank, one of the top mailing list contributors of all time, is our latest featured community member!

[ Read More ]

Policy based autosigning, a step towards more secure deployments with Puppet

Yanis Guenane, 1 week, 1 day | Source: eNovance Puppet Blog

Puppet is a key component in server deployment and configuration automation. When nodes successfully get provisioned by a Puppet master they retrieve all sorts of data, some which might be both confidentials and criticals. It is then mandatory to ensure that only authorized instances or nodes are allowed to retrieve such data. In today elastic systems and cloud era, it is very important that enrollment and management of servers be both as streamlined and secured as possible, but both of these requirements often conflict, as security is often a blocker to automation. PuppetLabs has been working hard on finding elegant ...

[ Read More ]

Ansible and Salt

Anonymous, 1 week, 5 days | Source: david.log

Motivated by Florian Haas I've looked into Ansible and Salt Stack. After spending most of the day reading the docs, I've achieved a certain grasp of the functionality of both systems. Here's my summary.

Commonalities

Ansible and Salt use some common concepts and share a surprising number of technical details that I've put them up here, to be able to concentrate on the unique features below.

  • Implementation language: implemented in python.
  • Syntax and templating: YAML files and the Jinja templating language are used as basic building blocks for their instructions. The underlying data model is totally ...

[ Read More ]

Turning the Brownfield Green - aka Puppet and "Deploy to Noop"

Nathan Valentine, 2 weeks, 1 day | Source: Differently Ambitious

This is not my beautiful house!

I'm going to tell you a story. You are the protagonist in this story and you are in TechOps or perhaps you are a Developer.

There are things you enjoy about your work: you enjoy learning and mastering new technoloigies, you get satisfaction from knowing that the systems you design are resource efficient and reliable, and lastly you enjoy using your skills to solve problems with your team members and for your employer. Because you enjoy these things you spend lots of time, considerable free time even, keeping up with the state-of-the-art and ...

[ Read More ]

Brief insight on the all new Puppet Server!

Choon Ming Goh, 2 weeks, 4 days | Source: OlinData

It has been a while since the PuppetConf 2014 ended in San Francisco and there are lot of news that came out of it as usual. But, the biggest news is during the keynote that Luke Kanies, CEO of PuppetLabs announced there will be a new Puppet Server. A new Puppet Server? Yup. A Puppet Server and its not the same as our current Puppet Master. Curious on what this means I decided to check out the preview. All my opinions stated below are my own and does not reflect any of OlinData or PuppetLabs.

Language

When Luke announced the ...

[ Read More ]

Example42 goes Org

Anonymous, 2 weeks, 5 days | Source: Example 42

The Github account where all the Example42 Puppet modules have been published so far, is now an organization on GitHub.

This change is not only “a flag in a db record”, but involves a new approach on how Example42 Puppet modules are going to be maintained.

The effort to keep this modules set updated and in good shape was becoming overwhelming for a single person not even working on them full time.

Rspec tests and Travis integration were breaking, support for new OSes was not introduced timely, bugs and sometimes pull requests had been ignored for too much time.

This ...

[ Read More ]

Getting comfortable...

Anonymous, 3 weeks | Source: david.log

Used a slow afternoon to get the next example42 to pass its tests again. Also rebased my sundry of changes from last year on top of the upstream development since then. I'll drip in the commits later one by one to avoid a too confused git history.

[ Read More ]

Continuous integration for Puppet modules

jamesjustjames, 3 weeks | Source: The Technical Blog of James

I just patched puppet-gluster and puppet-ipa to bring their infrastructure up to date with the current state of affairs…

What’s new?

  • Better README’s
  • Rake syntax checking (fewer oopsies)
  • CI (testing) with travis on git push (automatic testing for everyone)
  • Use of .pmtignore to ignore files from puppet module packages (finally)
  • Pushing modules to the forge with blacksmith (sweet!)

This last point deserves another mention. Puppetlabs created the “forge” to try to provide some sort of added value to their stewardship. Personally, I like to look for code on github instead, but nevertheless, some do use the forge. The ...

[ Read More ]

Facter: Ansible facts in Puppet

Dean Wilson (dean.wilson@gmail.com), 3 weeks, 1 day | Source: Dean Wilson@UnixDaemon

Have you ever needed to access Ansible facts from inside Puppet? well, if you ever need to, you can use the basic ansible_facts custom fact.



    # make sure you have ansible installed
    $ sudo puppet resource package ansible ensure=present

    # clone my experimental puppet fact repo
    $ git clone https://github.com/deanwilson/unixdaemon-puppet_facts.git

    # Try running the fact
    $ ruby -I unixdaemon-puppet_facts/lib/ `which facter` ansible_facts -j
    {
      "ansible_facts": {
        "ansible_architecture": "x86_64",
        "ansible_bios_date": "04/25/2013",
        "ansible_bios_version": "RKPPT%$DSFH.86A.0457.20DF3.0425.1251",
        "ansible_cmdline": {
        ... snip ...


While it's nice to see the output in facter you need to make a small change to your ...

[ Read More ]

Puppet 3.7 File Function Improvements

Dean Wilson (dean.wilson@gmail.com), 3 weeks, 1 day | Source: Dean Wilson@UnixDaemon

Puppet's always had a couple of little inconsistencies when it comes to the file and template functions. The file function has always been able to search for multiple files and return the contents of the first file found but it required absolute paths. The template function accepts module based paths but doesn't allow for matching on the first found file. Although this can be fixed with the Puppet Multiple Template Source Function.

One of the little niceties that came with Puppet 3.7 is an easily missed improvement to the file function that makes using it easier and ...

[ Read More ]

Puppet Module Testing

Anonymous, 3 weeks, 3 days | Source: david.log

Today I've invested a bit of time into getting modules back into shape. The first was Alessandro's excellent puppet module. The PR had six commits in the end, fixing the various nits that travis complained about. Nothing fancy, but annoying anyways. Now that this is green again, perhaps a little bit more care with new contributions can be taken.

I've also added some other improvements I was sitting on for far too long:

Also, Alessandro has posted an offer for shared maintainership on the example42 modules.

[ Read More ]

Puppet Lint Custom Checks

Dean Wilson (dean.wilson@gmail.com), 3 weeks, 6 days | Source: Dean Wilson@UnixDaemon

In the past if you wanted to run your own puppet-lint checks there was no official, really clean way to distribute them outside of the core code. Now, with the 1.0 release of puppet-lint you can write your own, external, puppet-lint checks and make them easily distributable.

I spent a little bit of time this morning reading through the existing 3rd party community plugins and after porting a private absolute template path check over to the new system I have to say that rodjek has done an excellent job with both the ease of writing your own checks and ...

[ Read More ]

Foreman Community Newsletter - September 2014

Daniel Lobato (noreply@blogger.com), 1 month | Source: The Foreman: Blogs

Foreman 1.6.0 released!

After some testing in late August with the release candidate versions, Foreman 1.6.0 is out! Some of the highlights are:
  • Smart Proxy plugins support
  • API v2 is now declared stable, will be the default in 1.7.0
  • External user groups for LDAP and Kerberos group support
  • Support for RHEL7 (CentOS and Scientific will be supported when SCL 1.1 becomes available)
  • Configurable and extensible dashboard
  • Puppet directory environment support
The full list of release notes can be found in the manual, as usual. There are two CVEs explained in the security advisories ...

[ Read More ]

Migrating Puppets

Anonymous, 1 month | Source: david.log

I've wrapped up a nice little project preparing an infrastructure to switch to puppet. The customer's own puppet lead had the system configuration already well prepared, so it was mostly a matter of integrating the final pieces, lining up all stars and keeping an eye out for unforeseen surprises.

Some takeaways:

  • preparation is everything: having base services like sssd and logstash well tested before starting the switchover was a great help to focus on the more delicate applications.
  • reusing puppet's CA for apps is convenient, but creates a noticeable coupling. While it reduces time to rollout, it ...

[ Read More ]

Book review: Mastering Puppet by Thomas Uphill

Hendricus Kramer, 1 month | Source: Puppet Blog

When you are considered to be an experienced Puppet user or you just started using Puppet, this book will help you with all requirements on getting a good Puppet implementation.
The book is not only about Puppet… To get an enterprise ready Puppet environment, you will be guided through the configuration of all needed linux components which results in a scalable and high available Puppet installation.
Some other good topics are GIT version control, Private and Public modules, GitHub, reporting and troubleshooting.

The book is based on a RedHat/CentOS environment, so when you use an other Linux distribution, you ...

[ Read More ]

First impressions of the new cfacter

walterheck, 1 month | Source: OlinData

Having just come back from PuppetConf 2014 in the San Francisco last week, there have been a lot of new developments. Some of the most significant changes since Puppet was started all the way 10 years back have been announced.

A lot of the announced changes have to do with a move away from Ruby as the language for everything puppet. We have already seen this started when PuppetDB was implemented in Clojure. That has been largely succesful and without pain, so there's good hope we can extend that into the rest of the toolset.

The first two tools ...

[ Read More ]