In CAPM, Component Elements for CPU, Memory, and Partition elements are not synchronized to NetOps Portal from the CA Data Aggregator (DA).
A result of this is the inability to create Groups with these specific Component elements when targeting them for Event Threshold Rules.
There is a way to selectively choose particular types of Component elements for synchronization to NetOps Portal. This is not possible for single selective elements. It can only be applied to all elements of a given Component type.
Follow these steps to get specific Component type elements synchronized to NetOps Portal for use in Groups and/or Event Threshold Rules.
This allows users to create Groups, and generate Events from Threshold Rules for specific Component elements once synchronized to NetOps Portal. Before this, the alternative was generating Events on all the Component elements of a given type tied to a device at the parent device level.
All supported DX Netops CAPM releases
An example of this activity for the Partition Component Element type will be shown in line with the instructions.
1. Bring up the following URL in a browser, or run a REST API GET on the URL to get a full list of all Component types in the environment. Replace DAHOST with the DA systems host name or IP address.
http://DAHOST:8581/typecatalog/components
Find the Component type to change. In this case we're using:
<FacetType name="Partition">
<Documentation>A partition of a storage item.</Documentation>
<FacetOf namespace="http://im.ca.com/core" name="Item"/>
<Component>true</Component>
<WebService version="1.0.0">
<EndPoint create="false" delete="false" get="true" getList="true" update="false" url="partitions" createOnlyIfUnique="false"/>
<Reference ref="{http://im.ca.com/inventory}DeviceComponent" use="Required"/>
</WebService>
</FacetType>
2. Bring up the following URL in a browser, or run a REST API GET on the URL to get the XML for the specific Component type selected.
Replace DAHOST with the DA systems host name or IP address; replace COMPONENTNAME with the value from <FacetType name="name">.
http://DAHOST:8581/typecatalog/components/COMPONENTNAME
In this sample it would be:
http://DAHOST:8581/typecatalog/components/Partition
That provides the following:
<!-- Auto-generated by the type catalog local manager. -->
<DataModel xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" namespace="http://im.ca.com/inventory" xsi:noNamespaceSchemaLocation="ComponentFacet.xsd">
<Author>CA</Author>
<Version>1.0</Version>
<FacetType name="Partition">
<Documentation>A partition of a storage item.</Documentation>
<FacetOf namespace="http://im.ca.com/core" name="Item"/>
<Component>true</Component>
<WebService version="1.0.0">
<EndPoint create="false" delete="false" get="true" getList="true" update="false" url="partitions" createOnlyIfUnique="false"/>
<Reference ref="{http://im.ca.com/inventory}DeviceComponent" use="Required"/>
</WebService>
</FacetType>
</DataModel>
3. Copy the Component types XML and place it in a REST API client as the Body.
We'll next change a few values, add a statement and run a REST PUT to update the Component type. This is what will trigger its related elements being synchronized to CAPC.
3A. Raise the version value from 1.0 to 1.01, 1.1 to 1.11, etc
NOTE: The version value MUST be updated to a value >1.0. If the version is left at the 1.0 default, an upgrade will see this and overwrite it, removing any user made changes.
Without the version change post upgrade when a full DA sync is run, the items will end up unsynced and removed from Performance Center Inventory.
3B. Add the following statement on the line after </WebService> but before before </FacetType>:
<ItemSyncDefinition categorize="false" context="true" groupBy="false" itemSubtypeName="partition" itemTypeLabel="Partition" itemTypeLabelPlural="Partitions" itemTypeName="component" mapped="false" />
If using a different Component type, replace the itemSubtypeName, itemTypeLabel and itemTypeLabelPlural values with ones that would make sense. For example if doing this for a CPU Component type the line might look like this:
<ItemSyncDefinition categorize="false" context="true" groupBy="false" itemSubtypeName="cpu" itemTypeLabel="CPU" itemTypeLabelPlural="CPUs" itemTypeName="component" mapped="false" />
The full new sample XML for the Body of a PUT in the Partition example used here would be:
<DataModel xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" namespace="http://im.ca.com/inventory" xsi:noNamespaceSchemaLocation="ComponentFacet.xsd">
<Author>CA</Author>
<Version>1.01</Version>
<FacetType name="Partition">
<Documentation>A partition of a storage item.</Documentation>
<FacetOf namespace="http://im.ca.com/core" name="Item"/>
<Component>true</Component>
<WebService version="1.0.1">
<EndPoint create="false" delete="false" get="true" getList="true" update="false" url="partitions" createOnlyIfUnique="false"/>
<Reference ref="{http://im.ca.com/inventory}DeviceComponent" use="Required"/>
</WebService>
<ItemSyncDefinition categorize="false" context="true" groupBy="false" itemSubtypeName="partition" itemTypeLabel="Partition" itemTypeLabelPlural="Partitions" itemTypeName="component" mapped="false" />
</FacetType>
</DataModel>
4. Run the REST API PUT against the URL:
http://DAHOST:8581/typecatalog/components/COMPONENTNAME
In this case the URL for Partitions would be:
http://DAHOST:8581/typecatalog/components/Partition
Ensure the REST API is set up with a Header specifying the Content-Type
as application/xml
5. Confirm the changes.
Bring up the following URL in a browser, or run a REST API GET on the URL to get the XML for the specific Component type selected.
Replace DAHOST with the DA systems host name or IP address; replace COMPONENTNAME with the value from <FacetType name="name">
.
http://DAHOST:8581/typecatalog/components/COMPONENTNAME
In this sample it would be:
http://DAHOST:8581/typecatalog/components/Partition
Confirm the Version change and the presence of the new ItemSyncDefinition entry.
6. Launch a full synchronization of the DA Data Source (DS) to synchronize the new Component element types to NetOps Portal.
Note this can take some time to complete. Be sure to allow 30-45 minutes in larger environments for the full synchronization to complete.
In large production environments this may be best launched at the end of the day when user access is lowest.
To request the full synchronization for the DA DS:
6A. Log in to the NetOps Portal Web UI as the admin user or user with the Administrator Role assigned.
6B. Go to the Adminstration->Data Sources page to display the Manage Data Sources page.
6C. Select the Data Aggregator and select the 'Resync' button.
6D. Select the "Perform a Full Resynchronization" checkbox and selec tthe Resync button.
When completed the Component elements should now show up in the Inventory for Group membership and application to Event Threshold Rules.