-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

Nat wrote:
> Hi,
> 
> We have got puppet set up and running at our main office with no
> issues.
> We are using an external node classifier instead of directly creating
> node definition files.
> 
> We would like to manage our remote offices using puppet also. A little
> about our set up. From our main site we have VPN links out to a remote
> site. each site is generally identical with the same number of servers
> and roughly the same services running on each server. Essentially
> the only differences at each remote site the subnet and related IP
> addresses.
> 
> Since we are using an external node classifier we do not explicitly
> have node definition so we can not inherit a class and override a
> default value.
> Is there a way to do this using node classifiers?
> 
> 
> An example will probably show this better
> 
> Site1:
>          + location UK
>          + subnet  192.168.1.0/24
>          + gateway 192.168.1.254 (acts also as nameserver and local
> dns etc
>                                                for all servers at site
> 1, for example ntp will
>                                                use the closest time
> source geographically)
>          + sever1 ip - 192.168.1.1 gateway of 192.168.1.254
>          + sever2 ip - 192.168.1.2 gateway of 192.168.1.254
> Site 2:
>          + location US
>          + subnet  192.168.2.0/24
>          + gateway 192.168.2.254 (acts also as nameserver and local
> dns etc
>                                                for all servers at site
> 2, for example ntp will
>                                                use the closest time
> source geographically)
>          + sever1 ip - 192.168.2.1 gateway of 192.168.2.254
>          + sever2 ip - 192.168.2.2 gateway of 192.168.2.254
> 
> As you can see most details are identical between sites except for a
> few
> network and geographical differences.
> 
> Has there been any consensus within the community on the best way to
> manage situations like this?
> 

Well, I think a large portion of users have discovered that RI Pienaar's
(Volcane on IRC) extlookup.rb add on is good for this sort of stuff.
It's basically a function that looks up data in a csv file. So say your
locations are domains like us.yourcompany.com. You can have a file
called us.yourcompany.com.csv in a directory under /etc/puppet, or you
set a location some other way you can have a us.csv file in the
directory. I call my external lookup directory 'extdata', and it looks
up in the order of something like fqdn, domain, location, common (if it
fails to find one csv, it moves on to the next). Then inside your
manifest you set variables like:

$something = extlookup("something")

It's really got so many uses I encourage you to use it. It was the only
way I could solve a lot of puppet problems I ran into. Here is the page:

http://www.devco.net/?s=extlookup

- --
Joe McDonagh
AIM: YoosingYoonickz
IRC: joe-mac on freenode
L'ennui est contre-révolutionnaire

-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.9 (GNU/Linux)

iEYEARECAAYFAkt05q4ACgkQRkBieEaRmuZWDgCfdk89Fk1eyC9ichJIbjN9Jldj
z1wAn0lUYhjxeqAinqjSZuS7MqkG+hnp
=SZh3
-----END PGP SIGNATURE-----

-- 
You received this message because you are subscribed to the Google Groups 
"Puppet Users" group.
To post to this group, send email to puppet-us...@googlegroups.com.
To unsubscribe from this group, send email to 
puppet-users+unsubscr...@googlegroups.com.
For more options, visit this group at 
http://groups.google.com/group/puppet-users?hl=en.

Reply via email to