Foreman with multiple masters

Hi all,

I have this setup:

The first machine was installed as all in one

The second one with:

foreman-installer
–no-enable-foreman
–enable-puppet
–puppet-server-ca=false
–enable-foreman-proxy
–foreman-proxy-tftp=false
–foreman-proxy-foreman-base-url=https://puppet.company.com
–foreman-proxy-oauth-consumer-key=katello
–foreman-proxy-oauth-consumer-secret=shhhh

How are the hosts supposed to get their environment/classes?

I've set the host definition in foreman to use the first server as CA
and the second as puppet master. Also I assigned some classes to it.

When I run puppet agent I got nothig:

[root@cristi-work ~]# puppet agent -t --server
v-is-puppetmaster-01.company.com --ca_server puppet.company.com
–environment=production
Info: Retrieving plugin
Info: Caching catalog for cristi-work.company.com
Info: Applying configuration version '1381921438'
Notice: Finished catalog run in 0.11 seconds

Any ideas?

Thank you,
Cristian Falcas

I have reinstalled the second master with:

foreman-installer
–foreman-locations-enabled=true
–foreman-organizations-enabled=true
–foreman-proxy-puppetca=false
–foreman-proxy-tftp=false
–puppet-ca-server=puppet.company.com
–puppet-server-dynamic-environments=true
–no-enable-foreman
–enable-puppet
–puppet-server-ca=false
–enable-foreman-proxy
–foreman-proxy-foreman-base-url=https://puppet.company.com
–foreman-proxy-oauth-consumer-key=katello
–foreman-proxy-oauth-consumer-secret=shhhh
–foreman-proxy-register-in-foreman=true

Now, it gets the facts and runs them, but It still throws this error:

[root@cristi-work ~]# puppet agent -t --server
v-is-puppetmaster-01.company.com --ca_server puppet.company.com
Warning: Unable to fetch my node definition, but the agent run will continue:
Warning: Error 400 on SERVER: Failed to find cristi-work.company.com
via exec: Execution of '/etc/puppet/node.rb cristi-work.company.com'
returned 1:
Info: Retrieving plugin
error glassfish_facts.rb: can't connect to java db localhost
Info: Loading facts in /var/lib/puppet/lib/facter/puppet_vardir.rb

Info: Loading facts in /var/lib/puppet/lib/facter/facts_glassfish.rb
error glassfish_facts.rb: can't connect to java db localhost
Info: Loading facts in /var/lib/puppet/lib/facter/concat_basedir.rb
Error: Could not retrieve catalog from remote server: Error 400 on
SERVER: Failed when searching for node cristi-work.company.com: Failed
to find cristi-work.company.com via exec: Execution of
'/etc/puppet/node.rb cristi-work.company.com' returned 1:
Warning: Not using cache on failed catalog
Error: Could not retrieve catalog; skipping run

Both masters have the environments syncronized.

··· On Wed, Oct 16, 2013 at 2:54 PM, Cristian Falcas wrote: > Hi all, > > I have this setup: > - puppet.company.com: CA and puppet master > - v-is-puppetmaster-01.company.com: puppet master > > The first machine was installed as all in one > > The second one with: > > foreman-installer > --no-enable-foreman > --enable-puppet > --puppet-server-ca=false > --enable-foreman-proxy > --foreman-proxy-tftp=false > --foreman-proxy-foreman-base-url=https://puppet.company.com > --foreman-proxy-oauth-consumer-key=katello > --foreman-proxy-oauth-consumer-secret=shhhh > > How are the hosts supposed to get their environment/classes? > > I've set the host definition in foreman to use the first server as CA > and the second as puppet master. Also I assigned some classes to it. > > When I run puppet agent I got nothig: > > [root@cristi-work ~]# puppet agent -t --server > v-is-puppetmaster-01.company.com --ca_server puppet.company.com > --environment=production > Info: Retrieving plugin > Info: Caching catalog for cristi-work.company.com > Info: Applying configuration version '1381921438' > Notice: Finished catalog run in 0.11 seconds > > > Any ideas? > > Thank you, > Cristian Falcas

