Во время эксплуатации 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…".
При запуске консоли таким способом автоматически будет создан контекст для работы с текущим объектом и здесь мы сможем увидеть его ID:
Узнав 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 и проблема была решена.
Дополнительные источники информации:
Добавить комментарий