Jan 27, 2010

Agent proxying needs to be enabled for a health service to submit discovery data about other computers

This looks like it is coming from the Root management server, but the details give you a GUID to the actual server with the error. It looks like this:

Details:Health service ( 168645A4-6B9C-31C6-801D-11B6B355091D ) should not generate data about this managed object ( F227C8F1-E50E-F847-9378-45EB7135B901 )

In order to get the actual name of the monitored device you need to use PowerShell. Don't use the PowerShell that you find in Programs -> WindowsPowerShell 1.0 since this does not have the SCOM snap-in included. Go to Programs -> System Center Operations Manager 2007 -> Command shell then execute the following command. Replace the GUID with the one that your alert specifies.

Get-MonitoringObject -id:'FED0B867-F9AE-ACAF-4CCF-311DD92789C9' | ft DisplayName

Then to enable Proxying:

Access the Administration Node and locate the agent under Agent Managed.  Right click the node you found after you execute the above command.  Select Properties.  Click the Security tab.  Check  Allow this agent to act as proxy…

Jan 26, 2010

SC Operations Manager 2007 SP1 - Configuration Steps: SCOM2k7 Basic Service Monitor with a Diagnostic and a Recovery for a Stopped Service



We can use SCOM2k7 to solve many of the operational challenges faced in maintaining healthy Windows Servers.  In this scenario I will generate a Basic Service Monitor.  The intent of this Basic Service Monitor is to ensure SCOM2k7 offers a 'Critical Alert' when the specific Service of focus is stopped (in this case I am using the Print Spooler Service - but this could be a core Line of Business Application Service as another example).  In addition, I then author a Diagnostic.  A Diagnostic in SCOM2k7 is programmatic logic that determines what else was occuring when the Service stopped (or runs a custom diagnostic application as another example).  Finally, I generate a Recovery.  A Recovery in SCOM2k7 is programmatic logic that restarts the Service (in this example - again it could do anything programmatically necessary).
Here are the general steps:


  1. Focus the Monitor Console on the 'Windows Computer' object.
  2. Generate a Basic Service Monitor against the Print Spooler Service as a Critical Alert when the Service Stops for all Windows Computers.
  3. Generate a Diagnostic that automatically lists all Applications and Process IDs during the time the Service Stops.
  4. Generate a Recovery that automatically starts the Print Spooler Service and clears the Critical Alert.
 
 1.  Here is the Operations Manager 2007 Main Console focused on the 'Computers' view.  This view shows us the general health, by view of the computers monitored by SCOM2k7.


2.  Upon 'right mouse clicking' on a single computer object our focus is directed to the 'Health Explorer' view.  This view provides us detailed insight into the numerous 'Monitors' within SCOM2k7.


 
3.  The Health Explorer provides a good example of the Core Services monitored by the Windows Server Management Pack.  We will add our Basic Service Monitor to appear under the 'Availabillity' section of the Health Rollup Monitor.



4.  Here I move into the 'Authoring' space from the Main Console.



5.  In the Authoring Space I then 're-Scope' to focus attention on the 'Windows Computer' object.  This provides the ability for all Windows Computers to receive this Monitor if chosen.  If only a select 'Group' of Windows Computers should receive this Monitor we would then generate a unique Group and an Override to focus receipt of the Monitor.


 
6.  I move to the 'Application' Health Rollup, then focus on creating a new 'Unit Monitor'.  In this case our Unit Monitor will be a Basic Service Monitor.



7.  On the 'Create a Unit Monitor' Wizard I select 'Windows Services', then 'Basic Service Monitor'.  Notice also I have shifted the focus to a custom Management Pack (instead of the Default Management Pack).



8.  Confirmation of the unique changes for this Basic Service Monitor.


 
9.  I prefer to 'disable' a Monitor upon initial creation.  Then, upon completion, i review the Monitor to ensure setting correctness.



10.  I title this Basic Service Monitor 'ITPS Lab - Print Spooler Service Monitor' and disable the Monitor initially.



11.  Again, Basic Service Monitors could be focused at any Service running on a Windows Server.  Here the example includes the Print Spooler Service (titled by its short name as 'Spooler').

 

12.  The default values for a Basic Service Monitor for the Health State are 'Healthy (Green Check Box)' or 'Service Not Running (Red X Box)'.



