顯示具有 SCOM 標籤的文章。 顯示所有文章
顯示具有 SCOM 標籤的文章。 顯示所有文章

2022年1月20日 星期四

SCOM 19 Reports Missing

 Issue:
======= 

There is no report under Microsoft Generic Report Library in SCOM 2019
 
Resolution:
========================
1. Start SQL Server Management Studio, and then connect to a report server instance
    that Operations Manager uses.
2. Right-click the report server name, select Properties, and then select Advanced.
3. Locate the AllowedResourceExtensionsForUpload setting
    add *.* to the list of extensions, and then select OK.
4. Restart SSRS.

2021年2月1日 星期一

Monitoring services that are not set to Automatic start

 On the Configuration tab you will see 3 attributes

  • ComputerName
  • ServiceName
  • CheckStartupType

The last attribute is the important one and we need to set it to false, however simply typing false and clicking OK will not work for us.

The line “<CheckStartupType />” needs to be changed to “<CheckStartupType>false</CheckStartupType>” for the value to take effect.

Save the XML file, save the Monitor properties, and save the MP. The service monitor should now ignore the startup type of the service you specified to monitor


2020年7月6日 星期一

Enable Proxy Option for Operations Manager Agents?


TO enable the proxy in the GUI go to Administration > Device Management > Agent 
Managed > Right Click the Server you wish to act as a proxy and click Properties > Security Tab > Check Allow this agent to act as a proxy and discover managed objects on other computers


To enable an agent proxy for all agents that are currently disabled the run:

get-SCOMagent | where {$_.ProxyingEnabled -match “False”} | Enable-SCOMAgentProxy

To enable proxy agent for all future agents the run the following in PowerShell ISE:

add-pssnapin “Microsoft.EnterpriseManagement.OperationsManager.Client”;
new-managementGroupConnection -ConnectionString:scomserver.domain.com;
set-location “OperationsManagerMonitoring::”;
Set-DefaultSetting -Name HealthService\ProxyingEnabled -Value True

2020年3月15日 星期日

SCOM Agent Pending Actions can get out of sync between the Console, and the database


Problem
==========
Agent Pending Actions can get out of sync between the Console, and the database

Cause
========
Orphaned client record in 'agentpendingaction' table of OperationsManagerDB
Action
=============
get-scompendingmanagement
get-scompendingmanagement | where{$_.Agentname -eq "agentname"}|  
get-scompendingmanagement | where{$_.Agentname -eq "agentname"}| Approve-SCOMpendingManagement
agentname 改成您的Agent名稱


Solution
=========
NOTE Before executing any query against the Operations Manager database be sure that a complete and current backup exists. 

exec p_AgentPendingActionDeleteByAgentName 'agentname.domain.com'

2019年12月9日 星期一

SCOM Action Account changed- Getting Event ID 31551 and 31561 on Management Server


Cause
========
Still old sccount

Solution
==========
1.Log onto the SQL server that the OperationsManagerDW db is located on. Go to the dbo.ManagementGroup table.
2.Right Click and go to Edit Top 200 Rows.
3.Go to the WriterLoginName check out whether the old account is associated with this.
4.If it is, then change it to the new account

2019年1月14日 星期一

SCOM : UNIX/Linux Heartbeat Failures After Applying KB2585542

The OpsMgr UNIX/Linux monitoring team at Microsoft is currently investigating an issue that results in heartbeat failures on Operations Manager UNIX/Linux agents after the security update KB2585542 is applied to a Management Server or Gateway.  This update fixes a vulnerability in SSL/TLS1.0, but appears to cause WS-Management connections to UNIX/Linux agents to fail. 

There are two viable workarounds (which must be applied to all Mgmt Servers and Gateways that manage UNIX/Linux agents):
  1. Uninstall the update KB2585542 
  2. Make a registry modification to disable the SecureChannel changes implemented in the update
