310 likes | 632 Views
What is discovery?. Mechanism to tell Operations Manager which objects to manage.Runs on a periodic basis.Typically based on registry checks, scripts, WMI.Until an object is discovered, it will not show up in the console and will not be monitored.. Types of Discoveries. SnapshotDefault type of discovery data. This is what you have been doing so far.We assume that the discovery data represents everything that exists.Any previously discovered instances not in the data will be deleted.Incre1139
E N D
1. Management Pack Authoring Module 2 – Lesson 2
Taking Control of Discoveries
2. What is discovery? Mechanism to tell Operations Manager which objects to manage.
Runs on a periodic basis.
Typically based on registry checks, scripts, WMI.
Until an object is discovered, it will not show up in the console and will not be monitored.
3. Types of Discoveries Snapshot
Default type of discovery data. This is what you have been doing so far.
We assume that the discovery data represents everything that exists.
Any previously discovered instances not in the data will be deleted.
Incremental
Allows us to specify what we want added and deleted.
If we return empty incremental data, nothing gets deleted.
Should be used only in error handling situations ONLY
4. Type of Discoveries - Example Snapshot Discovery
10:30 AM – Databases Sales and Marketing found by discovery A
11:30 AM – databases Marketing and Research found by the same discovery running on the same agent
End Result – Databases Marketing and Research are managed by OpsMgr
Incremental
10:30 AM – Databases Sales and Marketing found by discovery A
11:30 AM – databases Marketing and Research found by the same discovery running on the same agent
End Result – Databases Sales, Marketing , and Research are managed by OpsMgr
5. Discovery Workflow Internals Data Source – Used to invoke the workflow. Typically this is a timer.
Probe – Used to create the actually discovery data. Typically this is a script.
Condition Detection – Check if the discovery data changed (internal)
Write Action – Send data to MS (internal)
6. Discovery on Demand Discovery usually runs on a regular schedule.
Why run it when we don't need to?
Why wait until the next execution to collect a change?
If application will give us an event indicating install or change, we can launch a discovery in response.
Administrator can log an event to force the discovery to run
7. What if multiple discoveries find the same instance? The DB will automatically reference count the instance.
If multiple discoveries submit an instance, deleting becomes tricky.
How does the DB know where discovery data comes from?
By looking at the discovery id in the discovery data item + the health service from which discovery data came.
9. Recap of the discovery from day 1
10. Going from scheduled to event based discovery Currently used module Microsoft.Windows.TimedScript.DiscoveryProvider
Ships with OM
Composed from Scheduler and ScriptProbe modules
Takes the interval and script as config
Create a new probe module to encapsulate the script
Create a new data source module for scheduled discovery composed of:
Scheduler datasource
Our newly defined probe
Create a new data source module for event based discovery composed of:
Scheduler datasource
Our newly defined probe
Invoke the script from both the scheduled as well as script based discovery
Avoid duplication of the script.
11. Error handling in discovery Your discovery is obligated to return discovery data. Otherwise, a warning will appear in the console.
Return empty discovery data if no instances are discovered.
Will cause the removal of alerts, performance data, state changes, events about the removed instances.
12. Problem Scenario What if your script has an error and is unable to collect required data?
Option A
Return no discovery data. Operator will see warning in the console. Hard to troubleshoot from operator perspective.
Option B
Return empty discovery and remove existing instances
Option C
Use an incremental discovery
Log an event using scripting API
Create a rule to pick up the event and log an alert that the operator can understand.
13. Using Incremental Discovery
14. Event Discovery Composition
15. Event Based Discoveries Demo
30. Event Discovery Composition
31. Summary Event Based Discoveries compliment timer based
Copy existing Discovery compose to be triggered by event vs. timer
Expose a task for Admin to rediscover (logs event that triggers discovery)
Use incremental for …
Error handling
Scale
NOTE: Need to maintain your own state