Exclude Nodes by Name from discovery

hello board

 

please be so kind to help me with the following question:

 

i would like to exclude certain nodes from discovery based on a string in their name. with the license changes in 10.10 i need to make sure that we do not discovery any client machines which might possibly be active in a server subnet.

 

so we are running the "Range IPs by ICMP" job to discover the ip addresses active in the defined ranges. on top of that we are then running "Host Connection by Shell" and the "Host Connection by SNMP" jobs. as soon as any of the Host Connection jobs is active, as result they will create CI instances of type Node. Including any possible clients which are active in the server subnet.

 

So now i would like to be able to filter out all Nodes which for example have a Name Like "cl%". So all Nodes where the name starts with "cl" and then whatever string, should not be discovered in the first place in order to not increase the license count.

 

So i was looking at the Trigger Query for the Host Connection By Shell job. For this job the Input CI Type is IpAddress. But i don't see any possibilitie to influence which node should not be discovered. All ip address will be a trigger CI for this job and then create whatever Node will have an active shell connection.

 

Any suggestion on how we could achieve this?

  • Hello,

     

    A method to exclude node by Name from Discovery is to modify the TQL.

    From Host Resources by Shell job -> select Properties tab -> click the Pencil icon -> it will open up the Query -> right click Node, choose properties then you can add the name equals or like -> then hit the calculate button  -> then hit ok to save it and activate the job. Hope this helps.

     

     

    Regards,

    Ana Acosta-Diaz 

  • hi Ana

    thanks a lot for your reply. your help is much appreciated

    i can understand the solution your suggesting and the concept behind it. but there is one thing i do not understand here. any maybe you can help me out to here...

    from my understanding the trigger query definition (as described by you) will configure which CI instance will be considered as trigger CI for the job:

    from the uCMDB Data Flow Guide:

    A trigger query associated with a job is a subset of the input query, and defines which specific CIs should automatically trigger a job.

    So if the query does contain the CI Node and i can add the attribute for example "Name > Like %" to exclude all client machines in the trigger query. Does this not mean that the Nodes are already existent in the uCMDB? I mean how is it possible to filter on an attribute which has not yet been discovered?

    When i look at the "Host Connection by Shell" job i can see that the trigger CIs all are IP Addresses. So the Node CI will be created based on the Trigger CI IP Address. Adding the attribute "Name" to the trigger query on the Node CI Type will not influence how the trigger CIs of type IP Address will be selected. And the job will still create the Node CIs if i am not mistaken.

    What do you think?

    Thanks a lot

  • Hello,

     

    You are correct. You can create an Enrichment to delete the Node CIs after they are found, otherwise you need to exclude them from discovery.

    An alternative method can be:

    1. To run the Host Connection by Shell job and find the devices, then run TQL and get the IP address of these devices.

    2. Then, exclude them from discovery in IP address from discovery

     

    Hope this helps,

    Ana Acosta-Diaz

  • hello ana

    thanks a lot for your suggestion. i think this could be a feasible approach.


    any other suggestions/comments?

  • hello ana

    thanks a lot for your suggestion. i think this could be a feasible approach.


    any other suggestions/comments?

  • Consider modification of the input TQL.

    I take a copy of the discovery job. 

    Go to the adapter  select the input TQL and save a copy of it.

    Apply the new input tql to the newly saved job.

    Then go in a modify the input tql by changing the properties ci, in e.g., windows CI. adding a selection criteria by name or display name issing hte search by string and put in %<substring>%

    save new input tql.

     

    define a discovery zone for new job

    apply appropraite probe to new job

     

    downside is while this process works it can lead to unwanted errors/warning in logs, but this is an alternative approach