top of page
Brock Peterson

Building a Management Pack with the Aria Operations Management Pack Builder

Now that we've deployed the Aria Operations Management Pack Builder (MPB), let's build one. In this case, we'll develop one for Rubrik Cloud Data Management, their data protection, backup, and recovery platform. For reference, the MPB documentation can be found here.


Logging into your MPB, you have two tabs: Designs and VMware Aria Operations Connections.

We'll use the Designs tab to create our Management Pack, but you'll notice another tab for VMware Aria Operations Connections.

This is where you can create connections to your Operations instances to pull data to be used in your Management Pack. It also allows you to deploy Management Packs directly from the MPB directly into your Operations instance/s. Clicking CREATE allows you to create a new connection.



Back on the Designs tab, click CREATE to start building your Management Pack, which allows you to create a new management pack or import an existing design (JSON).

Click New to create your new Management Pack design, mine looks like this.

Give it a name and description and click SAVE. This will send you directly into the Source tab

Click DEFINE SOURCE to define your target, in my case the Rubrik CDM Cluster.

A few things to note here:

  • Hostname - the target you're pulling data from

  • Port - port in use

  • SSL Configuration - there are three options here

    • No SSL - don't use SSL at all

    • No Verify - use SSL but don't verify the target's certificate

    • Verify - use SSL and verify the target's certificate

  • Base API Path - path to be added to all subsequent API calls, I left it blank because I'm using two different base paths later

  • Preview - previous of your full path, good for testing


Click NEXT to configure your Authentication method.

I've chosen Basic authentication, but we also support more advanced custom authentication and session authentication. I'll cover these in a subsequent blog. Global Request Settings are optional and a way for you to add headers to every API request.

Step 4 allows you to define the HTTP Method being used (GET), the API Path you're hitting, and a preview of the fully qualified path being hit.

Step 5 allows you to add Headers, Query Paramters, and Body to your request, I've left mine empty. Finally you get to test your connection.

We've now confirmed we can hit our target, next we'll start adding Requests, which are just API calls requesting data. I'm not going to show each request, but here are the calls I've defined.

The first one I defined was against the /api/v1/cluster/me endpoint, to get information from the Rubrik CDM Cluster itself. When creating the request, the first question asked is if you'll use variable from another/previous API request, in this case we won't, I'll cover these in a subsequent blog.

Step 2 will define the HTTP Method, API Path, give the request a name, and see a Preview.

Step 3 provides for Advanced settings which are optional, I've left these blank. Finally, in the last step you get to test your API call and see the Reponse.

The Response Body shows the reponse to your API call, fields you will use later to define metrics/properties/events. The REQUEST button allows you to test all your calls. I've defined 29 API calls in this Management Pack, here are a few.


Once you've configured all your Requests, you will start defining Objects, I've defined 6 different Objects: 5 of them are Rubrik objects and one isn't. I've defined the Rubrik Cluster Object like this.



I've added several other Rubrik Objects, but I also added what we call an Internal Object, in this case the vSphere VM Object Types, so I can associate Rubrik metrics/properties to their associated vSphere VMs (discovered via Aria Operations), mine looks like this.



This allows us to attach Rubrik metrics and properties to vSphere VMs. We could create Rubrik VM Object Types and relate them to vSphere VMs later, but this is much cleaner.


Next up is relationships, allowing you to define relationships between objects, mine look like this.



Next up, Events, which are very interesting! We're pulling Rubrik CDM Events from the /api/v1/event API endpoint, we now need to parse them for consumption. Mine starts like this.

Define the API request, using the previous request, Event List, and Event Message.

The MPB provides insight into the Event Messages being pulled.

Then define your Severities.

Next you'll relate the Events to the Object Types.

In my case, I want to relate the Rubrik Events to the vSphere VMs, which I'm doing via the Object Property and the API Response Attribute, you want these to match. You'll notice at the bottom, for any unmatched Events, they will relate to the Rubrik Adapter Instance itself, I'll show this later. The final step here is that you have the ability to define an Operations Alert, corresponding to the Rubrik Event.

After this is Customizations, this is where you might include Dashboards, Views, Super Metrics and the like in your Management Pack. Of course, these would be added after that fact, I'll do this in the next blog.


Configuration is next up, this is where you build out the Adapter Instance wizard, I'm just taking the defaults.

The last step is the performance of a test collection and the build. To perform a test collection click PERFORM COLLECTION.

Here you will see the results of the collection, how long it took, what Objects were discovered, and more. You can also integrate your existing Operations instance into this collection. Once satisfied with the results, you can build your Management Pack by clicking the BUILD button.

You are presented with a PAK file you can download and install into Operations, or you can deploy from here. I'll download and deploy, which I'll show in a subsequent blog.


Back on the Designs page, you'll now see your new design.

From here you can export the Design itself (JSON) by selecting the Design and EXPORT.



I've exported my Design and put it up on GitHub, if you'd like to use it. You can also click on the Builds and download any of the Builds, which are PAK files and ready for import.

In the next blog, we'll dig in on a few more things:

  • Installing the Management Pack, building content, and including that in your Design

  • More advanced authentication methods

  • Chaining API calls together


For now, the Design (JSON) and Management Pack (PAK) are available on my GitHub Repo, which you can find here. For reference, there is a video series regarding the Management Pack Builder 1.1, which old, it's still relevant and quite useful.






Comments


bottom of page