Re: [Puppet Users] Puppet Labs Announces Puppet Forge, a Central Repository for Puppet Modules
On Fri, May 28, 2010 at 09:44:59PM +1000, James Turnbull wrote: > -BEGIN PGP SIGNED MESSAGE- > Hash: SHA1 > > Paul Lathrop wrote: > > Haha! > > > > So much for my purchase of puppetstrings.net! I guess I can scrap the > > crappy code I had put together, too. :-P > > Well if you have features you had done or had in mind - we'd welcome the > input. Late to the party... catching up on lists. Features I'd like? Ratings # of Downloads I want to be able to see how "good" a module is before I use it. There's already four apache modules... Cheers, -- Eric Gerlach, Network Administrator Federation of Students University of Waterloo p: (519) 888-4567 x36329 e: egerl...@feds.uwaterloo.ca w: http://feds.ca/ "To Serve, Empower, and Represent the Undergraduate Students of the University of Waterloo" -- 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.
Re: [Puppet Users] is puppet the right tool for me?
On Thu, Apr 08, 2010 at 09:32:44AM -0700, Patrick wrote: > > You forgot a biggy bonus of puppet, no matter what size you support. I > > have several small ( as in 1-3) groups of very different machines, > > and with puppet I can rebuild them very quickly on when they need to > > be replaced or upgraded. doing it by hand takes most of a day or 2. > > > > +1 to this. Almost all the computers I manage have pretty simple > configurations, but it's nice to know that with 4 commands I can wipe > everything and bring it back to a known state. I use a > tftpinstall+preseeding for ubuntu. Then puppet finishes the job. My usecase > is probably different from yours because most of my machines don't have data > that needs to be saved on them. If you want to keep your data (as we do), put it on a separate partition (all our data is in /srv, and that's on a separate partition), then make sure your preseed doesn't nuke that partition. Keep backups in case you need to restore it. We can restore a host in about 25 minutes if we care to do it quickly. Cheers, -- Eric Gerlach, Network Administrator Federation of Students University of Waterloo p: (519) 888-4567 x36329 e: egerl...@feds.uwaterloo.ca w: http://feds.ca/ "To Serve, Empower, and Represent the Undergraduate Students of the University of Waterloo" -- 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.
Re: [Puppet Users] is puppet the right tool for me?
On Wed, Apr 07, 2010 at 12:10:07PM -0700, Dmitry V'yal wrote: > Hello, > > I'm currently administering a vps running a dozen of php-sites. I use > several scripts for deploying new sites, updating them, taking the > backups and so on. All the system is quite fragile and error-prone. > I'm thinking about some more integrated solution. Can puppet be useful > in my situation? Or is it primarily intended for managing big number > of similarly configured hosts? Hi Dmitry, I've been looking at ControlTier to do this kind of thing. That said, I haven't had a chance to try it yet, so I can't vouch for it. http://controltier.org/wiki/Main_Page Cheers, -- Eric Gerlach, Network Administrator Federation of Students University of Waterloo p: (519) 888-4567 x36329 e: egerl...@feds.uwaterloo.ca w: http://feds.ca/ "To Serve, Empower, and Represent the Undergraduate Students of the University of Waterloo" -- 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.
Re: [Puppet Users] preseed/late_command
On Wed, Mar 17, 2010 at 07:10:20PM -0400, Derek Yarnell wrote: > Hi, > > Anyone running puppetd --test in their preseed late_command? I > can't seem to get it working as the installer hangs forever in the > late_preseed stage. > > This is what I am using, > > d-i preseed/late_command string chroot /target; mount /proc; > /usr/sbin/puppetd --test --server puppetserver.my.domain What we did as a late command was the following: d-i preseed/late_command in-target wget -O /target/etc/default/puppet http://DEPLOYMENT_SERVER/d-i/lenny/puppet.default Which gets the following default file: Begin /etc/default/puppet # Defaults for puppet - sourced by /etc/init.d/puppet # Start puppet on boot? START=yes cat < /etc/puppet/puppet.conf [main] logdir=/var/log/puppet vardir=/var/lib/puppet ssldir=/var/lib/puppet/ssl rundir=/var/run/puppet factpath=\$vardir/lib/facter pluginsync=true server=PUPPETMASTER evaltrace=true HERE for n in `seq 1 30`; do ping -c 1 PUPPETMASTER >& /dev/null && break echo -n " $n" sleep 1 done # Startup options DAEMON_OPTS="-w 120" End /etc/default/puppet Then, when the machine boots for the first time, it has enough information to contact the puppetmaster and do a run. Since puppetd does a run when it starts, this starts the configuration process. Cheers, -- Eric Gerlach, Network Administrator Federation of Students University of Waterloo p: (519) 888-4567 x36329 e: egerl...@feds.uwaterloo.ca w: http://feds.ca/ "To Serve, Empower, and Represent the Undergraduate Students of the University of Waterloo" -- 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.
Re: [Puppet Users] The Foreman & Mailing List Topics
On Tue, Mar 02, 2010 at 03:37:39PM -0800, Paul Lathrop wrote: > Hey guys, > > I'm really glad tools like the Foreman exist and are part of the > Puppet ecosystem, but I don't use it and I'd kinda like to keep the > Puppet list about... Puppet. Sorry to be the jerk here, but doesn't > the Foreman have it's own mailing list? I have to say I don't mind hearing about associated tools. If I hear that it's solving problems for someone, and I run into those problems, I can use the tool. I don't think the volume of foreman (et al) posts is that high, and besides, that's what ^R is for (mutt user here). Cheers, -- Eric Gerlach, Network Administrator Federation of Students University of Waterloo p: (519) 888-4567 x36329 e: egerl...@feds.uwaterloo.ca -- 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.
Re: [Puppet Users] Magazine article comparing CPU usage of Puppet vs. Cfengine
On Mon, Feb 22, 2010 at 03:37:15PM -0600, James Cammarata wrote: > > On Mon, 22 Feb 2010 21:17:52 +, Toby Riddell > wrote: > > I received my copy of ;login (the Usenix magazine) today. There's an > > article* comparing CPU utilisation of Puppet and Cfengine. To > > abbreviate massively: Puppet requires much more CPU than Cfengine when > > both verifying and fixing configuration. > > I'm not really surprised by this, puppet is written in Ruby (an interpreted > language) vs CFengine which is written in C. Has anyone tried puppet with Ruby 1.9? It's supposed to be a lot faster than 1.8. Haven't tested it myself, though. Cheers, -- Eric Gerlach, Network Administrator Federation of Students University of Waterloo p: (519) 888-4567 x36329 e: egerl...@feds.uwaterloo.ca -- 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.
Re: [Puppet Users] Puppet and Drupal
On Mon, Feb 08, 2010 at 03:35:18PM +, John Arundel wrote: > Hi, > > Unlike a lot of CMSes out there, Drupal has an excellent automation > tool in the form of Drush. With a bit of Puppet magic, you can > automate most of the common tasks and components in building a Drupal > site (or managing a multisite install). I've written up some example > recipes which I use for managing a bunch of Drupal installs: > > http://bitfieldconsulting.com/puppet-drupal > > Is anyone else managing Drupal with Puppet? Have you done things > differently, or do you have extra things which I've missed out? Is > there a better way to do the stuff that I've shown in the article? I'd > love to get some feedback. In particular I'd like to hear about > staging and deployment issues with Drupal. > > One interesting thing that already came up in comments is embedding > secrets into Puppet code, which was discussed here recently. I think > that would be my first thing to improve. Hi John, We actually just finished a bunch of recipes to deploy Drupal using Puppet, but we didn't know about Drush, which would have saved me a lot of work :-) But I really like your post, it's going to help us a bit when we revisit this. We mostly did the same thing you did, except that we wrote our own substitute for Drush. One thing we did which we like is that we set up a git repository for our themes. The theme designer can check into the development or production branches of that repo, and the appropriate server will pull down the changes. With the existence of Drush, I think the next step would be to actually roll that into a package provider so you could write: package { "content": ensure => present, provider => "drupal-module", target => "/etc/drupal/6/sites/all" } or the like. Cheers, -- Eric Gerlach, Network Administrator Federation of Students University of Waterloo p: (519) 888-4567 x36329 e: egerl...@feds.uwaterloo.ca -- 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.
Private data in manifests (was: Re: [Puppet Users] Using Git to distribute Puppet configs)
On Wed, Jan 27, 2010 at 05:59:27PM +0100, Thomas Bellman wrote: > >- Each node has a copy of the entire repository of modules and classes > >which makes it in my opinion a security risk. > > Don't put passwords and private keys in your manifests. Would you call this a general rule? If so, what's the best practice for setting passwords and private keys? Cheers, -- Eric Gerlach, Network Administrator Federation of Students University of Waterloo p: (519) 888-4567 x36329 e: egerl...@feds.uwaterloo.ca -- 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.
Re: [Puppet Users] Newbie question: how to handle prompts from packages?
On Wed, Jan 27, 2010 at 09:11:49PM +1100, James Turnbull wrote: > See the responsefile attribute of the package type. > > http://docs.reductivelabs.com/references/stable/type.html#package You can do that now? Oh. That makes me happy, and I love Debian :-) Cheers, -- Eric Gerlach, Network Administrator Federation of Students University of Waterloo p: (519) 888-4567 x36329 e: egerl...@feds.uwaterloo.ca -- 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.
Re: [Puppet Users] hosts update trouble
On Sun, Jan 24, 2010 at 07:28:52PM -0600, Carl Caum wrote: > Add: > > ignoreschedules = true > > to your puppet.conf. I think you can also set > > listen = true > > and that will disable runs and just run when triggered by authorized nodes. > Others will know more about that than me. Anyone care to jump in? listen=true only causes puppet to listen for puppetrun triggers. It doesn't disable the standard running. If you only want to run puppetd once, use the --onetime option. So... if you want to run it from cron, create a cron job that runs puppetd --onetime, and don't start the service. Cheers, -- Eric Gerlach, Network Administrator Federation of Students University of Waterloo p: (519) 888-4567 x36329 e: egerl...@feds.uwaterloo.ca -- 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.
Re: [Puppet Users] best way to make puppet temporarily ignore a file?
Or, perhaps this is a case for an extlookup? I'm not fully familiar with that function yet, but my inclination is that it might fit the bill. Cheers, Eric On Wed, Jan 20, 2010 at 09:25:19AM +0800, Ohad Levy wrote: > what about allowing the users to modify the tag lists? > Ideally, you would need a black list tag, which a script could read and feed > into puppetd command line arguments. > > cheers, > Ohad > > On Wed, Jan 20, 2010 at 4:14 AM, jb wrote: > > > I'd like others to have the option to temporarily disable puppet from > > modify a file or directory...something along the lines of: > > > > ./something.conf.lock > > > > causes > > > > ./something.conf > > > > to NOT be modified by puppet for as long the lock file exists > > > > it'd also be nice to be able to disable an entire directory from being > > modified if the file: > > > > ./PUPPET-DISABLE > > > > is present. basically the 'unless' parameter as is present in the Exec > > type... > > > > > > -- > > 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. > > > > > > > > > -- > > 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. > -- Eric Gerlach, Network Administrator Federation of Students University of Waterloo p: (519) 888-4567 x36329 e: egerl...@feds.uwaterloo.ca -- 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.
Re: [Puppet Users] Re: reload/restarting puppetd after puppet.conf change
On Thu, Jan 21, 2010 at 11:17:29AM -0800, JL wrote: > > If I recall, my Puppet Master wasn’t destroyed until I restarted it (I > > think it ran for a while with a nearly empty config), so no. But that was a > > pretty stressful day, so I could be remembering wrong. :) > > It looks like puppetmasterd automatically reparses: > > puppetmasterd[6163]: [ID 702911 local1.notice] Reparsing /etc/puppet/ > puppet.conf > > So I guess there is no need to restart puppetd or puppetmasterd on > puppet.conf changes. As there any definitive documentation on this? > Does anyone know if puppetmasterd should ever be restarted (for > example if tagmail.conf or fileserver.conf are changed)? I don't know about that, and I don't know if this is fixed in 0.25.x, but in 0.24.x if you changed the "listen" parameter in puppet.conf while puppetd was running it would not change its listen state. A restart was required. I think. Cheers, -- Eric Gerlach, Network Administrator Federation of Students University of Waterloo p: (519) 888-4567 x36329 e: egerl...@feds.uwaterloo.ca -- 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.
Re: [Puppet Users] I have re-entered puppet dependancy hell. :(
On Sun, Dec 13, 2009 at 02:12:09PM -0800, Douglas Garstang wrote: > Ohad, > > No, not really because for starters there are anywhere from 1 to 10 > instances of jboss running, but not always 10. It depends on the node. > If it was always 10, I could say something like > before=>Service["jboss-inst0"], before=>Service["jboss-inst1"] etc. Do you number your jboss instances like above? If so, why not have: 3rdparty-thing { "thingy": before => "jboss-inst0" } service { "jboss-inst0": before => "jboss-inst1" } service { "jboss-inst1": before => "jboss-inst2" } ... service { "jboss-instn": before => "jboss-inst(n+1)" } Then have a "terminator" of sorts (which could be in another define): service { "jboss-inst(n+1)": ensure => absent } You can do arithmetic with variables, so maybe there's a way to do this? I don't know the details of your situation, but hopefully this either helps or spurs another idea. Cheers, Eric > PLUS the jboss service is controlled inside a definition, not a class. > I don't know if I can use before => in that case. > > Doug. > > On Sat, Dec 12, 2009 at 10:11 PM, Ohad Levy wrote: > > without reading your manifest, I cant tell for sure, but cant you just add > > before=>Service["jboss"] in your define? > > > > Ohad > > > > On Sun, Dec 13, 2009 at 5:12 AM, Douglas Garstang > > wrote: > >> > >> I have a rather complex puppet setup here that consists of multiple > >> instances of jboss running, with 3rd party software layered on top of > >> each jboss instance. I just realised that after all this effort that > >> each instance of jboss is starting well before all the various > >> portions have been deployed. > >> > >> Looking over my configuration, I'm at a complete loss as to how to > >> ensure that jboss starts up last. > >> > >> The various JBoss RPM's have to be deployed first, as well as all the > >> associated symlinks, permissions etc. However, I can't move onto doing > >> the same stuff for the various 3rd party software until all the jboss > >> files have been deployed. However, jboss can't start until the 3rd > >> party apps are completely done. > >> > >> Since there are multiple instances of jboss running, I've used > >> definitions in most places instead of classes. I therefore can't just > >> put a require => Class['jboss'] in my 3rd party software module. What > >> the heck am I going to do? > >> > >> Doug. > >> > >> -- > >> > >> 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. > >> > >> > > > > -- > > > > 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. > > > > > > -- > Regards, > > Douglas Garstang > http://www.linkedin.com/in/garstang > Email: doug.garst...@gmail.com > Cell: +1-805-340-5627 > > -- > > 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. > > -- Eric Gerlach, Network Administrator Federation of Students University of Waterloo p: (519) 888-4567 x36329 e: egerl...@feds.uwaterloo.ca -- 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.
Re: [Puppet Users] Re: How to override / redefine outside child class (usecase and example detailled)
; > } > > file{'/etc/my.conf': > > source => "" > > notify => Service['mysql-server'], > > } > > > > } > > > > Naming convention could be better, but I think this should generally > > work. You simply include every resource you manage in the general class > > configsets, which gets applied to every node (also due to inheritance, > > reinclusion) but include the "present" class in nodes that need it. > > > > > I do not want my nodes.pp to be 100 lines and unmaintanable. > > > > I would generally avoid putting too much into nodes. My nodes look like: > > > > node default { > > $some_var_1 = 'aaa' > > $some_var_2 = 'bbb' > > include configsets > > > > } > > > > node foobar { > > $some_var_1 = 'foo' > > $some_var_2 = 'bar' > > include configsets::foobar > > > > } > > > > And all the actual service includes are done in the module called > > configesets, which can have further abstraction like node-types, i.e. > > physical nodes (class is included depending on the virtual fact) etc., > > inheritance and so on. > > > > Did I miss some circumstances why this shouldn't work? > > > > cheers pete. > > -BEGIN PGP SIGNATURE- > > Version: GnuPG v1.4.9 (GNU/Linux) > > Comment: Using GnuPG with Mozilla -http://enigmail.mozdev.org > > > > iEYEARECAAYFAksp8QQACgkQbwltcAfKi383ZwCdHOZO8yYdo6zooR07tgy5OE7/ > > ZhgAoJzWrZoO2ikcrO/ZRJVLE/fPcufr > > =/lYm > > -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. > > -- Eric Gerlach, Network Administrator Federation of Students University of Waterloo p: (519) 888-4567 x36329 e: egerl...@feds.uwaterloo.ca -- 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.
[Puppet Users] An XML Provider similar to ParsedFile
Hi all, I was wondering if anyone out there had created a provider similar to ParsedFile that operates on collections of XML objects. I'm starting to work with OpenNMS, and it would be really helpful. If no one has one made, I'll start work on one, but just figured there's no use reinventing the wheel. Cheers, -- Eric Gerlach, Network Administrator Federation of Students University of Waterloo p: (519) 888-4567 x36329 e: egerl...@feds.uwaterloo.ca -- 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.
Re: [Puppet Users] puppetmaster SQL failing
I already thanked Ohad on IRC, but wanted to let the annals of history know that he was right. Cheers, Eric On Wed, Dec 02, 2009 at 09:23:09AM +0800, Ohad Levy wrote: > Which version of rails are you using? I kind of remember an issue with 2.1 > and multiple connections > > Ohad > > On Wed, Dec 2, 2009 at 5:25 AM, Eric Gerlach > wrote: > > > Hi all, > > > > Just upgraded from 0.24.8 to 0.25.1. I've run into the following problem. > > After a while, my puppetmaster fails with this type of error: > > > > info: Expiring the node cache of gold.fs.uwaterloo.ca > > info: Not using expired node for gold.fs.uwaterloo.ca from cache; expired > > at Tue Dec 01 16:07:47 -0500 2009 > > debug: Using cached facts for gold.fs.uwaterloo.ca > > info: Caching node for gold.fs.uwaterloo.ca > > info: Expiring the node cache of monitor.fs.uwaterloo.ca > > debug: Scope(Class[network]): Retrieving template network/interfaces.erb > > debug: template[/srv/puppet/modules/network/templates/interfaces.erb]: > > Bound template variables for > > /srv/puppet/modules/network/templates/interfaces.erb in 0.00 seconds > > debug: template[/srv/puppet/modules/network/templates/interfaces.erb]: > > Interpolated template /srv/puppet/modules/network/templates/interfaces.erb > > in 0.00 seconds > > debug: Scope(Class[postfix]): Retrieving template postfix/main.cf.erb > > debug: template[/srv/puppet/modules/postfix/templates/main.cf.erb]: Bound > > template variables for /srv/puppet/modules/postfix/templates/main.cf.erb in > > 0.00 seconds > > debug: template[/srv/puppet/modules/postfix/templates/main.cf.erb]: > > Interpolated template /srv/puppet/modules/postfix/templates/main.cf.erb in > > 0.00 seconds > > err: Puppet::Parser::Compiler failed with error > > ActiveRecord::MissingAttributeError: missing attribute: restype on node > > gold.fs.uwaterloo.ca > > err: Mysql::Error: Lost connection to MySQL server during query: SELECT * > > FROM `fact_names` WHERE (`fact_names`.`name` = 'kernelrelease') LIMIT 1 > > err: Puppet::Parser::Compiler failed with error > > ActiveRecord::MissingAttributeError: missing attribute: restype on node > > gold.fs.uwaterloo.ca > > > > And then never sends out a catalog again. Any ideas? > > > > Cheers, > > > > -- > > Eric Gerlach, Network Administrator > > Federation of Students > > University of Waterloo > > p: (519) 888-4567 x36329 > > e: egerl...@feds.uwaterloo.ca > > > > -- > > > > 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. > > > > > > > > -- > > 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. > > -- Eric Gerlach, Network Administrator Federation of Students University of Waterloo p: (519) 888-4567 x36329 e: egerl...@feds.uwaterloo.ca -- 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.
Re: [Puppet Users] puppetmaster SQL failing
In case it helps, it seems to happen when two clients are trying to talk to the puppetmaster simultaneously. I can't confirm that conclusively, but that seems to be the case. Cheers, Eric On Tue, Dec 01, 2009 at 04:25:49PM -0500, Eric Gerlach wrote: > Hi all, > > Just upgraded from 0.24.8 to 0.25.1. I've run into the following problem. > After a while, my puppetmaster fails with this type of error: > > info: Expiring the node cache of gold.fs.uwaterloo.ca > info: Not using expired node for gold.fs.uwaterloo.ca from cache; expired at > Tue Dec 01 16:07:47 -0500 2009 > debug: Using cached facts for gold.fs.uwaterloo.ca > info: Caching node for gold.fs.uwaterloo.ca > info: Expiring the node cache of monitor.fs.uwaterloo.ca > debug: Scope(Class[network]): Retrieving template network/interfaces.erb > debug: template[/srv/puppet/modules/network/templates/interfaces.erb]: Bound > template variables for /srv/puppet/modules/network/templates/interfaces.erb > in 0.00 seconds > debug: template[/srv/puppet/modules/network/templates/interfaces.erb]: > Interpolated template /srv/puppet/modules/network/templates/interfaces.erb in > 0.00 seconds > debug: Scope(Class[postfix]): Retrieving template postfix/main.cf.erb > debug: template[/srv/puppet/modules/postfix/templates/main.cf.erb]: Bound > template variables for /srv/puppet/modules/postfix/templates/main.cf.erb in > 0.00 seconds > debug: template[/srv/puppet/modules/postfix/templates/main.cf.erb]: > Interpolated template /srv/puppet/modules/postfix/templates/main.cf.erb in > 0.00 seconds > err: Puppet::Parser::Compiler failed with error > ActiveRecord::MissingAttributeError: missing attribute: restype on node > gold.fs.uwaterloo.ca > err: Mysql::Error: Lost connection to MySQL server during query: SELECT * > FROM `fact_names` WHERE (`fact_names`.`name` = 'kernelrelease') LIMIT 1 > err: Puppet::Parser::Compiler failed with error > ActiveRecord::MissingAttributeError: missing attribute: restype on node > gold.fs.uwaterloo.ca > > And then never sends out a catalog again. Any ideas? > > Cheers, > > -- > Eric Gerlach, Network Administrator > Federation of Students > University of Waterloo > p: (519) 888-4567 x36329 > e: egerl...@feds.uwaterloo.ca > > -- > > 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. > > -- Eric Gerlach, Network Administrator Federation of Students University of Waterloo p: (519) 888-4567 x36329 e: egerl...@feds.uwaterloo.ca -- 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.
[Puppet Users] puppetmaster SQL failing
Hi all, Just upgraded from 0.24.8 to 0.25.1. I've run into the following problem. After a while, my puppetmaster fails with this type of error: info: Expiring the node cache of gold.fs.uwaterloo.ca info: Not using expired node for gold.fs.uwaterloo.ca from cache; expired at Tue Dec 01 16:07:47 -0500 2009 debug: Using cached facts for gold.fs.uwaterloo.ca info: Caching node for gold.fs.uwaterloo.ca info: Expiring the node cache of monitor.fs.uwaterloo.ca debug: Scope(Class[network]): Retrieving template network/interfaces.erb debug: template[/srv/puppet/modules/network/templates/interfaces.erb]: Bound template variables for /srv/puppet/modules/network/templates/interfaces.erb in 0.00 seconds debug: template[/srv/puppet/modules/network/templates/interfaces.erb]: Interpolated template /srv/puppet/modules/network/templates/interfaces.erb in 0.00 seconds debug: Scope(Class[postfix]): Retrieving template postfix/main.cf.erb debug: template[/srv/puppet/modules/postfix/templates/main.cf.erb]: Bound template variables for /srv/puppet/modules/postfix/templates/main.cf.erb in 0.00 seconds debug: template[/srv/puppet/modules/postfix/templates/main.cf.erb]: Interpolated template /srv/puppet/modules/postfix/templates/main.cf.erb in 0.00 seconds err: Puppet::Parser::Compiler failed with error ActiveRecord::MissingAttributeError: missing attribute: restype on node gold.fs.uwaterloo.ca err: Mysql::Error: Lost connection to MySQL server during query: SELECT * FROM `fact_names` WHERE (`fact_names`.`name` = 'kernelrelease') LIMIT 1 err: Puppet::Parser::Compiler failed with error ActiveRecord::MissingAttributeError: missing attribute: restype on node gold.fs.uwaterloo.ca And then never sends out a catalog again. Any ideas? Cheers, -- Eric Gerlach, Network Administrator Federation of Students University of Waterloo p: (519) 888-4567 x36329 e: egerl...@feds.uwaterloo.ca -- 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.
[Puppet Users] Re: Puppet Not Running chkconfig correctly.
Could it be the chkconfig header in the specific init.d script that you're trying to add that is booched? What does that header look like? Cheers, Eric On Mon, Nov 09, 2009 at 10:36:08PM -0800, Douglas Garstang wrote: > > Dan, > > Hmmm works for me with yum-updatesd too. Well, I'm confused. My > startup script has: > # chkconfig: 2345 15 97 > > ntp, which behaves the same, has: > # chkconfig: - 58 74 > > httpd, which also behaves the same, has: > # chkconfig: - 85 15 > > And, yum-updatesd, which seems to be ok, has: > # chkconfig:345 97 03 > > Mine has the same syntax as yum-updatesd, but still does not work. > ntpd and httpd which have different syntax, also don't work. > > Doug > > On Mon, Nov 9, 2009 at 10:23 PM, Dan Bode wrote: > > thats all clear, I see that it does not work with httpd, I wonder if it adds > > it in the rpm post... > > > > I did find one example where everything worked, this is why I was asking the > > questions before. I am not sure what the difference is between these > > services. > > > > [r...@dansrh3 rc.d]# chkconfig --del yum-updatesd > > # I have deleted the service entry > > [r...@dansrh3 rc.d]# chkconfig --list | grep yum-update > > #no service entry > > [r...@dansrh3 rc.d]# chkconfig yum-updatesd on > > [r...@dansrh3 rc.d]# chkconfig --list | grep yum-update > > yum-updatesd 0:off 1:off 2:on 3:on 4:on 5:on 6:off > > [r...@dansrh3 rc.d]# find * | grep yum > > init.d/yum-updatesd > > rc0.d/K03yum-updatesd > > rc1.d/K03yum-updatesd > > rc2.d/S97yum-updatesd > > rc3.d/S97yum-updatesd > > rc4.d/S97yum-updatesd > > rc5.d/S97yum-updatesd > > rc6.d/K03yum-updatesd > > [r...@dansrh3 rc.d]# > > > > > > I will make a note on the bug. > > > > regards, > > > > Dan > > > > > > > > > > > -- > Regards, > > Douglas Garstang > http://www.linkedin.com/in/garstang > Email: doug.garst...@gmail.com > Cell: +1-805-340-5627 > > > -- Eric Gerlach, Network Administrator Federation of Students University of Waterloo p: (519) 888-4567 x36329 e: egerl...@feds.uwaterloo.ca --~--~-~--~~~---~--~~ You received this message because you are subscribed to the Google Groups "Puppet Users" group. To post to this group, send email to puppet-users@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 -~--~~~~--~~--~--~---
[Puppet Users] Re: Using variables in virtual resources
On Fri, Sep 18, 2009 at 09:08:37AM +0200, Kenneth Holter wrote: > Hi. > > > I've defined a virtual user "kenneth", and depending on a variable in the > node definiton I'd like to add the users to different groups. Consider this > example: > > ## Code start > > node "server.example.com" { >$server_type = "typeA" > >realize User[kenneth] > > } > > @user {"kenneth": > ensure => present, > uid => 1000, > gid => 1000, > groups => $server_type ? { >typeA => "wheel", >default => undef, > }, > > home => "/home/kenneth", > shell => "/bin/bash", > comment => "A comment", > password => '' > > } > > ## Code end > > If I add the user to an ordinary class (like "class user_kenneth") instead > of defining it as a virtual resource, everything works fine. But when using > a virtual definition like this, the variable "server_type" doesn't seem to > have any effect on the if statement "groups". Am I doing something wrong, or > is this not supposed to work? I'm running version 0.24.4. I've been off for over a week, so I just noticed you never got an answer to this question. The variables are filled out at the time the virtual resource is defined, not at the time it's realized. You might be able to do something like: realize User[kenneth] User[kenneth] { groups => $server_type ? { typeA => "wheel", default => undef, } } to realize it the way you want. Haven't tried anything like that though. Maybe someone else can comment if it works. Cheers, -- Eric Gerlach, Network Administrator Federation of Students University of Waterloo p: (519) 888-4567 x36329 e: egerl...@feds.uwaterloo.ca --~--~-~--~~~---~--~~ You received this message because you are subscribed to the Google Groups "Puppet Users" group. To post to this group, send email to puppet-users@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 -~--~~~~--~~--~--~---
[Puppet Users] Re: managing ip addresses
On Mon, Aug 17, 2009 at 07:03:16PM -0500, Chris Blumentritt wrote: > I am trying to manage ip address aliases and I cannot come up with a good > strategy. I have three webhead servers that are balanced via a hardware > load balancer. I have a define that will be setting up website config on > each server and one piece I need to sort out is configuring ip addresses on > the server and then configuring the apache virtual host with the > corresponding ip address for the host. A sort of visual way to see what I > am doing > > class site_name { ... } --> define setup_site { ...} > > The site_name class setups variables and the define does all the work based > on the variables. I would like to setup a ip addresses that will be > balanced for each site. And then do all of that with multiple sites. > > I fear the way to go about this is to set the ip address at the node and > then use the fact ipaddress_ethx:y but this means I will have to have an > interface to site mapping somewhere. I would rather just keep it all in > puppet somehow. > > Any guidance is appreciated. AFAICT, you're going to need some way of determining, based on the information you get from facts, which server gets which IP address. You could do this with an external node classifier, or some algorithm (custom functions could help here). Don't know if anyone can provide better ideas than that, but hopefully this gives you somewhere to start. Cheers, -- Eric Gerlach, Network Administrator Federation of Students University of Waterloo p: (519) 888-4567 x36329 e: egerl...@feds.uwaterloo.ca --~--~-~--~~~---~--~~ You received this message because you are subscribed to the Google Groups "Puppet Users" group. To post to this group, send email to puppet-users@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 -~--~~~~--~~--~--~---
[Puppet Users] Re: Notifying a service when exported resources go away
On Fri, Jul 24, 2009 at 04:09:22PM -0700, Teyo Tyree wrote: > On Fri, Jul 24, 2009 at 12:47 PM, Eric Gerlach > wrote: > > > > > Hi, > > > > I'm working with nagios, and if I'm de-configuring a server manually, I'd > > like > > to have the monitoring system not complain about it vanishing. > > > > So, for each host I have: > > > >@@nagios_host { "$fqdn": > >use => "generic-host", > >address => $fqdn, > >contact_groups => "itstaff", > >notify => Service["nagios3"] > >} > > > > and then on the Nagios server I have: > > > >resources { "nagios_host": > >purge => true, > >notify => Service["nagios3"] > >} > > > >Nagios_host <<| |>> > > > > If I don't have a notify on the resources entry, the nagios host entries go > > away, but nagios doesn't refresh. If I have it on the resources entry, it > > makes the service depend on it, and so won't purge: > > > > "Service[nagios3] still depends on me -- not purging" > > > > Is it possible to accomplish what I'm trying to do? If so, how? > > Eric the most straight forward mechanism is to purge all the resources > associated with the host that is being decommissioned. There is a script to > do this attached to the wiki page for storedconfigs. > http://reductivelabs.com/trac/puppet/attachment/wiki/UsingStoredConfiguration/kill_node_in_storedconfigs_db.rb But if I do this, it still doesn't notify the nagios service, so it will continue to monitor them (and complain to me that they're gone) until I restart it. So though that's a nice way to purge the DB, it doesn't really help my problem. Cheers, -- Eric Gerlach, Network Administrator Federation of Students University of Waterloo p: (519) 888-4567 x36329 e: egerl...@feds.uwaterloo.ca --~--~-~--~~~---~--~~ You received this message because you are subscribed to the Google Groups "Puppet Users" group. To post to this group, send email to puppet-users@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 -~--~~~~--~~--~--~---
[Puppet Users] Notifying a service when exported resources go away
Hi, I'm working with nagios, and if I'm de-configuring a server manually, I'd like to have the monitoring system not complain about it vanishing. So, for each host I have: @@nagios_host { "$fqdn": use => "generic-host", address => $fqdn, contact_groups => "itstaff", notify => Service["nagios3"] } and then on the Nagios server I have: resources { "nagios_host": purge => true, notify => Service["nagios3"] } Nagios_host <<| |>> If I don't have a notify on the resources entry, the nagios host entries go away, but nagios doesn't refresh. If I have it on the resources entry, it makes the service depend on it, and so won't purge: "Service[nagios3] still depends on me -- not purging" Is it possible to accomplish what I'm trying to do? If so, how? Cheers, -- Eric Gerlach, Network Administrator Federation of Students University of Waterloo p: (519) 888-4567 x36329 e: egerl...@feds.uwaterloo.ca --~--~-~--~~~---~--~~ You received this message because you are subscribed to the Google Groups "Puppet Users" group. To post to this group, send email to puppet-users@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 -~--~~~~--~~--~--~---
[Puppet Users] Nagios and other services
Hi all, Best Practices Question: I've got Nagios configured via puppet, and (of course) I want to monitor services. Where should I put the @@nagios_service definitions? (example uses apache2) a) In the apache2 module (high-coupling) b) In the nagios module (doesn't make sense) c) In some nagios::apache2 class d) Something else entirely Thanks in advance! Cheers, -- Eric Gerlach, Network Administrator Federation of Students University of Waterloo p: (519) 888-4567 x36329 e: egerl...@feds.uwaterloo.ca --~--~-~--~~~---~--~~ You received this message because you are subscribed to the Google Groups "Puppet Users" group. To post to this group, send email to puppet-users@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 -~--~~~~--~~--~--~---
[Puppet Users] Re: Testing if a resource is already defined
On Thu, Jun 18, 2009 at 12:14:59PM +1000, Avi Miller wrote: > > Hi gang, > > Is it possible to test if a particular resource has already been > defined? I'd like to do something like this: > > if !Host["$fqdn"] { > host {"$fqdn": ip => "$ipaddress_eth0" } > } > > Essentially, test to see if there is no Host resource defined for the > current server and if not, add a host entry for itself using the IP > address of eth0. > > Possible? It sounds like you might be trying to define a host in more than one place. I'm just a journeryman myself, but I think according to The Puppet Way (TM) that's a Bad Thing (TM). If you make sure that the host is only potentially defined in one place, you don't have to worry about this. Cheers, -- Eric Gerlach, Network Administrator Federation of Students University of Waterloo p: (519) 888-4567 x36329 e: egerl...@feds.uwaterloo.ca --~--~-~--~~~---~--~~ You received this message because you are subscribed to the Google Groups "Puppet Users" group. To post to this group, send email to puppet-users@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 -~--~~~~--~~--~--~---
[Puppet Users] Re: use of the resource resource
On Tue, Jun 02, 2009 at 05:11:57PM +1000, Geoff Crompton wrote: > > While reading about schedules, I saw: > http://reductivelabs.com/trac/puppet/wiki/TypeReference#resources > > To check I'm reading this right, if I had the following in my site.pp: > resources { file > purge => true > } > > Would puppet then attempt to purge every single file that it did not > have an explicit file resource for? Including files installed by package > resources? If the "resources" type supported files, yes, I think it would. I'm not sure which types are supported by "resources" right now, but I'm pretty sure "file" isn't among them. Cheers, -- Eric Gerlach, Network Administrator Federation of Students University of Waterloo p: (519) 888-4567 x36329 e: egerl...@feds.uwaterloo.ca --~--~-~--~~~---~--~~ You received this message because you are subscribed to the Google Groups "Puppet Users" group. To post to this group, send email to puppet-users@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 -~--~~~~--~~--~--~---
[Puppet Users] Re: Pitching Puppet - How does it work question
Hi Len, Let me take a shot at this. I'm sure I'll be corrected if I'm wrong. It roughly works like this: 1) Client connects to server and asks "what should my configuration be?" 2) Server responds with the desired configuration 3) Client then checks that configuration against what exists 4) Client fixes anything that doesn't match what the server gave it tl;dr: If only the hash value changes, will puppet apply that change? Yes. Who notices the change, the client or the server? Mu. (It's kinda both) Cheers, Eric On Tue, May 05, 2009 at 08:48:34PM -0500, Len Rugen wrote: > I'm trying to pitch puppet to my group. I have a test server & 2 clients, > things are going pretty well. The question relates to user password > management as outlined in the recipies. My question, if only the hash value > changes, will puppet apply that change? Who notices the change, the client > or the server? > > Thanks, just trying to be the "salesman" > > > -- Eric Gerlach, Network Administrator Federation of Students University of Waterloo p: (519) 888-4567 x36329 e: egerl...@feds.uwaterloo.ca --~--~-~--~~~---~--~~ You received this message because you are subscribed to the Google Groups "Puppet Users" group. To post to this group, send email to puppet-users@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 -~--~~~~--~~--~--~---
[Puppet Users] Re: Automatically update host
I do this using storedconfigs and virtual resources for hosts. For example: @@host { "$hostname.private": ip => $ipaddress_eth1, ensure => present, alias => "$hostname" } Host <<| |>> What this does is when the machine first connects, it creates a virtual resource for itself, then when another machine connects, it will realize it and get added to the machine's /etc/hosts Hope this helps. Cheers, Eric On Thu, Apr 30, 2009 at 10:59:39AM -0700, haribole wrote: > > Hello Group > > I am trying to setup puppet so that when a new client connects to the > server, the puppetd from the client can update a resource on the > puppetmasted server with its IP address, fqdn and alias, so that this > info can be distributed to all the known clients of the network. > > From what I understand the puppet master server would have these > details from facter, and wonder if the above can be scripted. > > Thanks for any inputs. > > Hari > > > -- Eric Gerlach, Network Administrator Federation of Students University of Waterloo p: (519) 888-4567 x36329 e: egerl...@feds.uwaterloo.ca --~--~-~--~~~---~--~~ You received this message because you are subscribed to the Google Groups "Puppet Users" group. To post to this group, send email to puppet-users@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 -~--~~~~--~~--~--~---
[Puppet Users] Re: Syntax checking hook when using git?
Also, since branching in git is so cheap, you can have the checkins go to a branch, and then check the syntax there. If they pass, then move them to production. Don't know if Hudson supports this, but it's what I'm in the process of doing right now. Cheers, Eric On Thu, Apr 23, 2009 at 12:01:33PM +0100, Julian Simpson wrote: > > A Continuous Integration server like Hudson will allow you to poll the > GIT repo and make loud noises if the syntax check fails. > > J. > > 2009/4/23 Mark Plaksin : > > > > Hi: > > > > We want to switch our Puppet config repository from SVN to Git. Our SVN > > repository has a pre-commit hook that does a syntax check. If the check > > fails, the commit fails. With SVN that hook runs on the server so it's > > easy to have (the correct version of) the puppet binary there for the > > hook to use. > > > > With Git it looks like the pre-commit hook has to run wherever a person > > happens to have checked out the Git repository. That could be a > > desktop, laptop...just about anywhere. It's harder to make sure the > > correct version of Puppet is in all of those places. > > > > Is there a pretty way to solve this problem? How do you do it? > > > > Is there, perhaps, a way to create a standalone syntax checker that > > doesn't require the rest of Puppet? > > > > Thanks! > > > > > > > > > > > > > -- > Julian Simpson > Software Build and Deployment > http://www.build-doctor.com > > > -- Eric Gerlach, Network Administrator Federation of Students University of Waterloo p: (519) 888-4567 x36329 e: egerl...@feds.uwaterloo.ca --~--~-~--~~~---~--~~ You received this message because you are subscribed to the Google Groups "Puppet Users" group. To post to this group, send email to puppet-users@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 -~--~~~~--~~--~--~---
[Puppet Users] Re: Installing 0.24.8 as gem on Debian
Kyle, Ryan, I'd love it if those instructions made it into the Wiki. The uupdate thing would be hugely helpful to some other Debian administrators, I'm sure. Cheers, Eric On Fri, Mar 27, 2009 at 08:33:43AM -0500, Kyle Cordes wrote: > > Kyle Cordes wrote: > > >> Apply the .diff > > > Ryan Steele wrote: > > > I didn't have to download any diffs. Here's what I did: > > > 2. Grab the debian directory for 0.24.7 from git (git clone > > git://git.debian.org/git/pkg-puppet/puppet.git) and put it in the 0.24.7 > > source tree. > > Ah. That diff I applied, did the same as this. > > > > 4. run 'uupdate -u puppet-0.24.8.tgz', and then cd into the newly > > created 0.24.8 source tree > > Every time I touch this stuff I learn something new. For example, just > this second I learned (from your message) of the existence of "uupdate". > I'll give it a try next time I need to update a Debian package to a > newer upstream version. > > -- > Kyle Cordes > http://kylecordes.com > > > -- Eric Gerlach, Network Administrator Federation of Students University of Waterloo p: (519) 888-4567 x36329 e: egerl...@feds.uwaterloo.ca --~--~-~--~~~---~--~~ You received this message because you are subscribed to the Google Groups "Puppet Users" group. To post to this group, send email to puppet-users@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 -~--~~~~--~~--~--~---
[Puppet Users] Re: Installing 0.24.8 as gem on Debian
On Tue, Mar 24, 2009 at 09:09:35PM -0700, Russ Allbery wrote: > > Graham Stratton writes: > > > I have just tried to install puppet 0.24.8 as a gem on a clean Debian > > Lenny system. The puppetd script is not added to my path. Is this a > > bug or have I made a mistake? > > Gem and real distribution packages collide in unfortunate ways that make > it hard to support gems within distribution packaging and maintain the > guarantees of distribution packaging in sane ways (such as "everything in > /usr/bin is owned by a package"). I suspect that you're encountering one > of those problems. > > It's generally better, on Debian systems, to use the standard Puppet > packages. There isn't a 0.24.8 package yet, but I suspect there will be > fairly quickly. Once there is, although it will be uploaded for Debian > sid, you can download it from packages.debian.org and install it on an > older Debian system. As a point of reference, it took about 2-3 weeks for 0.24.7 to get packaged. You'll have to get it from the experimental repository, though. Cheers, -- Eric Gerlach, Network Administrator Federation of Students University of Waterloo p: (519) 888-4567 x36329 e: egerl...@feds.uwaterloo.ca --~--~-~--~~~---~--~~ You received this message because you are subscribed to the Google Groups "Puppet Users" group. To post to this group, send email to puppet-users@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 -~--~~~~--~~--~--~---
[Puppet Users] Re: undefined method `controllable?'
On Fri, Mar 06, 2009 at 04:07:24PM -0800, Pete Emerson wrote: > I resolved this problem. I discovered that there was a key mismatch. I'm > loving puppet, but the error messages are completely frustrating. > > Pete If you're finding that frustrating, you should probably submit a bug report to have a good error message added for that case. If it's reproducible, then I think it would be good to fix it up so that others aren't confused the way you were (and I would have been). Cheers, -- Eric Gerlach, Network Administrator Federation of Students University of Waterloo p: (519) 888-4567 x36329 e: egerl...@feds.uwaterloo.ca --~--~-~--~~~---~--~~ You received this message because you are subscribed to the Google Groups "Puppet Users" group. To post to this group, send email to puppet-users@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 -~--~~~~--~~--~--~---
[Puppet Users] Exported resources not exporting?
I'm having a bit of an odd problem with exported resources. It seems like if an resource is already in the stored configs database, then a host checks in an exports that resource, then it doesn't get exported. Deleting storedconfigs.sqlite seems to fix the problem when the hosts next check in. This isn't related to the recent bugs in exported resources, because I built new puppet packages from the 0.24.x branch. For example: Before: sqlite> select * from resources where restype='Ether'; 451|00:50:56:b6:61:47|Ether|1|6||46|2009-02-14 14:12:37|2009-02-14 14:12:37 457|00:50:56:b4:02:94|Ether|3|6||46|2009-02-14 14:25:00|2009-02-14 14:25:00 460|00:50:56:b4:4c:f6|Ether|2|6||46|2009-02-14 14:32:31|2009-02-14 14:32:31 After: sqlite> select * from resources where restype='Ether'; 130|00:50:56:b6:61:47|Ether|1|6|t|41|2009-02-14 19:25:02|2009-02-14 19:24:59 235|00:50:56:b4:4c:f6|Ether|2|6|t|41|2009-02-14 19:25:42|2009-02-14 19:25:40 244|00:50:56:b6:61:47|Ether|2|2||41|2009-02-14 19:25:42|2009-02-14 19:25:40 366|00:50:56:b4:02:94|Ether|3|6|t|41|2009-02-14 19:32:56|2009-02-14 19:32:54 404|00:50:56:b4:02:94|Ether|2|2||41|2009-02-14 19:35:38|2009-02-14 19:35:38 I know I'm showing a custom type, but it happened with the Host type as well. That time, I thought it was something I did, so I didn't capture it. Has anyone seen anything like this? Any ideas where I could start debugging? Cheers, -- Eric Gerlach, Network Administrator Federation of Students University of Waterloo p: (519) 888-4567 x36329 e: egerl...@feds.uwaterloo.ca --~--~-~--~~~---~--~~ You received this message because you are subscribed to the Google Groups "Puppet Users" group. To post to this group, send email to puppet-users@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 -~--~~~~--~~--~--~---
[Puppet Users] Re: Best practices question
On Mon, Feb 09, 2009 at 03:54:18PM -0800, Larry Ludwig wrote: > > Hi Eric, > > I tend to think of modules as a method to encapsulate a package or > even larger service. If you needed to develop for a specific OS you > could break down into seperate classes. > > If you created a module named "network" it could be more generic and > apply to other OSes. > > ie: > > class network { > case $lsbdistid: { > "centos": { include network::centos } > "debian": { include network::debian } > } > > Hope this helps. Thanks for the quick responses, Larry and Felix. Now that I think about it, haivng "network" as a module makes a lot of sense. I do want to ask the question: "Is the network up?" Cheers, -- Eric Gerlach, Network Administrator Federation of Students University of Waterloo p: (519) 888-4567 x36329 e: egerl...@feds.uwaterloo.ca --~--~-~--~~~---~--~~ You received this message because you are subscribed to the Google Groups "Puppet Users" group. To post to this group, send email to puppet-users@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 -~--~~~~--~~--~--~---
[Puppet Users] Best practices question
Hi, I'm slowly building Puppet into our infrastructure, and it's quite fun. I have a question about best practices though. If I want to configure a file, say /etc/network interfaces, on all of my Debian boxes, should I put the resource definition in: a) manifests/classes/debian.pp b) modules/debian/manifests/init.pp I guess I'm asking whether people here have configured modules for classes of servers or not. As a followup if you choose a), where do you put that in your files repository? files/debian/etc/network/interfaces? I know neither of these questions have right/wrong answers, but I'm done for the day and it's what I want to start with tomorrow, so I thought I'd seek some advice before I do. Cheers, -- Eric Gerlach, Network Administrator Federation of Students University of Waterloo p: (519) 888-4567 x36329 e: egerl...@feds.uwaterloo.ca --~--~-~--~~~---~--~~ You received this message because you are subscribed to the Google Groups "Puppet Users" group. To post to this group, send email to puppet-users@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 -~--~~~~--~~--~--~---
[Puppet Users] Re: Automating removal of an application
On Fri, Jan 30, 2009 at 02:12:03PM +1100, Daniel Pittman wrote: > > nicolas writes: > > > For these applications, we need to have a very good control. So we'll > > never update them via local update utility nor use an ensure => latest > > We always use ensure => x.y.z > > We also need to be able to do rollback, so it's simpler to remove > > everything from say, version 1-3-2, and then apply version 1-3-1 > > > > I understand that our needs are specific, but there is something that > > surprise me with Puppet : if you don't explicitly remove something > > that was deployed previously with Puppet, then it stays > > There are other software configuration tools, such as bcfg2[1], that take > an approach similar to what you describe here: they treat anything not > configured as an aberration and remove it. > [...] > Footnotes: > [1] They may have changed this in the last year or two since I reviewed > the tool, but this more illustrative than a genuine pointer. > In my experience (which is admittedly limited), bcfg2 doesn't remove anything without explicitly being told to do so. What it does do is to tell you that "Hey! You've got unconfigured stuff here! Is that what you want?" In my opinion, granting a similar capacity to puppet (as an option) would be a huge gain. I would *love* to know if things are being configured on my systems without being done through puppet. For example, if a new user is added, that could be an admin doing something stupid, or it could be a rootkit. But unless something tells me about it, I might never know. We chose puppet over bcfg2 because of the notation (bcfg2 is XML! Gah!) and the user community, but it was tough because I actually like bcfg2's comprehensive model a lot more. Cheers, -- Eric Gerlach, Network Administrator Federation of Students University of Waterloo p: (519) 888-4567 x36329 e: egerl...@feds.uwaterloo.ca --~--~-~--~~~---~--~~ You received this message because you are subscribed to the Google Groups "Puppet Users" group. To post to this group, send email to puppet-users@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 -~--~~~~--~~--~--~---
[Puppet Users] Re: Some high-level pre-install questions
On Tue, Dec 16, 2008 at 11:14:32PM -0800, Adam Jacob wrote: [snip] > It's not like you can use the facts in a template directly. [snip] > Yep - the only reason you would care is if you can't access facts from > Node A in a template on Node B via stored configs, whcih I don't > believe you can at this stage. If you query them via iClassify, you > could. Which is what I'm interested in doing :-) Based on the second quote, there, if I'm understanding this correctly, I could do something like (stealing a bit from the Capistrano example): --- /etc/hosts.erb <% require 'iclassify' # More setup goes here ic = IClassify::Client.new(ic_server, ic_user, ic_password) nodes = ic.search('tag:web-server', [ 'fqdn', 'ipaddress' ]) %> <% nodes.each do |n| %> <%= n.attrib?('ipaddress') %> <%= n.attrib('fqdn') %> <% end %> --- Am I correct? (Now that I think about it, if I am, I can just write my own class to query the stored configs and be done with it :-) > > I'm not so much interested in the performance difference, but if I'm > > installing > > a bunch of new packages in Debian, I would want them to install > > together to > > avoid pulling incorrect dependencies. If they install one at a > > time, one > > package might pull in a package I don't want (to satisfy a > > dependency I'm > > intending to satisfy with another package). > > > > It's not a big deal, as I've had to solve that problem already (just > > create > > meta-packages that depend on the real packages you want to install), > > but > > prefetch and flush would be a better way to do it. > > Gotcha - yeah, puppet has no way to handle this right now. Maybe I'll take this to the dev list after the holidays to get some help working on it. It's something I'd like to use. Cheers, -- Eric Gerlach, Network Administrator Federation of Students University of Waterloo p: (519) 888-4567 x36329 e: egerl...@feds.uwaterloo.ca --~--~-~--~~~---~--~~ You received this message because you are subscribed to the Google Groups "Puppet Users" group. To post to this group, send email to puppet-users@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 -~--~~~~--~~--~--~---
[Puppet Users] Re: Some high-level pre-install questions
On Tue, Dec 16, 2008 at 10:36:03AM -0800, Adam Jacob wrote: > > On Dec 15, 2008, at 12:58 PM, Eric Gerlach wrote: > > I do have some questions, however, mostly of the status-checkup > > variety. > > For all of these, assume an implicit "and how can I help?", as I am a > > dev/admin, and I use Ruby for all my scripting already. > > > > 1) Is it possible, using stored configurations, to access all of the > > attributes of all clients from inside a template? > > You can use Stored Configs, which will store Puppet Types in a MySQL > database, To narrow my question, then: What syntax would one use to access facts from Node A in a template being instantiated by Node B? (Assuming one has stored configs enabled) > or you can use iClassify, which will work as an external > node tool that tracks attributes in a database and indexes them in > Solr. (you can then query the full text search interface from your > templates.) iClassify looks quite neat, but I'm not sure that it's what I'm really looking for in this case. I might add it to my mix later, though. > > 3) I saw some documentation on the wiki about Prefetch and > > Flush[1]. I > > couldn't find any sign of implementation of that in the code. Has > > there > > been any progress made? This would be awesome for apt-get/aptitude on > > Debian. > > > > [1] http://reductivelabs.com/trac/puppet/wiki/PrefetchAndFlush > > I do not believe there has been, but I may be corrected. You likely > don't care, either - it will make a performance difference, but it > likely isn't an optimization that's going to bother you that much. I'm not so much interested in the performance difference, but if I'm installing a bunch of new packages in Debian, I would want them to install together to avoid pulling incorrect dependencies. If they install one at a time, one package might pull in a package I don't want (to satisfy a dependency I'm intending to satisfy with another package). It's not a big deal, as I've had to solve that problem already (just create meta-packages that depend on the real packages you want to install), but prefetch and flush would be a better way to do it. Cheers, -- Eric Gerlach, Network Administrator Federation of Students University of Waterloo p: (519) 888-4567 x36329 e: egerl...@feds.uwaterloo.ca --~--~-~--~~~---~--~~ You received this message because you are subscribed to the Google Groups "Puppet Users" group. To post to this group, send email to puppet-users@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 -~--~~~~--~~--~--~---
[Puppet Users] Some high-level pre-install questions
Hi all, I'm looking into getting some configuration management stuff running for my servers as I move roles into a new environment (yay for virtualization!). I've been looking into bcfg2 and puppet, and though I like the model of bcfg2 more, I'm leaning towards puppet for other reasons. I do have some questions, however, mostly of the status-checkup variety. For all of these, assume an implicit "and how can I help?", as I am a dev/admin, and I use Ruby for all my scripting already. 1) Is it possible, using stored configurations, to access all of the attributes of all clients from inside a template? 2) How is the transaction log stored on the puppetmaster server? 3) I saw some documentation on the wiki about Prefetch and Flush[1]. I couldn't find any sign of implementation of that in the code. Has there been any progress made? This would be awesome for apt-get/aptitude on Debian. [1] http://reductivelabs.com/trac/puppet/wiki/PrefetchAndFlush 4) One of the things I really like about bcfg2 is the ability to enumerate unmanaged configuration. It seems that there's a start to that looking at Puppet::Type.instances, but it doesn't seem to really be fleshed out, and only seems to be supported through "resources { purge => x}". Are there plans to extend this further? Anyone hacked something like this together for now? Thanks in advance for your help, I'm looking forward to trying out puppet. Cheers, -- Eric Gerlach, Network Administrator Federation of Students University of Waterloo p: (519) 888-4567 x36329 e: egerl...@feds.uwaterloo.ca --~--~-~--~~~---~--~~ You received this message because you are subscribed to the Google Groups "Puppet Users" group. To post to this group, send email to puppet-users@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 -~--~~~~--~~--~--~---