npwalker-pe_external_postgresql

A Puppet Module for Configuring an External Postgresql Node for Puppet Enterprise


Keywords
pe-postgresql, puppet, puppet-enterprise, puppetdb
License
Apache-2.0
Install
puppet module install npwalker-pe_external_postgresql --version 2.0.1

Documentation

This Module is Deprecated

You can install a PostgreSQL node with the PE installer starting in PE 2016.2. As far as I see it there are not many reasons to install an OSS PostgreSQL server any longer when PE will take care of it for you.

Here's a link to the docs on how to do that: https://docs.puppet.com/pe/latest/install_separate_pe_postgres.html

Overview

This puppet module will configure an external PostgreSQL node for your Puppet Enterprise infrastructure.

Module Description

It will do the following things:

Example Usage

In order to effectively use this module you will need to do the following in the context of installing PE.

  1. Install the PE agent on the node you want to make your external postgresql node
  • If you are installing a split installation you can install the puppet master node before installing this agent
  • If you are installing an all-in-one master you will need to install this agent and continue when it says it can't connect to the master
  1. Save something like the following to a file (maybe /tmp/postgresql_setup.pp) on your agent node but specify your own passwords
		class { 'pe_external_postgresql' :
		  postgres_root_password   => 'pass1',
		  puppetdb_db_password     => 'pass2',
		  classifier_db_password   => 'pass3',
		  rbac_db_password         => 'pass4',
		  activity_db_password     => 'pass5',
		  orchestrator_db_password => 'pass6',
		}
  1. puppet module install npwalker-pe_external_postgresql
  2. Run puppet apply /tmp/postgresql_setup.pp on the agent node to install postgresql and setup the databases.

Class: pe_external_postgresql

postgres_root_password

Sets the password for the postgres user.

puppetdb_db_password

Sets the password for the puppetdb user to connect to the puppetdb database

console_db_password

Sets the password for the console user to connect to the console database

classifier_db_password

Sets the password for the pe-classifier user to connect to the pe-classifier database

rbac_db_password

Sets the password for the pe-rbac user to connect to the pe-rbac database

activity_db_password

Sets the password for the pe-activity user to connect to the pe-activity database

orchestrator_db_password

Sets the password for the pe-orchestrator user to connect to the pe-orchestrator database

postgresql_version

The version of postgresql to install. Defaults to 9.4.

use_pe_packages

If set to true, PostgreSQL will be installed using the Puppet Enterprise packages and paths. Note that for this option to work, you must have the pe-postgresql and pe-postgresql-contrib packages available in the configured machine's package repositories. Typically agent machines will have access to these packages through the pe_repo class. Defaults to false.

console

Whether or not to manage the PE console databases. If set to false, the pe-activity, pe-classifier, and pe-rbac databases will not be managed. This is useful when installing the Console and PuppetDB databases on separate servers. Defaults to true.

puppetdb

Whether or not to manage the PE PuppetDB database. If set to false, the pe-puppetdb database will not be managed. This is useful when installing the Console and PuppetDB databases on separate servers. Defaults to true.

orchestrator

Whether or not to manage the PE Orchestrator database. If set to false, the pe-orchestrator database will not be managed. I would expect users to place this database with the console database but want to leave the option to put it somewhere else. Defaults to true.

PE3.x

If you are using PE3.x please use version 1.1.1 of the module which is compatible with older versions of PE.