System Center Operations Manager 2016 Step by Step–Part 4

I saw today  that I wrote last post almost a month ago. It took me almost a month to go back to what I started to do. Installing SCOM 2016. In last blog post we prepared SQL server for installation. Yesterday I was checking on event logs for SQL, and there was some errors. So please install CU 4 for SQL 2016 RTM to suppress these errors.

Lets continue. I want to prepare for SCOM installation. What I need to install beforehand? All prerequisites you can find on TechNet System Center guide page but I will simple it up. 

First thing is Management server. You will install SCOM console there and you need to  install the Report Viewer controls to any server that will receive a SCOM console.  There is a prereq for the Report View controls which is the “Microsoft System CLR Types for SQL Server 2014” (ENU\x64\SQLSysClrTypes.msi) available here:   https://www.microsoft.com/en-us/download/details.aspx?id=42295.

Install that first and after that install Report Viewer.

image

So we finish prereq one. Lets go prereq two. To install web console on any server you will need to install IIS with all of this options.

Internet Information Services: IIS 7.5 and later versions, with the IIS Management Console and the following role services installed:

  • Static Content
  • Default Document
  • Directory Browsing
  • HTTP Errors
  • HTTP Logging
  • Request Monitor
  • Request Filtering
  • Static Content Compression
  • Web Server (IIS) Support
  • IIS 6 Metabase Compatibility
  • ASP.NET (both the 2.0 and 4.0 versions of ASP.NET are required.)
  • Windows Authentication

Just run this PowerShell command any it is done.You put you path in source parameter for Windows Server OS installation source or if your computer has access to Internet you don’t need it. It is required for asp.net 2.0 activation (correct me if I am wrong)

Add-WindowsFeature NET-WCF-HTTP-Activation45,Web-Static-Content,Web-Default-Doc,Web-Dir-Browsing,Web-Http-Errors,Web-Http-Logging,Web-Request-Monitor,Web-Filtering,Web-Stat-Compression,Web-Mgmt-Console,Web-Metabase,Web-Asp-Net,Web-Windows-Auth -Restart -Source D:\sources\sxs

image

Restart computer after this. Recommended by Kevin Holman. After that you will probably get new updates so update computer before continuing.

Lets prepare service accounts. You need next accounts

  • Local System                      SCOM Server Action Account (you can create domain one, I use local system)
  • DOMAIN\scomcdas            SCOM Config and Data Access Account
  • DOMAIN\scomdwreader    SCOM Data warehouse Reader Account
  • DOMAIN\scomdwriter     SCOM Data warehouse Write Account
  • DOMAIN\scomsql              SQL Service Account
  • DOMAIN\ScomAdmins       SCOM Administrators security group

Add scomcdas, scomdwreader,scomdwriter and Scom server action account if you created domain one to ScomAdmins group. Add the “SCOMAdmins” domain global group to the Local Administrators group on each server.

This is basic prerequisites for running setup of SCOM. See you tomorrow I hope.

System Center Operations Manager 2016 Step by Step–Part 3

Hi again

