Have you thought about side-stepping puppetd/puppetmasterd and just writing your manifests to use puppet stand alone?
Adam On Dec 12, 2008, at 6:30 AM, John Florian wrote: > > I've been pushing forward on this and have made much progress in > having a puppet client continue to do its thing from the last known > good state after becoming disconnected from the network. > > I've reached a major stumbling block though. If the network interface > had been up and operational, but is now failing (e.g., cable > unplugged), puppet can continue on despite a few warnings in the > logs. However, if the interface hasn't even been configured (e.g., > booting with cable unplugged), puppet seems to take a different route > and just refuses to push-on-regardless. It just continues to log the > following every few minutes: > > err: Could not call puppetca.getcert: #<Errno::ENETENREACH: Network is > unreachable --connect(2)> > err: Could not request certificate: Certificate retrieval failed: > Network is unreachable --connect(2) > > I really need for puppet to simply continue with whatever state and > configuration details it has cached from the last successful run. Any > ideas how I might achieve this? > > > On Dec 8, 2:14 pm, John Florian <john.flor...@dart.biz> wrote: >> I am reviewing puppet for suitability on a project that I'm working >> on. In many regards, it looks perfect and I'm very pleased with the >> overall feel thus far. For a proof-of-concept example, I've >> created a >> manifest that ensures that the ntp package is installed on the >> client, >> that it has the correct ntp.conf and that the services is running >> with >> that config. So far so good. >> >> The clients are going to be PC/104 systems running the Fedora >> "appliance" OS from CompactFlash more or less as if it were a live CD >> (think compressed and read-only). The goal is to have this OS be >> just >> the bare bones plus the puppet client. On boot, the puppet client >> would install the required packages, configure them and start >> services >> and custom applications as >> necessary. This means that any disk updates occurring after boot >> will >> not persist through a reboot. Boot times are longer this way, but >> the >> systems remain very flexible and can be deployed for a variety of >> purposes, which would ultimately be dictated by the puppet master. >> >> If there is a network loss for whatever reason, it is required that >> system remain operational in all other regards. If the network >> outage >> occurs after boot up this is rather trivial to handle. However, if >> the system is rebooted after loss of network, it must proceed under >> the last known state of configuration. I've been partly successful >> in >> this regard by creating a 2nd file system on the CompactFlash to >> which /var/cache/yum is sym-linked. This in effect makes the yum >> cache persistent through reboots. >> >> With the network disconnected, I can remove the ntp package and its >> configuration file from the client, reboot and puppet will dutifully >> reinstall the ntp package. However it is unable to retrieve the >> configuration file from the puppet master and thus far I have not >> found any way to configure puppetd to maintain a locally cached >> version to use as a fail safe. I have experimented with ignorecache >> and usecacheonfailure but without success. Do I need to make each >> puppet client its own file server somehow with a synchronized copy of >> the master? Is there some other route I've missed? >> >> I've also noted that the ntp daemon does not start in this case, but >> I'm pretty sure that's simply because puppetd knows a dependency >> hasn't yet been met. If I can just convince puppetd to somehow >> persist/cache (similar to what I did with yum) the config file and >> use >> that if all else fails, I'll be ready to roll on this project. > > --~--~---------~--~----~------------~-------~--~----~ 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 -~----------~----~----~----~------~----~------~--~---