hello, ----- "Michael DeHaan" <mich...@puppetlabs.com> wrote:
> > I actually tried Capistrano sometimes ago, didn't quite like it due > > to extensive Ruby use (which admittedly I don't have much expired > > with). MCollective looks interesting, any how it compares to Func/Puppet? > > It introduces a message bus and does groups a little differently. > Volcane would be the best person to ask. MCollective enables you to write agents on all your nodes and talk to them in an RPC fashion. It has more dependencies than some of the other tools but provides tight integration with puppet and other such tools meaning instead of host lists etc you can pick and choose which machines to target your actions based on facts, classes, hostnames and regexes of all of those. I'd say if you were looking for something to run just random cli commands with on all your machines then its the wrong choice but if you had to write code that interacts with your infrastructure and orchastrate cross machine states then its the right tool. It's more programming heavy than some of the other tools though the RPC framework is a bit like Rails in that it makes a lot of assumptions about how you build agents and if you work within those assumption boundaries you can pull off some nice stuff quite quickly. It comes with agents package, service, puppet, iptables, exim and a few others. Provides centralized auditing of all actions and in the next release very fine grained authorization of all actions. The auditing, authorization, security encryption and even what serialization you use is all pluggable and replacable. It really shines on larger infrastructures where you would want high concurrency. And the payoff in its extra dependencies becomes really apparent in those larger platforms though. To see the kind of thing it enables you to write, the code in http://pastie.org/924350 asks all machines their puppet status and keeps a count of which ones are currently doing manifest runs. Also note how that code supports selection of machines as in the last part of the pastie where it only runs against machines with puppet class /dev_server/ and facter fact country=de. Also see http://srt.ly/1b and http://srt.ly/p I don't really want to do a point for point comparison between tools but any tool in this space that is based on threads of parallel ssh will run into resourcing issues fairly soon. Similarly tools that are based on static hosts lists rather than the reality of what is there now will also have issues. MCollective doesn't use any of these modes of operation. I specifically designed MCollective to allow quick discovery of resources, like here I have a report of a specific fact, the data is based on right now, not based on some DB or something: $ mc-facts country Report for fact: country de found 23 times uk found 9 times us found 6 times za found 2 times Finished processing 40 hosts in 1002.30 ms Building up queries of machines is easy: $ mc-find-hosts -W /dev_server/ country=de dev1.my.net dev2.my.net dev3.my.net And these queries can be used to target requests. It isn't a Puppet extension though the same basic stuff will work with Chef/Ohai and with whatever else you can code really since the core provides extensive plugin abilities. -- You received this message because you are subscribed to the Google Groups "Puppet Users" group. To post to this group, send email to puppet-us...@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.