Mcollective is an open source framework for server orchestration and parallel job execution. It provides asynchronous and event-driven communication between nodes using a message broker like RabbitMQ. Nodes can be targeted based on facts, classes, or other criteria. Plugins allow mcollective to manage configurations, run puppet, install packages, manage firewall rules, and more across large server fleets. It provides a scalable and decentralized alternative to SSH loops for orchestrating infrastructure changes and operations.
7. Use case: Add one webapp server
Deploy
Provision Apply config
Last version
new node as webserver
Of App
Add to
Grant access Start
LoadBalance
to DB webserver
r
Activate
In Prod!
monitoring
8. Use case: Deploy new version
Update Provision 1
Db schema New app Send traffic
(addings) server
Update
Replace
Test Db schema
App servers
(removals)
In Prod!
11. Marionete Colective
mcollective is a framework to build server
orchestration or parallel job execution systems
Created by R.I. Pienaar
12. Is it better than an SSH loop?
Asynchronous/Event driven
Scalable
RIP Hostnames – use facts, classes.
Modular (security, middleware, agents)
Auto discovery
De-centralized inventory
22. Plugins
You can get plugins from:
http://projects.puppetlabs.com/projects/mcollective-plugins/wiki
Facts-facter
Filemgr
Iptables
Package
Process
Puppetd
Service