Puppet Blog - Page 48

Module of the Week: inkling/postgresql – PostgreSQL Management

EDIT 10/24/12: The inkling/postresql module is now owned by Puppet Labs, and has been moved to puppetlabs/postgresql. You can contribute to the module on GitHub here.

Purpose Manage PostgreSQL servers, databases, and users
Module Previously inkling/postgresql, now puppetlabs/postgresql
Puppet Version 2.7+ & PE 2.0+
Platforms Tested on RHEL5, RHEL6, Debian6, Ubuntu 10.04

PostgreSQL is a powerful, high-performance, free, open-source relational database server. It hasn’t always enjoyed quite as much popularity as its cousin, MySQL; MySQL is enormously popular, as evidenced by its inclusion in the ubiquitous LAMP (Linux-Apache-MySQL-PHP) web development stack. However, these days there seems to be some increasing momentum behind PostgreSQL in many circles. At Puppet Labs, we are starting to use it more heavily—in fact, it’s a prerequisite for our new PuppetDB product.

With that in mind, it seemed important for us to make sure that there was a Puppet module out that made PostgreSQL as easy to manage with Puppet as MySQL is. We searched around on the Puppet Forge to see if anyone had undertaken this yet, and found several useful Postgres modules—but it was important to us that the module API would be familiar to users of the puppetlabs/mysql module.

We were particularly impressed with the functionality offered by the inkling/puppet-postgresql module, developed by Kenn Knowles of Inkling Systems, so we reached out to Kenn to see if he’d be amenable to us helping to refactor the module to leverage his existing functionality with an API similar to the puppetlabs/msyql module. He was, so, we did!

So here’s why you should check out the new 0.2.0 release of the inkling/postgresql module:

Why Puppet has its own configuration language

I was O’Reilly’s Velocity conference back in June, giving a talk on hacking Puppet, and Puppet’s configuration language came up a lot. Most people love the language and find it the simplest way of expressing their configurations, but some are frustrated by how simple it is and wish they had a full Turing-complete language like Ruby for specification. I thought it would be worthwhile to discuss why Puppet has a custom language, and dive into some of the benefits and costs.

Puppet sites use proprietary and third-party cookies. By using our sites, you agree to our cookie policy.