Installing with this command made it work correctly:

foreman-installer
–no-enable-foreman
–puppet-server-ca=false
–enable-puppet
–enable-foreman-proxy
–foreman-proxy-puppetca=false
–foreman-proxy-tftp=false
–foreman-locations-enabled=true
–foreman-organizations-enabled=true
–foreman-proxy-foreman-base-url=https://puppet.company.com
–foreman-proxy-oauth-consumer-key=katello
–foreman-proxy-oauth-consumer-secret=shhhh
–foreman-proxy-register-in-foreman=true
–foreman-foreman-url=https://puppet.company.com
–puppet-ca-server=puppet.company.com
–puppet-server-dynamic-environments=true

··· On Wed, Oct 16, 2013 at 3:31 PM, Cristian Falcas wrote: > I have reinstalled the second master with: > > foreman-installer > --foreman-locations-enabled=true > --foreman-organizations-enabled=true > --foreman-proxy-puppetca=false > --foreman-proxy-tftp=false > --puppet-ca-server=puppet.company.com > --puppet-server-dynamic-environments=true > --no-enable-foreman > --enable-puppet > --puppet-server-ca=false > --enable-foreman-proxy > --foreman-proxy-foreman-base-url=https://puppet.company.com > --foreman-proxy-oauth-consumer-key=katello > --foreman-proxy-oauth-consumer-secret=shhhh > --foreman-proxy-register-in-foreman=true > > > > Now, it gets the facts and runs them, but It still throws this error: > > [root@cristi-work ~]# puppet agent -t --server > v-is-puppetmaster-01.company.com --ca_server puppet.company.com > Warning: Unable to fetch my node definition, but the agent run will continue: > Warning: Error 400 on SERVER: Failed to find cristi-work.company.com > via exec: Execution of '/etc/puppet/node.rb cristi-work.company.com' > returned 1: > Info: Retrieving plugin > error glassfish_facts.rb: can't connect to java db localhost > Info: Loading facts in /var/lib/puppet/lib/facter/puppet_vardir.rb > ......... > Info: Loading facts in /var/lib/puppet/lib/facter/facts_glassfish.rb > error glassfish_facts.rb: can't connect to java db localhost > Info: Loading facts in /var/lib/puppet/lib/facter/concat_basedir.rb > Error: Could not retrieve catalog from remote server: Error 400 on > SERVER: Failed when searching for node cristi-work.company.com: Failed > to find cristi-work.company.com via exec: Execution of > '/etc/puppet/node.rb cristi-work.company.com' returned 1: > Warning: Not using cache on failed catalog > Error: Could not retrieve catalog; skipping run > > > Both masters have the environments syncronized. > > > > On Wed, Oct 16, 2013 at 2:54 PM, Cristian Falcas > wrote: >> Hi all, >> >> I have this setup: >> - puppet.company.com: CA and puppet master >> - v-is-puppetmaster-01.company.com: puppet master >> >> The first machine was installed as all in one >> >> The second one with: >> >> foreman-installer >> --no-enable-foreman >> --enable-puppet >> --puppet-server-ca=false >> --enable-foreman-proxy >> --foreman-proxy-tftp=false >> --foreman-proxy-foreman-base-url=https://puppet.company.com >> --foreman-proxy-oauth-consumer-key=katello >> --foreman-proxy-oauth-consumer-secret=shhhh >> >> How are the hosts supposed to get their environment/classes? >> >> I've set the host definition in foreman to use the first server as CA >> and the second as puppet master. Also I assigned some classes to it. >> >> When I run puppet agent I got nothig: >> >> [root@cristi-work ~]# puppet agent -t --server >> v-is-puppetmaster-01.company.com --ca_server puppet.company.com >> --environment=production >> Info: Retrieving plugin >> Info: Caching catalog for cristi-work.company.com >> Info: Applying configuration version '1381921438' >> Notice: Finished catalog run in 0.11 seconds >> >> >> Any ideas? >> >> Thank you, >> Cristian Falcas