Hi All, I''m trying to use different environment for my servers management. I''am able to use different classes, modules... for each environment but I can''t find how to specify fileserver configuration for each environement. Here is a piece of my configuration : 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 autosign=true certname = pup05401.grpldc.com environments = production,testing environment=production [production] manifest=/etc/puppet/production/manifests/site.pp manifestdir=/etc/puppet/production/manifests modulepath=/etc/puppet/production/modules templatedir=/etc/puppet/production/templates fileserverconfig=/etc/puppet/production/fileserver.conf [testing] manifest=/etc/puppet/testing/manifests/site.pp manifestdir=/etc/puppet/testing/manifests modulepath=/etc/puppet/testing/modules templatedir=/etc/puppet/testing/templates fileserverconfig=/etc/puppet/testing/fileserver.conf testing/fileserver.conf [files] path /etc/puppet/testing/files allow *.mydomain.com When using this configuration, I get unauthorized access to files. Reason is puppetmaster can''t find file server configuration : debug: No file server configuration file; autocreating modules mount with default permissions Is it possible to manage a fileserverconfig for each environment ? Thanks for your help. Serge -- 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+unsubscribe@googlegroups.com. For more options, visit this group at http://groups.google.com/group/puppet-users?hl=en.
What revision of puppet are you running? This doesn''t work for me in 0.25.4 either. However ... I''m going to take a wild guess and imagine you want to have 3 fileserver.conf files because of the need for differing ''path'' items per environment using the [files] block. Let me suggest an alternative to your approach that I know works. Instead of storing your files in /etc/puppet/<env>/files store your files in modules. You may very well have a legit reason for wanting a more global ''files'' dir for all your files, however its generally nicer to organise files close to the modules that need them. If you are storing your files in modules, you only 1 filerserver.conf that looks something like this: [modules] # your ip ranges obviously allow 1.2.3.4/24 allow 4.3.2.1/24 And path is not needed. You only need 1 fileserver.conf then ... Then - instead of storing your files in /etc/puppet/<env>/files you store your files in your modules. ie: /etc/puppet/<env>/<modulename>/files/<yourfile> And reference them using the syntax: file{"/tmp/foo": source => "puppet:///<modulename>/<yourfile> } Most narratives I hear revolve around modules, I''d say its the path of least resistance. If you want a single location for your companies files you could always put them in a specific module. ken. On Apr 1, 10:13 am, Serge Dewailly <serge.dewai...@openevents.fr> wrote:> Hi All, > > I''m trying to use different environment for my servers management. I''am > able to use different classes, modules... for each environment but I > can''t find how to specify fileserver configuration for each environement. > > Here is a piece of my configuration : > > 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 > autosign=true > certname = pup05401.grpldc.com > environments = production,testing > environment=production > > [production] > manifest=/etc/puppet/production/manifests/site.pp > manifestdir=/etc/puppet/production/manifests > modulepath=/etc/puppet/production/modules > templatedir=/etc/puppet/production/templates > fileserverconfig=/etc/puppet/production/fileserver.conf > > [testing] > manifest=/etc/puppet/testing/manifests/site.pp > manifestdir=/etc/puppet/testing/manifests > modulepath=/etc/puppet/testing/modules > templatedir=/etc/puppet/testing/templates > fileserverconfig=/etc/puppet/testing/fileserver.conf > > testing/fileserver.conf > [files] > path /etc/puppet/testing/files > allow *.mydomain.com > > When using this configuration, I get unauthorized access to files. > Reason is puppetmaster can''t find file server configuration : > > debug: No file server configuration file; autocreating modules mount > with default permissions > > Is it possible to manage a fileserverconfig for each environment ? > > Thanks for your help. > Serge-- 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+unsubscribe@googlegroups.com. For more options, visit this group at http://groups.google.com/group/puppet-users?hl=en.
Serge Dewailly
2010-Apr-02 13:37 UTC
Re: [Puppet Users] Re: Puppet environment + fileserver
Hi, Thanks for your response. I forgot to mention Puppet version in use, sorry about that. I''m using version 0.25.1. Thanks for your approach about storing files in modules path. I will try to work around with that. In a ideal world, I would keep my two environments in completly separate directories, since I will maintaining configuration with a git. But if it is not possible for the moment... I thought about another solution using two puppet instance. But didn''t try it, and don''t know if it will be easy to maintain. Last solution could be giving environment in path : file{"/tmp/foo": source => "puppet:///files/$environment/<yourfile>" } fileserverconf looks like this : [File] path /etc/puppet/files Thanks for your help. Serge. Le 01/04/10 23:16, Ken a écrit :> What revision of puppet are you running? This doesn''t work for me in > 0.25.4 either. However ... > > I''m going to take a wild guess and imagine you want to have 3 > fileserver.conf files because of the need for differing ''path'' items > per environment using the [files] block. Let me suggest an alternative > to your approach that I know works. > > Instead of storing your files in /etc/puppet/<env>/files store your > files in modules. You may very well have a legit reason for wanting a > more global ''files'' dir for all your files, however its generally > nicer to organise files close to the modules that need them. If you > are storing your files in modules, you only 1 filerserver.conf that > looks something like this: > > [modules] > # your ip ranges obviously > allow 1.2.3.4/24 > allow 4.3.2.1/24 > > And path is not needed. You only need 1 fileserver.conf then ... > > Then - instead of storing your files in /etc/puppet/<env>/files you > store your files in your modules. ie: > > /etc/puppet/<env>/<modulename>/files/<yourfile> > > And reference them using the syntax: > > file{"/tmp/foo": > source => "puppet:///<modulename>/<yourfile> > } > > Most narratives I hear revolve around modules, I''d say its the path of > least resistance. If you want a single location for your companies > files you could always put them in a specific module. > > ken. > > On Apr 1, 10:13 am, Serge Dewailly<serge.dewai...@openevents.fr> > wrote: >> Hi All, >> >> I''m trying to use different environment for my servers management. I''am >> able to use different classes, modules... for each environment but I >> can''t find how to specify fileserver configuration for each environement. >> >> Here is a piece of my configuration : >> >> 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 >> autosign=true >> certname = pup05401.grpldc.com >> environments = production,testing >> environment=production >> >> [production] >> manifest=/etc/puppet/production/manifests/site.pp >> manifestdir=/etc/puppet/production/manifests >> modulepath=/etc/puppet/production/modules >> templatedir=/etc/puppet/production/templates >> fileserverconfig=/etc/puppet/production/fileserver.conf >> >> [testing] >> manifest=/etc/puppet/testing/manifests/site.pp >> manifestdir=/etc/puppet/testing/manifests >> modulepath=/etc/puppet/testing/modules >> templatedir=/etc/puppet/testing/templates >> fileserverconfig=/etc/puppet/testing/fileserver.conf >> >> testing/fileserver.conf >> [files] >> path /etc/puppet/testing/files >> allow *.mydomain.com >> >> When using this configuration, I get unauthorized access to files. >> Reason is puppetmaster can''t find file server configuration : >> >> debug: No file server configuration file; autocreating modules mount >> with default permissions >> >> Is it possible to manage a fileserverconfig for each environment ? >> >> Thanks for your help. >> Serge >-- 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+unsubscribe@googlegroups.com. For more options, visit this group at http://groups.google.com/group/puppet-users?hl=en.
Hi, Maybe I''m missing something here, but why not just store the files in the modules? do you need to provide different access level to your modules based on environments? Ohad On Fri, Apr 2, 2010 at 9:37 PM, Serge Dewailly <serge.dewailly@openevents.fr> wrote:> Hi, > > Thanks for your response. I forgot to mention Puppet version in use, sorry > about that. I''m using version 0.25.1. > > Thanks for your approach about storing files in modules path. > I will try to work around with that. > In a ideal world, I would keep my two environments in completly separate > directories, since I will maintaining configuration with a git. > > But if it is not possible for the moment... > > I thought about another solution using two puppet instance. But didn''t try > it, and don''t know if it will be easy to maintain. > > Last solution could be giving environment in path : > > file{"/tmp/foo": > source => "puppet:///files/$environment/<yourfile>" > } > > fileserverconf looks like this : > [File] > path /etc/puppet/files > > Thanks for your help. > Serge. > > Le 01/04/10 23:16, Ken a écrit : > > What revision of puppet are you running? This doesn''t work for me in >> 0.25.4 either. However ... >> >> I''m going to take a wild guess and imagine you want to have 3 >> fileserver.conf files because of the need for differing ''path'' items >> per environment using the [files] block. Let me suggest an alternative >> to your approach that I know works. >> >> Instead of storing your files in /etc/puppet/<env>/files store your >> files in modules. You may very well have a legit reason for wanting a >> more global ''files'' dir for all your files, however its generally >> nicer to organise files close to the modules that need them. If you >> are storing your files in modules, you only 1 filerserver.conf that >> looks something like this: >> >> [modules] >> # your ip ranges obviously >> allow 1.2.3.4/24 >> allow 4.3.2.1/24 >> >> And path is not needed. You only need 1 fileserver.conf then ... >> >> Then - instead of storing your files in /etc/puppet/<env>/files you >> store your files in your modules. ie: >> >> /etc/puppet/<env>/<modulename>/files/<yourfile> >> >> And reference them using the syntax: >> >> file{"/tmp/foo": >> source => "puppet:///<modulename>/<yourfile> >> } >> >> Most narratives I hear revolve around modules, I''d say its the path of >> least resistance. If you want a single location for your companies >> files you could always put them in a specific module. >> >> ken. >> >> On Apr 1, 10:13 am, Serge Dewailly<serge.dewai...@openevents.fr> >> wrote: >> >>> Hi All, >>> >>> I''m trying to use different environment for my servers management. I''am >>> able to use different classes, modules... for each environment but I >>> can''t find how to specify fileserver configuration for each environement. >>> >>> Here is a piece of my configuration : >>> >>> 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 >>> autosign=true >>> certname = pup05401.grpldc.com >>> environments = production,testing >>> environment=production >>> >>> [production] >>> manifest=/etc/puppet/production/manifests/site.pp >>> manifestdir=/etc/puppet/production/manifests >>> modulepath=/etc/puppet/production/modules >>> templatedir=/etc/puppet/production/templates >>> fileserverconfig=/etc/puppet/production/fileserver.conf >>> >>> [testing] >>> manifest=/etc/puppet/testing/manifests/site.pp >>> manifestdir=/etc/puppet/testing/manifests >>> modulepath=/etc/puppet/testing/modules >>> templatedir=/etc/puppet/testing/templates >>> fileserverconfig=/etc/puppet/testing/fileserver.conf >>> >>> testing/fileserver.conf >>> [files] >>> path /etc/puppet/testing/files >>> allow *.mydomain.com >>> >>> When using this configuration, I get unauthorized access to files. >>> Reason is puppetmaster can''t find file server configuration : >>> >>> debug: No file server configuration file; autocreating modules mount >>> with default permissions >>> >>> Is it possible to manage a fileserverconfig for each environment ? >>> >>> Thanks for your help. >>> Serge >>> >> >> > -- > 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+unsubscribe@googlegroups.com<puppet-users%2Bunsubscribe@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+unsubscribe@googlegroups.com. For more options, visit this group at http://groups.google.com/group/puppet-users?hl=en.
Nigel Kersten
2010-Apr-02 13:58 UTC
Re: [Puppet Users] Re: Puppet environment + fileserver
On Fri, Apr 2, 2010 at 6:53 AM, Ohad Levy <ohadlevy@gmail.com> wrote:> Hi, > Maybe I''m missing something here, but why not just store the files in the > modules? do you need to provide different access level to your modules based > on environments?Can''t you do this anyway in auth.conf even for files in modules with the rest api?> Ohad > > On Fri, Apr 2, 2010 at 9:37 PM, Serge Dewailly > <serge.dewailly@openevents.fr> wrote: >> >> Hi, >> >> Thanks for your response. I forgot to mention Puppet version in use, sorry >> about that. I''m using version 0.25.1. >> >> Thanks for your approach about storing files in modules path. >> I will try to work around with that. >> In a ideal world, I would keep my two environments in completly separate >> directories, since I will maintaining configuration with a git. >> >> But if it is not possible for the moment... >> >> I thought about another solution using two puppet instance. But didn''t try >> it, and don''t know if it will be easy to maintain. >> >> Last solution could be giving environment in path : >> >> file{"/tmp/foo": >> source => "puppet:///files/$environment/<yourfile>" >> } >> >> fileserverconf looks like this : >> [File] >> path /etc/puppet/files >> >> Thanks for your help. >> Serge. >> >> Le 01/04/10 23:16, Ken a écrit : >>> >>> What revision of puppet are you running? This doesn''t work for me in >>> 0.25.4 either. However ... >>> >>> I''m going to take a wild guess and imagine you want to have 3 >>> fileserver.conf files because of the need for differing ''path'' items >>> per environment using the [files] block. Let me suggest an alternative >>> to your approach that I know works. >>> >>> Instead of storing your files in /etc/puppet/<env>/files store your >>> files in modules. You may very well have a legit reason for wanting a >>> more global ''files'' dir for all your files, however its generally >>> nicer to organise files close to the modules that need them. If you >>> are storing your files in modules, you only 1 filerserver.conf that >>> looks something like this: >>> >>> [modules] >>> # your ip ranges obviously >>> allow 1.2.3.4/24 >>> allow 4.3.2.1/24 >>> >>> And path is not needed. You only need 1 fileserver.conf then ... >>> >>> Then - instead of storing your files in /etc/puppet/<env>/files you >>> store your files in your modules. ie: >>> >>> /etc/puppet/<env>/<modulename>/files/<yourfile> >>> >>> And reference them using the syntax: >>> >>> file{"/tmp/foo": >>> source => "puppet:///<modulename>/<yourfile> >>> } >>> >>> Most narratives I hear revolve around modules, I''d say its the path of >>> least resistance. If you want a single location for your companies >>> files you could always put them in a specific module. >>> >>> ken. >>> >>> On Apr 1, 10:13 am, Serge Dewailly<serge.dewai...@openevents.fr> >>> wrote: >>>> >>>> Hi All, >>>> >>>> I''m trying to use different environment for my servers management. I''am >>>> able to use different classes, modules... for each environment but I >>>> can''t find how to specify fileserver configuration for each >>>> environement. >>>> >>>> Here is a piece of my configuration : >>>> >>>> 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 >>>> autosign=true >>>> certname = pup05401.grpldc.com >>>> environments = production,testing >>>> environment=production >>>> >>>> [production] >>>> manifest=/etc/puppet/production/manifests/site.pp >>>> manifestdir=/etc/puppet/production/manifests >>>> modulepath=/etc/puppet/production/modules >>>> templatedir=/etc/puppet/production/templates >>>> fileserverconfig=/etc/puppet/production/fileserver.conf >>>> >>>> [testing] >>>> manifest=/etc/puppet/testing/manifests/site.pp >>>> manifestdir=/etc/puppet/testing/manifests >>>> modulepath=/etc/puppet/testing/modules >>>> templatedir=/etc/puppet/testing/templates >>>> fileserverconfig=/etc/puppet/testing/fileserver.conf >>>> >>>> testing/fileserver.conf >>>> [files] >>>> path /etc/puppet/testing/files >>>> allow *.mydomain.com >>>> >>>> When using this configuration, I get unauthorized access to files. >>>> Reason is puppetmaster can''t find file server configuration : >>>> >>>> debug: No file server configuration file; autocreating modules mount >>>> with default permissions >>>> >>>> Is it possible to manage a fileserverconfig for each environment ? >>>> >>>> Thanks for your help. >>>> Serge >>> >> >> -- >> 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+unsubscribe@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+unsubscribe@googlegroups.com. > For more options, visit this group at > http://groups.google.com/group/puppet-users?hl=en. >-- nigel -- 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+unsubscribe@googlegroups.com. For more options, visit this group at http://groups.google.com/group/puppet-users?hl=en.
Serge Dewailly
2010-Apr-02 13:58 UTC
Re: [Puppet Users] Re: Puppet environment + fileserver
No I don''t need different access level, but it makes strange configuration if in a class (say /etc/puppet/production/manifest/test.pp) I use something like that : file{"/tmp/foo": source => "puppet:///modules/<yourfile>" } Is it a good idea to acces file from modules dir within a class (a class not in a module...) ? Serge. Le 02/04/10 15:53, Ohad Levy a écrit :> Hi, > > Maybe I''m missing something here, but why not just store the files in > the modules? do you need to provide different access level to your > modules based on environments? > > Ohad > > On Fri, Apr 2, 2010 at 9:37 PM, Serge Dewailly > <serge.dewailly@openevents.fr <mailto:serge.dewailly@openevents.fr>> wrote: > > Hi, > > Thanks for your response. I forgot to mention Puppet version in use, > sorry about that. I''m using version 0.25.1. > > Thanks for your approach about storing files in modules path. > I will try to work around with that. > In a ideal world, I would keep my two environments in completly > separate directories, since I will maintaining configuration with a git. > > But if it is not possible for the moment... > > I thought about another solution using two puppet instance. But > didn''t try it, and don''t know if it will be easy to maintain. > > Last solution could be giving environment in path : > > file{"/tmp/foo": > source => "puppet:///files/$environment/<yourfile>" > } > > fileserverconf looks like this : > [File] > path /etc/puppet/files > > Thanks for your help. > Serge. > > Le 01/04/10 23:16, Ken a écrit : > > What revision of puppet are you running? This doesn''t work for me in > 0.25.4 either. However ... > > I''m going to take a wild guess and imagine you want to have 3 > fileserver.conf files because of the need for differing ''path'' items > per environment using the [files] block. Let me suggest an > alternative > to your approach that I know works. > > Instead of storing your files in /etc/puppet/<env>/files store your > files in modules. You may very well have a legit reason for > wanting a > more global ''files'' dir for all your files, however its generally > nicer to organise files close to the modules that need them. If you > are storing your files in modules, you only 1 filerserver.conf that > looks something like this: > > [modules] > # your ip ranges obviously > allow 1.2.3.4/24 <http://1.2.3.4/24> > allow 4.3.2.1/24 <http://4.3.2.1/24> > > And path is not needed. You only need 1 fileserver.conf then ... > > Then - instead of storing your files in /etc/puppet/<env>/files you > store your files in your modules. ie: > > /etc/puppet/<env>/<modulename>/files/<yourfile> > > And reference them using the syntax: > > file{"/tmp/foo": > source => "puppet:///<modulename>/<yourfile> > } > > Most narratives I hear revolve around modules, I''d say its the > path of > least resistance. If you want a single location for your companies > files you could always put them in a specific module. > > ken. > > On Apr 1, 10:13 am, Serge Dewailly<serge.dewai...@openevents.fr > <mailto:serge.dewai...@openevents.fr>> > wrote: > > Hi All, > > I''m trying to use different environment for my servers > management. I''am > able to use different classes, modules... for each > environment but I > can''t find how to specify fileserver configuration for each > environement. > > Here is a piece of my configuration : > > 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 > autosign=true > certname = pup05401.grpldc.com > <http://pup05401.grpldc.com> > environments = production,testing > environment=production > > [production] > manifest=/etc/puppet/production/manifests/site.pp > manifestdir=/etc/puppet/production/manifests > modulepath=/etc/puppet/production/modules > templatedir=/etc/puppet/production/templates > fileserverconfig=/etc/puppet/production/fileserver.conf > > [testing] > manifest=/etc/puppet/testing/manifests/site.pp > manifestdir=/etc/puppet/testing/manifests > modulepath=/etc/puppet/testing/modules > templatedir=/etc/puppet/testing/templates > fileserverconfig=/etc/puppet/testing/fileserver.conf > > testing/fileserver.conf > [files] > path /etc/puppet/testing/files > allow *.mydomain.com <http://mydomain.com> > > When using this configuration, I get unauthorized access to > files. > Reason is puppetmaster can''t find file server configuration : > > debug: No file server configuration file; autocreating > modules mount > with default permissions > > Is it possible to manage a fileserverconfig for each > environment ? > > Thanks for your help. > Serge > > > > -- > 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 > <mailto:puppet-users@googlegroups.com>. > To unsubscribe from this group, send email to > puppet-users+unsubscribe@googlegroups.com > <mailto:puppet-users%2Bunsubscribe@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+unsubscribe@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+unsubscribe@googlegroups.com. For more options, visit this group at http://groups.google.com/group/puppet-users?hl=en.
Nigel Kersten
2010-Apr-02 14:05 UTC
Re: [Puppet Users] Re: Puppet environment + fileserver
On Fri, Apr 2, 2010 at 6:58 AM, Serge Dewailly <serge.dewailly@openevents.fr> wrote:> No I don''t need different access level, but it makes strange configuration > if in a class (say /etc/puppet/production/manifest/test.pp) I use something > like that : > > file{"/tmp/foo": > source => "puppet:///modules/<yourfile>" > } > > Is it a good idea to acces file from modules dir within a class (a class not > in a module...) ?Why can''t you put all your classes in modules ?> > Serge. > > Le 02/04/10 15:53, Ohad Levy a écrit : >> >> Hi, >> >> Maybe I''m missing something here, but why not just store the files in >> the modules? do you need to provide different access level to your >> modules based on environments? >> >> Ohad >> >> On Fri, Apr 2, 2010 at 9:37 PM, Serge Dewailly >> <serge.dewailly@openevents.fr <mailto:serge.dewailly@openevents.fr>> >> wrote: >> >> Hi, >> >> Thanks for your response. I forgot to mention Puppet version in use, >> sorry about that. I''m using version 0.25.1. >> >> Thanks for your approach about storing files in modules path. >> I will try to work around with that. >> In a ideal world, I would keep my two environments in completly >> separate directories, since I will maintaining configuration with a >> git. >> >> But if it is not possible for the moment... >> >> I thought about another solution using two puppet instance. But >> didn''t try it, and don''t know if it will be easy to maintain. >> >> Last solution could be giving environment in path : >> >> file{"/tmp/foo": >> source => "puppet:///files/$environment/<yourfile>" >> } >> >> fileserverconf looks like this : >> [File] >> path /etc/puppet/files >> >> Thanks for your help. >> Serge. >> >> Le 01/04/10 23:16, Ken a écrit : >> >> What revision of puppet are you running? This doesn''t work for me >> in >> 0.25.4 either. However ... >> >> I''m going to take a wild guess and imagine you want to have 3 >> fileserver.conf files because of the need for differing ''path'' >> items >> per environment using the [files] block. Let me suggest an >> alternative >> to your approach that I know works. >> >> Instead of storing your files in /etc/puppet/<env>/files store your >> files in modules. You may very well have a legit reason for >> wanting a >> more global ''files'' dir for all your files, however its generally >> nicer to organise files close to the modules that need them. If you >> are storing your files in modules, you only 1 filerserver.conf that >> looks something like this: >> >> [modules] >> # your ip ranges obviously >> allow 1.2.3.4/24 <http://1.2.3.4/24> >> allow 4.3.2.1/24 <http://4.3.2.1/24> >> >> And path is not needed. You only need 1 fileserver.conf then ... >> >> Then - instead of storing your files in /etc/puppet/<env>/files you >> store your files in your modules. ie: >> >> /etc/puppet/<env>/<modulename>/files/<yourfile> >> >> And reference them using the syntax: >> >> file{"/tmp/foo": >> source => "puppet:///<modulename>/<yourfile> >> } >> >> Most narratives I hear revolve around modules, I''d say its the >> path of >> least resistance. If you want a single location for your companies >> files you could always put them in a specific module. >> >> ken. >> >> On Apr 1, 10:13 am, Serge Dewailly<serge.dewai...@openevents.fr >> <mailto:serge.dewai...@openevents.fr>> >> wrote: >> >> Hi All, >> >> I''m trying to use different environment for my servers >> management. I''am >> able to use different classes, modules... for each >> environment but I >> can''t find how to specify fileserver configuration for each >> environement. >> >> Here is a piece of my configuration : >> >> 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 >> autosign=true >> certname = pup05401.grpldc.com >> <http://pup05401.grpldc.com> >> environments = production,testing >> environment=production >> >> [production] >> manifest=/etc/puppet/production/manifests/site.pp >> manifestdir=/etc/puppet/production/manifests >> modulepath=/etc/puppet/production/modules >> templatedir=/etc/puppet/production/templates >> >> fileserverconfig=/etc/puppet/production/fileserver.conf >> >> [testing] >> manifest=/etc/puppet/testing/manifests/site.pp >> manifestdir=/etc/puppet/testing/manifests >> modulepath=/etc/puppet/testing/modules >> templatedir=/etc/puppet/testing/templates >> fileserverconfig=/etc/puppet/testing/fileserver.conf >> >> testing/fileserver.conf >> [files] >> path /etc/puppet/testing/files >> allow *.mydomain.com <http://mydomain.com> >> >> When using this configuration, I get unauthorized access to >> files. >> Reason is puppetmaster can''t find file server configuration : >> >> debug: No file server configuration file; autocreating >> modules mount >> with default permissions >> >> Is it possible to manage a fileserverconfig for each >> environment ? >> >> Thanks for your help. >> Serge >> >> >> >> -- >> 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 >> <mailto:puppet-users@googlegroups.com>. >> To unsubscribe from this group, send email to >> puppet-users+unsubscribe@googlegroups.com >> <mailto:puppet-users%2Bunsubscribe@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+unsubscribe@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+unsubscribe@googlegroups.com. > For more options, visit this group at > http://groups.google.com/group/puppet-users?hl=en. > >-- nigel -- 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+unsubscribe@googlegroups.com. For more options, visit this group at http://groups.google.com/group/puppet-users?hl=en.
Serge Dewailly
2010-Apr-02 14:26 UTC
Re: [Puppet Users] Re: Puppet environment + fileserver
I though module were used when having multiple files to a single service, or when wanting a stand-alone configuration (to make it portable). Anyway, I think I will use your solution since it will respect my needs... lots of changes to make ! :) Thanks again for your help. Serge. Le 02/04/10 16:05, Nigel Kersten a écrit :> On Fri, Apr 2, 2010 at 6:58 AM, Serge Dewailly > <serge.dewailly@openevents.fr> wrote: >> No I don''t need different access level, but it makes strange configuration >> if in a class (say /etc/puppet/production/manifest/test.pp) I use something >> like that : >> >> file{"/tmp/foo": >> source => "puppet:///modules/<yourfile>" >> } >> >> Is it a good idea to acces file from modules dir within a class (a class not >> in a module...) ? > > Why can''t you put all your classes in modules ? > > > >> >> Serge. >> >> Le 02/04/10 15:53, Ohad Levy a écrit : >>> >>> Hi, >>> >>> Maybe I''m missing something here, but why not just store the files in >>> the modules? do you need to provide different access level to your >>> modules based on environments? >>> >>> Ohad >>> >>> On Fri, Apr 2, 2010 at 9:37 PM, Serge Dewailly >>> <serge.dewailly@openevents.fr<mailto:serge.dewailly@openevents.fr>> >>> wrote: >>> >>> Hi, >>> >>> Thanks for your response. I forgot to mention Puppet version in use, >>> sorry about that. I''m using version 0.25.1. >>> >>> Thanks for your approach about storing files in modules path. >>> I will try to work around with that. >>> In a ideal world, I would keep my two environments in completly >>> separate directories, since I will maintaining configuration with a >>> git. >>> >>> But if it is not possible for the moment... >>> >>> I thought about another solution using two puppet instance. But >>> didn''t try it, and don''t know if it will be easy to maintain. >>> >>> Last solution could be giving environment in path : >>> >>> file{"/tmp/foo": >>> source => "puppet:///files/$environment/<yourfile>" >>> } >>> >>> fileserverconf looks like this : >>> [File] >>> path /etc/puppet/files >>> >>> Thanks for your help. >>> Serge. >>> >>> Le 01/04/10 23:16, Ken a écrit : >>> >>> What revision of puppet are you running? This doesn''t work for me >>> in >>> 0.25.4 either. However ... >>> >>> I''m going to take a wild guess and imagine you want to have 3 >>> fileserver.conf files because of the need for differing ''path'' >>> items >>> per environment using the [files] block. Let me suggest an >>> alternative >>> to your approach that I know works. >>> >>> Instead of storing your files in /etc/puppet/<env>/files store your >>> files in modules. You may very well have a legit reason for >>> wanting a >>> more global ''files'' dir for all your files, however its generally >>> nicer to organise files close to the modules that need them. If you >>> are storing your files in modules, you only 1 filerserver.conf that >>> looks something like this: >>> >>> [modules] >>> # your ip ranges obviously >>> allow 1.2.3.4/24<http://1.2.3.4/24> >>> allow 4.3.2.1/24<http://4.3.2.1/24> >>> >>> And path is not needed. You only need 1 fileserver.conf then ... >>> >>> Then - instead of storing your files in /etc/puppet/<env>/files you >>> store your files in your modules. ie: >>> >>> /etc/puppet/<env>/<modulename>/files/<yourfile> >>> >>> And reference them using the syntax: >>> >>> file{"/tmp/foo": >>> source => "puppet:///<modulename>/<yourfile> >>> } >>> >>> Most narratives I hear revolve around modules, I''d say its the >>> path of >>> least resistance. If you want a single location for your companies >>> files you could always put them in a specific module. >>> >>> ken. >>> >>> On Apr 1, 10:13 am, Serge Dewailly<serge.dewai...@openevents.fr >>> <mailto:serge.dewai...@openevents.fr>> >>> wrote: >>> >>> Hi All, >>> >>> I''m trying to use different environment for my servers >>> management. I''am >>> able to use different classes, modules... for each >>> environment but I >>> can''t find how to specify fileserver configuration for each >>> environement. >>> >>> Here is a piece of my configuration : >>> >>> 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 >>> autosign=true >>> certname = pup05401.grpldc.com >>> <http://pup05401.grpldc.com> >>> environments = production,testing >>> environment=production >>> >>> [production] >>> manifest=/etc/puppet/production/manifests/site.pp >>> manifestdir=/etc/puppet/production/manifests >>> modulepath=/etc/puppet/production/modules >>> templatedir=/etc/puppet/production/templates >>> >>> fileserverconfig=/etc/puppet/production/fileserver.conf >>> >>> [testing] >>> manifest=/etc/puppet/testing/manifests/site.pp >>> manifestdir=/etc/puppet/testing/manifests >>> modulepath=/etc/puppet/testing/modules >>> templatedir=/etc/puppet/testing/templates >>> fileserverconfig=/etc/puppet/testing/fileserver.conf >>> >>> testing/fileserver.conf >>> [files] >>> path /etc/puppet/testing/files >>> allow *.mydomain.com<http://mydomain.com> >>> >>> When using this configuration, I get unauthorized access to >>> files. >>> Reason is puppetmaster can''t find file server configuration : >>> >>> debug: No file server configuration file; autocreating >>> modules mount >>> with default permissions >>> >>> Is it possible to manage a fileserverconfig for each >>> environment ? >>> >>> Thanks for your help. >>> Serge >>> >>> >>> >>> -- >>> 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 >>> <mailto:puppet-users@googlegroups.com>. >>> To unsubscribe from this group, send email to >>> puppet-users+unsubscribe@googlegroups.com >>> <mailto:puppet-users%2Bunsubscribe@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+unsubscribe@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+unsubscribe@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+unsubscribe@googlegroups.com. For more options, visit this group at http://groups.google.com/group/puppet-users?hl=en.
Both of your statements are true ... however its a good thing to get into the rhythm of using modules as its more effort to convert later on when you do want to benefit from modularisation. Its also only a small initial cost to be honest so I think its worth it. ken. On Apr 2, 3:26 pm, Serge Dewailly <serge.dewai...@openevents.fr> wrote:> I though module were used when having multiple files to a single > service, or when wanting a stand-alone configuration (to make it portable). > > Anyway, I think I will use your solution since it will respect my > needs... lots of changes to make ! :) > > Thanks again for your help. > Serge. > > Le 02/04/10 16:05, Nigel Kersten a crit : > > > > > On Fri, Apr 2, 2010 at 6:58 AM, Serge Dewailly > > <serge.dewai...@openevents.fr> wrote: > >> No I don''t need different access level, but it makes strange configuration > >> if in a class (say /etc/puppet/production/manifest/test.pp) I use something > >> like that : > > >> file{"/tmp/foo": > >> source => "puppet:///modules/<yourfile>" > >> } > > >> Is it a good idea to acces file from modules dir within a class (a class not > >> in a module...) ? > > > Why can''t you put all your classes in modules ? > > >> Serge. > > >> Le 02/04/10 15:53, Ohad Levy a crit : > > >>> Hi, > > >>> Maybe I''m missing something here, but why not just store the files in > >>> the modules? do you need to provide different access level to your > >>> modules based on environments? > > >>> Ohad > > >>> On Fri, Apr 2, 2010 at 9:37 PM, Serge Dewailly > >>> <serge.dewai...@openevents.fr<mailto:serge.dewai...@openevents.fr>> > >>> wrote: > > >>> Hi, > > >>> Thanks for your response. I forgot to mention Puppet version in use, > >>> sorry about that. I''m using version 0.25.1. > > >>> Thanks for your approach about storing files in modules path. > >>> I will try to work around with that. > >>> In a ideal world, I would keep my two environments in completly > >>> separate directories, since I will maintaining configuration with a > >>> git. > > >>> But if it is not possible for the moment... > > >>> I thought about another solution using two puppet instance. But > >>> didn''t try it, and don''t know if it will be easy to maintain. > > >>> Last solution could be giving environment in path : > > >>> file{"/tmp/foo": > >>> source => "puppet:///files/$environment/<yourfile>" > >>> } > > >>> fileserverconf looks like this : > >>> [File] > >>> path /etc/puppet/files > > >>> Thanks for your help. > >>> Serge. > > >>> Le 01/04/10 23:16, Ken a crit : > > >>> What revision of puppet are you running? This doesn''t work for me > >>> in > >>> 0.25.4 either. However ... > > >>> I''m going to take a wild guess and imagine you want to have 3 > >>> fileserver.conf files because of the need for differing ''path'' > >>> items > >>> per environment using the [files] block. Let me suggest an > >>> alternative > >>> to your approach that I know works. > > >>> Instead of storing your files in /etc/puppet/<env>/files store your > >>> files in modules. You may very well have a legit reason for > >>> wanting a > >>> more global ''files'' dir for all your files, however its generally > >>> nicer to organise files close to the modules that need them. If you > >>> are storing your files in modules, you only 1 filerserver.conf that > >>> looks something like this: > > >>> [modules] > >>> # your ip ranges obviously > >>> allow 1.2.3.4/24<http://1.2.3.4/24> > >>> allow 4.3.2.1/24<http://4.3.2.1/24> > > >>> And path is not needed. You only need 1 fileserver.conf then ... > > >>> Then - instead of storing your files in /etc/puppet/<env>/files you > >>> store your files in your modules. ie: > > >>> /etc/puppet/<env>/<modulename>/files/<yourfile> > > >>> And reference them using the syntax: > > >>> file{"/tmp/foo": > >>> source => "puppet:///<modulename>/<yourfile> > >>> } > > >>> Most narratives I hear revolve around modules, I''d say its the > >>> path of > >>> least resistance. If you want a single location for your companies > >>> files you could always put them in a specific module. > > >>> ken. > > >>> On Apr 1, 10:13 am, Serge Dewailly<serge.dewai...@openevents.fr > >>> <mailto:serge.dewai...@openevents.fr>> > >>> wrote: > > >>> Hi All, > > >>> I''m trying to use different environment for my servers > >>> management. I''am > >>> able to use different classes, modules... for each > >>> environment but I > >>> can''t find how to specify fileserver configuration for each > >>> environement. > > >>> Here is a piece of my configuration : > > >>> 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 > >>> autosign=true > >>> certname = pup05401.grpldc.com > >>> <http://pup05401.grpldc.com> > >>> environments = production,testing > >>> environment=production > > >>> [production] > >>> manifest=/etc/puppet/production/manifests/site.pp > >>> manifestdir=/etc/puppet/production/manifests > >>> modulepath=/etc/puppet/production/modules > >>> templatedir=/etc/puppet/production/templates > > >>> fileserverconfig=/etc/puppet/production/fileserver.conf > > >>> [testing] > >>> manifest=/etc/puppet/testing/manifests/site.pp > >>> manifestdir=/etc/puppet/testing/manifests > >>> modulepath=/etc/puppet/testing/modules > >>> templatedir=/etc/puppet/testing/templates > >>> fileserverconfig=/etc/puppet/testing/fileserver.conf > > >>> testing/fileserver.conf > >>> [files] > >>> path /etc/puppet/testing/files > >>> allow *.mydomain.com<http://mydomain.com> > > >>> When using this configuration, I get unauthorized access to > >>> files. > >>> Reason is puppetmaster can''t find file server configuration : > > >>> debug: No file server configuration file; autocreating > >>> modules mount > >>> with default permissions > > >>> Is it possible to manage a fileserverconfig for each > >>> environment ? > > >>> Thanks for your help. > >>> Serge > > >>> -- > >>> 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 > >>> <mailto:puppet-users@googlegroups.com>. > >>> To unsubscribe from this group, send email to > >>> puppet-users+unsubscribe@googlegroups.com > >>> <mailto:puppet-users%2Bunsubscribe@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+unsubscribe@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+unsubscribe@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+unsubscribe@googlegroups.com. For more options, visit this group at http://groups.google.com/group/puppet-users?hl=en.