#MCollective - Orchestration FrameworkCody Herriges
[email protected] | #odyiPuppet Labs - Thurs, 7th 2011
Donnerstag, 14. April 2011
What is it?
• A framework for modeling and building server orchestration or parallel job execution.
• Programmatic execution of Systems Administration task across clusters of systems.
• RPC-driven operations and concepts.
Donnerstag, 14. April 2011
Architecture
• Publish/subscribe middleware enables:• Centralized management through
decentralization.• High availability with a message queue
per data center.• Can aggregate message queue traffic
across datacenters.
Donnerstag, 14. April 2011
Architecture
• Middleware currently needs to be Stomp capable.• ActiveMQ• RabbitMQ• Stompserver
Donnerstag, 14. April 2011
Puppet Orchestration
• Plugins• Ruby code that extends the MCollective framework in
the way of security, connection handling, and agents.• puppetd
• Gradually runs and controls Puppet execution.• puppetca
• Centralized management of Puppet CA clusters.• package
• On demand package system manipulation.• service
• Realtime application control.• facter
• Provides meta data.
Donnerstag, 14. April 2011
SimpleRPC• A layer on top of the RPC driven
framework.• Quick creation and iteration on action
modeling.• Can ship with SimpleRCP DDL files• Format replies from nodes• Validate input• Consumable by Rails applications
Donnerstag, 14. April 2011
SimpleRPC
• mco rpc --limit-nodes=10% --with-class webapp puppetd runonce tags=java environment=rollout
Donnerstag, 14. April 2011
Accomplish ITIL Goal
• Release Processes• Modeling to affirm that the system
management, build, and design process stay the same through development to production.
• Control Processes• Repeatable consistent manageability of
change.• Resolution Processes• Real time system inventory through discovery
and meta data.• Instant data discovery that reduces MTTR.
Donnerstag, 14. April 2011
In action.
• Vagrant box package available at http://github.com/ody/boxes.git
Donnerstag, 14. April 2011
Q&A• IRC: irc.freenode.net• #puppet• #mcollective
• Google Groups• http://groups.google.com/group/puppet-
users• http://groups.google.com/group/
mcollective-users
Donnerstag, 14. April 2011
Development Q&A• IRC: irc.freenode.net• #puppet-dev• #mcollective-dev
• Google Groups• http://groups.google.com/group/puppet-
dev• http://groups.google.com/group/
mcollective-dev
Donnerstag, 14. April 2011