So the model isn't the same, puppet doesn't deploy the module on the
agent, a catalog is compiled on the server and the catalog is what the
client enforces. With that said, if you have a specific system in mind
that you want to deploy a puppet module, on the master:
node 'hostname' {
include 'class_name'
}
If you use an ENC such as dashboard, you can use rake task or REST API
to modify the system's class.
HTH,
Nan
I'm interested to know more regarding your comment. In my environment
we've decided to use dashboard for ENC and "the one true source" for
customization (parameters, node configuration etc).
Where is the place to check on tutorial and documentation your suggestion?
I have no real prior knowledge on ruby. Thx in advance.
--KL
On 1/31/12 11:03 PM, "Nan Liu" <n...@puppetlabs.com> wrote:
>
>
>If you use an ENC such as dashboard, you can use rake task or REST API
>to modify the system's class.
>
>HTH,
>
>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...@googlegroups.com.
>To unsubscribe from this group, send email to
>puppet-users...@googlegroups.com.
>For more options, visit this group at
>http://groups.google.com/group/puppet-users?hl=en.
>
This message is for the designated recipient only and may contain privileged, proprietary, or otherwise private information. If you have received it in error, please notify the sender immediately and delete the original. Any other use of the email by you is prohibited.
--
You received this message because you are subscribed to the Google Groups "Puppet Users" group.
To post to this group, send email to puppet...@googlegroups.com.
To unsubscribe from this group, send email to puppet-users...@googlegroups.com.
For more options, visit this group at http://groups.google.com/group/puppet-users?hl=en.
Using the rake task is reasonably straightforward. I'm not finding an
authoritative documentation, but you can use this page as starting
point:
http://docs.puppetlabs.com/dashboard/manual/1.2/maintaining.html
In dashboard directory run rake -T, and the ones of interest are
node:* nodeclass:* and nodegroup: *.
Also there's a puppet dashboard face:
https://github.com/puppetlabs/puppetlabs-dashboard
Thanks,
Nan
Using the rake task is reasonably straightforward. I'm not finding an
authoritative documentation, but you can use this page as starting
Like this?
http://docs.puppetlabs.com/pe/2.0/console_classes_groups.html#rake-api
It needs a few more tasks added, and then I'll C&P it to the dashboard
manual too.
I think Nan's response isn't fully answering your question since it isn't clear how you are executing Chef. Reading your question I foresee that you are actually in fact running Chef Solo, knife is configured with an ssh key that is capable to logging into a specific machine, uploading a cookbook, and executing it? Your trying to implement the same workflow using Puppet's stand alone mode? If this assumption is correct than we can point you in a better direction. Nan's response would be relevant if you were using Chef Server vs. Puppet Master.
Regards,
--
Cody Herriges
Professional Service Engineer - Puppet Labs
pgp key: 0x5DB77142 @ pgp.mit.edu
This is done:
http://docs.puppetlabs.com/pe/2.0/console_classes_groups.html#rake-api
http://docs.puppetlabs.com/dashboard/manual/1.2/rake_api.html
> Hi Cody,
>
> Probably that may also solve my problem.
>
> My requirement is I need to run a command line that takes the IP,
> user, password and module to be installed on that IP. By giving that
> command it should install that module on that IP.
>
> So, in chef after doing that command (it is knife bootstrap), the new
> IP will be installed with chef and registers with the server along
> with installing the specified recipe. In dashboard we can see what all
> the agents are associated to that server.
>
> Also, is there any Dashboard where we can manage the clients that are
> registered to the Puppet server.
Ah! So the end goal is to really just be able to bootstrap puppet on a machine, not necessarily run an arbitrary module? If that is the case you should look at the following module, https://github.com/puppetlabs/puppetlabs-cloud-provisioner. Yes it says it is for provisioning cloud instances but it is in fact two faces. One for launching aws nodes and another for bootstrapping Puppet, via SSH. Last I checked the install via SSH did require keys though, wouldn't allow for passwords to be given on the command line. I think there is already a feature request for passwords.
On 02/03/2012 06:38 AM, sateesh wrote:
> The next step is now I need to install some modules that are located
> in the server on to newly created IP. I think in chef the server will
> copy on to the new VM in /tmp location and install the modules on that
> IP. After installing it will delete the copied module. So, is there
> any mechanism in Puppet.
you need to do this master-side. Make sure that a newly strapped VM
always includes your wanted classes.
As to how to do this, I'm not familiar with cloud-provisioner so I
couldn't say. If you can specify the bootstrapping commandline for
puppet, you could do
FACTER_bootstrapvm=true puppetd --test
and in your manifest
if $::bootstrapvm {
include bootstrap_class
}
HTH,
Felix
Unlink chef server Puppet doesn't "copy" sets of code to an agent machine. It compiles a directed acyclic graph we call the catalog and deliveries it via HTTPS as JSON. So where in chef you would register a "runlist" that copies down cookbooks, in Puppet you "classify" the machine. This is done manually with a node definition or can be programmatically accomplish via an ENC like Puppet Dashboard or Foreman. If you set up the Dashboard you can classify the new machine you just installed Puppet on using the classify action available in the puppet node face.
To query what nodes have what classes you can reference your ENC or like more and more people, they grab the data live via MCollective.