New foreman-puppet setup

Hi,

I'm currently running a server that is running my puppetmaster
(puppet-server-2.6.17-2.el5) on RHEL5. I'm using EPEL repo for puppet
package. It's also running foreman foreman-1.0.2-1.el5 from foreman repo,
but I only use it as a reporting tool. I've been recommended to use
puppetlab repo for puppet packages so I'm thinking about setting a new
server for that purpose. It would be a RHEL 6 server with puppet from
puppetlabs repo and foreman from foreman repo. I have a few questions:

  • I'm currently using storeconfigs in mysql for foreman, will I have to
    do something prior to connecting the new foreman to the DB?
  • Will I have to upgrade all my puppet clients for them to connect to
    the latest version of puppetmaster?
  • Anything else I should be looking for?

Thanks,

Ugo

Hi Ugo,

> I'm currently running a server that is running my puppetmaster
> (puppet-server-2.6.17-2.el5) on RHEL5. I'm using EPEL repo for puppet
> package. It's also running foreman foreman-1.0.2-1.el5 from foreman
> repo, but I only use it as a reporting tool. I've been recommended to
> use puppetlab repo for puppet packages so I'm thinking about setting a
> new server for that purpose. It would be a RHEL 6 server with puppet
> from puppetlabs repo and foreman from foreman repo.

Yep, that combination will work well. You're able to use either the
EPEL or the Puppet Labs puppet packages.

> I have a few questions:
>
> * I'm currently using storeconfigs in mysql for foreman, will I have
> to do something prior to connecting the new foreman to the DB?

We deprecated the shared database setup and use of ActiveRecord-based
storeconfigs in Foreman 1.1 as there are other mechanisms (namely the
ENC node.rb script) that provide much the same data without all the
hassle of sharing.

The recommended configuration is now a Foreman server with its own
database (can be SQLite, PostgreSQL or MySQL), then the Puppet master
configured with Foreman as an ENC and for reporting.

If you use the Foreman installer (the method on the quickstart
page/manual on the web site), then this will install the above
configuration automatically.

see http://www.youtube.com/watch?v=2dwyzPpFJYQ too.

If you need storeconfigs from a Puppet perspective (e.g. for exported
resources) then I'd recommend using PuppetDB as the pure AR/database
approach is deprecated in Puppet 3 as well.

> * Will I have to upgrade all my puppet clients for them to connect to
> the latest version of puppetmaster?

I'm not 100% sure if Puppet 2.6 agents can work with a Puppet 3.x master
(2.7 agents can), maybe somebody else can confirm. Generally older
agents work with newer masters fine.

> * Anything else I should be looking for?

There have been various changes to parsing Puppet manifests between 2.6
to 3.x, so you might hit issues with your existing code. The biggest
change was the removal of dynamic scoping in 3.x:

https://docs.puppetlabs.com/guides/scope_and_puppet.html

You may want to update to 2.7 as an interim step so you get the
deprecation warnings and you can then fix the manifests.

And I'll stress the importance of the installer again, you'll save hours
by using it!

··· On 10/04/13 01:44, Ugo Bellavance wrote:


Dominic Cleal
Red Hat Engineering

Hi,

> Hi Ugo,
>
> > I'm currently running a server that is running my puppetmaster
> > (puppet-server-2.6.17-2.el5) on RHEL5. I'm using EPEL repo for puppet
> > package. It's also running foreman foreman-1.0.2-1.el5 from foreman
> > repo, but I only use it as a reporting tool. I've been recommended to
> > use puppetlab repo for puppet packages so I'm thinking about setting a
> > new server for that purpose. It would be a RHEL 6 server with puppet
> > from puppetlabs repo and foreman from foreman repo.
>
> Yep, that combination will work well. You're able to use either the
> EPEL or the Puppet Labs puppet packages.
>
> > I have a few questions:
> >
> > * I'm currently using storeconfigs in mysql for foreman, will I have
> > to do something prior to connecting the new foreman to the DB?
>
> We deprecated the shared database setup and use of ActiveRecord-based
> storeconfigs in Foreman 1.1 as there are other mechanisms (namely the
> ENC node.rb script) that provide much the same data without all the
> hassle of sharing.
>
> The recommended configuration is now a Foreman server with its own
> database (can be SQLite, PostgreSQL or MySQL), then the Puppet master
> configured with Foreman as an ENC and for reporting.
>
> If you use the Foreman installer (the method on the quickstart
> page/manual on the web site), then this will install the above
> configuration automatically.
>
> see http://www.youtube.com/watch?v=2dwyzPpFJYQ too.
>
> If you need storeconfigs from a Puppet perspective (e.g. for exported
> resources) then I'd recommend using PuppetDB as the pure AR/database
> approach is deprecated in Puppet 3 as well.
>
> > * Will I have to upgrade all my puppet clients for them to connect to
> > the latest version of puppetmaster?
>
> I'm not 100% sure if Puppet 2.6 agents can work with a Puppet 3.x master
> (2.7 agents can), maybe somebody else can confirm. Generally older
> agents work with newer masters fine.
>

On the client/server version mismatch, i liked this blog post [1].
Also puppet labs provide a list (2.7 to 3) that you probably want to read
[2]

Regards,
Flo

[1] http://somethingsinistral.net/blog/the-angry-guide-to-puppet-3/
[2] http://projects.puppetlabs.com/projects/puppet/wiki/Telly_Upgrade_Issues

··· On 10 April 2013 09:25, Dominic Cleal wrote: > On 10/04/13 01:44, Ugo Bellavance wrote:
  • Anything else I should be looking for?

There have been various changes to parsing Puppet manifests between 2.6
to 3.x, so you might hit issues with your existing code. The biggest
change was the removal of dynamic scoping in 3.x:

https://docs.puppetlabs.com/guides/scope_and_puppet.html

You may want to update to 2.7 as an interim step so you get the
deprecation warnings and you can then fix the manifests.

And I’ll stress the importance of the installer again, you’ll save hours
by using it!


Dominic Cleal
Red Hat Engineering


You received this message because you are subscribed to the Google Groups
"Foreman users" group.
To unsubscribe from this group and stop receiving emails from it, send an
email to foreman-users+unsubscribe@googlegroups.com.
To post to this group, send email to foreman-users@googlegroups.com.
Visit this group at http://groups.google.com/group/foreman-users?hl=en.
For more options, visit https://groups.google.com/groups/opt_out.