Note: the registry modification described here and in the KB article effectively disables the security fix that the update implements, so the modified system is subject to the same vulnerability as an unpatched system.
Modifying the registry to disable the SecureChannel changes:
  • A “FixIt” package is available in the KB article under the Known Issues section that can be used to disable the security update
  • Alternatively, you can add the 32bit DWORD value:
    HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control
    \SecurityProviders\SCHANNEL\

     SendExtraRecord = 2
These changes take effect immediately and do not require a reboot.



2019年1月8日 星期二

Query notification processing failed due to a sql exception


Analysis
=========
Event Type: Error
Event Source: DataAccessLayer
Event Category: None
User:  N/A
Computer:
Description:
Query notification processing failed due to a sql exception.


Action Plan
==========
This is caused by a high number of sql queries to the Datawarehouse database. 

The work around is to add an override for the Event Data Collector rule in the Data warehouse connection server scope.

The Execution Attempt Timeout Interval Seconds property was changed from 0 to 6 and the Max Execution Attempt Count was set from 0 to 10.

Restart the System Center service on the SCOM and any gateway servers.

2018年10月5日 星期五

OpsMgr Management Configuration process fails with timeout exception

Log Name:      Operations Manager 
Source:        OpsMgr Management Configuration 
Event ID:      29181 
Level:         Error 
User:          N/A 
Computer:      server.domain.com 
Description: 
OpsMgr Management Configuration Service failed to execute ‘DeltaSynchronization’ engine work item due to the following exception 
Microsoft.EnterpriseManagement.ManagementConfiguration.DataAccessLayer.DataAccessOperationTimeoutException: Exception of type ‘Microsoft.EnterpriseManagement.ManagementConfiguration.DataAccessLayer.DataAccessOperationTimeoutException’ was thrown. 
  at Microsoft.EnterpriseManagement.ManagementConfiguration.DataAccessLayer.DataAccessOperation.ExecuteSynchronously(Int32 timeoutSeconds, WaitHandle stopWaitHandle) 
  at Microsoft.EnterpriseManagement.ManagementConfiguration.SqlConfigurationStore.ConfigurationStore.ExecuteOperationSynchronously(IDataAccessConnectedOperation operation, String operationName) 
  at Microsoft.EnterpriseManagement.ManagementConfiguration.SqlConfigurationStore.ConfigurationStore.WriteConfigurationDelta(IConfigurationDeltaDataSet dataSet) 
  at Microsoft.EnterpriseManagement.ManagementConfiguration.Engine.DeltaSynchronizationWorkItem.TransferData(String watermark) 
  at Microsoft.EnterpriseManagement.ManagementConfiguration.Engine.DeltaSynchronizationWorkItem.ExecuteSharedWorkItem() 
  at Microsoft.EnterpriseManagement.ManagementConfiguration.Interop.SharedWorkItem.ExecuteWorkItem() 
  at Microsoft.EnterpriseManagement.ManagementConfiguration.Interop.ConfigServiceEngineWorkItem.Execute()

Solution
========
We can increase the timeout using the following method on all management servers:

Make a backup of "x:\Program Files\System Center 2012\Operations Manager\Server\ConfigService.Config"
Increase the timeout values in ConfigService.config for the following:
<OperationTimeout DefaultTimeoutSeconds="30"> to 300 seconds
<Operation Name="GetEntityChangeDeltaList" TimeoutSeconds="180" /> to 300 seconds.
Restart the configuration service

2018年8月14日 星期二

SCOM 2016 – Linux Agent Deployment “Signed certificate verification operation was not successful”


If you are facing this scenario and your UNIX/Linux server has a different hostname then what is in DNS you have two choices. Either you change the hostname on your server, which may or may not be an option, or you create a new certificate with the FQDN hostname and private key without touching the server name at all using the scxsslconfig tool. I decided to perform the latter. Just open the a shell and run…

/opt/microsoft/scx/bin/tools/scxsslconfig –h Linuxname –d domainname.com -f –v

After executing the command, make sure to restart the agent.

/opt/microsoft/scx/bin/tools/scxadmin –restart

After the service is restarted head back to your SCOM console, and attempt to manage the Linux server again.

 

