IT PRO VS. SCOM 2012 R2 ADVISOR

As a System Center Consultant I am often asked “will SCOM check to see if we are following the Microsoft best practices for a particular Microsoft product”.  Before SCOM 2012 R2 came out I would answer with a “it depends”.  Most Microsoft management packs are authored to provide information around the health of the application and sometimes the product group will throw in some rules or monitors around what they feel is a best practice.  Most of the time these rules or monitors were at the result of customer feedback and Microsoft Support requests. 

A really cool new feature in SCOM 2012 R2 is the integration with System Center Advisor.  Per Microsoft, System Center Advisor is an online service that analyzes installations of Microsoft Server software and alerts the customer to potential issues.  Issues can be as simple as missing a recommended patch or something more serious like a configuration issues. 

Getting Started

First thing you need to do is register for a System Center Advisor account (don’t worry its free).  You can either click on the link provided in the SCOM Console under Administration \ System Center Advisor \ Advisor Connection.  Look under Get Started and you will see “Register to Advisor Service”.
image
Clicking this link will start the “Advisor Onboarding Wizard: Authentication
image
I am going to click on the first option and use my Microsoft Live ID but you should review your options and select what makes sense for you.
image
Enter in your credentials and click “Sign in”.
image
On this screen, I need to provide a name for my Advisor Account.  I am going to name it something that makes sense to me like “Kuehfus Lab”.  Click Next.
image
Review your setting and click Create.
image
Once its finished click Close.

Add a Computer Group

A group can be used to control which servers Advisor checks.  If you don’t already have a computer group to use you will first need to go to Authoring and create one (if you already have one scroll down a bit).

image
Click on the highlighted Task above
image
Give your group a name and store it in a management pack.  I created a new management pack to store my group.
image
Click “Add/Remove Objects….”
image
In “Search for” I changed this to Windows Computer and select a few of my servers.
image
Click Next through the rest of the wizard and click Create.

Now, navigate to Administration \ System Center Advisor \ Advisor Connection and look for “Add a Computer Group” under Actions.  Click on it.  The Computer Search page should open.  Under Options I changed it to “All Instances Groups” and selected my new Advisor Computers group.
image
Click OK

Optional Configuration

There are two items of note here.  
image

  1. Configure Proxy Server is a very simple but important page where one enters in the proxy info.  If you are unsure if you have a proxy check with your system admin. 
    image
    Check the box and enter your proxy info
  2. Manage Alert Rules is where you go to enable or disable certain checks and alerts.
    Selecting this link opens Internet Explorer where you first need to select the type of account you are using.
    image
    I am using the first choice list here the Microsoft account because I am using a live ID.
    image
    Enter your creds and click Sign in.  Note: The Advisor site requires Silverlight and you will be prompted to install it if you don’t already have it.
    Once the System Center Advisor site opens you will see a page with two tabs “Ignored Alert Rules” and “Available Alert Rules”.  Seeing as this is the first time we are using Advisor for this account the “Ignored Alert Rules” is blank.
    image
    Click on the tab for “Available Alert Rules” and you will be presented with the list of rules.
    image
    From here you can drill into one of the Classes and uncheck one of the rules to disable.
    image
    In this example I deselected the “PowerShell was not enabled” rule and will now click apply.
    image
    Now under “Ignored Alert Rules” you can see I have one rule I am currently Ignoring. 
    As you work through using Advisor in a live environment you will be spending time disabling the checks that do not interest you.

Advisor in action

Now that we have an account configured, a group selected to use and configured our proxy and alert rules we can navigate to the Monitoring space in SCOM to start reviewing the Advisor Information.
image

First lets click on the Active Alerts and see what’s coming in.
image
Looks like Advisor is notifying me that I am missing a Windows update (2871777) on my management servers.
image
According to the details, I should take a look at an article but it looks like no article is listed in the alert.  But what you will see if a task called “View Solution/KB Article” in the task pane.  Running this task brought me to the correct KB.
image
image
I think that is really cool and works quite well, although a little difficult to initially discover.

