Monitoring Azure Custom Counters in SCOM 2012
Since the Windows Azure work of OpsMgr 2012 is not complete yet you cannot directly view custom performance counters in OpsMgr2012. Rather you have to first use OpsMgr 2007 R2 Operations Manager and the Authoring Console to assist with this. Here is information on how to do this.
DISCOVERY AND MONITORING FOR WINDOWS AZURE APPLICATIONS
Install the System Center Monitoring Pack for Windows Azure Applications from http://www.microsoft.com/en-us/download/details.aspx?id=11324. Once you have installed the Azure Management pack on your SCOM server, you will have to follow these steps:
- In SCOM 2007 R2 create the appropriate accounts in Operation Manager to connect to your Azure environment for Azure applications discovery.
- Configure Performance Monitoring for Windows Azure applications.
- Export the pack into SCOM 2012 and view the results of the performance counters collection.
CONFIGURE ACCOUNTS FOR DISCOVERY STEPS
Step 1 – Create Run AS Accounts:
You will need three “Run As” Account in System Center Operation Manager 2012:
- One for Binary Authentication. This account will use the Management Certificate to connect to Azure.
- One for Basic Authentication. This account will be used for the Certificate and will store the password for the Certificate.
- One that will be used for the proxy agent (Optional).
For detailed steps refer the following documents:
Step 2 – Configure Windows Azure Management Pack Template:
- Click the Authoring button in the left pane, select the Authoring \ Management Pack Templates \ Windows Azure Application and click the Add Monitoring Wizard task in the right pane to open the Monitoring Wizard’s Select Monitoring Type dialog with Windows Azure Application selected.
- Click Next to open the Name and Description dialog. Type a Name and Description for the service and click the new button to open the Create a new Management Pack dialog. Type a Name e.g. MY AZURE MP, which fills in the ID value, Version number, and Description.
- Click Next to Open the Application Details dialog, type the service’s DNS prefix, e.g. MYPRODAPP1, copy the Subscription ID from the Developer portal and paste it in the text box, accept the default Production as the Environment to Monitor. Using the accounts you previously created, select the Binary Authentication account in the Azure Certificate Run As Account and the Basic Authentication account for the Azure Certificate Password Run As Account.
- Click Next to open the Select Proxy Agent dialog and click Browse to open another Select Proxy Agent dialog. Click Search to list computers on your network and select an agent-managed computer to act as a proxy agent for the Windows Azure application, e.g. MYPRODDC.
- Click OK to close the dialog and click next, which displays a message. Click Yes to distribute the account to the selected Proxy Agent and open the Summary dialog.
- Click Create to create the new Management Pack for the MYPRODAPP1 with Azure Applications Discovery.
- Click the Monitoring button in the left pane, select the Monitoring \ Distributed Applications node to open the Distributed Applications list, and select the new MYPRODAPP1 hosted service monitor (Healthy state indicates monitoring is occurring):
- Verify that Detail Views of the Deployment State, Hosted Service State, Role Instance State, and Role State correspond to the known current state of the service.
CONFIGURE PERFORMANCE MONITORING FOR WINDOWS AZURE APPLICATIONS STEPS
- Create Performance Collection Rule using existing Performance Counters
- Create A Performance Rule using Custom Azure Counters
- Export the SCOM 2007 R2 Management Pack into SCOM 2012
Step 1 – Create Performance Collection Rule using Standard Performance Counters
In Operations Manager Console for 2007 R2 open Rules and select the following Targets:
- Windows Azure Deployment
- Windows Azure Hosted Service
- Windows Azure Role
- Windows Azure Role Instance
- Open Create Rule Wizard and select Collection Rules Node.
- Under the Performance, Collection Node select the Windows Performance Node and select the Customs Management Pack (i.e. My Azure MP in our case).
- Provide the rule name e.g. “ASP.NET Applications Requests/sec (Custom)”.
- Select Performance Collection as the rule category.
- Select the Target as Windows Azure Role Instance (This will collect data for all role instances across hosted services you are monitoring).
- To collect data for instances within a particular hosted service, select the Windows Azure Role Instance (i.e. MYPRODAPP1 in our case).
- On the next Page select Performance Object, Counter, and Instance as:
Object Name: ASP.NET Applications
Counter Name: Requests/Sec
Instance Name: __Total__
All Instances: True or False
- Optimize Performance Collection Settings as default which means it will not use optimization.
- Save the performance collection rules.
Step 2 – Import the Management Pack into Authoring Console
- Open Authoring Console for Operations Manager 2007 R2.
- Connect to Management Group (i.e. “PRODMGMTGROUP”).
- Click on Tools and select Import Management Pack.
- Select the Custom MP created earlier (i.e. “My Azure MP”). The Management Pack should successfully load in the Authoring Console.
- Open the Health Model Tab and click on Rules.
- You should see the same performance collection rule (Check display name to display correct rule names).
- Open the Rule Properties and click on the Modules tab.
- Under Data Sources delete the existing Data Source values.
- Click on Create and select“Microsoft.SystemCenter.Azure.RoleInstance.PerformanceCounter.CollectData.DS”type entry.
- Give a custom name of ModuleID (i.e. AzureDS).
- Edit the Data Source just created to adjust values for Counters and InstanceName.
- Provide the following values in Data Source module:
- Save those values and save the Management Pack in SCOM 2007 R2 Authoring Console.
- Export the Management Pack back to in SCOM 2007 R2 Operations Manager Console.
- Make sure you can see the Performance Data in the Console by creating a new Performance View.
Step 3 – Create Performance Collection Rule using Custom Azure Counters
- Create another Performance Collection Rule for Azure in the same manner mentioned above for standard counters but this time use a custom counter.
- Ensure the values under the Data Source Modules should be as follow:
Object Name: CustomCategory
Counter Name: TotalnumberofFileUpload
All Instances: False
(This means the InstanceName should be empty and AllInstances set to false).
NOTE – You need to follow all these steps in Operations Manager 2007 R2 set up or Management Group.
- Save the Management Pack and export it to Operations Manager 2007 R2 Management Group.
- Create a new Performance Collection View under Monitoring to see the Data related to Custom Counters.
- Once all the Rules are created, and when you can see the Data under Performance Collection View for Custom Counters save the Management Pack as a XML file using the Authoring Console.
EXPORT THE SCOM 2007 R2 MANAGEMENT PACK INTO SCOM 2012 STEPS
- Copy the saved Management Pack file to Operations Manager 2012 Management Server. Import the Management Pack using Operations Manager 2012 Console.
- Open Authoring Console on the same Management Server and select “import from Management Group” and select the Custom Azure MP in the list.
- Now open the Health Model and click on Rules. Select the Custom Counter Performance Collection Rule.
- Check the Data Sources in the Module and confirm that the correct Modules for Azure, Operations Manager and Operations Manager DW Database are selected.
- Change the Data Sources if required and save the Management Pack in the Console.
- Now export the Management Pack to Operations Manager 2012 Management Group using Authoring Console.
- Ensure to change the Azure Run As Accounts (if different in Operations Manager 2007 R2) used in Windows Azure Management Pack Template for Azure Discovery process using Operations Manager 2012.
- Also change the Proxy Agent in Azure MP Template to new Operations Manager 2012 Management Server.
- Save all the settings made in the Azure MP Template in same custom MP.
- Restart the Health Service on the Management Server and make sure all Azure Role Instances, Hosted Services and Deployment are successfully discovered.
- You should also see the same Performance Collection View in the Console as in Operations Manager 2007 R2 Console.
- Now you should see the same Performance Data for Custom Counters in the View.
- Similarly you can create more Rules for different Custom Performance Counters.
Important: In case you get the Event ID 34024, make sure to apply an Override and change the Diagnostic Connection String used in Windows Azure with your Custom Connection String.
ALL THIS IS POSSIBLE IF YOU CAN SEE THE CUSTOM PERFORMANCE COUNTERS ON THE AZURE VM OR SERVER WHERE THE AZURE ROLE INSTANCES ARE RUNNING.