SCOM Maintenance Mode Scheduler

SCOM Maintenance Mode Scheduler makes enabling and scheduling maintenance mode simple for all users. Your IT staff will no longer have a reason why a server wasn’t put into maintenance mode.

The HTML5 web application now works with SCOM 2012 R2, 2016, SCOM 1801, 1807 and 2019. It deeply integrates into SCOM using all the new native maintenance mode scheduling capabilities. All your IT staff can quickly schedule maintenance mode without having to install and use the slow console.

Features:

  • Easily access web based maintenance mode scheduler from any browser (Chrome, FireFox, Safari and IE)
  • Schedule Windows/Unix Computers, Groups, and Objects like SQL Databases for maintenance in a few seconds.
  • Import a CSV containing a list of computers or groups for scheduled maintenance.
  • Instant MM: Server and application admins can instantly place servers into maintenance during reboots and maintenance windows directly from the server without requiring admin privileges to the server.
  • Instant MM can be called by a VB, PowerShell, or code from anywhere. This can be used to start and stop maintenance on any server for a specified amount of time. This makes it easy to integrate into your current change or software management process.

Download

Additional Features:

  • Redesigned web application that works 5x faster then the previous version.
  • Works in multiple different modes.
    • Open Access:  You can choose to enable open access where anyone can schedule maintenance mode even if they are not in SCOM.
    • SCOM Role Based Access – Only allow SCOM users to access and schedule Computers, Groups, and classes they have access to.
  • Integrated Dashboard works in the SCOM Console.
  • Instant Maintenance Mode with URL Parameters.  Specify URL parameters ComputerName, ID, Min, Action to control maintenance mode.
  • Manage page will make it easy to see and manage any upcoming maintenance windows and identify any gaps
  • Uses the same role based permissions that SCOM 2016 uses. Users will only be able to schedule maintenance mode for servers, groups, or objects they already have access to in SCOM.

Instant MM

 

This solution makes it easy for IT staff to put a server into maintenance mode without having to go to the SCOM console. On any server, the administrator can visit the SCOM Maintenance Mode Scheduler Instant MM website at http://yourMSserver/Home/MM/InstantMM

Create a shortcut on the desktop of the servers to make it even easier. This can be accomplished manually or by use SCCM, AD Group Policy or some other software deployment software

 

Integrated Dashboard

Instant Maintenance Mode with URL Parameters

SCOM Maintenance Mode Scheduler has the ability to add parameters to the URL.

  • ComputerName – Specify the Computer Name
    http://yourMSServer/MM/Home/InstantMM/?ComputerName=yourComputer.yourdomain.com
  • Min – Number of Minutes for Maintenance Mode
    http://yourMSServer/MM/Home/InstantMM/?Min=120
  • Action – Start or Stop Maintenance Mode
    http://yourMSServer/MM/Home/InstantMM/?MMAction=Start
    http://yourMSServer/MM/Home/InstantMM/?MMAction=Stop
  • Combine multiple URL Parameters
    http://yourMSServer/MM/Home/InstantMM/?ComputerName=DB02.scom2k16.com&Min=120&MMAction=Start

Instant Maintenance Mode using PowerShell, VBScript or Code.

Using the new URL Parameters, you can now put servers into Maintenance Mode from any computer using a script or code.  Typical use case would be using SCCM when updates or software is installed.  SCCM would execute the VB or PowerShell script before the install process to start maintenance mode.  After the updates or software is installed SCCM would call the script to stop maintenance mode.

VB Script Example    Download: https://www.scom2k7.com/wp-content/uploads/2018/10/computerMM.renameTOvbs.txt

 

PowerShell Example     Download: https://www.scom2k7.com/wp-content/uploads/2018/10/computerMM.renameTOps1.txt

Any problems, bugs, or issues please e-mail:  support@scom2k7.com

Continue Reading

SCOM DataWarehouse Grooming Settings is now Super Easy with new GUI tool

Do you find it a huge pain to run the outdated and buggy command line tool DWDATARP to adjust SCOM DataWarehouse settings?  This little GUI based tool makes it super easy to adjust the settings.

This new GUI tool can be ran from the SCOM servers or your desktop if you have access to the SCOM DataWarehouse Server.

Free Download

How to use

Before you start make sure you have DB Owner to the SCOM DataWarehouse Database.

Run the Tool.

Check you have the correct SQL server that has your SCOM DataWarehouse.  Then confirm the name of the Database.

Click Get Current Settings

 

This will show all of the DataWarehouse Datasets ordered by Percent of Database.

Then select the Dataset Name, Aggregation Type.  Then adjust Max Age (Day) of how long you want the data to stay in the SCOM DataWarehouse.

Then click Set

You should then get a confirmation that the settings have been changed.

 

It typically takes 24 hours for all the DataWarehouse grooming jobs to run.  After 24 hours run the tool again to confirm than your SCOM DataWarehouse Datasets have gotten smaller.