Let me run windows update to see if I missing this patch and if this corrects the issue. 
image
Yup. I’m missing the patch.  I updated my management server and rebooted to see if the Advisor alert will resolve on its own but because these are generated by rules not monitors we will need to manual resolve the alert.  This brings us to the question of how long until the rule runs again to see if it comes back.   A quick look at the override configuration has the Frequency at 300 seconds (every 5 minutes). 
image

Managing Advisor Alerts from SCOM

The SCOM \ Advisor integration has also include a few other handing tasks for managing the Advisor rules. 
image
This task pack becomes available when you select any of the Advisor Alerts.

Say I would like to ignore one of my Advisor Alerts because is not required for my environment. 
For Example, The SQL Alert around performance and indexes on my SCCM database (below).
image

I simple click on the “Ignore Alert…” task.
image
The Task takes me to the online Advisor portal where I needed to login and answer the following question:
image
In my scenario I only want to ignore this alert on this specific server because the SCCM database is managed by the SCCM software and I am not to mess with it.  So I selected the second option “All alerts from this rule on the selected server” can clicked OK.
image
Advisor notifies me the Opt out rule is created.   I click on Close and IE asks me to close the browser.

To look at my current settings in Advisor I can run the Task “Manage Alert Rules…” which brings up the Manage Alert Rule view in the Advisor portal.
image

Hope this helps.

 

Rob

IT Pro VS. SCOM 2012 R2 upgrade

I put this blog together to provide a walk-through around how I typically upgrade a SCOM Management Group. 

This blog post is intended to be used as a reference when upgrading to System Center 2012 R2 Operations Manager. It is not intended to be used in place of the official Microsoft documentation. Please review the upgrade guidance from Microsoft located here

Lab Environment

Below you will find a quick description of my lab.  My SCOM servers are Server 2012 virtual machines running on Server 2012 R2 Hyper-V hosts.

Management Servers (2)

  • SCOM2012a (virtual Machine on host Hyper01, Operations Manager Console Role)
  • SCOM2012b (virtual machine on host Hyper02, RMS Emulator, Operations Manager Console Role, Web Console Role)

Database Server (1)

  • SQL2012a (virtual machine on host Hyper02, hosting the OperationsManager and OperationsManagerDW databases, Reporting Role)

Pre-Upgrade checks and steps

  1. Verify the management group is health by viewing the Management Group Health Dashboard under the Operations Manager folder in the Monitoring space.
    clip_image001
    Make sure to correct any issues found. DO NOT attempt to upgrade an unhealthy management group. In my experiences upgrading an unhealthy management group does not fix the problem but only makes things harder to troubleshoot.
  2. I also double check and make sure the Management Configuration Service is healthy (I find the health state of the configuration service is not rolled up correctly to the dashboard above). From the Monitoring Space, navigate to the Operations Manager \ Management Configuration Service folder and click on the Services State. Verify each of your management servers is showing healthy.
    clip_image002
  3. Remove all agents from pending management.  In my case, I selected each of the servers and rejected them.
    clip_image003
  4. Disable all Notification subscriptions
  5. Backup the OperationsManager and OperationsManagerDW databases or verify you have a recent backup.
    clip_image004
    For my lab, I opened Microsoft SQL Server Management Studio and backed up each of the databases. 
    Check out the following screen shots to see how:
    clip_image007
    clip_image008
    clip_image005
    clip_image006

Upgrade the Management Server(s)

The first Management Server I like to start with is the one that’s the  RMS emulator and also a member of the All Management Servers Resource Pool
Note: If you run into a case where the RMS Emulator is not a member of the the All Management Servers Resource Pool you should move the role to a mgmt server that is. 

To determine the RMS Emulator from the Operations Manager Shell run:
Get-SCOMRMSEmulator
Then review the results.

To determine membership of the “All Manageement Server Resource Pool” from the Operations Manager Shell run the commands below:
$MSPool = Get-SCOMResourcePool -DisplayName ‘All Management Servers Resource Pool’
$MSPool.Members

Example:
clip_image009

Now that we determined our starting Management Server, lets run setup from the System Center 2012 R2 Operations Manager media.
clip_image010
Notice the new option for downloading the latest updates to the setup program. This was not checked by default so I decided to select this options to try it out.  Click Install.

