Thank you so much San for your time and help. Can anyone help me with this
-Jeeva On Mon, Apr 16, 2012 at 9:54 AM, Sans <r.santanu....@gmail.com> wrote: > According to your configuration, I don't think my code will work at all. > Your setup is quite different then mine and I've no other suggestions for > you at the moment. Hopefully, someone else will pick it up from here. > Cheers!! > > > > > On Monday, April 16, 2012 1:59:25 PM UTC+1, Jeeva wrote: >> >> >> 1. The line: *import 'modules'* in */etc/puppet/manifests/site.pp >> - i do have site.pp file but dont have the entry for modules. i added >> the entry but later i saw lot of errors related to modules in log >> * >> 2. The line: *import 'jb_test'* in* /etc/puppet/manifests/modules.pp >> - i dont have modules.pp file. But as i said in my previous email, i >> have customised servername.pp siles >> * >> 3. The file:* /etc/puppet/modules/jb_test/manifests/jb_config.pp >> - i created this file >> * >> 4. The file:* /etc/puppet/modules/jb_test/manifests/init_config.pp >> - i created this file >> * >> 5. The file:* /etc/puppet/modules/jb_test/files/group_test >> - i have this file* >> 6. and finally, in the */etc/puppet/manifests/nodes.pp >> - I dont have this file in my configuration* >> >> >> On Mon, Apr 16, 2012 at 7:38 AM, Sans <r.santanu....@gmail.com> wrote: >> >>> humm...... not sure but looks like couple of steps from my previous post >>> are missing. >>> Can you pls confirm that you have all of these: >>> >>> >>> 1. The line: *import 'modules'* in */etc/puppet/manifests/site.pp* >>> 2. The line: *import 'jb_test'* in* /etc/puppet/manifests/modules.pp* >>> 3. The file:* /etc/puppet/modules/jb_test/manifests/jb_config.pp* >>> 4. The file:* /etc/puppet/modules/jb_test/manifests/init_config.pp* >>> 5. The file:* /etc/puppet/modules/jb_test/files/group_test* >>> 6. and finally, in the */etc/puppet/manifests/nodes.pp* >>> >>> node 'vm-jeeva2' { >>>> include cp_jboss_conf >>>> } >>> >>> >>> (don't add inherits jeeva_base for the time being) >>> >>> Cheers!! >>> >>> >>> >>> >>> On Monday, April 16, 2012 1:06:59 PM UTC+1, Jeeva wrote: >>>> >>>> Hi Sans, >>>> >>>> I followed your steps, but i am getting the same error again >>>> >>>> Apr 16 11:29:39 pil-vm-pup-01 puppet-master[8092]: Could not find class >>>> cp_jboss_conf for vm-jeeva2.aircell.prod at /etc/puppet/manifests/nodes/ >>>> **vm**-jeeva2.aircell.prod.pp:2 on node vm-jeeva2.aircell.prod >>>> Apr 16 11:29:39 pil-vm-pup-01 puppet-master[8092]: Could not find class >>>> cp_jboss_conf for vm-jeeva2.aircell.prod at /etc/puppet/manifests/nodes/ >>>> **vm**-jeeva2.aircell.prod.pp:2 on node vm-jeeva2.aircell.prod >>>> Apr 16 11:29:39 pil-vm-pup-01 puppet-master[8092]: >>>> (//vm-jeeva2.aircell.prod/**Pupp**et) Could not retrieve catalog from >>>> remote server: Error 400 on SERVER: Could not find class cp_jboss_conf for >>>> vm-jeeva2.aircell.prod at >>>> /etc/puppet/manifests/nodes/**vm**-jeeva2.aircell.prod.pp:2 >>>> on node vm-jeeva2.aircell.prod >>>> Apr 16 11:29:39 pil-vm-pup-01 puppet-master[8092]: >>>> (//vm-jeeva2.aircell.prod/**Pupp**et) Using cached catalog >>>> Apr 16 11:29:39 pil-vm-pup-01 puppet-master[8092]: >>>> (//vm-jeeva2.aircell.prod/**Pupp**et) Could not retrieve catalog; >>>> skipping run >>>> >>>> @All, Just not to confuse anyone, currently my puppet server is working >>>> as expected. i have lot of modules created and it works. This is how my >>>> configuration is >>>> >>>> 1 ) my site.pp file is under /etc/puppet/manifest/site.pp and below is >>>> my content >>>> import 'nodes/*' >>>> $puppetserver = 'puppet-server.domain.com' >>>> >>>> 2) All my modules is under below path >>>> >>>> /etc/puppet/modules/ >>>> >>>> 3) under below path i have all my .pp files . eg >>>> >>>> /etc/puppet/manifests/nodes/**se**rver1.pp >>>> /etc/puppet/manifests/nodes/**se**rver2.pp >>>> /etc/puppet/manifests/nodes/**se**rver3.pp >>>> /etc/puppet/manifests/nodes/**se**rver4.pp >>>> >>>> addition to this i have a jeeva_base.pp file where i include all my >>>> modules. below is the portion of its content >>>> ------------------------------****----- >>>> node jeeva_base { >>>> include all_scripts >>>> include dev_jboss_jeeva >>>> } >>>> ------------------------------****--------- >>>> below is the content of my server1.pp file . i have created individual >>>> .pp file for each server which inherits jeeva_base node. >>>> ------------------------------****------------ >>>> node server1 inherits jeeva_base { >>>> } >>>> ------------------------------****------------- >>>> >>>> As i said above, this is my requirement. >>>> >>>> we have 3 version of jboss running in our environment in different >>>> servers. eg. jboss4 in server1, jboss5 in server2 , jboss6 in server3 , and >>>> no jboss in server 4 , etc >>>> >>>> on each server, jboss config file sits under different path. >>>> eg: in server 1 it sits under /opt/jboss4/ >>>> in server 2 it sits under /opt/jboss5/ >>>> in server 3 it sits under /opt/jboss6/ >>>> in server 4 no jboss is running >>>> >>>> now i have 3 different configuration file for each version of jboss >>>> which i need to replace. eg. >>>> file1, i need to replace it to jboss4 >>>> file2 , i need to replace it to jboss5 >>>> file3 , i need to replace it to jboss6 >>>> also we need to keep in mind that it should not create a files/folder >>>> on server4 which doesnt have jboss. >>>> >>>> Now i need a module which checks the jboss path on each server and >>>> should replace the sepcific file if it finds the specific path. eg >>>> >>>> if it finds /opt/jboss4, then it should replace file1, if it finds >>>> /opt/jboss5, then replace file2 and so on. But if no jboss path is found >>>> then dont perform any thing on that server. >>>> >>>> As suggested by Gary ( initial conversation) , gary helped me to create >>>> the custom facts. but it didnt work. Not sure what went wrong. >>>> in general, my requirement is very simple. just do a check on each >>>> server for specific path. if found, then copy/replace respective file , if >>>> not found then dont perform any action on that server. >>>> I hope i didnt confuse anyone. >>>> >>>> Thanks, >>>> Jeeva >>>> >>>> >>>> >>>> On Mon, Apr 16, 2012 at 5:54 AM, Munna S <19.mu...@gmail.com> wrote: >>>> >>>>> Hi Sans >>>>> i am trying it now. will let you know the output soon. Also in my >>>>> site.pp i have the below content >>>>> >>>>> import 'nodes/*' >>>>> $puppetserver = 'puppet-server.domain.com' >>>>> >>>>> >>>>> >>>>> I do have many modules , which works as expected. >>>>> >>>>> Thanks, >>>>> Jeeva >>>>> >>>>> cat /etc/puppet/manifests/site.pp >>>>> On Mon, Apr 16, 2012 at 5:36 AM, Sans <r.santanu....@gmail.com>wrote: >>>>> >>>>>> It's definitely a class loading problem and I don't think Jeeva is >>>>>> using "modules" at all. >>>>>> >>>>>> Jeeva: >>>>>> Could you pls try the things I said in my previous post and see if >>>>>> that works? Cheers!! >>>>>> >>>>>> >>>>>> >>>>>> On Monday, April 16, 2012 1:34:31 AM UTC+1, Wil Cooley wrote: >>>>>>> >>>>>>> On Apr 13, 10:49 am, Munna S <19.mu...@gmail.com> wrote: >>>>>>> > I followed your steps. now i am getting below error >>>>>>> > >>>>>>> > Apr 13 17:42:44 pil-vm-pup-01 puppet-master[7899]: Could not find >>>>>>> class >>>>>>> > dev_jboss_jeeva for vm-jeeva2.aircell.prod at >>>>>>> >>>>>>> ... >>>>>>> >>>>>>> > i have jeeva_base.pp file under /etc/puppet/manifests/nodes and >>>>>>> below is >>>>>>> > its content >>>>>>> > ------------------------------******-- >>>>>>> > node jeeva_base { >>>>>>> > include dev_jboss_jeeva} >>>>>>> > >>>>>>> > ------------------------------******-------- >>>>>>> > >>>>>>> > also i have a another .pp file by name vm-jeeva2 under >>>>>>> > /etc/puppet/manifests/nodes and below is its content. we have >>>>>>> seperate .pp >>>>>>> > file for each server name. one server is vm-jeeva2. >>>>>>> > ------------------ >>>>>>> > node vm-jeeva2 inherits jeeva_base {} >>>>>>> > >>>>>>> > -------------------- >>>>>>> > >>>>>>> > what could be the problem ? >>>>>>> >>>>>>> Where is the class dev_jboss_jeeva defined? You mentioned above an >>>>>>> 'init.pp', which would be usual if you were using modules, but it >>>>>>> does >>>>>>> not seem like you are using modules. >>>>>>> >>>>>>> It sounds like the problem you are having is wholly outside of the >>>>>>> complicated machinations of what you're trying to do. It looks more >>>>>>> like you have a much simpler class-loading problem. >>>>>>> >>>>>>> Here are a few things to try: >>>>>>> * Comment out all of the stuff from dev_jboss_jeeva and replace it >>>>>>> with a "warning" function call, to log that everything is working >>>>>>> right: >>>>>>> class dev_jboss_jeeva { >>>>>>> warning("dev_jboss_jeeva has successfully loaded") >>>>>>> } >>>>>>> * Copy your class dev_jboss_jeeva { ... } right before the "node >>>>>>> jeeva_base" and see if you see your warning message (I suggest >>>>>>> warning >>>>>>> instead of info because info sometimes requires using --verbose on >>>>>>> the >>>>>>> command line; warning will always show): >>>>>>> class dev_jboss_jeeva { >>>>>>> warning("dev_jboss_jeeva was here") >>>>>>> } >>>>>>> node jeeva_base { >>>>>>> include dev_jboss_jeeva >>>>>>> } >>>>>>> >>>>>>> If you see the message with the class defined right before the node, >>>>>>> but not wherever else you have it, then you know the problem is that >>>>>>> it is unable to actually find the class and you should give >>>>>>> specifics >>>>>>> about that instead. >>>>>>> >>>>>>> Wil >>>>>> >>>>>> -- >>>>>> You received this message because you are subscribed to the Google >>>>>> Groups "Puppet Users" group. >>>>>> To view this discussion on the web visit https://groups.google.com/d/ >>>>>> **ms**g/puppet-users/-/_**Puid9FxhfAJ<https://groups.google.com/d/msg/puppet-users/-/_Puid9FxhfAJ> >>>>>> . >>>>>> >>>>>> To post to this group, send email to puppet-users@googlegroups.com. >>>>>> To unsubscribe from this group, send email to >>>>>> puppet-users+unsubscribe@**googl**egroups.com<puppet-users%2bunsubscr...@googlegroups.com> >>>>>> . >>>>>> For more options, visit this group at http://groups.google.com/** >>>>>> group**/puppet-users?hl=en<http://groups.google.com/group/puppet-users?hl=en> >>>>>> . >>>>>> >>>>> >>>>> >>>> >>> On Monday, April 16, 2012 1:06:59 PM UTC+1, Jeeva wrote: >>>> >>>> Hi Sans, >>>> >>>> I followed your steps, but i am getting the same error again >>>> >>>> Apr 16 11:29:39 pil-vm-pup-01 puppet-master[8092]: Could not find class >>>> cp_jboss_conf for vm-jeeva2.aircell.prod at /etc/puppet/manifests/nodes/ >>>> **vm**-jeeva2.aircell.prod.pp:2 on node vm-jeeva2.aircell.prod >>>> Apr 16 11:29:39 pil-vm-pup-01 puppet-master[8092]: Could not find class >>>> cp_jboss_conf for vm-jeeva2.aircell.prod at /etc/puppet/manifests/nodes/ >>>> **vm**-jeeva2.aircell.prod.pp:2 on node vm-jeeva2.aircell.prod >>>> Apr 16 11:29:39 pil-vm-pup-01 puppet-master[8092]: >>>> (//vm-jeeva2.aircell.prod/**Pupp**et) Could not retrieve catalog from >>>> remote server: Error 400 on SERVER: Could not find class cp_jboss_conf for >>>> vm-jeeva2.aircell.prod at >>>> /etc/puppet/manifests/nodes/**vm**-jeeva2.aircell.prod.pp:2 >>>> on node vm-jeeva2.aircell.prod >>>> Apr 16 11:29:39 pil-vm-pup-01 puppet-master[8092]: >>>> (//vm-jeeva2.aircell.prod/**Pupp**et) Using cached catalog >>>> Apr 16 11:29:39 pil-vm-pup-01 puppet-master[8092]: >>>> (//vm-jeeva2.aircell.prod/**Pupp**et) Could not retrieve catalog; >>>> skipping run >>>> >>>> @All, Just not to confuse anyone, currently my puppet server is working >>>> as expected. i have lot of modules created and it works. This is how my >>>> configuration is >>>> >>>> 1 ) my site.pp file is under /etc/puppet/manifest/site.pp and below is >>>> my content >>>> import 'nodes/*' >>>> $puppetserver = 'puppet-server.domain.com' >>>> >>>> 2) All my modules is under below path >>>> >>>> /etc/puppet/modules/ >>>> >>>> 3) under below path i have all my .pp files . eg >>>> >>>> /etc/puppet/manifests/nodes/**se**rver1.pp >>>> /etc/puppet/manifests/nodes/**se**rver2.pp >>>> /etc/puppet/manifests/nodes/**se**rver3.pp >>>> /etc/puppet/manifests/nodes/**se**rver4.pp >>>> >>>> addition to this i have a jeeva_base.pp file where i include all my >>>> modules. below is the portion of its content >>>> ------------------------------****----- >>>> node jeeva_base { >>>> include all_scripts >>>> include dev_jboss_jeeva >>>> } >>>> ------------------------------****--------- >>>> below is the content of my server1.pp file . i have created individual >>>> .pp file for each server which inherits jeeva_base node. >>>> ------------------------------****------------ >>>> node server1 inherits jeeva_base { >>>> } >>>> ------------------------------****------------- >>>> >>>> As i said above, this is my requirement. >>>> >>>> we have 3 version of jboss running in our environment in different >>>> servers. eg. jboss4 in server1, jboss5 in server2 , jboss6 in server3 , and >>>> no jboss in server 4 , etc >>>> >>>> on each server, jboss config file sits under different path. >>>> eg: in server 1 it sits under /opt/jboss4/ >>>> in server 2 it sits under /opt/jboss5/ >>>> in server 3 it sits under /opt/jboss6/ >>>> in server 4 no jboss is running >>>> >>>> now i have 3 different configuration file for each version of jboss >>>> which i need to replace. eg. >>>> file1, i need to replace it to jboss4 >>>> file2 , i need to replace it to jboss5 >>>> file3 , i need to replace it to jboss6 >>>> also we need to keep in mind that it should not create a files/folder >>>> on server4 which doesnt have jboss. >>>> >>>> Now i need a module which checks the jboss path on each server and >>>> should replace the sepcific file if it finds the specific path. eg >>>> >>>> if it finds /opt/jboss4, then it should replace file1, if it finds >>>> /opt/jboss5, then replace file2 and so on. But if no jboss path is found >>>> then dont perform any thing on that server. >>>> >>>> As suggested by Gary ( initial conversation) , gary helped me to create >>>> the custom facts. but it didnt work. Not sure what went wrong. >>>> in general, my requirement is very simple. just do a check on each >>>> server for specific path. if found, then copy/replace respective file , if >>>> not found then dont perform any action on that server. >>>> I hope i didnt confuse anyone. >>>> >>>> Thanks, >>>> Jeeva >>>> >>>> >>>> >>>> On Mon, Apr 16, 2012 at 5:54 AM, Munna S <19.mu...@gmail.com> wrote: >>>> >>>>> Hi Sans >>>>> i am trying it now. will let you know the output soon. Also in my >>>>> site.pp i have the below content >>>>> >>>>> import 'nodes/*' >>>>> $puppetserver = 'puppet-server.domain.com' >>>>> >>>>> >>>>> >>>>> I do have many modules , which works as expected. >>>>> >>>>> Thanks, >>>>> Jeeva >>>>> >>>>> cat /etc/puppet/manifests/site.pp >>>>> On Mon, Apr 16, 2012 at 5:36 AM, Sans <r.santanu....@gmail.com>wrote: >>>>> >>>>>> It's definitely a class loading problem and I don't think Jeeva is >>>>>> using "modules" at all. >>>>>> >>>>>> Jeeva: >>>>>> Could you pls try the things I said in my previous post and see if >>>>>> that works? Cheers!! >>>>>> >>>>>> >>>>>> >>>>>> On Monday, April 16, 2012 1:34:31 AM UTC+1, Wil Cooley wrote: >>>>>>> >>>>>>> On Apr 13, 10:49 am, Munna S <19.mu...@gmail.com> wrote: >>>>>>> > I followed your steps. now i am getting below error >>>>>>> > >>>>>>> > Apr 13 17:42:44 pil-vm-pup-01 puppet-master[7899]: Could not find >>>>>>> class >>>>>>> > dev_jboss_jeeva for vm-jeeva2.aircell.prod at >>>>>>> >>>>>>> ... >>>>>>> >>>>>>> > i have jeeva_base.pp file under /etc/puppet/manifests/nodes and >>>>>>> below is >>>>>>> > its content >>>>>>> > ------------------------------******-- >>>>>>> > node jeeva_base { >>>>>>> > include dev_jboss_jeeva} >>>>>>> > >>>>>>> > ------------------------------******-------- >>>>>>> > >>>>>>> > also i have a another .pp file by name vm-jeeva2 under >>>>>>> > /etc/puppet/manifests/nodes and below is its content. we have >>>>>>> seperate .pp >>>>>>> > file for each server name. one server is vm-jeeva2. >>>>>>> > ------------------ >>>>>>> > node vm-jeeva2 inherits jeeva_base {} >>>>>>> > >>>>>>> > -------------------- >>>>>>> > >>>>>>> > what could be the problem ? >>>>>>> >>>>>>> Where is the class dev_jboss_jeeva defined? You mentioned above an >>>>>>> 'init.pp', which would be usual if you were using modules, but it >>>>>>> does >>>>>>> not seem like you are using modules. >>>>>>> >>>>>>> It sounds like the problem you are having is wholly outside of the >>>>>>> complicated machinations of what you're trying to do. It looks more >>>>>>> like you have a much simpler class-loading problem. >>>>>>> >>>>>>> Here are a few things to try: >>>>>>> * Comment out all of the stuff from dev_jboss_jeeva and replace it >>>>>>> with a "warning" function call, to log that everything is working >>>>>>> right: >>>>>>> class dev_jboss_jeeva { >>>>>>> warning("dev_jboss_jeeva has successfully loaded") >>>>>>> } >>>>>>> * Copy your class dev_jboss_jeeva { ... } right before the "node >>>>>>> jeeva_base" and see if you see your warning message (I suggest >>>>>>> warning >>>>>>> instead of info because info sometimes requires using --verbose on >>>>>>> the >>>>>>> command line; warning will always show): >>>>>>> class dev_jboss_jeeva { >>>>>>> warning("dev_jboss_jeeva was here") >>>>>>> } >>>>>>> node jeeva_base { >>>>>>> include dev_jboss_jeeva >>>>>>> } >>>>>>> >>>>>>> If you see the message with the class defined right before the node, >>>>>>> but not wherever else you have it, then you know the problem is that >>>>>>> it is unable to actually find the class and you should give >>>>>>> specifics >>>>>>> about that instead. >>>>>>> >>>>>>> Wil >>>>>> >>>>>> -- >>>>>> You received this message because you are subscribed to the Google >>>>>> Groups "Puppet Users" group. >>>>>> To view this discussion on the web visit https://groups.google.com/d/ >>>>>> **ms**g/puppet-users/-/_**Puid9FxhfAJ<https://groups.google.com/d/msg/puppet-users/-/_Puid9FxhfAJ> >>>>>> . >>>>>> >>>>>> To post to this group, send email to puppet-users@googlegroups.com. >>>>>> To unsubscribe from this group, send email to >>>>>> puppet-users+unsubscribe@**googl**egroups.com<puppet-users%2bunsubscr...@googlegroups.com> >>>>>> . >>>>>> For more options, visit this group at http://groups.google.com/** >>>>>> group**/puppet-users?hl=en<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 view this discussion on the web visit https://groups.google.com/d/** >>> msg/puppet-users/-/n1-**iTusITgQJ<https://groups.google.com/d/msg/puppet-users/-/n1-iTusITgQJ> >>> . >>> >>> 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%2bunsubscr...@googlegroups.com>. >>> For more options, visit this group at http://groups.google.com/** >>> group/puppet-users?hl=en<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 view this discussion on the web visit > https://groups.google.com/d/msg/puppet-users/-/EnPLOpwOS78J. > > 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.