Kevin Holman has an excellent blog post on explaining DW Grooming in detail located here.  https://kevinholman.com/2010/01/05/understanding-and-modifying-data-warehouse-retention-and-grooming/

Continue Reading

Awesome hidden super powerful updatable SCOM class property that has unlimited possibilities like Tags in Azure

Imagine if you had an empty property in SCOM that was in every class that you could set and update.  The possibilities for this property are endless.  First dynamic grouping comes to mind, but there are many more such as notifications, reports etc..

Thanks to PFE Hugh Scott for sharing this cool “feature”.

How to set or access this property?

You can set this property using SCOM PowerShell or the SCOM SDK.

Here is how you do it.

First let’s get all windows computers using powershell. (Note this can be any class not just a windows computer class)

Now lets grab one of my windows computers and set it to a variable named $myComputer

Now lets look at the properties of that computer.

As you can see their is a property called [System.ConfigItem].Notes that is not used.  This is the property we will be using.

To set this property you need to set the value of it.   [System.ConfigItem].Notes needs to be in single quotes.

You also need to commit the changes using Overwrite()

Now when I query the object again I can see the Notes property has been set to Production.  (This is a free rich text field so you could list multiple values like Environment:Production,Team:SQL   Then use regex queries when you are creating groups)

 

Now how do I use this property when creating groups?

If I create a dynamic group in SCOM called Production Servers

I add Windows Computer, and then add the Notes Property and set it Equals to Production

Now I select the group and click View Group Members

I can see my group contains all Windows Computers with “Production” in the notes field.

 

The only downside to this property is that it is not viewable in the console state views.  But you can query it with PowerShell, SQL,  create a Dashboard view in the Web console https://docs.microsoft.com/en-us/system-center/scom/manage-create-web-dashboard-posh?view=sc-om-1807 to view it, or a PowerShell Grid widget https://blogs.technet.microsoft.com/stefan_stranger/2014/04/28/new-powershell-grid-widget-walkthrough/

 

Another similar example that inspired much of this work using asset status can be found here.  https://randomnote1.github.io/scom/using-the-asset-status-property-in-scom/  This property uses enum type so it is a little less powerful.

Continue Reading

Why Azure Monitor Workbooks are awesome and you should be using it now to supplement SCOM

With Azure Monitor Workbooks you can now quickly and easily make intelligent decisions about your infrastructure.

One of the things SCOM has never been good at is reporting or dashboards. I recently on-boarded a few VMs in my lab that have been running for months. If I look at SCOM everything looks great.  No performance issues or problems.

Now if I have a look at the same VMs in Azure Monitor Workbooks I see a totally different story.

I can quickly see that my DB07 server has CPU pegged.

I log into my server.  Yep CPU is pegged at 99%.  Even worse its not even SQL that is consuming the CPU.   Where were you at on this one SCOM?

 

Let me give another example.   If I scroll down in my workbook I can see another chart for available memory.

I can quickly see that one server DB01 has a ton of available memory.

I log into the SQL server and verify that I am wasting memory (relative to my lab size) on this server.

You might say well its because SQL Server is limited right?  Nope not the case.  SQL is set to consume as much as it needs.  I am just wasting memory.

Can’t I get this same data in SCOM? Not easily as most of the time with medium to large SCOM environments, the reports and dashboards take forever to show up or timeout. Azure Monitor can scale to hundreds of thousands of servers and still return this data in seconds.

How to use Azure Monitor Workbooks

First you will need a Log Analytics workspace.  https://docs.microsoft.com/en-us/azure/azure-monitor/learn/quick-create-workspace

Once you have a workspace you will need to point your SCOM agents at the workspace.  I recommend this method.  https://kevinholman.com/2017/08/16/adding-direct-agent-oms-workspace-and-proxy-via-powershell/

Then go to Azure Monitor, Workbooks, and select Performance.

 

Select your Subscription, Workspace, and Counter

Continue Reading

Stop collecting all the worthless SCOM events in your environment

Quick Download: https://gallery.technet.microsoft.com/Stop-collecting-all-the-3479ecb5

Do you want to stop collecting all the worthless SCOM events in your environment?  By default SCOM collects thousands of events out of the box with a few Management Packs installed. 99.999% of the time no one is looking at these events.  The events bloat your database and often times provide zero value.

A customer was recently was decommissioning two SQL servers that created 35 Million SCOM events in 2 days.  The events took up 60GB of DB space and crashed their production SCOM.

First we need to create a Management Pack to hold all the overrides.

image

I called mine “SCOM2K16 – Disable All Events”

Copy the script to one of your management servers and run it locally.

Now we simply run this powershell script on one of your management servers

The magic in the script is that it only disables event collection rules that don’t alert.  Rules that do alert we want to keep on, so it won’t disable them.

 

image

 

The script will take a long time to run as there may be thousands of rules that need to be turned off.

Thanks to Brad Watts for help with the script.

Continue Reading