Relationships - Documentation for Bmc Helix Discovery

Node associations are represented by relationships. There are different types of relationships which define hierarchy, hosting, containment, ownership, manufacturer, category, versions, location, dependency, in fact, any kind of relationship required to model an IT infrastructure.
A type of relationship is represented as colon-separated strings. A relationship comprises more than the two node endpoints, it contains the "route" between the two. This is made up in the following way:

Node:Role:RelationshipLink:Role:Node

For example, the relationship from a Host node to the Cluster node that contains the host is shown as:

Host:ContainedHost:HostContainment:HostContainer:Cluster

The relationship from a Cluster node to a Host node that it contains is shown as:

Cluster:HostContainer:HostContainment:ContainedHost:Host

Note

A relationship is a bidirectional link between two nodes. In this section, the terms "start node" and "target node" are used to describe the way that the relationship is built. However, once the relationship has been built, the terms are redundant.

The general timeline for the creation of a relationship is:

  1. Create "start node".
  2. Create "target node".
  3. Create relationship between 1 and 2.

The individual components of the relationship are described in the following sections.

Node

The node is any kind of node that can have a relationship, such as a Host node. All nodes can have relationships, including relationships.

Relationship kinds

The relationship kind describes the nature of the relationship. For example, the DeviceSubnet relationship kind describes the link between a device and the subnet that it is on, but without any directionality implied.

Note

This section refers to Relationship Kinds as the colon-separated lists which describe how two nodes are related, the roles that each node plays in the relationship, and the Relationship Link which describes the nature of the Relationship.

A complete list of Relationship Kinds with their descriptions is provided in the table below.

Relationship Kind

Description

Hierarchy Relationships

Hierarchy

Relates nodes into a hierarchy.

Attachment Relationships

Attachment

Relates a node to a file attachment.

Category Relationships

ElementCategory

Relates an element to a category it is in.

People Relationships

Ownership

Relates an element to its owner.

Management

Relates an employee to their manager.

Locations

Location

Relates an element to the location it is in.

LocationContainment

Relates a location to the larger location it is in.

Hosts

HostedSoftware

Relates software to the host it is running on.

HostContainment

Relates hosts and software instances to contained virtual hosts.

EndpointIdentity

Relates Hosts that appear to have changed identity

HostedServiceRelates a service to the host it is running on

Applications

ActivityRelates a Model Definition to an activity that has been performed on it

Communication

Relates software instances to communicating software instances.

Used when a pattern can identify configuration within a piece of software that specifies communication with another piece of software. For example, a pattern might be able to read a configuration file for an application server and see the address of a database server.

Dependency

Relates elements to elements they depend upon.

SoftwareContainment

Relates an item of software to an item contained in it.

SoftwareService

Relates an item of software to a service.

DefinitionCloneRelates a Model Definition to a cloned version of it
DefinitionContainmentRelates a Model Definition to items included or excluded by it
FunctionalContainmentRelates a Functional Component to an item contained within it
MultiFacetRelates multiple facets of a single process
ObservedCommunication

Relates observed communicating elements.

Used when communication between two pieces of software has been generically discovered from information like open network connections and listening ports. When Discovery is able to identify both ends of a communication, it tries to then correlate this information with software that it sees running.

For this to work well, often root/administrator access for Discovery is needed, as operating systems only give all the pertinent information to sufficiently privileged users.

Physical Model

AdapterWithPortRelates an adapter to a port

DeviceSubnet

Relates an IP device to the subnet it is on.

DeviceInterface

Relates an IP device with one of its network interfaces.

DeviceAddressRelates an IP device with one of its IP addresses

NetworkLink

Relates a network interface on a host to a port interface on a switch.

HostedFile

Relates a file to its host.

RelatedFile

Relates a file to something that uses it.

FibreChannelNodeDevice

Relates a World Wide Node Number (WWNN) to an HBA.

FibreChannelNodePort

Relates a World Wide Port Number (WWPN) to a WWNN.

FileSystemMount

Relates the mounter and the FileSystem.

ChosenEndpointRelates a device successfully scanned by this endpoint
EndpointRelates a Discovery Access that successfully scanned a device by this endpoint
CloudServiceRelates cloud services
CouplingFacilityRelates Coupling Facility to its dependents
ExportedFileSystemRelates exported FileSystem to local FileSystem
ExposedViewRelates a port to an exposed view (volume)
HardwareUseRelates hardware to the system using it
InterfaceAddressRelates a network interface with its IP addresses
NetworkServiceA network device service

Directly Discovered Data

DiscoveryAccessResult

Relates a DiscoveryAccess to one of its results.

List

Relates a List of Members.

Sequential

Relates sequential nodes.

Inference

Relates an inferred node with its source node.

Status

Relationship to a status node.

AccessFailure

Access failure.

AccessOptimization

Access optimization.

Metadata

Information about a discovery request.

DiscoveryConditionRelates an element with a condition to that condition
EndpointRangeA range used to control endpoint access
ImplicitScanImplicitly scanned IP address
LogRelates a log to an item

Pattern Relationships

PatternModuleContainment

Associates a pattern module to its contents.

PatternModuleDependency

Associates a pattern module to its dependents.

Maintainer

Pattern that is maintaining an inferred node.

Requirement

Associates a pattern that will need the products of another.

Override

Associate patterns that are being overridden or are overriding others.

Deprecated

Associated pattern has been deprecated or is deprecating others.

Error

Errors generated by this pattern at runtime.

PatternExecution

Associates a PatternExecution to its Pattern.

PatternTouch

Associate a PatternTrigger with things it changed.

PatternTrigger

Associates a PatternExecution to its trigger nodes.

Request

Associates a Pattern to the DDD nodes requested by it.

IntegrationImplementation

Relates the implementation of a resource

ResourceUse

Relates the usage of a resource

CodeGenerationRelates a generated pattern module to a pattern definition
UploadContentsContents of unloaded knowledge

Generic Modeling Relationships

Containment

Relates an element to its container.

Detail

Relates an element to details about it.

SupportDetail

Relates Host and Software Instance nodes to SupportDetail nodes.

CollectionRelates an element to the collection in which it is contained
MirrorRepresents a mirroring relationship
ReplacementA node replaced during update
ReplicationRepresents a replication relationship

Rule Relationships

RuleModuleDependency

Associates a rule module to its dependents.

Foundation User Relationships

Favorite

A Favorite item for a User

InvokingUser

Relates to the invoking user

Hardware Reference Data Relationships

ReferenceData

Relates physical hosts to hardware reference data

HardwareReferenceDataRelates Host and HostContainer nodes to HardwareReferenceData nodes

Stack Devices

DeviceStackRelates a stack member to the stack itself

Storage

SANStorageRelates a host consumer of SAN storage to the reference to that host on the storage
StorageRelates Storage to hosts using it
StorageContainmentRelates Storage to the Storage Collection containing it
StorageUseRelates storage nodes
Marcus Vance

Marcus Vance

Cybersecurity & Digital Privacy Researcher

Marcus Vance is a cybersecurity auditor and technology writer dedicated to educating the public about online safety, data privacy regulations, enterprise security, and emerging cyber threats.

Share this article
Twitter Facebook Pinterest