13.  Next in the Wizard I configue the Alert.  This entails defining whether or not an Alert should be raised, and the associated verbiage for the Alert Description.  Notice the rich number of variables available fromt he SCOM2k7 attributes for the detail.  I choose the Server DNS Name (FQDN).



14.  Upon completion of the Monitor I move back into the Monitoring space to review the Basic Service Monitor properties.  Notice the positioning of this Monitor under the 'Availability' rollup for all Windows Computers.



15.  I 'walk through' the properties of this Basic Service Monitor to double check settings prior to enabling.  I prefer having the initial Monitor disabled as it also provides the ability to generate the appropriate Overrides to focus the Monitor at the proper Server Group (s).


 
16.  Focused at the Print Spooler Service.



17.  In a 'Critical State' if the Print Spooler Service is not running.



18.  A detailed Alert Description provides useful insight when attempting to remedy an Alert.



19.  This Alert is set to 'Automatically resolve the alert when the Monitor returns to a Health State'.  We can use SCOM2k7 Reporting to view the frequency of this Alert as it will not show in the Alert Pane upon remedy.



20.  The 'Diagnostic and Recovery' tab is currently empty.  I will return to this Tab to configure both a Diagnostic and Recovery.



21.  I could input relevent Product Knowledge here.  Useful for Help Desk Staff and other System Engineers assigned to assist with a remedy.



22.  No Overrides configured so far.  We could focus this Basic Service Monitor at a Server or a Group of Servers using this Override Screen.



23.  Now I move back to the 'Diagnostic and Recovery' tab to input a unique Diagnostic.  Remember, a Diagnostic runs when an Alert is triggered.  In this example, when the Print Spooler Service stops this Diagnostic (and the Recovery I will configure) execute.



24.  I have choses to 'Run a Command' for this Diagnostic.


 
25.   This Diagnostic will run automatically using a basic call to the 'tasklist' executable.  The output will be a list of Tasks running at the time the Alert is triggered.



26.  The 'tasklist' executable with some input variables to spice up the output formatting.



27.  Now I move to configure the 'Recovery'.  This is actually what makes the Service restart.


 
28.  Again, like the Diagnostic, I choose to execute a basic command.  Any form of Script would be appropriate here as well.



29.  The selection for this Recovery is to 'Run Recovery Automatically' and 'Recalculate Monitor State after Recovery Finishes'.  I am inputting (but do not show the screen) a command of '%windir%\system32\net.exe start spooler' to provide this Recovery.



30.  Now a validation both the Diagnostic and Recovery are in place.  Since they are I am ready to test.



31.  I 'enable' the Basic Service Monitor in preparation for testing.



32.  I validate the 'Alert View' is clear of all Alerts.



33.  I then move to the Services MMC and Stop the Print Spooler Service.



35.  Within under 1 Minute my Basic Service Monitor Alert is triggered.  In the 'background' my Diagnostic will automatically trigger as well as my Recovery to restart the Print Spooler Service.



36.  Notice the Alert Description includes the full DNS Server Name for this Server as configured in the Alert Description properties.



37.  In no time the Print Spooler Service is restarted and the Basic Service Monitor Alert is cleared (as configured).  I could view the number, frequency and Server detail in the Operations Manager Reports for Alerts or Events.



38.  Here I move to the Computers View and select the Server used for testing.  When I open Health Explorer I will be able to see the 'history' of the Monitor and associated Health Status.



39.  Notice several important details on the Health Explorer screen.  First we can see the Monitor by name under the Availibility Rollup for this Server (the Monitor is titled 'ITPS Lab - Print Spooler Service Monitor').  Second, we can view the State Change Events for this Monitor and examine the time/date when the Monitor was last triggered in the upper right window pane.  Finally, we can see the Diagnostic (titled 'ITPS Lab - Print Spooler Service - Lists Applications Running When Print Spooler Stopped') and the associated output from the Diagnostic to assist with persistent problems or generate forensic detail for why the Service stopped.

Flushing the Health Service and State and Cache


What really happens when the when you run this task?
So we start the task by clicking on the ‘Flush Health Service State and Cache’



