Re: [Puppet Users] I am looking to try to mixing sounrce and content in a file instance
Hi, On 01/10/2012 07:05 PM, Dan White wrote: I am trying to design flexibility, and I am finding a conflict of purpose between the source snd content metaparameters. is there a practical use case that actually requires that much flexibility? In the design scheme you've sketched, I would assume that there is a specific $myType value that should have your resource rely on a list of source URLs. Am I wrong? If not, you'd need to change the manifest layout (if you're not wrapping the file {} type in a defined type, you should definitely start doing so) and this should be quite possible. HTH, Felix -- 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: Puppet capacity with apache+passenger, server saturated
Hello everyone, Ramin and Gabriel Thanks for the answer and feel the delay in replying. Solve the problem of abusive use of memory by modifying some parameters of passenger, shortening the lifetime of instances of puppetmaster and performing a triple nodes dispersion: Dispersion time (the nodes spend their settings every 2 hours), dispersion in minutes (establishing a random minute from a seed file) and dispersion in seconds (by performing a random sleep before calling puppetd), so I get the machine down their consumption noticeably. Again thank you very much to all and happy new year! A greeting! On 22 dic 2011, 01:50, Ramin K ramin.khat...@gmail.com wrote: Apache or any other http server is usually not the problem in a Passenger based Puppet master because it's only peripherally involved in the actual work. Here's roughly how a client receives a catalog. Client runs, makes a connections to Apache on the Puppet master Puppet master Apache receives, negotiates ssl, etc. Client gets/posts or whatever it does these days. Apache looks at request and Puppet vhost and says This is Rack request Apache hands the whole thing to mod_passenger Passenger looks at request and says Do I have a Rack processes running? If it does and they aren't busy, it passes the request to one of the Puppet Rack processes If it does not or the current one is busy, it spawns a new Rack process to take the request Passenger will spawn Rack processes to the limit you've set or until it runs out of RAM. On my Puppet master I'm running four Rack processes at 200MB each, a 150MB one for the Dashboard, and Apache is using 300MB. Because my server doesn't have much CPU I limit the total number of Rack processes to six. In any case what we should look at is the passenger.conf and any Passenger settings in the Puppet master vhost. Ramin On Dec 21, 5:01 am, Antonio Xanxess antonio.sanchez.agui...@gmail.com wrote: Hello everyone, Trevor and Jeffrey Thanks for the information but I have included puppet task cron dispersed, what I want is to optimize the service as much as possible and discharged the RAM since I have yet to get around more than 2000 nodes. I included in the message above two questions I'd like to clarify: 1 - The configuration of Apache, I think I have currently values may be affecting the service, I attached it again: IfModule mpm_worker_module StartServers 2 MinSpareThreads 25 MaxSpareThreads 75 ThreadLimit 64 ThreadsPerChild 25 MaxClients 400 MaxRequestsPerChild 0 / IfModule 2 - Use variable puppet.conf used_cached_catalog in the file, I have my doubts about it, I ask again: meaning that if you change the manifest to the server nodes are not updated? There would be some way to tell the node to use its cached catalog until they have updates on the server? Thank you for everything! Best regards! On 20 dic, 19:26, Jeffrey Watts jeffrey.w.wa...@gmail.com wrote: Here's how I do it, which IMHO works really well in most situations and is much simpler. No external scripts, no custom functions. We take the IP address of the system, strip out the periods, and modulo 30 it: $cron_time1= generate('/usr/bin/env', 'sh', '-c', printf $(($(echo $::ipaddress | awk -F . \'{print \$1+\$2+\$3+\$4}\') % 30))) $cron_time2 = $cron_time1 + 30 Now, that's if you want to have your systems check in twice per hour. You can adjust it accordingly if you want quicker or longer check-in intervals. Jeffrey. On Tue, Dec 20, 2011 at 7:46 AM, Trevor Vaughan tvaug...@onyxpoint.comwrote: One other thing to look at is how many nodes are hitting your server at once. If you're not using the ip_to_cron function from the Cron Patterns page, you might want to take a look at it. http://projects.puppetlabs.com/projects/1/wiki/Cron_Patterns Some people are also using MCollective to to a more controlled call-in of nodes. Trevor On Fri, Dec 16, 2011 at 7:56 AM, Antonio Xanxess antonio.sanchez.agui...@gmail.com wrote: Hi everyone, I have a problem with my Puppet server, the server is overloaded and processes need to add half of my farm nodes yet! The server is hosted on a blade with the following characteristics: Processors: 8 cores Memory Ram: 12 Gb Operating System: Debian Squeeze Version of parcel: 2.7.1-1 ~ bpo60 puppet 1 puppet-common 2.7.1-1 ~ bpo60 1 2.7.1-1 ~ bpo60 1 puppetmaster puppetmaster 2.7.1-1 ~ bpo60-1 common puppet vim 2.7.1-1 ~ bpo60-1 The number of nodes that I have now is 1927 and I'm in the middle of the deployment process. The nodes do not use the demon puppet, but I created a cron task that runs dispersed to run in one hour intervals. With these data the server is currently using on average 4 cores, but the RAM is used almost
Re: [Puppet Users] Stupid Exec
Did you sort this one out? I also found out puppet on some solaris systems doesn't like [ or ( as first character. A hack to get past it was to change the first character $command = true ( /apps/path/scripts/install.sh || true ) touch /etc/ On Fri, Jan 6, 2012 at 7:52 AM, Jo Rhett jrh...@netconsonance.com wrote: On Jan 5, 2012, at 7:42 AM, ollies...@googlemail.com wrote: $command = ( /apps/path/scripts/install.sh || true ) touch /etc/ puppet/puppet.script.done exec { install: command = $command, Remember that putting something in double quotes is a request to have the value (re)evaluated for metacharacters. I doubt you want this. I would put the command itself in single quotes, and then just use command = $command, ...since what you want is for the shell, and not puppet, to be evaluating those metacharacters. -- Jo Rhett Net Consonance : consonant endings by net philanthropy, open source and other randomness -- 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. -- 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] Explanation of the resource package, little information in reference type
Hi everyone!! I have a problem with the package resource. Currently all my nodes use the same operating system, Debian. The problem is that the documentation of Puppet are many variables that are not explained in detail and have not found detailed information on the Internet. My problem comes in the form in which parcel puppet installed Debian, I see in the trace log the command used is as follows: /usr/bin/apt-get -q -y -o DPkg::Options::=--force-confold install The option --force-confold or --force-confnew comes from the parameter configfile, until then I have it clear. What I want is to add the option --force-yes to the command to force the installation of the parcel. Does anyone know which option I put in the resource package to appear on the command --force-yes? It can be because the apt.rb resource in / usr/lib/ruby/1.8/puppet/provider/package shows: str = @resource[:name] case should when true, false, Symbol # pass else # Add the package version and --force-yes option str += =#{should} cmd --force-yes end And by the way, could you explain the options in the package? Thank you very much for everything. Best regards! -- 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: copying file(s) from agent to master??
On Jan 11, 6:12 am, Nan Liu n...@puppetlabs.com wrote: I think it's /var/lib/puppet/bucket instead of clientbucket on the server side. As I already said: don't see it in the /var/lib/puppet/bucket either. Hope I'm not missing anything here. cheers!! -- 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.
Re: [Puppet Users] Explanation of the resource package, little information in reference type
Hi, On 01/11/2012 12:19 PM, Antonio Xanxess wrote: What I want is to add the option --force-yes to the command to force the installation of the parcel. when truly in this kind of pinch, I have used exec {} rather than package {} in the past to supply this parameter. It's much better practice to tell puppet how to eliminate the root of the problem so that you don't need --force-yes in the first place. What's the specific issue in your case? Cheers, Felix -- 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] Something wrong with puppet-users group?
All my other Google Groups load pretty quickly. Puppet-users is very slow and often times out. -- 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.
Re: [Puppet Users] I am looking to try to mixing sounrce and content in a file instance
Thanks for responding, Felix - Felix Frank felix.fr...@alumni.tu-berlin.de wrote: Hi, On 01/10/2012 07:05 PM, Dan White wrote: I am trying to design flexibility, and I am finding a conflict of purpose between the source snd content metaparameters. is there a practical use case that actually requires that much flexibility? It could be overkill, but I would rather have too much than too little. One motivation is that a group of admins will be maintaining this eventually. This approach appeals to me because it only requires manipulation of files rather than messing with manifests/nodes/definitions. Does that make sense ? Could we talk about how I might implement this rather than the validity of the use case ? In the design scheme you've sketched, I would assume that there is a specific $myType value that should have your resource rely on a list of source URLs. Am I wrong? Not really. I expect the templates (one for each $myType variation/value) will cover 99% of the cases. I am the kind of guy to sweat over that last 1% :) If not, you'd need to change the manifest layout (if you're not wrapping the file {} type in a defined type, you should definitely start doing so) and this should be quite possible. At this point in my system design, this only applies to the one class, so I do not see the advantage of wrapping it in a define. If I find I need to re-use this recipe, a define wrapper makes sense, but I need to make it work first. “Sometimes I think the surest sign that intelligent life exists elsewhere in the universe is that none of it has tried to contact us.” Bill Waterson (Calvin Hobbes) -- 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: Puppet proxies
I'm not looking to create Puppet environments in AWS. Rather the opposite: use Puppet to configure AWS services, including things like RDS, ElastiCache, ELB, that can't have puppet agents running on them. I had hoped to use CloudFormation itself for that purpose. Their support for change management is still incomplete. Without change management CF is IMHO worse than useless. The only thing I'm unsure of is how/where to run my proxy. Seems like the simplest way to do it is to run a single puppet agent somewhere (maybe even on the master machine). Then create the necessary AWS- control modules and include them in the manifest for my proxy node. I wonder if it might be useful to add the concept of a pseudo-node to puppet for cases like this. On Jan 10, 5:13 pm, Michael Stahnke stah...@puppetlabs.com wrote: On Tue, Jan 10, 2012 at 3:12 PM, Jeff Sussna j...@ingineering.it wrote: I've seen a couple of examples of using puppet to control services where you can't run a puppet agent on the resource. As far as I can tell they work by having puppet proxy through some external-service control mechanism, such as fog. The question is: where does the proxy run? I assume a puppet agent needs to run somewhere. Where do you put that agent, how do you configure it, and how do you identify it as a puppet node? I'm having visions of sugar plum fairies at the thought of using Puppet to do what CloudFormation does (automate the configuration of an entire AWS environment). But it's not clear to me how to wire it together. You might have a look athttp://puppetlabs.com/blog/using-cloudformation-to-build-out-fully-fu... -- 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 athttp://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-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.
Re: [Puppet Users] Something wrong with puppet-users group?
Jeff Sussna wrote: All my other Google Groups load pretty quickly. Puppet-users is very slow and often times out. Yes - I just noticed this and I am not sure what's happening. We've only got 30K messages. I am unsure if that's a lot and perhaps causing an issue? Regards James Turnbull -- James Turnbull Puppet Labs 1-503-734-8571 To schedule a meeting with me: http://tungle.me/jamtur01 -- 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: Something wrong with puppet-users group?
FWIW It's an order of magnitude bigger than any of the other groups I subscribe to. If you go directly to http://groups.google.com/group/puppet-users/topics?hl=en it loads just fine. On Jan 11, 9:16 am, James Turnbull ja...@puppetlabs.com wrote: Jeff Sussna wrote: All my other Google Groups load pretty quickly. Puppet-users is very slow and often times out. Yes - I just noticed this and I am not sure what's happening. We've only got 30K messages. I am unsure if that's a lot and perhaps causing an issue? Regards James Turnbull -- James Turnbull Puppet Labs 1-503-734-8571 To schedule a meeting with me:http://tungle.me/jamtur01 -- 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] How to concat attribut
Hi everyone, Let's say that I have declared a virtual ressource as follow: @group { 'test': gid = '999', tag = [ 'test' ], } Is that possible to do some kind of + later on? like that Group['test'] { tag + ['foo'] } Because when I want to create the virtual ressource I have no idea what all the tags will be. Regards, JM -- 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.
Re: [Puppet Users] Re: tagmail issue
Hi Nan, On Tue, Jan 10, 2012 at 11:56:20PM -0600, Nan Liu wrote: See below: On Tue, Jan 10, 2012 at 2:18 PM, Ashley Gould ago...@ucop.edu wrote: I have found a work around, but I would still like to understand what is correct behavior. Not sure what you mean, the only clarification is the notify resource will always result in a changed resource, guarantee you get transaction report with that tag on every single puppet run, While a regular tag resource will trigger tagmail only if there are changes/failure to that resource (or in another word the resource is not in desired state). If the tagged resource changed and tagmail didn't generate a report, I would consider it a bug. This helps my understanding a lot. thanks. There is no bug. I was using tags wrong. I was trying to get tagmail to warn us whenever the adinfo_mode fact returns disconnected using an if statement. No resourse was being changed. I used the notify resource instead of tag metaparam: if $::adinfo_mode == disconnected { notify { disconnected: message = AD client in disconnected state, } } As long you are ok with this resulting in a changed resource on every puppet run. In this pariticular case the notify resource is appropriate, since all I want is warning of an error state. I am in process of writing a class to repair the error. I will play with tags in that context. This creats a logs object in the report which can then be accessed by tagmail: logs: - !ruby/object:Puppet::Util::Log level: !ruby/sym notice message: id010 AD client in disconnected state source: Puppet tags: - notice time: 2012-01-10 03:58:15.641172 -08:00 version: 2.6.4 - !ruby/object:Puppet::Util::Log file: id002 /data/puppet/production/modules/centrify/manifests/init.pp level: !ruby/sym notice line: 87 message: id011 defined 'message' as 'AD client in disconnected state' source: id012 /Stage[main]/Centrify/Notify[disconnected]/message tags: - notice - notify - disconnected - class - centrify - suse_base - common::suse - common - suse - node - default time: 2012-01-10 03:58:15.641953 -08:00 Clearly this does not correspond to any tagmail documentation, and it seems a round-about way to configure things. Is this a recommended approach? On Fri, Jan 06, 2012 at 05:45:42PM -0800, Ashley Gould wrote: Hi list, I am setting up tagmail. I have it working fine for loglevel tags such as all and err and notice. puppetmaster send email, and I recieve them. all good. but when I setup tagmail for user defined tags no email is sent. (I varified by checking postfix logs on the puppetmaster server.) master and agents are version 2.6.4 # /etc/puppet/tagmail.conf: #all: ago...@ucop.edu #err: ago...@ucop.edu #notice: ago...@ucop.edu connected: ago...@ucop.edu # manifest that sets my tag: class centrify { notice(adinfo_mode is '$::adinfo_mode') if $::adinfo_mode == connected { tag(connected) } package { CentrifyDC: ensure = present, provider = zypper, } } # puppetmaster log sees the notice: Jan 6 17:39:41 unxpupp01 puppet-master[9541]: (Scope(Class[Centrify])) adinfo_mode is 'connected' Jan 6 17:39:41 unxpupp01 puppet-master[9541]: Compiled catalog for sl11lab01-vhost.ucop.edu in environment dev_ashley in 0.39 seconds # Stored yaml report shows tag got set: unxpupp01:/logs/puppet/reports/sl11lab01-vhost.ucop.edu # grep -B10 connected 201201070139.yaml file: /data/puppet/dev_ashley/modules/centrify/manifests/init.pp line: 26 resource: Package[CentrifyDC] source_description: /Stage[main]/Centrify/Package[CentrifyDC] tags: - package - centrifydc - class - centrify - node - sl11lab01-vhost - connected In this partial output log, I don't see the resource changed, so I don't think it should trigger tagmail. Here's an example a package resource that changed during a puppet run (key difference Puppet::Transaction::Event): - !ruby/object:Puppet::Util::Log file: id002 /tmp/httpd.pp level: !ruby/sym notice line: 3 message: id001 created source: /Stage[main]//Package[httpd]/ensure tags: - notice - package - httpd - class ... - !ruby/object:Puppet::Transaction::Event audited: false desired_value: !ruby/sym present historical_value: message: *id001 name: !ruby/sym package_installed previous_value: !ruby/sym absent property:
Re: [Puppet Users] Re: Yum issues
josbal joshua.baldock at gmail.com writes: Thanks guys. I will give both your suggestions a try and see how i get on. --~--~-~--~~~---~--~~ 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 at googlegroups.com To unsubscribe from this group, send email to puppet-users+unsubscribe at googlegroups.com For more options, visit this group at http://groups.google.com/group/puppet- users?hl=en -~--~~~~--~~--~--~--- I'm getting the same error message while installing via puppet. It works fine if I pull all package information via yum or try to download the package manually. - JM -- 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] augeas error: Could not evaluate: unknown error - Failed to initialize Augeas
Hi, I am running puppet 2.6.12 on a SLES11SP1 server. I get the following error message as part of the puppet catalog run on a SLED11SP1 client. Augeas[sap_host_entries](provider=augeas): Opening augeas with root /, lens path , flags 0 err: /Stage[main]/Sap/Augeas[sap_host_entries]: Could not evaluate: unknown error - Failed to initialize Augeas Can somebody shed some light on the error message above The test module (code listing below) i have created attempts to add a comment line to the /etc/hosts file on the client machine. I have tested the module on the server with augtool and it works correctly. class sap { augeas { sap_host_entries: context = /files/etc/hosts, changes = [ set #comment[last()+1] 'Sap-specific-hosts', ], } } On the client I have the following augeas and ruby vendor based packages installed augeas-devel-0.8.1-7.8.2 libaugeas0-0.8.1-7.8.2 ruby-devel-1.8.7.p72-5.30.5 rubygem-rake-0.8.7-0.1.4 ruby-1.8.7.p72-5.30.5 rubygems-1.3.7-1.3.3 On the server i have the following augeas and ruby vendor based packages installed augeas-0.8.1-7.8.2 augeas-lenses-0.8.1-7.8.2 libaugeas0-0.8.1-7.8.2 Cheers Lawrie -- 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.
Re: [Puppet Users] augeas error: Could not evaluate: unknown error - Failed to initialize Augeas
- Original Message - augeas-devel-0.8.1-7.8.2 libaugeas0-0.8.1-7.8.2 ruby-devel-1.8.7.p72-5.30.5 rubygem-rake-0.8.7-0.1.4 ruby-1.8.7.p72-5.30.5 rubygems-1.3.7-1.3.3 also need the augeas ruby bindings -- 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.
Re: [Puppet Users] Re: Puppet proxies
On Wed, Jan 11, 2012 at 8:57 AM, Jeff Sussna j...@ingineering.it wrote: I'm not looking to create Puppet environments in AWS. Rather the opposite: use Puppet to configure AWS services, including things like RDS, ElastiCache, ELB, that can't have puppet agents running on them. I had hoped to use CloudFormation itself for that purpose. Their support for change management is still incomplete. Without change management CF is IMHO worse than useless. Yeah, at the moment that's one of the killer limitations of Cloudformation. The only thing I'm unsure of is how/where to run my proxy. Seems like the simplest way to do it is to run a single puppet agent somewhere (maybe even on the master machine). Then create the necessary AWS- control modules and include them in the manifest for my proxy node. How do you plan to configure EC2 services? through existing EC2 command line tools, fog, or some other third party tool? I wonder if it might be useful to add the concept of a pseudo-node to puppet for cases like this. In Puppet 2.7 the puppet device application was introduced to support network devices that can't run puppet agent. A proxy puppet agent server will interact with the puppet master and enforce the catalog by configuring the device through the configured transport. Puppet device is extensible, and this actually suitable beyond network device for things like storage, and possibly your use case for configuring EC2 resources. It would be really awesome to extend support for EC2. Here's an example how we could model EC2 resources and use puppet device to manage it. /etc/puppet/ec2.conf [amazon] fog /path/to/fog.credentials on the master specify the amazon node and puppet device will manage those EC2 resources. node amazon { ec2_instance {...} ec2_rds {...} ec2_s3 {...} } $ puppet device --deviceconfig /etc/puppet/ec2.conf Things like s3, rds are simple to map, because we can specify the name of the instance on creation: ec2_rds { 'demodb': ensure = present, class = 'db.m1.small', engine = 'mysql', zone = 'us/east', username = '...', ... } But for instances, vpc this is a bit more problematic because the instance_id is determined after they are launched. Also I think for production use cases, people probably don't care about the instance_id, but rather how many systems of this role I need with this ami-id perhaps. This is one of the areas I need some feedback and suggestion. For instances perhaps: ec2_instances { instance_name (???): instance_id = 'can't really manage this.', ... } ec2_vpc { ??? what uniquely identifies this ???: ... } I'm definitely looking see if there's interest and whether the model above fits people usage of EC2. Thanks, Nan -- 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.