after some work problems I get back to new SCOM 2016 installation. I mentioned last time that we will today install SQL server. There were some questions about which version to use. I wanted to install SQL 2016 SP1 but I get notice it is not yet supported (see comments on this post by Kevin Holman.  You can get the list of last supported databases with SCOM 2016 UR1 on this TechNet link

image

You can use version you choose, because if you remember SQL license is free for System Center products. With only one rule, just use it for System Center products databases and nothing else.

Did you create SQL service account. If you didn’t, do it now. I created only two. One for SQL service account and one for SQL Reporting services account. So lets start. Choose new SQL server installation

image

After entering product key, accept license terms of use. I skipped Microsoft updates because I don’t want to end up with SP1 I don’t need for this SCOM installation. 

image

If everything is green you are good even windows firewall scream for attention here. You choose next features needed for SCOM SQL installation

 image

Choose default instance if you don’t need better that that

image

Enter you domain service accounts for SQL services and give services automatic startup. Also check Volume Maintenance Task privilege to use this new SQL feature

image

You need to use this SQL collation. In any case it is by default in SQL installation sou you will not miss it

image

Specify Windows authentication mode (do not use Mixed mode)

image

You setup your database and log files as you can, but rule of the thumb is to format those drives with 64K allocation unit sizes, and if you have possibility put your tempdb database and log on SSD drive. It is best to leave that volumes only for databases.

image

On Reporting Services page choose Install and Configure

image

Click next on Feature Configuration Page if everything is green  and then Install on Ready to Install page.

After everything is done, we are free to go further. Until next time

image

SQL Server Broker for the Operations Manager database is disabled

I was moving Operations Manager database today, but after everything went smooth, I get this error  “SQL Server Broker for the Operations Manager database is disabled” How  to fix it?

First of all stop all SCOM services in this order

  1. System Center Management Configuration
  2. Microsoft Monitoring Agent
  3. System Center Data Access Service

After that Open SQL Management Studio and do this SQL queries (run one by one)

ALTER DATABASE OperationsManager SET SINGLE_USER WITH ROLLBACK IMMEDIATE
 ALTER DATABASE OperationsManager SET ENABLE_BROKER
 ALTER DATABASE OperationsManager SET MULTI_USER

SELECT is_broker_enabled FROM sys.databases WHERE name='OperationsManager'

If everything is successful last query will give you result 1, so it means that SQL broker service is enabled.

Start Services in opposite order then stopping. Have a nice weekend

System Center Operations Manager 2016 Step by Step– Part II

I promised last time I will give my example of SCOM environment (experience based)  so you can compare it with your requirements, to see if that may work for you. Right know lets start with number of current SCOM agents on my SCOM server. I recently deleted some because we changed Exchange environment and some other things. To get exact number of agent installed around we will use PowerShell and simply do next

image

As you can see I have 35 agents installed. If you are unfamiliar with the term, it is every computer that have SCOM agent installed (MMA – Microsoft Monitoring Agent).  It is not some representative number. Still I think it is more common then people think. But still there is much more hidden workload that is not accounted in this number.

You will probably want to monitor some network devices too. Or maybe even storage or some other SNMP enabled devices. Lets count them with PowerShell. As you can see there is some IP addresses there. They are some optical switches, tape library, storage etc.

image

That is not all but lets stop there. Where is it running now? You will be surprised!  All of this is running on just one physical HP DL380 G5 server fully populated with disks and 32 GB of RAM with SCOM environment installed including databases (I mean DWH&ACS database too). But please don’t go there. This server was installed in time of SCOM 2007 R2 version when that was enough for that workload. I needed to tweak a lot of things to get it running on current SCOM 2012 R2 version. It survived couple of SCOM upgrades in between . Console was slower but it worked. I am now more clever and I will do fresh start. So what configuration can easily chew this environment. I found some servers in our warehouse with next configuration.

image

It doesn’t seems some round numbers but people from supply have some strange configurations in their heads Smile

What is important here. First of all, please separate SQL workload from management server. Two reasons.

  1. SQL workload can be very hard on performance and will stand in the way of normal SCOM functioning. It will take RAM, processors, everything it needs to work.
  2. SQL Server license is free for System Center use only. So please don’t put it on some big SQL server where you have a ton of other databases. In my case I will put also SCCM database here because it is small enough. If you need SQL workload for some other System Center product consider more RAM memory and enough space to accommodate database sizes

I don’t have anything against virtual servers. Management server can be virtualized in this configuration without to much fuss. SQL virtualization? Maybe, but that is you decision to make. So what we need for next time.

We will start with SQL installation. Because I want to run SCCM database here too, I need to consider what SQL version are compatible for both System Center products. As I understood somewhere Configuration Manager is going on its own path besides System Center product. I still didn’t chew on that one, but it was always separate product for me. From times of SMS 2003. 

image

If you look at the SQL compatibility for ConfigMgr 2016 (I need to stop using SCCM) you will see that SQL 2016 SP1 is supported. I will try to install SP1 version and see if that goes. I didn’t found any documentation is SP1 supported for SCOM but I will look for it.

Until next time

System Center Operations Manager 2016 Step by Step– Part I

As you know SCOM 2016 is published last year. Like many others I also have a task to upgrade my SCOM environment to new version. That’s why I get idea to document my path and maybe help other on all problems that can occur. Probably there is some people that are installing this product  for the first time. I will not write to much about theory of how SCOM works but focus mainly on all steps required to have functional and working SCOM environment. Especially I will take some time to explain configuration of some different management packs both Microsoft, vendor and community published.

So lets start. For all of you newbies, I will recommend first some reading you can do besides this blog. There is not so much books about SCOM 2016 but there is no much change when you compare it to 2012 R2 version. You can use 2012 R2 books and articles if you have it already. This is the list of latest books, new and old links you can use:

There is more, but lets stop here. It is more then enough to start with. So what is the first step. PLANNING!

To have functional SCOM environment you need to carefully plan your workloads. How to size your environment? You can do it by experience from your previous deployments, but if you are new then you use System Center 2012 Operations Manager Sizing Helper Tool Excel sheet. It is made for SCOM 2012 version, but it is usable for SCOM 2016. Only thing I saw is wrong in excel sheet is number of Linux/Unix computers you can manage with one management server. If I am not wrong number is doubled in SCOM 2016 so take that in account.

image

I will not walk you on Excel sheet. You will need to go for yourself to discover your needs. Please be extra careful with designing database server. It is crucial in SCOM design. If you have some good SQL admin ask his advise. If you don’t know how to calculate IOPS requirements you can test them on you server. For that best thing to use lately (besides IOmeter) is using DiskSpeed Powershell script together with  Diskspd Utility: A Robust Storage Testing Tool (superseding SQLIO). Be careful to put script into right folder with diskspd.exe file to get it running. When you succeed you get something like this. 

image

I need to run to other task that are waiting for me, but we will see each other very soon. Go thru this subjects and next time I will show you my imagined future configuration on almost purely experience basis. 

See you

How to remove OMS from SCOM

I am sometimes so annoyed that once you connect your SCOM to OMS it is hard to get rid of it. You even delete workspace, but only thing you get is some errors in SCOM console. Ok how to get it out if you temporary doesn’t want it there?

I started with Kevin Holman post about it but I had some trouble doing it so here is full  story. Lets first copy paste some things.

First of all we need to stop download of intelligence  management packs from OMS and all others related. To do that,  create override with name “override OMS temporary disable” , and disable two rules. Go to Authoring > Rules, and set your scope only to “Operations Manager Management Group”

Disable the following two rules:

image

It will disable automatic download of OMS MPs.

Now lets delete some MP

Open PowerShell and do next commands

Get-SCOMManagementPack -name “*advisor*” | Remove-SCOMManagementPack

Get-SCOMManagementPack -name “*IntelligencePack*” | Remove-SCOMManagementPack

get-SCOMManagementPack -name “Microsoft.EnterpriseManagement.Mom.Modules.AggregationModuleLibrary” | Remove-SCOMManagementPack

First command will probably fail. you will delete only one management pack but rest of it will not be possible because of dependency. This two you will have problems with

image

They have dependency on this management pack and you can not delete them. So what to do?

image

If you added run as account for System Center Advisor Run As Profile Proxy, and probably you did,  remove it from there. After that we need to edit this management pack. Go to PowerShell again and do this (don’t run it read first).

$MP = Get-SCOMManagementpack -Name Microsoft.SystemCenter.SecureReferenceOverride
$MP.References
$MP.References.Remove(“SystemCenter6“)
$MP.References.Remove(“SystemCenter5“)
$MP.Verify()
$MP.AcceptChanges()

To explain.

  1. With $MP.References you will show all reference inside this MP including Advisor ones.image
  2. After that you will remove references using right Key names listed for Advisor MPs
  3. With MP.Verify() you check everything to ensure there are no orphaned overrides, etc.
  4. If everything is OK do $MP.AcceptChanges() to save everything

After that you can easily delete first override mp “override oms temporary disable”  and both  left over Advisor MPs.

image

If I missed some step please comment

Installing MSOMS agent and LIS on CentOS 7.0

I was preparing some virtual environment for testing so I decide just do document this. If you are using OMS you already know that there is OMS agent for Linux (still Preview).  Supported operating are

  • Amazon Linux 2012.09 –> 2015.09 (x86/x64)
  • CentOS Linux 5,6, and 7 (x86/x64)
  • Oracle Linux 5,6, and 7 (x86/x64)
  • Red Hat Enterprise Linux Server 5,6 and 7 (x86/x64)
  • Debian GNU/Linux 6, 7, and 8 (x86/x64)
  • Ubuntu 12.04 LTS, 14.04 LTS, 15.04, 15.10 (x86/x64)
  • SUSE Linux Enteprise Server 11 and 12 (x86/x64)

But before OMS agent lets first install Linux Integration Services for Hyper-V . It enables lot of Hyper-V features to work  and provide driver support for virtual Linux machines. Latest version is 4.1 any you can read all about it in documentation attached to installation. You can find it here.

Mount LIS ISO file. CentOS has already installed LIS 3.1 so you will need to run upgrade.sh instead install.sh. You can see that I get an “error”  when I tried to install. After installation you will need to restart Linux machine Smile with tongue out .

image

image

After installation of LIS lets install OMS agent. You can download agent from OMS portal but that is not Linux way to do it. Open terminal and download installation and install agent with next lines of commands

wget https://github.com/Microsoft/OMS-Agent-for-Linux/releases/download/v1.1.0-28/omsagent-1.1.0-28.universal.x64.sh
sha256sum ./omsagent-1.1.0-28.universal.x64.sh
sudo sh ./omsagent-1.1.0-28.universal.x64.sh --upgrade -w <YOUR OMS WORKSPACE ID> -s <YOUR OMS WORKSPACE PRIMARY KEY>

I should not remind you, I hope,  to enter workspace id and workspace primary key in last command

image

Lets check know If my OMS Linux agent is connected! As I can see it is not because there is 0 servers connected. Why?

image

If you check logs on your Linux machine ( var/opt/microsoft/omsagent/omsagent.log) you will see something like this.

image

It means you didn’t load configuration  because you are not connected to OMS. Why? Because in my network you need to pass proxy. To install it right use –p option when onboarding MOMS.

sudo sh ./omsagent-1.1.0-28.universal.x86.sh --upgrade -p http://<proxy user>:<proxy password>@<proxy address>:<proxy port> -w <workspaceid> -s <shared key>

Use this only if you didn’t run command already. If you did, run next command to onboard again using proxy settings.

cd /opt/microsoft/omsagent/bin 
sudo ./omsadmin.sh -p http://<proxy user>:<proxy password>@<proxy address>:<proxy port> -w <WorkspaceID> -s <Shared Key> 

You should get output like this. You see that there is proxy.conf file created that MOMS agent will use for communicating with Internet.

image

After that you will see in OMS happy info. Add some counters for Linux to get some data out of it on OMS.

image

for all linux funs outhere (I am newbie) there is script to install OMS agent and DSC resources for Linux in one file you can find it here. Thanks Jonhatan

http://systemcenterme.com/easy-installation-and-registration-script-for-oms-and-dsc-on-linux

Getting to know SCOM agent patch version

This week I started again my SCOM lab, and wondered how to find out which patch version of SCOM I am running. I want  simple and clean solution. First I found build numbers on this link https://buildnumbers.wordpress.com/scom/ . Later  I also found in my scripts SQL query from some time ago. It query Operations Manager database to get patch version of agents.

select bme.path AS 'Agent Name', hs.patchlist AS 'Patch List' from MT_HealthService hs 
inner join BaseManagedEntity bme on hs.BaseManagedEntityId = bme.BaseManagedEntityId 
order by path

You will get list in this format

image

But we have Powershell now. Why bother with SQL. It is very easy to get to the command. I added some extras and this is outcome

get-scomagent | select HealthState, displayName, Version, Patchlist | sort-object -Property Displayname | ft Healthstate, displayName, Version, Patchlist -AutoSize

After you run it you will get nice list of scom agent list sorted by DisplayName

image

To get to know version of management server patch level procedure is a little bit more complicate. Please refer to this script example for UR7.  https://jurelab.wordpress.com/2015/09/18/check-if-scom-2012-r2-infrastructure-was-upgraded-to-ur7-ps-script/ 

Jure is checking file versions, so script is different for every update rollup. I don’t like this script. If I write my own it will be better Smile

Disable Azure Operational Insights (former System Advisor) alerts in SCOM

If you connected your SCOM environment  to Azure OPInsights and enable configuration assessment after some time you will start to receive alerts from it in console. If you want to see this alerts only on Azure you will need to disable this sync. You need to override two rules.

  1. Microsoft.OpInsights.ImportAlert
  2. Microsoft.OpInsights.SyncAlert

Go to authoring pane, select rules, and look for import alert. You will get rule mention above.

image

You will now go top overrides and disable it  for all Collection Servers. Crete new management pack for this override if you didn’t.

image.

Next find syncalert rule to overrride it.

image

Disable this rule in management pack you created before or you didn’t Smile

image

That is it an now you will not receive this alerts in SCOM console but only on OPInsight  Dashboard

image

SCOM Instance summary 2012 SQL dashboard No Data showed

It happened to me that I get this on my dashboard (No Data) sql instance summary 2012. At first I was thinking something is wrong with MP. But, after studying event logs I found some errors 10102 like this.

errors 10102

It means that there is no performance counters in windows server that MP is looking for. How this happens I don’t know but to get it back (base performance counters) read this KB: http://support.microsoft.com/kb/300956/en-us

I was going easy way and restored first base performance counters (if any were deleted):

cd\windows\system32

lodctr /R

Performance counters for SQL are in different location so how to get it. Go to SQL installation folder and follow this commands:

cd C:\Program Files\Microsoft SQL Server\MSSQL11.MSSQLSERVER\MSSQL\Binn (go to binn folder of sql installation)

unlodctr MSSQLSERVER  (unload performance counter that maybe left installed)

lodctr perf-MSSQLSERVERsqlctr.ini (load performance counters for MSSQLSERVER default instance. For named instance you should use this format perf- MSSQL$NombreInstanciasqlctr.ini)

image

After that restart Remote registry and Performance Logs & Alerts  if necessary. Restart management agent on server in question and wait for some time to get data in SCOM dashboard for more detail about restoring SQL performance counters visit http://blogs.technet.com/b/pfelatam/archive/2011/08/08/sql-performance-counters-are-missing.aspx

I hope I helped and that you get yours performance data in SCOM dashboard.

image