Highlighted
Knowledge Partner
Knowledge Partner
1546 views

uCMDB Generic DB Adapter

Jump to solution

Good day

 

We are experiencing a problem regarding doing a Generic DB Adapter to update attributes of CIT "node"

 

We have a simple orm file which only has type node in and it updates 4 attributes in the uCMDB with values from a external DB

 

These Nodes have been already discovered using DDMA, and we only wish to update additional attributes of teh nodes with the GDBA.

 

 

We have around 80k nodes which need to be updated.

 

 

Now the problem is when running the generic DB adapter looking at the log it checks the relationships as well????

 

This is causing fuse limitation errors. and even after we increase the fuse limit it cause teh systm to become slow

 

Any reason why it is checking relationships as well?

 

 

All we want to do is update attributes for CIT "Node", nothing with relationships.

 

 

Any help or advise regarding this will be

 

uCMDB 9.05

0 Likes
1 Solution

Accepted Solutions
Highlighted
Acclaimed Contributor.. Acclaimed Contributor..
Acclaimed Contributor..

Re: uCMDB Generic DB Adapter

Jump to solution

Whenever you updating any CI, UCMDB need to be sure that CI that will be updated is identified. To do this UCMDB usigng identification rule. 

Fuse fired because you're not providing enough data to reconcile CI with UCMDB content.

Below is part of identification rule from latest CP for 9.05. Data you're sedning with attribute you want to update need to meet any one (or more) of identification criterions. More is better.

 

<identification-criteria>
<identification-criterion>
<connected-ci-condition ciType="interface" linkType="composition" conditionType="approveAndContradict">
<overlap-operator match-percent="66"/>
<attribute-condition attributeName="mac_address" includeNullValue="false" conditionType="approveAndContradict" autoExcludeThreshold="50"/>
</connected-ci-condition>
</identification-criterion>
<identification-criterion>
<connected-ci-condition ciType="ip_address" linkType="containment" conditionType="approveAndContradict">
<overlap-operator match-percent="66"/>
<attribute-condition attributeName="ip_lease_time" includeNullValue="false" conditionType="approveAndContradict">
<include-only>
<value>0</value>
</include-only>
</attribute-condition>
<attribute-condition attributeName="authoritative_dns_name" includeNullValue="false" conditionType="approveAndContradict"/>
</connected-ci-condition>
</identification-criterion>
<identification-criterion>
<attribute-condition attributeName="name" operator="EqualIgnoreCase" includeNullValue="false" conditionType="approveAndContradict" autoExcludeThreshold="50"/>
</identification-criterion>
<identification-criterion>
<attribute-condition attributeName="snmp_sys_name" includeNullValue="false" conditionType="approveAndContradict" autoExcludeThreshold="10"/>
</identification-criterion>
<identification-criterion>
<attribute-condition attributeName="net_bios_name" includeNullValue="false" conditionType="approveAndContradict"/>
</identification-criterion>
<identification-criterion>
<connected-ci-condition ciType="ip_address" linkType="containment" conditionType="approveAndContradict">
<overlap-operator match-percent="66"/>
<attribute-condition attributeName="ip_lease_time" includeNullValue="false" conditionType="approveAndContradict">
<include-only>
<value>0</value>
</include-only>
</attribute-condition>
<attribute-condition attributeName="name" includeNullValue="false" conditionType="approveAndContradict"/>
<attribute-condition attributeName="routing_domain" includeNullValue="false" conditionType="approveAndContradict"/>
</connected-ci-condition>
</identification-criterion>
<identification-criterion>
<attribute-condition attributeName="bios_serial_number" includeNullValue="false" conditionType="approveAndContradict"/>
</identification-criterion>
<identification-criterion>
<attribute-condition attributeName="bios_uuid" includeNullValue="false" conditionType="approveAndContradict"/>
</identification-criterion>
<identification-criterion>
<attribute-condition attributeName="serial_number" includeNullValue="false" conditionType="approveAndContradict"/>
</identification-criterion>
<identification-criterion>
<attribute-condition attributeName="bios_asset_tag" includeNullValue="false" conditionType="approveAndContradict" autoExcludeThreshold="50"/>
</identification-criterion>
<identification-criterion>
<attribute-condition attributeName="ud_unique_id" includeNullValue="false" conditionType="approveAndContradict"/>
</identification-criterion>
</identification-criteria>

Regards
-Dmitry Gomel, PMP
Click the Like button at the bottom to say 'Thanks'.

View solution in original post

7 Replies
Highlighted
Acclaimed Contributor.. Acclaimed Contributor..
Acclaimed Contributor..

Re: uCMDB Generic DB Adapter

Jump to solution

Whenever you updating any CI, UCMDB need to be sure that CI that will be updated is identified. To do this UCMDB usigng identification rule. 

Fuse fired because you're not providing enough data to reconcile CI with UCMDB content.

Below is part of identification rule from latest CP for 9.05. Data you're sedning with attribute you want to update need to meet any one (or more) of identification criterions. More is better.

 