2018年7月8日 星期日

SCOM - How to List which server is the active resource pool member


use OperationsManager
select
BaseManagedEntity.DisplayName
,cs.agent.AGentGuid
,cs.WorkFlowExecutionLocationAgent.AgentRowId
,cs.workflowexecutionlocation.WorkflowExecutionLocationRowId
,cs.workflowexecutionlocation.DisplayName
from cs.WorkFlowExecutionLocationAgent
inner join cs.workflowexecutionlocation
ON cs.WorkFlowExecutionLocationAgent.WorkFlowExecutionLocationAgentRowId = cs.workflowexecutionlocation.WorkflowExecutionLocationRowId
inner join CS.agent
ON CS.agent.AgentRowId=cs.WorkFlowExecutionLocationAgent.AgentRowId
inner join BaseManagedEntity
ON BaseManagedEntity.BaseManagedEntityId = CS.agent.AGentGuid
where cs.workflowexecutionlocation.DisplayName like '%Pool%'

2018年1月13日 星期六

Ghost/Orphaned entries in SCOM console Windows Computer view

1. Connect to the SCOM SQL server and open SQL Management studio

2. Right click on OperationsManager database and select new query

3. Run the following query in the right window to see the status of ALL computers in SCOM
SELECT * FROM dbo.[BasemanagedEntity] where FullName Like ‘%Windows.Computer%’

4. To see the status of a specific computer in SCOM (replace the text “fqdn” with the server name)
SELECT * FROM dbo.[BasemanagedEntity] where FullName Like ‘%Windows.Computer%’ and Name Like ‘%FQDN.of.my.computer%’

5. In the results scroll to the right to find the “IsDeleted” column. 0(Zero) means the database does not know the computer has been deleted. If it is zero then we will run the next command to change it to 1 (one)
replace the text “fqdn” with the server name
UPDATE dbo.[BasemanagedEntity] SET IsDeleted = 1 where FullName Like ‘%Windows.Computer%’ and Name Like ‘%FQDN.of.my.computer%’

2017年12月20日 星期三

The pool managing the instance is not available or the location monitoring object cannot be found - discovery progress

Navigate to C:\Program Files\Microsoft System Center 2016\Operations Manager\Server

Open (as administrator) ConfigService.config

Edit the following lines, removing the \INSTANCENAME values so that only the SQL server value is shown.
     <Category Name="Cmdb">
        <Setting Name="ServerName" Value="jimmy\jimmy" />
        <Setting Name="DatabaseName" Value="OperationsManager" />

      <Category Name="ConfigStore">
        <Setting Name="ServerName" Value="jimmy\jimmy"  />
        <Setting Name="DatabaseName" Value="OperationsManager" />

To

     <Category Name="Cmdb">
        <Setting Name="ServerName" Value="jimmy" />
        <Setting Name="DatabaseName" Value="OperationsManager" />

      <Category Name="ConfigStore">
        <Setting Name="ServerName" Value="jimmy" />
        <Setting Name="DatabaseName" Value="OperationsManager" />

                   
Restart System Center Management Configuration and System Center Data Access Service.


Issue with SCOM agent in forest trust domain(0x80090311)

If you see these events 20057 with code (0x80090311), that is mean (trust is corrupted) and agents can not authenticate to MS.

The most common reason is Firewall issue.
(TCP/UDP 88 port (Kerberos) and TCP/UDP 389 port (LDAP)) should be open from Agent to Management Server DCs.

2017年10月12日 星期四

Total CPU Utilization Percentage" is monitor not working as expected

Cause
======
CPU % and queue length are not above the threshold as per the properties of monitor

Resolution
=========
This is working as per the design.

We have the default monitor name : Total CPU Utilization Percentage.
We are dealing with two conditions here

1) Threshold CPU that is 95 % by default with number of samples collected is 3


2) Queue length which is 15 by default   

2017年8月28日 星期一

Programmatically remove a management pack with Dependencies

Programmatically remove a management pack with Dependencies