image
Then you are ask to confirm the settings and run the task.
image
Note in the Task description
Task Description
Status:  Failed  This task will reset all state in the Health Service.
This includes the state of rules, monitors, outgoing data, and cached
management packs. Since this task will reset the service, status of
this task will not be delivered since outgoing task status is part
of what is reset by this task.
This, even though a little unclear is saying that the task is by design going to show up as a failure.
Let’s have a look at was is really happening. When you run the task it may take a long time to finish.
image
So when the task is running the targeted machine will with e-mail notifications shows up as below.
image
Then shows as health in ‘Computers’ in the Monitoring Pane
image
But the task can still run. In fact for a very long time it just keeps going.
image
I find Event 29103 and the fact the agent has contacted the MS and downloading the config.
image
As well as 29102.
image
But the Task is still running! Is this right?
If we do the task manually then we stop the Health Service (Net stop HealthService )
image
Go to the the Heath Service Store
C:\Program Files\System Center Operations Manager 2007\Health Service State\Health Service Store
Delete all in it ( will not be able to delete the files when the Health Service is running
image
Then start the HealthService again and the Cache is cleared.
So why does are Task show up as a failure?
What happen the task is run against the current Health Service Store but in fact is deleted so the task cannot complete.
As the new Health Service Store as no knowledge of the task being run, hence it fails.
Conclusion
When you next run the ‘Flush Health Service State and Cache’ check the Ops Mgr Event Log on the target for Event 102
to show that a new Instance has been started to confirm the task really did complete.
Simon Skinner

Deploying windows updates with Microsoft SCCM 2007 (Part 1-3)




 

 

Управление драйверами в Operating System Deployments System Center Configuration Manager 2007


Пожалуй, одним из основных плюсов, при использовании OSD SCCM 2007, является возможность хранить драйвера устройств вне файла WIM. Таким образом, во-первых, уменьшается размер образа WIM, а во-вторых, мы существенно снижаем количество необходимых файлов.

Чтобы Configuration Manager 2007 мог работать с драйверами, необходимо вначале внести их в базу драйверов. Сделать это можно через консоль администрирования Configuration Manager Console: Site Database –Computer management – Operation system deployment – Drivers – Import. Для удобства администрирования вы можете создавать в структуре Drivers обычные папки или папки поиска. Если с режимом обычной папки, я думаю, вопросов не возникнет, то режим папки поиска (Search folder) - это хорошо известные нам еще по WSUS виртуальные папки, которые динамически формируют свое содержимое в зависимости от заданных в настройках условий. Например, все драйвера, название которых содержит слово «Intel». Это было небольшое лирическое отступление.
Увеличить рисунок


Импорт драйверов

Итак, для того чтобы добавить драйвер в базу SCCM выбираем пункт «Import» и в появившемся мастере выбираем способ добавления драйверов «Импортировать все драйверы из следующего сетевого папки» (Import all drivers in the following network path (UNC)). Второй доступный вариант позволяет выбрать отдельный файл драйвера. Естественно добавлять мы можем файлы либо в формате inf либо в формате txtsetup.oem.
Увеличить рисунок


После нажатия клавиши Next SCCM 2007 произведет поиск доступных файлов описания драйверов в папке и выведет их список. При это вы можете исключить не нужные драйверы, снимая галочки с записей.
Увеличить рисунок


Также вы можете задать категорию драйверов. Применение категорий драйверов значительно облегчает их поиск и применение в Task Sequence, это скорее инструмент фильтрации. Именно категориями драйверов вы будете оперировать в шаге «Автоматическое применение драйверов « (Auto Apply Driver) Task Sequence. Чтобы задать категорию нажмите кнопку Categories и в появившемся окне либо отметьте уже существующие категории, либо создайте новые. Способ фильтрации и соответственно разбития категорий зависит только от вас. Это может быть деление на драйвера:
  • сертифицированные для работы с Windows и тестовые драйвера от производителя
  • драйвера по производителям компьютеров
  • по типам оборудования
*
На следующем шаге нам необходимо выбрать пакет, в который будут входить данные драйвера. Все драйвера должны входить в пакеты и быть распространенными на точках обновления для того чтобы клиент мог их установить входе развертывания ОС. К созданию пакетов драйверов стоит подходить более ответственно, чем к созданию категорий.

Чем отличаются пункты Apply Drive Package и Auto Apply Drivers в Task Sequence? 

Apply Drive Package копирует все драйверы пакета на клиент, вне зависимости от того, нужны они клиенту или нет. Когда их следует применять:
  • оборудование еще не подключено к компьютеру (например, принтеры);
  • устройство не поддерживает PnP;
  • драйверы контроллеров дисков, при развертывании систем с ядром ниже NT 6;
  • когда необходимо установить на клиента определенный драйвер, а не лучший, по мнению Windows;
  • если у нас очень большая база драйверов, то используя пакеты драйверов для определенных моделей компьютеров (например ноутбуков) мы уменьшаем время установки ОС за счет отказа от поиска по всей базе драйверов;
Во всех остальных случаях, а в особенности при использовании Windows Vista\Windows 7, мы можем использовать автоматическую установку драйверов Auto aply drivers.
Также необходимо учитывать операционные системы, которые вы собираетесь распространять. Для Windows XP \ Windows 2000 существует ограничение на 150 драйверов для пакета. В реальной жизни, я сталкиваюсь с ситуацией, когда Task Sequence вызывает ошибку при попытке копирования 145 по счету файла драйвера на клиент.

date="10-14-2008" component="OSDDriverClient" context=""
type="0" thread="1664" file="driverinstaller.cpp:424">
date="10-14-2008" component="OSDDriverClient" context="" type="1" thread="1664" 
file="driverinstaller.cpp:312">
type="0" thread="1664" file="driverinstaller.cpp:424">
date="10-14-2008" component="OSDDriverClient" context="" type="0" thread="1664" 
file="sysprepdriverinstaller.cpp:246">
Напомню, что драйверы должны обязательно входить в какой-либо пакет. Если существующие пакеты вас не устраивают, можно создать новый пакет, нажав на кнопку «New Package».Увеличить рисунок В появившемся окне задаем имя и комментарий к пакету, а так же сетевой путь, в который будет содержать файлы драйверов. Увеличить рисунок После нажатия кнопки OK пакет драйверов появится в окне выбора и будет отмечен галочкой. Не забывайте обновлять пакеты драйверов на точке распространения! Увеличить рисунок На следующем шаге мастера мы можем добавить драйвера к загрузочному образу Windows PE. Чаше всего такая необходимость возникает, когда на клиенте установлена сетевая карта, которая не поддерживает стандартные драйвера WinPE, либо когда необходимо указать драйверы для контроллера дисков. Не стоит увлекаться и добавлять драйвера к загрузочным образам просто на всякий случай. Любое добавление драйверов увеличивает объем памяти, который будет занимать среда Windows PE на клиенте. Увеличить рисунок

Как увидеть драйвера которые входят в состав загрузочного образа?

В консоли администрирования Site Database –Computer management – Operation system deployment - Boot перейдите к интересующему вас образу и нажмите кнопку свойства. На вкладке Windows PE вы увидите, какие драйвера будут использованы данным загрузочным образом. Сможете добавить или удалить необходимый драйвер. *После нажатия кнопки Next и просмотра итоговой страницы мы видим процесс добавления драйверов в базу. Увеличить рисунок Увеличить рисунок Теперь драйвера добавлены в базу Configration Manager 2007 и отображаются в консоли администрирования. Выделив все или часть драйверов, мы можем отсортировать их по разным папкам. Увеличить рисунок При нажатии на правую кнопку мыши появляется контекстное меню, в котором мы можем выключить драйвер, добавить или удалить его из пакета или образа загрузки, а также перенести в другую папку. В данный момент нас интересует кнопка Свойства. Увеличить рисунок Самой интересной является вкладка Applicability. На ней задаются поддерживаемые платформы, а также модели оборудования, для которых применим данный драйвер. *

Добавление драйверов в Task Sequence

После того как мы добавили драйвера в базу SCCM перейдем к тому, ради чего, собственно все и затевалось – к настройке Task Sequence. Пункты работы с драйверами добавляются в Task Sequence через меню Add-DriversУвеличить рисунок Рассмотрим добавление пакета драйверов. Выбор применяемого пакета доступен через кнопку Browse пункта Driver Package. Кроме того нам доступны два параметра, это выбор драйвера для контроллера дисков (Select the mass storage driver…) и поведение с неподписанными драйверами (Do unattended installation…). Увеличить рисунок Одной из «фишек» Task Sequence является возможность применять его пункты, только когда они соответствуют определенному условию. Например, в случае с драйверами мы можем указать несколько пакетов, и WMI запрос, который будет проверять, соответствует ли компьютер определенному критерию - производитель или модель материнской платы. Увеличить рисунок Увеличить рисунок При выборе автоматической установки драйверов, мы можем указать для поиска всю базу или только определенные категории. Кроме того, доступен выбор установки всех драйверов или только совместимых, а также поведение при работе с неподписанными драйверами. Увеличить рисунок