<identification-criteria>
<identification-criterion>
<connected-ci-condition ciType="interface" linkType="composition" conditionType="approveAndContradict">
<overlap-operator match-percent="66"/>
<attribute-condition attributeName="mac_address" includeNullValue="false" conditionType="approveAndContradict" autoExcludeThreshold="50"/>
</connected-ci-condition>
</identification-criterion>
<identification-criterion>
<connected-ci-condition ciType="ip_address" linkType="containment" conditionType="approveAndContradict">
<overlap-operator match-percent="66"/>
<attribute-condition attributeName="ip_lease_time" includeNullValue="false" conditionType="approveAndContradict">
<include-only>
<value>0</value>
</include-only>
</attribute-condition>
<attribute-condition attributeName="authoritative_dns_name" includeNullValue="false" conditionType="approveAndContradict"/>
</connected-ci-condition>
</identification-criterion>
<identification-criterion>
<attribute-condition attributeName="name" operator="EqualIgnoreCase" includeNullValue="false" conditionType="approveAndContradict" autoExcludeThreshold="50"/>
</identification-criterion>
<identification-criterion>
<attribute-condition attributeName="snmp_sys_name" includeNullValue="false" conditionType="approveAndContradict" autoExcludeThreshold="10"/>
</identification-criterion>
<identification-criterion>
<attribute-condition attributeName="net_bios_name" includeNullValue="false" conditionType="approveAndContradict"/>
</identification-criterion>
<identification-criterion>
<connected-ci-condition ciType="ip_address" linkType="containment" conditionType="approveAndContradict">
<overlap-operator match-percent="66"/>
<attribute-condition attributeName="ip_lease_time" includeNullValue="false" conditionType="approveAndContradict">
<include-only>
<value>0</value>
</include-only>
</attribute-condition>
<attribute-condition attributeName="name" includeNullValue="false" conditionType="approveAndContradict"/>
<attribute-condition attributeName="routing_domain" includeNullValue="false" conditionType="approveAndContradict"/>
</connected-ci-condition>
</identification-criterion>
<identification-criterion>
<attribute-condition attributeName="bios_serial_number" includeNullValue="false" conditionType="approveAndContradict"/>
</identification-criterion>
<identification-criterion>
<attribute-condition attributeName="bios_uuid" includeNullValue="false" conditionType="approveAndContradict"/>
</identification-criterion>
<identification-criterion>
<attribute-condition attributeName="serial_number" includeNullValue="false" conditionType="approveAndContradict"/>
</identification-criterion>
<identification-criterion>
<attribute-condition attributeName="bios_asset_tag" includeNullValue="false" conditionType="approveAndContradict" autoExcludeThreshold="50"/>
</identification-criterion>
<identification-criterion>
<attribute-condition attributeName="ud_unique_id" includeNullValue="false" conditionType="approveAndContradict"/>
</identification-criterion>
</identification-criteria>

Regards
-Dmitry Gomel, PMP
Click the Like button at the bottom to say 'Thanks'.

View solution in original post

Highlighted
Knowledge Partner
Knowledge Partner

Re: uCMDB Generic DB Adapter

Jump to solution

Hi Dima

 

Thanks a lot for the reply

 

There is not a lot of information on what the fuse does etc in the manuals or docs

 

 

Could you please outline just a short brief of what it does.

 

We have around 80k Ci's in the uC<DB and there are more than a million relationships to these nodes.

 

 

So with running the attribute update, the client only includes 1 reconciliation attribute "node" in the import through the GDBA Adapter.

 

 

So as you said, if they put in 1 or more attributes that are used for reconciliation, will that make the identification map much smaller?

 

 

Thanks very much

 

Regards

0 Likes
Highlighted
Acclaimed Contributor.. Acclaimed Contributor..
Acclaimed Contributor..

Re: uCMDB Generic DB Adapter

Jump to solution

Add connected IP and/or connected interface and identification map won't be so big.

Another option is to provide UCMDBid for cpecific CI, this will bypass the reconciliation layer since you know what you want to update already.

 

What version you're on?

Regards
-Dmitry Gomel, PMP
Click the Like button at the bottom to say 'Thanks'.
Highlighted
Knowledge Partner
Knowledge Partner

Re: uCMDB Generic DB Adapter

Jump to solution
Hi Dima

Adding IP/and or Interface, do I need to add that in the TQL or the orm file? or both?
We currently have TQL with only Node in, and orm file with only generic.db.adpter_node in with the 5 attributes it needs to update of which 1 attribute is name

Regards

The client is on version 9.05 latest CP, I will have to check


0 Likes
Highlighted
Acclaimed Contributor.. Acclaimed Contributor..
Acclaimed Contributor..

Re: uCMDB Generic DB Adapter

Jump to solution

You'll need to add it both in TQL and ORM file accordingly.

Do you have this info in DB?

Regards
-Dmitry Gomel, PMP
Click the Like button at the bottom to say 'Thanks'.
Highlighted
Knowledge Partner
Knowledge Partner

Re: uCMDB Generic DB Adapter

Jump to solution
Thanks Dima just verifying

I suggested adding more reconciliation data but they do not hold additional attributes used for reconciliation data in the DB they are using....They actually just wanted a workaround because they are busy redesigning the data warehouses so that they can build proper GDBA's.


Thanks a lot for verifying what I needed

Much Appreciated

Regards
0 Likes
Highlighted
Acclaimed Contributor.. Acclaimed Contributor..
Acclaimed Contributor..

Re: uCMDB Generic DB Adapter

Jump to solution

You are welcome to share more on what attribute you're providing for identification and what for changing. But generally speaking it's very untrivial to find what node need to be updated based on a small set of data. That's where complexity of identification rule for the node comes from.

Regards
-Dmitry Gomel, PMP
Click the Like button at the bottom to say 'Thanks'.
0 Likes
The opinions expressed above are the personal opinions of the authors, not of Micro Focus. By using this site, you accept the Terms of Use and Rules of Participation. Certain versions of content ("Material") accessible here may contain branding from Hewlett-Packard Company (now HP Inc.) and Hewlett Packard Enterprise Company. As of September 1, 2017, the Material is now offered by Micro Focus, a separately owned and operated company. Any reference to the HP and Hewlett Packard Enterprise/HPE marks is historical in nature, and the HP and Hewlett Packard Enterprise/HPE marks are the property of their respective owners.