Distribution of Management Packs for Agents RRS feed

  • Question

  • Hello

    Can someone please help me with the following question?

    I have been watching some of Brian video’s on Authoring and one thing he says make sense and does not make sense at the same time.

    1: Install the Management Pack (MP) via the console on the Management Server (MS)

    2: The MP will get delivered to agents whose host (Windows Computer, SQL DB Engine or whatever) has an at least one instance of the target class.

    New let’s look at two scenarios. Fresh Agent install and remove Health State Folder restart Agent.

    Now let’s assume you have a single MP which contains a single Monitor targeted at a custom class (whose class definition and discovery are in separate management packs, so you have potentially three MPs)

    Now you install an agent on a computer for the very first time (never had an agent on this computer before)

    First of all as far as I understand SCOM itself does not know which MP is which in so far is it does not know or understand you have broken down your MP into say three MPs (Library for classes and relationships, Discoveries for discoveries and Monitors for monitors) these MP have relationships to each other but apart from that SCOM does not know that an particular MP only deals with discoveries (or does it).

    If the above is correct then when this agent starts up on the new computer it will contact the MS for configuration information and next MPs. So SCOM has no recorded of this computer (apart from the fact is has just been added the  MG) and therefore no information on previous discoveries and thereby what classed do or do not exist on the computer in question. As such I am assuming the agent will download ALL MPs. Run the discoveries, send info back to MS/database in order to make instances of classes and relationships, pertaining to this agent (e.g. its GUID)

    Therefore it is true to say on a newly installed Agent ALL MPs get downloaded regardless? Or does SCOM somehow know which MP's contain discoveries and only send these to start with?

    Leading on from the above what about when you stop the agent and deleted the Health State Folder (you see all the 2110 events 'received MP xxx'). Now in the scenario the SCOM DB knows which class instances and their properties (if defined) existed on the computer the agent is responsible for prior to the agent restart.

    Therefore will it now say as you do not have an instance of class XYZ I will not send you the MP who's monitor is targets at XYZ.

    However if this is the case it brings us back to the issue/question the 'application or whatever which denotes an instance of XYZ' could be installed at a later date and therefore the 'discovery' will need to run on said host (if host is capable of hosting app XYZ at some point e.g. right version of windows OS etc.) in which case the MP with the monitor would then need to be sent to the agent. This then brings me to the first question above, I do not believe (correct me if wrong please) that SCOM knows which MP only contains Discoveries and which only Monitors, so one would assume when you delete the Health State Folder on an agent the result is ALL MP get downloaded again by the agent.

    Can someone please clear this up for me, I would be very grateful; perhaps someone from Microsoft looking at the forum as I would like a definitive answer please as misunderstanding this element will lead to misunderstanding further up the stack as it were.

    Thanks All



    Monday, March 24, 2014 9:25 AM


All replies

  • The Agent doesn't request MPs, it requests for Configuration. So look at configuration flow as workflows(rules/monitors/discoveries/agent tasks) that should be running on an agent.

    If there is ONE rule in an MP that should run on  an agent, and the rest say 50 do not , the MP would still have to be sent.

    On the server side, the configuration service builds the management group topology. It keeps an account of all objects, their relationships.

    When an Mp is imported in SCOM, it's elements : Library section (Modules/monitor types) classes, relationships , and all workflows (rules, monitors, tasks, discoveries) are stored in different tables.

    Now here is how the flow works.

    Agent is installed, Agent and windows computer objects are created initially.

    Config service finds a list of all workflows that are targeted at these 2 classes. MPs containing these workflows are sent and those workflows execute(after overrides are set if any).

    If discoveries run and detect objects of any other classes, those objects are populated and MG topology is rebuilt.

    Example: Logical disks, Windows Server Object

    Now config service understand that a few more workflows that are targeted to the classes of the newly discovered objects are to be run, those MPs are sent.

    Example, MPs containing disk space monitors, or SQL discoveries that are targeted at windows server class.

    and this goes on till the last possible object is discovered. That's when the MP download will stop.

    So you may have 10 Mps, then another 7 Mps, then another 10 Mps flowing based on what gets discovered each time new discoveries are downloaded. it will eventually settle down and the agent will have in this case 27 Mps.

    You can see this by filtering for 1201 events on the agent. They will get downloaded in phases, as per the new config after fresh discoveries.

    Now, to answer your question on clearing healthservice state folder.

    Since clearing the folder does not delete already discovered Objects in the DB, when you clear the cache, ALL MPs that are supposed to be on the agent will get downloaded in ONE GO (all 27) because the configuration is already in place , (if the discoveries were all done and the agent discovered objects were stable when you renamed the folder.)

    Hope this brings some clarity. if you have any further questions let me know.

    Tuesday, March 25, 2014 12:27 AM
  • Hello Divyadeep Dayal (MSFT)

    Thanks very much for taking the time to reply to my question with a detailed and easy to understand answer :) This helps my understanding a lot, particularly the facts

    1: The Classed and their relationships are stored in one table and the workflows (tasks, monitors, rules, discoveries are stored in another table) useful background information

    2: Agent is installed, "Agent" and "windows computer" objects are created initially. This too is very useful and explains how the many of the seed discoveries must work e.g. Windows Server Operating System say targeted at instances of Windows Computer Class and so on (I am making an assumption here)

    Your explanation is the best I have seen to date, and really helps.

    A couple more quick related questions please.

    1: What about "Unix Computer" is this also one of the initial object classes created to for example further discoveries targeted at Unix Computer (like version of Unix/Linux) can be discovered

    2: I am very interested in learning more about how the "instance space" and associated "Configuration Service" to maintain this instance space work.

    For example I assume the Agents are referred to by their GUID (health Service with GUID - xxxxxxxxx) as you see in the event logs. Therefore when we are talking about 'instance space' I assume this is a list of Agent GUIDs and which Classes (and their associated properties for building relationships perhaps) exist on said Agent and thereby which MPs to target (as you mention above).

    Where can I find more information about the 'Instance Space' and the 'Configuration Service' please are there some good TechNet articles on this that go into a bit of depth.

    Thanks Again



    Tuesday, March 25, 2014 7:45 AM
  • Hi 

    SCOM agent download mp files on below logic.

    for example you have 3 mp file as below

    1) MP1 : custom class

    2) MP 2 :custom class discovery

    3) MP 3 :monitors targeting to class.

    Mp1 contain custom class and Mp1 will deliver to agents where Base class of custom class instance is active on agent.

    Mp2 contains discovery of the class and will deliver to agents if target of discovery class instance exist on agent.

    Mp3 contain monitor of custom class and will deliver to only agents where custom class instance exist 

    refer below link for more information on config service 




    sridhar v

    • Marked as answer by Juke Chou Monday, April 7, 2014 4:35 PM
    Tuesday, March 25, 2014 9:05 AM
  • Thanks very much sridhar v

    Very nice explanation too, and thanks for the links I will check them out :)



    Tuesday, March 25, 2014 9:12 AM