Asset Relationships¶
In Clarity Transform, a relationship is a record of the Relationship CI type on the CMDB. Each record links a source record to a target record with a Relationship Type. This workflow follows relationships from the screens that create them to the screens that use them.
Stage 1: bring relationships in from integrations¶
Go to Discover → Integrations. Several integration descriptions say they collect relationships or dependencies, for example:
- Hyper-V: "...hosts, virtual machines, storage, networks, relationships, and performance data..."
- Dynatrace: "It pulls host-to-host network connections and service-to-service call relationships for device and application/service dependency mapping..."
- SolarWinds: "It currently pulls NetFlow (NTA) source-to-destination flow relationships for service/application dependency mapping..."
The firewall and load balancer integrations (Palo Alto, Panorama, FortiGate, FortiManager, F5 BIG-IP, NetScaler ADC) describe resolving firewall rules, pool members or backend services back to discovered devices, as evidence of dependencies for application mapping. Read each integration's own page for what it collects.
To load relationships from a file, use the CSV Import card: an import job's Ci Class can be Relationship. See CSV Import & ETL.
More: Integrations, CSV Import.
Stage 2: accept inferred relationships¶
The Discover → Application Inference screens propose relationships for you to accept or suppress. All of them are filled by Run inference on Candidate Applications: the review pages have no run button of their own. Work in this order.
- Discover → Application Inference → Candidate Applications: select Run inference, then Run grouping. Review the flagged groups (Review split or Check members), then promote each confirmed group with Promote to application. Promotion "Creates one Application record and a runs-on relationship for each eligible member", and cannot be undone.
- Select Run inference again. Device suggestions and app-to-app suggestions are worked out against confirmed applications, and app-to-app suggestions need at least two. Until then the run banner says "Stage 3 needs at least two confirmed applications; N found. Promote candidate applications to enable it."
- Discover → Application Inference → Device Suggestions: the screen's subtitle calls it "Stage 2 of application inference". Each row's Accept - write runs-on relationship action writes a
runs-onrelationship, confirmed in the Accept Membership dialog with Accept. Suppress - never recreate stops the suggestion being recreated. - Discover → Application Inference → Suggested App-to-App: use Accept - write the app-to-app relationship or Suppress - never re-propose on each row. The subtitle says accepting "writes the dependency to the CMDB for wave and move-group planning". Suppressing "cannot be undone".
Both review grids open filtered to Pending. Select All to see decided rows.
Discover → Application Inference → Evidence Sources lists "Which relationship types and integrations are trusted as inference evidence". Changing it, or Port / App Mapping, Flow Exclusions or Utility Hosts, affects the next run only: saving a row does not start one.
For the full route, including the reference lists and what each run banner means, see the Application Inference workflow.
More: Candidate Applications, Device Suggestions, Suggested App-to-App, Evidence Sources.
Stage 3: review and maintain relationships on the CMDB¶
- Go to Discover → CMDB and select the Relationship card.
- Review the grid. Its columns include Source Entity Class, Source Entity Name, Relationship Type, Target Entity Class, Target Entity Name, Integration, Confidence, Evidence and Direction Resolved By.
- To add a relationship by hand, select the add icon on the grid toolbar. The Create new entry form opens. It has no section cards. Its fields are Source Entity Class, Source Entity Name, Relationship Type, Target Entity Class, Target Entity Name (you can pick more than one), Destination Port, Source Port, Protocol, Bandwidth, Latency, Additional Details, Integration, Confidence, Evidence, Direction Resolved By and Contributing Producers.
- Select Save.
You can also add a relationship for an application from the application's own record. On the Application card, open the application's Edit entry form and select Add in its Relationships section. The Source Entity Class and Source Entity Name are set to the application and cannot be changed. The same section lists the application's relationships, with Edit and Delete. See Application.
To load several relationships at once, use the CSV Import card with a job whose Ci Class is Relationship (stage 1). The Relationship grid has no Import CSV button. Its download menu offers Export Visible Fields and Export All Fields.
The form's Relationship Type list offers app-to-app, process-to-process, runs-on, deployed_in, connected_to, applies_to, scoped_to, contains, nat_to, load_balances and routes_to. That list is not the full set: relationships written by integrations also use part_of, hosted_on and managed_by, which the form cannot select. In the same way, the form's Source Entity Class and Target Entity Class lists use lower-case class names (for example application, device), while the grid also shows Host, VM, Cluster and Datacenter. In the Relationships section of an application's edit form, the three lists come from the relationship lists under Settings → Field Management → Dropdown Lists, and a stored value that is not in the list is shown followed by "(not in list)" and kept when you save.
Each row's View Details action opens a read-only details side panel.
The CMDB grids start without a search or column filter each time you open them. If the grid shows fewer rows than you expect, clear the Search: box and the filter row.
More: CMDB.
Stage 4: view relationships as a graph¶
Go to Discover → Application Mapping. The screen's subtitle reads "Showing all services and their relationships. Click on an application in the sidebar to focus on specific relationships. Right-click any node or connection for details." Switch layout with Tree Graph or Force Directed, and narrow the graph with the Filter Graph Nodes fields, such as CI Class and Environment.
Assess → Application Landscape shows a "Circular interface map showing application-to-application relationships".
More: Application Mapping, Application Landscape.
Stage 5: check dependencies in move groups¶
Go to Plan → Move Groups. The Actions menu has Check Dependencies. Check Dependencies is greyed out until a move group row is selected. It opens External Dependencies Analysis for the selected move groups.
More: Move Groups.
Troubleshooting¶
| Symptom | Cause | What to do |
|---|---|---|
| Device Suggestions or Suggested App-to-App is empty. | The queues are filled only by Run inference on Candidate Applications, and they work against confirmed applications. | Run inference, run grouping, promote at least two applications, then select Run inference again. |
| The run banner says "Stage 3 needs at least two confirmed applications". | Fewer than two applications have been promoted. | Promote candidate groups, then run inference again. |
| An accepted or suppressed suggestion is not listed. | The review grids open filtered to Pending. | Select All. |
| A change on Evidence Sources, Flow Exclusions, Utility Hosts or Port / App Mapping made no difference. | Saving a row does not start a run. | Select Run inference, then Run grouping, on Candidate Applications. |
A relationship type such as part_of, hosted_on or managed_by cannot be chosen in the form. |
The form's Relationship Type list does not offer the types written by integrations. | Leave rows of those types to the integrations that write them. To offer a type in the form, add it to the relationship lists under Settings → Field Management → Dropdown Lists. |
| An application's Relationships section is missing from its form. | The section appears on the Edit entry form only, not on Create new entry. | Save the application first, then edit it. |
| Check Dependencies on Move Groups is greyed out. | No move group row is selected. | Select one or more move group rows. |
| The Application Mapping node count does not change when you filter. | The filters hide and dim nodes in the graph already loaded; the count is for the loaded data. | Read the graph, not the count, when filtering. |
Questions people ask¶
Where do inferred relationships come from? From Run inference on Candidate Applications. Promotion writes runs-on relationships for the group's members. Accepting a device suggestion writes a runs-on relationship. Accepting an app-to-app suggestion writes an app-to-app relationship.
Can I undo an accepted or suppressed suggestion from the review page? No. Decided rows have no row actions, and the app-to-app suppress dialog says "This cannot be undone." An accepted relationship is a record on the Relationship grid, where it can be edited or removed.
Does an accepted dependency affect planning? Yes. The accept dialog says "Wave planning, move groups and the migration risk dashboard all read these, so this dependency will start affecting planning."
Why does a relationship point at a name with no record? Relationships are matched on name. CMDB Data Correctness lists these as dangling references. See Data Quality Governance.
Related pages¶
- CMDB: the Relationship CI type and the other CI types it links.
- Application: adding relationships from an application's edit form.
- CMDB Data Correctness: orphaned records and dangling references.
- Suggested App-to-App: accepting app-to-app relationships.
- Device Suggestions: accepting runs-on relationships.
- Application Mapping: the relationship graph.
- Move Groups: planning batches of assets.
- Application Inference: the full inference route, step by step.
- CSV Import & ETL: importing relationship records from a CSV file.