When a management pack is deleted from the administration pane UI, it can become very time consuming to recursively track down and delete all dependent management packs before deleting the originally intended management pack. You can use the following script to cascade delete a management pack and all its dependencies.
To run the script, follow these steps:
  1. Open the Operations Manager Command Shell prompt in Administrator mode.
  2. Run the attached script from the directory where you have saved it in the disk. For example:
    • .\RecursiveRemove.ps1 <ID or System Name of the MP>
    • .\RecursiveRemove.ps1 Microsoft.SQLServer.2014.Discovery
    Note You can see the ID or System Name of the MP that you want to uninstall by selecting it in Installed Management Packs view. Then click Properties in the Actions Pane. Then copy the content in ID: text box in General tab.
# The sample scripts are not supported under any Microsoft standard support 
# program or service. The sample scripts are provided AS IS without warranty 
# of any kind. Microsoft further disclaims all implied warranties including, 
# without limitation, any implied warranties of merchantability or of fitness
# for a particular purpose. The entire risk arising out of the use or 
# performance of the sample scripts and documentation remains with you. In no
# event shall Microsoft, its authors, or anyone else involved in the creation,
# production, or delivery of the scripts be liable for any damages whatsoever
# (including, without limitation, damages for loss of business profits,
# business interruption, loss of business information, or other pecuniary
# loss) arising out of the use of or inability to use the sample scripts or
# documentation, even if Microsoft has been advised of the possibility of 
# such damages.
#
#
# PowerShell script to automagically remove an MP and its dependencies.
#
# Original Author :      Christopher Crammond
# Modified By   :      Chandra Bose
# Date Created   : April 24th, 2012
# Date Modified  :  Januray 18th, 2016
#
# Version  :       0.0.2
#

# Needed for SCOM SDK
$ipProperties = [System.Net.NetworkInformation.IPGlobalProperties]::GetIPGlobalProperties()
$rootMS = "{0}.{1}" -f $ipProperties.HostName, $ipProperties.DomainName


#######################################################################
#
# Helper method that will remove the list of given Management Packs.
#
function RemoveMPsHelper 
{param($mpList)
  foreach ($mp in $mpList)
  {
 $recursiveListOfManagementPacksToRemove = Get-SCOMManagementPack -Name $mp.Name -Recurse
 if ($recursiveListOfManagementPacksToRemove.Count -gt 1)
 {
  Echo "`r`n"
  Echo "Following dependent management packs has to be deleted before deleting $($mp.Name)..."

  $recursiveListOfManagementPacksToRemove | format-table name
  RemoveMPsHelper $recursiveListOfManagementPacksToRemove
 }
 else
 {
  $mpPresent = Get-ManagementPack -Name $mp.Name
        $Error.Clear()
        if ($mpPresent -eq $null)
        {
            # If the MP wasn’t found, we skip the uninstallation of it.
            Echo "    $mp has already been uninstalled"
        }
  else
  {
   Echo "    * Uninstalling $mp "
   Uninstall-ManagementPack -managementpack $mp
  }
 }
  }
}

#######################################################################
#
# Remove 'all' of the JEE MPs as well as MPs that are dependent on them.
# The remove is done by finding the base MP (Microsoft.JEE.Library) and finding
# all MPs that depend on it.  This list will be presented to the user prompting
# if the user wants to continue and removing the list of presented MPs
#
function RemoveMPs
{param($mp)

  $listOfManagementPacksToRemove = Get-SCOMManagementPack -Name $mp -Recurse
  $listOfManagementPacksToRemove | format-table name

  $title = "Uninstall Management Packs"
  $message = "Do you want to uninstall the above $($listOfManagementPacksToRemove.Count) management packs and its dependent management packs"

  $yes = New-Object System.Management.Automation.Host.ChoiceDescription "&Yes", "Uninstall selected Management Packs."
  $no = New-Object System.Management.Automation.Host.ChoiceDescription "&No", "Do not remove Management Packs."
  $options = [System.Management.Automation.Host.ChoiceDescription[]]($yes, $no)

  $result = $host.ui.PromptForChoice($title, $message, $options, 0) 

  switch ($result)
  {
        0 {RemoveMPsHelper $listOfManagementPacksToRemove}
        1 {"Exiting without removing any management packs"}
  }
}