clip_image011
Setup has correctly found the SCOM Roles installed on this server and it is reminding us to backup the databases, as I did this earlier (above) I am going to click Next.

clip_image012
I see this is a Eval EULA from Microsoft so we will need to register the product again after the upgrade (more on that later). You should make sure you have access to your Product key. Click Next.

clip_image013
Make sure you have the correct location and space then click Next.

clip_image014
On the Prerequisites page, Setup has added a new prerequisite for Report Viewer 2012 (I noticed in the Microsoft documentation and was kind of expecting this).
I clicked on the Expand button to see where to go to download Report Viewer 2012.

clip_image015
Luckily, I have internet access on this server so I will click on the link and download the new Report Viewer 2012 controls.  If you do not have internet access you will need to download the Report Viewer 2012 ahead of time.

Now, after downloading and attempting to install the new Report Viewer I am told I first need the Microsoft System CLR Types for SQL Server 2012.  It would have been nice to see the initial prereq checker inform me of this first. 

clip_image016
Also, It’s a a real bummer that the message does not point us in the correct direction. After a quick Bing search I found the following – http://www.microsoft.com/en-us/download/details.aspx?id=29065

FYI….the trick is not to click on the big DOWNLOAD button but to drill down through the Install Instructions and look for the Microsoft System CRL Types for Microsoft SQL Server 2012 (screen shot below).
clip_image017
Make sure to download the X64 package and click Run

clip_image018
Click Next.

clip_image019
Accept and click Next.

clip_image020
Click Install.

clip_image021
Click Finish.

Drat….looks like the upgrade requires at least one reboot.
clip_image022
Click Yes.

After the reboot, I restarted Setup and clicked though until I got back to the prerequisites page.

I again attempted to install the Microsoft Report Viewer 2012 Runtime.

clip_image023
Click Next.

clip_image024
Accept and click Next.

clip_image025
Click Install.

clip_image026
Click Finish.

clip_image027
Once the install was complete I clicked on Verify Prerequisites Again.
Looks like we are good. Click Next

clip_image028
We need to specify the Configuration service and Data Access service account. Easiest way is to look at the service in computer management and see what you used the first time you installed SCOM (see my lab example below)
clip_image029

For my Management Group, I clicked on selected Domain Account and added the correct information. Click Next when you are complete.

clip_image030
OK here we go!!! Click Upgrade.

clip_image031
Screen shot of Upgrade running…

clip_image032
First Management Server is complete!!!  Also, so is the OperationsManager and OperationsManagerDW databases, Web Console Role and Operations Console.

Check out how Microsoft added the warning indicating the product needs to be registered.  I think this was a nice touch and helpful reminder (we will get to this later).

Next, I will repeat this process on my other management server then Gateways. You will need to repeat this for every management server in the management group. I would recommend the following order:

  1. All management servers that are members of the All Management Servers Resource Pool
  2. All management servers that are members of a resource pool being used for Network Monitoring
  3. All management servers that are members of a resource pool being used for UNIX Monitoring
  4. All other management servers
  5. Gateway Servers

Note: it is important you only upgrade one Management Server at a time. Wait until one has finished before moving on to the next one.

Reporting Upgrade

Next up is my SCOM Reporting Role located on my SQL Server (SQL2012a).  Kick off  Setup from your SQL Server where SCOM 2012 SP1 Reporting Role is installed.

clip_image010
Click Install.

clip_image001[7]
Setup has detected the Reporting Role.  Click Next.

clip_image002[7]
Accept the EULA and click Next.

clip_image003[7]
Make sure the location is correct and click Next.

clip_image004[9]
Click Next.

clip_image005[6]
Click Upgrade

clip_image006[6]
Click Close

Verify the Health of your SCOM 2012 R2 Infrastructure

Before I move on and upgrade my agents, I like to make sure all my SCOM infrastructure roles are healthy.  Open the Operations Manager Console and navigate to the Management Group Health dashboard. 
clip_image001[9]

Verify the version is 7.1.10226.0 by navigating to Administration \ Device Management \ Management Servers.
image

