The Marionette Collective, or MCollective, is a framework for building server orchestration. MCollective provides the capability for working with large numbers of servers. In Oracle Solaris, you can use MCollective in conjunction with Puppet to more easily and efficiently perform configuration management.
This appendix includes the following topics:
This appendix provides basic information about the MCollective deployment in Oracle Solaris. For in-depth background information and instructions on configuring and using MCollective, go to https://puppet.com/docs/mcollective/current/index.html.
MCollective is a framework that enables you to build server orchestration or parallel job execution systems. MCollective is primarily used to programmatically execute actions on clusters of servers through the use of state-of-the-art tools, such as publish/subscribe middleware.
MCollective also employs contemporary philosophies, such as real-time discovery of network resources that uses metadata rather than host names to deliver scalable and extremely fast parallel execution environments.
In Oracle Solaris, MCollective complements the use of Puppet by providing mechanisms that enable you to more easily manage system configurations and customizations within a cloud environment, such as an OpenStack deployment.
Enabling services across a family of client virtual machines (VMs)
Installing and verifying installation of software packages on a family of client VMs
For more detailed information about using MCollective with Puppet, go to https://puppet.com/docs/mcollective/current/reference/integration/puppet.html.
An MCollective deployment typically consists of the following components: server, client, and middleware. In Oracle Solaris, the MCollective feature is managed through the Service Management Facility (SMF). The middleware component for MCollective is managed through the RabbitMQ open source message broker software. For more information, go to https://puppet.com/docs/mcollective/current/reference/plugins/connector_rabbitmq.html.
MCollective SMF service instance
MCollective is managed through a single SMF service, svc:/application/mcollective:default.This service is not enabled by default. Enabling the service instance starts the /usr/sbin/mcollectived daemon, which is the server application.
MCollective agents enable the tool to use Puppet to perform various configuration management tasks on multiple servers, including remote servers. Agents work by leveraging the Puppet framework to provide orchestration for the configuration management of Oracle Solaris servers. The way that MCollective agents are written make is possible for MCollective to make use of Puppet's default behavior if Puppet modules are present on a system.
These plug-ins use the secure client-server communication that is provided by the MCollective framework. The MCollective framework uses the standard SSL/TLS certificates for client and server verification, which is similar to Puppet.
Collectives (also referred to as subcollectives) are part of the MCollective framework. Collectives provide a mechanism to group nodes so that you can perform various configuration actions on the entire group (or collective). For details, go to https://puppet.com/docs/mcollective/current/reference/basic/subcollectives.html.
MCollective command-line interface (CLI)
You can display all of the available MCollective subcommands and their usage as follows:
$ /usr/bin/mco --help
For details, go to https://docs.puppet.com/mcollective/current/reference/basic/basic_cli_usage.html.
MCollective privileges and authorizations