System Center 2022 Operations Manager : Ошибки "Health Service Heartbeat Failure" и "Failed to Connect to Computer" для уже удалённого агента SCOM

System Center 2022 Operations Manager : "Health Service Heartbeat Failure" and "Failed to Connect to Computer" errors for already removed SCOM agentВо время эксплуатации System Center 2022 Operations Manager (SCOM) столкнулись со странной ситуацией. Один из агентов был обычным образом удалён из раздела консоли управления агентами после того, как сам виртуальный сервер, на котором стоял агент, был удалён из среды виртуализации. Такая процедура проводилась много раз и всегда алерты, связанные с удалённым агентом, автоматически исчезали из консоли SCOM. Но в этот раз после удаления агента из консоли SCOM алерты "Health Service Heartbeat Failure" и "Failed to Connect to Computer", связанные с агентом никуда не исчезли даже спустя несколько дней.

Получилось, что в консоли удалённый компьютер не отображается ни в одном из подразделов в "Device Management", но при этом агент продолжает отображаться в разделе "Operations Manager Products\Agents".

Попытка удаления агента с помощью привычных командлетов PowerShell для SCOM не дала никакого результата, так как командлет Get-SCOMAgent не возвращал объекта.
То есть следующие команды выполнялись без какого либо информационного вывода или ошибок:

Get-SCOMAgent -Name KOM-APP04.holding.com
Get-SCOMAgent -Name KOM-APP04.holding.com | Uninstall-SCOMAgent

Вероятно, в данной ситуации проблема заключается в том, что в БД SCOM осталась информация об обнаружении уже несуществующего объекта. Но чтобы дальше разбираться с этим объектом, нам нужно знать его идентификатор в системе.

Один из простых методов узнать ID объекта, с которым связана проблема, – в консоли SCOM (например, во вкладке "Monitoring\Discovery"), выбрать запись об агенте и правой кнопкой мыши открыть контекстное меню на этой записи, затем выбрать пункт "Operations Manager Shell…".

Find out the SCOM agent ID via the context menu item "Operations Manager Shell" in the SCOM console

При запуске консоли таким способом автоматически будет создан контекст для работы с текущим объектом и здесь мы сможем увидеть его ID:

Find out Get-SCOMClassInstance Id of SCOM agent in "Operations Manager Shell" console

Узнав ID объекта, можем попробовать удалить информацию о его обнаружении:

$context = Get-SCOMClassInstance -Id 2281db94-c41c-c655-2300-ba387ea72470
$idd = New-Object Microsoft.EnterpriseManagement.ConnectorFramework.IncrementalDiscoveryData
$idd.remove($context)
$idd.commit($context.ManagementGroup)

В нашем случае, после такого удаления объекта, связанные с ним алерты "Health Service Heartbeat Failure" и "Failed to Connect to Computer" исчезли из консоли SCOM и проблема была решена.

Дополнительные источники информации:

Добавить комментарий