#######################################################################
# Begin Script functionality
#
if ($args.Count -ne 1)
{
  Echo "Improper command line arguments"
  Echo ""
  Echo "Specify a command line argument to either import or export MPs"
  exit 1
}
else
{
  $firstArg = $args[0]

  add-pssnapin "Microsoft.EnterpriseManagement.OperationsManager.Client";
  $cwd = get-location
  set-location "OperationsManagerMonitoring::";
  $mgConnection = new-managementGroupConnection -ConnectionString:$rootMS;

  RemoveMPs $firstArg

  set-location $cwd
  remove-pssnapin "Microsoft.EnterpriseManagement.OperationsManager.Client";  
}

System_CAPS_noteNote
If any other imported management packs depend on the management pack you are trying to remove, the Dependent Management Packs error message displays. You must remove the dependent management packs before you can continue.

For
https://technet.microsoft.com/en-us/library/hh230746(v=sc.12).aspx

2017年8月3日 星期四

SCOM 2016,Unable to resolve the user xxx associated with the user role. Error code 1332

Problem
===========
Unable to resolve the user xxx associated with the user role. Error code 1332

Cause
=========
Normally – when you have a trust with a remote account domain, and you want to add users from the rote domain to SCOM, things go perfectly.
However, if the user account in the remote domain uses a different UPN name than the SAM account name – the SCOM UI block’s it.
  
Solution
===========
Use SCOM PowerShell to add these users to the role:

$Role = Get-SCOMUserRole -Name "MSFT TEST"
$Role | Set-SCOMUserRole -User ($Role.Users + "MSFT\jimmytest")


2017年4月27日 星期四

SCOM Workgroup Monitoring – Disable AD Integration

To disable during setup:
Install the SCOM agent with the following command line: MOMAgent.msi USE_SETTINGS_FROM_AD=0 MANAGEMENT_GROUP=“<Management Group Here>” MANAGEMENT_SERVER_DNS=<FQDN of management server here> /qb

To disable in the registry:
Open registry editor and nagivate to: “SYSTEM\CurrentControlSet\Services\HealthService\Parameters\ConnectorManager“.
Set the EnableADIntegration in the registry to ‘0′
Restart the HealthService (System Center Management)


2017年2月16日 星期四

SCOM got a lot Monitoring failed event 4001 Part 2

SYMPTOMDate and Time: 2017/2/16 下午 04:46:07
Log Name: Operations Manager
Source: Health Service Script
Event Number: 4001
Level: 1
Logging Computer:
User: N/A
 Description:
Management Group: CDIBOPS. Script: Main Module: CPUUsagePercentDataSource.ps1 Version: 6.7.15.0 : Error occured during CPU Usage for SQL Instances data source executing. Computer:HDBSERVER1 Reason: Cannot add type. There were compilation errors. Position:325 Offset:29 Detailed error output: Cannot add type. There were compilation errors. -------- (0) : 未指定輸入 (1) : using System; -------- (0) : 找不到原始程式檔 'C:\Windows\TEMP\zsvypltn.0.cs' (1) : using System; 

CAUSE
There are some known errors to the 6.6.4.0 version of the SQL management packs, and one of them does mention “Cannot add type. Compilation errors occured.”
In a thread on the Technet Forums it was suggested that it has to do with rights, but focusing mainly on the SQL instance. What caught our eyes, however, was the fact that the script is using the
C:\Windows\TEMP folder instead of its private one. And this seems to be because it is using a few .Net components that do some sort of JIT compilation.
We took a quick look using procmon, filtered on C:\Windows\TEMP\ and yes indeed. The monitoring account used is trying to create and delete its temporary files in that very folder.

work-around
The work-around is simple, but cumbersome. Just make sure that the assigned RunAs account have read/write/delete rights on C:\Windows\TEMP.