Upgrade Agents to SCOM 2012 R2

There are many different way to upgrade your SCOM agents.  Sometimes this depends on how you initially deployed your SCOM agents.  All of the agents in my lab were deployed using the Discovery wizard.   If you would like to use the method I used below it will only work for agents that are set to “Yes” on the Remotely Manageable property.  You can check this be going to Administration \ Device Management \ Agent Managed and personalize your view to display this column (sample below. 
image

For Agents that are Remotely Manageable, navigate to Administration \ Device Management \ Pending Management
clip_image003[9]
Select the agents and click on Approve.

clip_image004[11]
Enter in a account that has Local Admin rights on the servers you selected above and click Upgrade.

clip_image005[8]
Hmmm…Looks like I had one failure on the agent upgrade.

clip_image006[8]
A closer look tells me it has something to do with the operations system verification on that server.

BTW….The complete log is found on the management sever the agent is assigned to, in this case SCOM2012a. In my case ‘C:\Program Files\Microsoft System Center 2012 R2\Operations Manager\Server\AgentManagement\AgentLogs’.
clip_image007[6]

In this case, I needed to use a different user name and password for that server.  I tried again using a different user name and password and the upgrade worked.

To verify the agent version after the upgrade you need to wait a few minutes to allow the new version to be discovered and updated in the database before it will display correctly. 
clip_image008[6]
Once a few minutes have gone by, I noticed my agents in Agent Managed were updated to the R2 version.

Register SCOM 2012 R2

Just like in the previous version, in order to register SCOM 2012 R2 you need to run PowerShell from an elevated command prompt.

  1. Load the module for Operations Manager by typing:
    get-module ‘Operations Manager’
  2. Connect to the management group by typing:
    New-SCOMManagementGroupConnection -ComputerName ‘localhost’
    I am running this on a management server so I used ‘localhost’, if you are running this from your workstation type in the name of the management server you would like to connect to.
  3. Register the productID by typing:
    Set-SCOMLicense -ProductId ‘your-key-here’
    and type ‘Y’ to confirm.
    image

At this point you should be fully upgraded to the new SCOM 2012 R2 and ready to start using the new feature. 
Thanks!!
Rob

IT Pro vs. SCOM Cluster Discovery

Don’t you hate it when you import a SCOM management pack and very little happens.  That recently happened to me after I imported the Windows Server Cluster Management Pack.  After reading the MP guide I found little help around figuring out why my cluster state was listed as “not monitored”.  Now I know you have to wait a certain period of time for discovery to work its magic but after waiting 30 minutes with no luck I turned to the internet and found this useful post by Marnix Wolf – http://thoughtsonopsmgr.blogspot.com/2011/06/cluster-mp-one-or-more-clusters-not.html

That was really helpful and I tried it out on an instance and it worked like a champ.  But…..  I have hundreds of instances and there is no support for multi-select.  Time for a script –

#Load OperationsManager module and connect to management group
Import-Module ‘OperationsManager’
New-SCOMManagementGroupConnection -ComputerName SCOM1 #Change management server name
#build collections of servers by Operating System
$2003instances = get-scomclass -Name Microsoft.Windows.Server.2003.Computer | get-scomclassinstance
$2008instances = get-scomclass -Name Microsoft.Windows.Server.2008.Computer | get-scomclassinstance
$2008R2instances = get-scomclass -Name Microsoft.Windows.Server.2008.R2.Computer | get-scomclassinstance
$2012instances = get-scomclass -Name Microsoft.Windows.Server.2012.Computer | get-scomclassinstance

#Build collection of cluster service instances
$Clusterinstances = get-scomclass -Name Microsoft.Windows.Cluster.Service | get-scomclassinstance

#enumerate through each cluster instance to determine the correct OS and task to run
Foreach ($Clusterinstance in $Clusterinstances) {
Foreach ($2003instance in $2003instances) {
if ($2003instance.DisplayName -like $Clusterinstance.Path) {
Write-Host “Enable 2003 Cluster Discovery for ” $Clusterinstance.Path
Get-SCOMTask | where {($_.Target.Identifier.Path -like “Microsoft.Windows.2003.Cluster.Monitoring.Service”) -and ($_.DisplayName -like “Discover the Cluster Components”)} | start-scomtask -Instance $Clusterinstance
}}
Foreach ($2008instance in $2008instances) {
if ($2008instance.DisplayName -like $Clusterinstance.Path) {
Write-Host “Enable 2008 Cluster Discovery for ” $Clusterinstance.Path
Get-SCOMTask | where {($_.Target.Identifier.Path -like “Microsoft.Windows.2008.Cluster.Monitoring.Service”) -and ($_.DisplayName -like “Discover the Windows Server 2008 Cluster Components”)} | start-scomtask -Instance $Clusterinstance
}}
Foreach ($2008R2instance in $2008R2instances) {
if ($2008R2instance.DisplayName -like $Clusterinstance.Path) {
Write-Host “Enable 2008 R2 Cluster Discovery for ” $Clusterinstance.Path
Get-SCOMTask | where {($_.Target.Identifier.Path -like “Microsoft.Windows.2008.R2.Cluster.Monitoring.Service”) -and ($_.DisplayName -like “Discover the Windows Server 2008 R2 Cluster Components”)} | start-scomtask -Instance $Clusterinstance
}}
Foreach ($2012instance in $2012instances) {
if ($2012instance.DisplayName -like $Clusterinstance.Path) {
Write-Host “Enable 2012 Cluster Discovery for ” $Clusterinstance.Path
Get-SCOMTask | where {($_.Target.Identifier.Path -like “Microsoft.Windows.6.2.Cluster.Monitoring.Service”) -and ($_.DisplayName -like “Discover the Windows Server 2012 Cluster Components”)} | start-scomtask -Instance $Clusterinstance
}}
}

I hope this helps

ITPro vs. Dedicated drive for Windows Page File

Shortly after importing the Windows Core Management Packs in System Center 2012 Operations Manager I noticed a whole bunch of “Logical Disk Free Space is low” alerts.  After looking through a few of the alerts I noticed they all have been generated from the P drive and that drive is used for the Window Page file.  Disk space monitoring for this drive needs to be disabled.  Seeing as we have 800-900 hundred of these there was no way I am going to create overrides for each one.  I have provided the following procedure below in the hopes this helps others.

High level: 

  1. Create a management pack to store your custom settings for Disk Space Monitoring or use an existing pre-create one.
  2. Create a new group and configure a dynamic criteria to auto populate this group
  3. Create a override for each Logical Disk type you have discovered

Details:

Create a new group and a management pack

  1. Using the Operations Manager Console, Navigate to Authoring \ Groups
  2. Click on “Create a New Group
  3. Give your group a useful name “Windows Server SwapFile” or something
  4. Click New under Management Pack and create a management pack to store these settings or select an existing management pack
  5. Move through the wizard until you get to Dynamic Members and click on Create/Edit rules…
  6. Under Select the desired Class make sure to choose Windows Server XXXX Logical Disk (where XXX is the version of the OS) and click Add
  7. Select the Display Name property
  8. Select the Equals Operator
  9. Select the drive letter for the Value (P: for my scenario)
  10. Now repeat steps 6 – 9 for each OS version you have in your management group.  For example mine looks like this – Drive letter Dynamic Group
  11. Click OK (One thing to note if you have a few other drives that you wish to remove from monitoring you can directly add them to the group in the Explicit Members section.
  12. Complete this wizard

Create an Override for the Monitor

  1. Navigate to the Authoring Space if you are not there already and click on Management Pack Objects\Monitors
  2. Change the scope to only show Windows Server XXXX Logical Disk (where XXXX is the versions of the OS you are interested in) Windows Server 2003 Logical Disk for example
    LogicalDiskMonitors
  3. Drill into the Windows Server XXXX Logical Disk \ Entity Health \ Availability \ Logical Disk Free Space and click on it
  4. In the Tasks pane, select Overrides \ Disable the Monitor \ For a group
  5. Select the group you created above
  6. Add in a description and click OK
    GroupOverride
  7. Repeat for each one of the Windows Server XXXX Logical Disk classes as required

Hope this helps