Ask Your Question
0

installing master, console and puppetdb on 3 separate servers

asked 2014-05-06 04:17:37 -0500

kamigerami gravatar image

I’ve been struggling with setting up the puppet master (apache+passenger) , puppetdb + postgresql and the console (dashboard or foreman) on separate servers.

Host1 : Puppetmaster + apache + passenger

Host2 : puppetdb + postgresql

Host3 : dashboard or foreman

running CentOS 6.5 and installing from the puppet yum repositories:

facterversion => 2.0.1 kernelmajversion => 2.6 kernelversion => 2.6.32 puppetversion => 3.5.1 rubyversion => 1.8.7

passenger will be installed via tarball (passenger-4.0.41)

I have searched through various sites and have not found a single installation guide showing how to achieve this type of setup.

This is no PE installation btw.

Any input is greatly appreciated.

edit retag flag offensive close merge delete

2 Answers

Sort by » oldest newest most voted
0

answered 2014-05-06 06:08:00 -0500

elmer gravatar image

If you are using foreman, perhaps the the docs in the foreman manual could help.

edit flag offensive delete link more

Comments

Hi, Thank you. What I am looking for is a guide to configure puppetdb on a separate server and have it connect to the masterl I have read through most of the guides but haven't found a solution yet. I haven't even started looking at configuring and setting up foreman or the dashboard yet

kamigerami gravatar imagekamigerami ( 2014-05-06 06:20:34 -0500 )edit
0

answered 2014-05-08 07:59:25 -0500

kamigerami gravatar image

I am going to be a bit more specific here.

I am having issues with the multiple node setup where I have a separate puppetDB+postgresql from the master server.

When I run puppet agent -t from the master and the puppetdb I get the following messages :

#master

Error: Could not retrieve catalog from remote server: Error 400 on SERVER: Failed to submit 'replace facts' command for puppetmaster.domain.com to PuppetDB at puppetdb.domain.com:8081: Connection refused - connect(2)
Warning: Not using cache on failed catalog
Error: Could not retrieve catalog; skipping run

puppetdb

Warning: Unable to fetch my node definition, but the agent run will continue:
Warning: Error 400 on SERVER: Could not retrieve facts for puppetdb.domain.com: Failed to find facts from     PuppetDB at puppetdb.domain.com:8081: Connection refused - connect(2)

Error: Could not retrieve catalog from remote server: Error 400 on SERVER: Failed to submit 'replace facts'    command for puppetdb.domain.com to PuppetDB at puppetdb.domain.com:8081: Connection refused - connect(2)
Warning: Not using cache on failed catalog
Error: Could not retrieve catalog; skipping run

I also see the following in the : /var/log/puppetdb/puppetdb.log

2014-05-08 14:52:49,897 ERROR [BoneCP-pool-watch-thread] [hooks.AbstractConnectionHook] Failed to acquire connection Sleeping for 7000ms and trying again. Attempts left: 5. Exception: javax.net.ssl.SSLHandshakeException: sun.security.validator.ValidatorException: PKIX path building failed: sun.security.provider.certpath.SunCertPathBuilderException: unable to find valid certification path to requested target

I am guessing the issue is with the SSL however my puppetDB don't even listen on port 8080 or 8081 even thought it is set in the jetty.ini file.

#jetty.ini for puppetdb

[jetty]
# Hostname or IP address to listen for clear-text HTTP.  Default is localhost
host = 0.0.0.0

# Port to listen on for clear-text HTTP.
port = 8080


# The following are SSL specific settings. They can be configured
# automatically with the tool `puppetdb ssl-setup`, which is normally
# ran during package installation.

# The host or IP address to listen on for HTTPS connections
ssl-host = puppetdb.domain.com
# The port to listen on for HTTPS connections
ssl-port = 8081

# Private key path
ssl-key = /etc/puppetdb/ssl/private.pem

# Public certificate path
 ssl-cert = /etc/puppetdb/ssl/public.pem

# Certificate authority path
 ssl-ca-cert = /etc/puppetdb/ssl/ca.pem
edit flag offensive delete link more

Comments

Solved the issue by creating a keystore and importing it to the java jre. However I am seeing these issues now : Error: Could not retrieve catalog from remote server: Error 400 on SERVER: Failed to submit 'replace facts' command for puppetdb.domain.com to PuppetDB at puppetdb.domain.com:8081: [400 Bad Request] Missing required query parameter 'payload' Warning: Not using cache on failed catalog Error: Could not retrieve catalog; skipping run

kamigerami gravatar imagekamigerami ( 2014-05-08 10:02:43 -0500 )edit

Your Answer

Please start posting anonymously - your entry will be published after you log in or create a new account.

Add Answer

Question Tools

2 followers

Stats

Asked: 2014-05-06 04:17:37 -0500

Seen: 1,657 times

Last updated: May 08 '14