In the second approach, there is a more clear-cut separation of control between Puppet and Intigua. Puppet handles the state of server and application components, and Intigua handles the state of server management tools.
In this approach, Intigua users set up policies, similar to Puppet classes, that determine the set of management services for each server. Policies are based on server characteristics such as location, operating system, application, type, role, and environment as determined through a tagging system. Puppet sets up server management by assigning servers with appropriate tags, and the Intigua policy engine interprets these tags and takes care of the rest. These tags, assigned by Puppet or by other means, can also be used within Intigua for other purposes such as establishing role-based server access.
The steps for deploying a new management service using Approach 2 are as follows:
- The server node (with the Puppet agent pre-installed) requests a catalog from the Puppet master server.
- Puppet delivers a catalog containing the Intigua Puppet module and a set of Intigua resources to the node. In this case, the resources being delivered are not a list of desired management services, but a list of tags that should be attached to the server in Intigua.
- Leveraging Intigua’s APIs, the Intigua Puppet module accesses Intigua and requests the tags to be attached to the node.
- The Intigua policy engine reviews the tags, and accordingly deploys management agents to the node.
- Intigua configures the back-end automatically.
For example, with this second approach, Puppet can tell Intigua to tag a database server with database and production tags. Intigua policies can be set up to automatically deploy an entire set of management tools, bundled as services, to all production databases. As soon as these tags are added to the node in the Intigua console, Intigua starts the deployment these tools with the correct agent and console configurations. From that point on, Intigua continuously ensures that tools are fully functional.