BMC - Atrium CMDB extractor


Use the BMC - Atrium CMDB extractor to collect information about the relationships between business services, applications, and computer systems in the CMDB database. The ETL makes API calls to fetch the relationship details, and displays these relationships as a hierarchy according to the standard and unmodified BMC Unified Service model that is created in CMDB.

If your enterprise CMDB has customizations, you can use an appropriate generic extractor for collecting the relationship details. Also, to fetch the configuration and performance data of your systems, use another appropriate ETL. For information about the available ETLs, see Out-of-the-box-ETLs.

The ETL supports the following platforms and Atrium CMDB versions:

Supported platforms:

  • VMware: host and guest
  • IBM AIX: LPARs
  • Oracle Solaris: LDOMs, Zones

Supported Atrium CMDB versions:

  • 21.02, 21.3
  • 20.02, 20.08
  • 9.1.03, 9.1.04

Collecting data by using the BMC - Atrium CMDB extractor

To collect data by using the BMC - Atrium CMDB ETL, do the following tasks:

I. Complete the preconfiguration tasks.

II. Configure the ETL.

Step I. Complete the preconfiguration tasks

Before you configure and run the ETL, ensure that the following preconfiguration tasks are completed:

  • The specific version of Atrium CMDB is installed and it is running.
  • The BMC Remedy AR system server is registered with a portmapper and the port 111 firewall does not block the portmapper port.
  • The configured Atrium user must have administrative privileges on the BMC Atrium server. These privileges are required that BMC Atrium can be scanned to fetch information about computer systems, hardware configuration, and business service instances.

Step II. Configure the ETL

You must configure the ETL to connect to Atrium CMDB for data collection. ETL configuration includes specifying the basic and optional advanced properties. While configuring the basic properties is sufficient, you can optionally configure the advanced properties for additional customization.

A. Configuring the basic properties

Some of the basic properties display default values. You can modify these values if required.

To configure the basic properties:

  1. Navigate to Administration ETL & System Tasks > and select ETL tasks.
  2. On the ETL tasks page, click Add > Add ETL. The Add ETL page displays the configuration properties. You must configure properties in the following tabs: Run configuration, Entity catalog, and CMDB connection parameters.
  3. On the Run configuration tab, complete these steps:
    1. From the ETL module list, select BMC - Atrium CMDB Extractor. The name of the ETL is displayed in the ETL task name field. You can edit this field to customize the name.
    2. Specify the datasets that you want to add to the ETL configuration. The ETL collects data of metrics that are associated with these datasets.


      1. Click Edit
      2. Select one (click) or more (shift+click) datasets from the Available datasets list and click >> to move them to the Selected datasets list.
      3. Click Apply.
        The ETL collects data of metrics associated with the datasets that are available in the Selected datasets list.
        atrium_cmdb_etl_nov21.png
  1.  Click the Entity catalog tab, and select one of the following options:
    • Shared Entity Catalog: Select if the other ETLs access the same entities that are used by this ETL.
      • From the Sharing with Entity Catalog list, select an entity catalog name that is shared between ETLs.
    • Private Entity Catalog: Select if you want to use this ETL independently.
      If you are collecting business services data, we recommend that you select Shared Entity Catalog to avoid duplication of entities.
  2. Click the CMDB connection parameters tab, and configure the following properties:

  3. (Optional) Override the default values of properties in the following tabs:

    The [confluence_table-plus] macro is a standalone macro and it cannot be used inline. Click on this message for details.
    *Scheduler 
    compatible with this ETL: Remote ETL Engine.

  4. Click Save.

    The ETL task page shows the details of the newly configured BMC - Atrium CMDB ETL.

(Optional) B. Configuring the advanced properties

You can configure the advanced properties to change the way the ETL works or to collect additional metrics.

To configure the advanced properties:

  1. On the Add ETL page, click Advanced.
  2. Configure the following properties:

    Run configuration
    Property
    Description
    Run configuration name
    Specify the name that you want to assign to this ETL task configuration. The default configuration name is displayed. You can use this name to differentiate between the run configuration settings of ETL tasks.
    Deploy status
    Select the deploy status for the ETL task. For example, you can initially select Test and change it to Production after verifying that the ETL run results are as expected.
    Description 
    A short description of the ETL module.
    Log level
    Specify the level of details that you want to include in the ETL log file. Select one of the following options:
    • 1 - Light: Select to add the bare minimum activity logs to the log file.
    • 5 - Medium: Select to add the medium-detailed activity logs to the log file.
    • 10 - Verbose: Select to add detailed activity logs to the log file.
    Use log level 5 as a general practice. You can select log level 10 for debugging and troubleshooting purposes.

    CMDB connection parameters


    Property

    Description

    TCP Port

    Specify the TCP port number that is used by BMC Atrium. The Atrium administrator can provide this port number.

    You need to specify this port number only if the BMC Remedy AR system server is not registered with a portmapper or if a Port 111 firewall blocks the portmapper port. Otherwise, you do not need to specify the port number because the portmapper automatically locates the port.

    Use UUID for VMware vms

    Specify if the UUID must be used instead of the VM name to identify VMware guest machines.

    Import VMware Data

    Import VMware host and guest machines.

    Import Application Data

    Select True if you want to view the application-wise relationship in the hierarchy.

    List additional cmdb relationship classes

    Specify the relationship classes that you want to use for displaying CMDB relationships. By default, the following relationship classes are supported:

    • BMC_Dependency
    • BMC_Impact
    • BMC_Component

    Enable Diagnostic Log

    Select True if you want to troubleshoot issues related to CMDB and understand which Configuration Items (CI) and relationships are fetched and how they are associated. Enabling this option will generate a diagnostic log file in zipped format. This file will be available in the downloaded logs.

    Import filter

    Configure one or more filtering properties in this section to include or exclude entities while importing.

    Property

    Description

    Whitelist file path

    Use this property to import only specific business services or computer systems. By default, the ETL imports all business services and computer systems.

    To include business services or computer systems
    1. In a text file, add the names of business services or computer systems that you want to import in the following format:
      ClassName;AttributeName;AttributeValue
    2. In the Use file at path field, specify the path to this text file.
    3. Run the ETL and verify that only the specified business services or computer systems are imported in the hierarchy.

    Example:

    To import business services BService_1 and BService_2 and their computer systems, add them to the text file as follows:
    BMC_BUSINESSSERVICE;Name;BService_1
    BMC_BUSINESSSERVICE;Name;BService_2

    After you run the ETL, only BService_1 and BService_2 business services and their computer systems will be displayed in the hierarchy.

    For information about CMDB class and attribute names, see Common Data Model advanced concepts.

    Blacklist file path

    Use this property to exclude specific business services or computer systems while importing. By default, the ETL imports all business services and computer systems.

    To exclude business services or computer systems
    1. In a text file, add the names of business services or computer systems that you want to exclude while importing in the following format:
      ClassName;AttributeName;AttributeValue
    2. In the Use file at path field, specify the path to this text file.
    3. Run the ETL and verify that the specified business services or computer systems are not displayed in the hierarchy.

    Example:

    To exclude computer systems hp1appo1 and hp1app02 while importing, add them to the text file as follows:
    BMC_COMPUTERSYSTEM;Name;hp1appo1
    BMC_COMPUTERSYSTEM;Name;hp1app02

    After you run the ETL, these computer systems will not be imported and displayed in the hierarchy.

    For information about CMDB class and attribute names, see Common Data Model advanced concepts.

    Additional properties

    Property

    Description

    List of properties

    Specify additional properties for the ETL that act as user inputs during run. You can specify these values now or you can do so later by accessing the "You can manually edit ETL properties from this page" link that is displayed for the ETL in the view mode.

    1. Click Add.
    2. In the etl.additional.prop.n field, specify an additional property.
    3. Click Apply.
      Repeat this task to add more properties.

    You can configure custom properties to extend the data collection capabilities of the ETL.

    Configure the traversal direction for specific Configuration Items (CIs)

    Configure the traversal direction that will be used by the graph walk query to retrieve the relationship between two types of Configuration Items (CIs).

    Property name

    Description

    Type

    Default value

    Configuration values

    extract.atrium.gw.bs.to.bs.direction

    The traversal direction that is used by the graph walk query between two business services.

    String

    BOTH

    IN, OUT, BOTH

    extract.atrium.gw.bs.to.app.direction

    The traversal direction that is used by the graph walk query from the business service to an application.

    String

    BOTH

    IN, OUT, BOTH

    extract.atrium.gw.bs.to.cs.direction

    The traversal direction that is used by the graph walk query from the business service to the computer system.

    String

    BOTH

    IN, OUT, BOTH

    extract.atrium.gw.app.to.app.direction

    The traversal direction that is used by the graph walk query between two applications.

    String

    BOTH

    IN, OUT, BOTH

    extract.atrium.gw.app.to.cs.direction

    The traversal direction that is used by the graph walk query from an application to the computer system.

    String

    BOTH

    IN, OUT, BOTH

    Configure the chunk size

    Number of records (page size) that are fetched by the queries in a single attempt. The default value should be sufficient for most of the use cases. Contact support before modifying these values.

    Property name

    Description

    Type

    Default value

    Configuration values

    extract.atrium.graphwalk.query.chunk.size

    Specify the chunk size that is used to fetch the number of records by the graph walk query, in a single attempt.

    Numeric

    500

    Any positive number

    extract.atrium.findobjects.query.chunk.size

    Specify the chunk size that is used to fetch the number of records by the find objects query, in a single attempt.

    Numeric

    3000

    Any positive number

    Configure concurrent processing of threads

    When you have large number of business services, applications, and computer systems the ETL might take more time to execute. You can configure these properties to increase the thread count and decrease the ETL execution time. The default value should be sufficient for most of the use cases. Contact support before modifying these values.

    Property name

    Description

    Type

    Default value

    Configuration values

    extract.atrium.cs.fetch.thread.count

    Specify the number of concurrent computer systems and configuration data processor threads. If the number of computer systems in the target CMDB environment is high and the ETL is taking more time to execute, this value can be increased.

    Numeric

    5

    Any positive number

    extract.atrium.bs.hierarchy.fetch.thread.count

    Specify the number of concurrent business service hierarchy fetcher threads. If the number of business services in the target CMDB environment is high and the ETL is taking more time to execute, this value can be increased.

    Numeric

    10

    Any positive number

    extract.atrium.app.hierarchy.fetch.thread.count

    Specify the number of concurrent application hierarchy fetcher threads. If the number of applications in target CMDB environment is high and the ETL is taking more time to execute, this value can be increased.

    Numeric

    10

    Any positive number

    Configure the number of levels traversed between the Configuration Items (CIs)

    Configure the levels to be traversed by the CMDB graph walk query between two Configuration Item types. Evaluate the distance between two CI types before configuring these values.

    Property name

    Description

    Type

    Default value

    Configuration values

    extract.atrium.num.levels.bs.to.bs

    Specify the number of levels that should be traversed for business service to business service relationship.

    Numeric

    3

    Any positive number

    extract.atrium.num.levels.bs.to.app

    Specify the number of levels that should be traversed for business service to application relationship.

    Numeric

    3

    Any positive number

    extract.atrium.num.levels.bs.to.cs

    Specify the number of levels that should be traversed for business service to computer system relationship.

    Numeric

    5

    Any positive number

    extract.atrium.num.levels.app.to.app

    Specify the number of levels that should be traversed for application to application relationship.

    Numeric

    3

    Any positive number

    extract.atrium.num.levels.app.to.cs

    Specify the number of levels that should be traversed for application to computer system relationship.

    Numeric

    4

    Any positive number

    extract.atrium.num.levels.organization

    Specify the number of levels that should be traversed for computer system to organisation relationship.

    Numeric

    2

    Any positive number

    extract.atrium.num.levels.phy.location

    Specify the number of levels that should be traversed for computer system to physical location relationship.

    Numeric

    2

    Any positive number

    Configure flat hierarchy for the business services

    Configure this property to view the business service to business service relationship in the hierarchy. By default business service to business service relationships are not captured by the Atrium CMDB ETL.

    Property name

    Description

    Type

    Default value

    Configuration values

    extract.atrium.write.bs.to.bs.hierarchy

    Specify True if you want to view the business service to business service relationship in the hierarchy.

    Boolean

    False

    True, False

    Configure flat hierarchy for the applications

    Configure this property to view the application to application relationship in the hierarchy. By default application to application relationships are not captured by the Atrium CMDB ETL.

    Property name

    Description

    Type

    Default value

    Configuration values

    extract.atrium.write.app.to.app.hierarchy

    Specify True if you want to view the application to application relationship in the hierarchy.

    Boolean

    False

    True, False

    Note:

    The ETL excludes computer systems whose VirtualSystemType is set to any of the following in the CMDB system:

    • Xen
    • HP nPartitions
    • VPar
    • Microsoft Hyper-V
    • Integrity VM
    • Xen Hypervisor
    • VMware (In VMware, in addition to VirtualSystemType, if the enablerType=VMware Server/VMware ESX Server, the ETL excludes the computer system.)

    If you want to import such virtual systems, add the extract.cmdb.non.default.platforms property and set its value to the required virtual system. For example, if you set the value of the extract.cmdb.non.default.platforms property to HYPERV, then systems with virtualSystemType=Microsoft Hyper-V are imported.

    For VMware virtual systems, add the extract.atrium.import.data.for.vmw property and set its value to true.

    Loader configuration
    Property
    Description
    Empty dataset behavior
    Specify the action for the loader if it encounters an empty dataset:
    • Warn: Generate a warning about loading an empty dataset.
    • Ignore: Ignore the empty dataset and continue parsing.
    Maximum number of rows for CSV output
    A numeric value to limit the size of the output files.
    Remove domain suffix from datasource name (Only for systems) 
    Select True to remove the domain from the data source name. For example, server.domain.com will be saved as server. The default selection is False.
    Leave domain suffix to system name (Only for systems)
    Select True to keep the domain in the system name. For example: server.domain.com will be saved as is. The default selection is False.
    Skip entity creation (Only for ETL tasks sharing lookup with other tasks)
    Select True if you do not want this ETL to create an entity and discard data from its data source for entities not found in Continuous Optimization. It uses one of the other ETLs that share a lookup to create a new entity. The default selection is False.
    Scheduling options
    Property
    Description
    Hour mask
    Specify a value to run the task only during particular hours within a day. For example, 0 – 23 or 1, 3, 5 – 12.
    Day of week mask
    Select the days so that the task can be run only on the selected days of the week. To avoid setting this filter, do not select any option for this field.
    Day of month mask
    Specify a value to run the task only on the selected days of a month. For example, 5, 9, 18, 27 – 31.
    Apply mask validation
    Select False to temporarily turn off the mask validation without removing any values. The default selection is True.
    Execute after time
    Specify a value in the hours:minutes format (for example, 05:00 or 16:00) to wait before the task is run. The task run begins only after the specified time is elapsed.
    Enqueueable
    Specify whether you want to ignore the next run command or run it after the current task. Select one of the following options:
    • False: Ignores the next run command when a particular task is already running. This is the default selection.
    • True: Starts the next run command immediately after the current running task is completed.

  3. Click Save.
    The ETL tasks page shows the details of the newly configured BMC Atrium CMDB ETL.

Step III. Run the ETL

After you configure the ETL, you can run it to collect data. You can run the ETL in the following modes:

A. Simulation mode: Only validates connection to the data source, does not collect data. Use this mode when you want to run the ETL for the first time or after you make any changes to the ETL configuration.

B. Production mode: Collects data from the data source.

A. To run the ETL in the simulation mode

To run the ETL in the simulation mode:

  1. Navigate to Administration ETL & System Tasks, and select ETL tasks.
  2. On the ETL tasks page, click the ETL. The ETL details are displayed.
    etl_details.png

  3. In the Run configurations table, click Edit edit_this_run_configuration.png to modify the ETL configuration settings.
  4. On the Run configuration tab, ensure that the Execute in simulation mode option is set to Yes, and click Save.
  5. Click Run active configuration. A confirmation message about the ETL run job submission is displayed.
  6. On the ETL tasks page, check the ETL run status in the Last exit column.
    OK Indicates that the ETL ran without any error. You are ready to run the ETL in the production mode.
  7.  If the ETL run status is Warning, Error, or Failed:
    1. On the ETL tasks page, clickclick to view details.pngin the last column of the ETL name row.
    2. Check the log and reconfigure the ETL if required.
    3. Run the ETL again.
    4. Repeat these steps until the ETL run status changes to OK.

B. To run the ETL in the production mode

You can run the ETL manually when required or schedule it to run at a specified time.

To run the ETL manually

  1. On the ETL tasks page, click the ETL. The ETL details are displayed.
  2. In the Run configurations table, click Edit edit_this_run_configuration.png to modify the ETL configuration settings. The Edit run configuration page is displayed.
  3. On the Run configuration tab, select No for the Execute in simulation mode option, and click Save.
  4. To run the ETL immediately, click Run active configuration. A confirmation message about the ETL run job submission is displayed.
    When the ETL runs, it collects data from the source and transfers it to the BMC Helix Continuous Optimization database.

To schedule the ETL run in the production mode

By default, the ETL is scheduled to run daily. You can customize this schedule by changing the frequency and period of running the ETL.

To configure the ETL run schedule:

  1. On the ETL tasks page, click the ETL, and click Edit task. The ETL details are displayed.
    aws_api_etl_schedule_run.png
  2. On the Edit task page, do the following, and click Save:
    • Specify a unique name and description for the ETL task.
    • In the Maximum execution time before warning field, specify the duration for which the ETL must run before generating warnings or alerts, if any.
    • Select a predefined or custom frequency for starting the ETL run. The default selection is Predefined.
    • Select the task group to which you want to assign the ETL task.
  3. Click Schedule. A message confirming the scheduling job submission is displayed.
    When the ETL runs as scheduled, it collects data from the source and transfers it to the BMC Helix Continuous Optimization database.

Step IV. Verify data collection

Verify that the ETL ran successfully and check whether the Atrium CMDB data is refreshed in the Workspace.

To verify whether the ETL ran successfully

  1. Click Administration > ETL and System Tasks > ETL tasks.
  2. In the Last exec time column corresponding to the ETL name, verify that the current date and time are displayed.
  3. In the Last exit column corresponding to the ETL name, verify that the status is OK.
    In case of WARNING or ERROR, click click to view details.png in the last column of the ETL name row to review the log files.

To verify that the Atrium CMDB data is refreshed:

  1. In the Workspace tab, expand Atrium CMDB extractor > Systems.
  2. In the left pane, verify that the hierarchy displays the Atrium CMDB instances.
  3. Click a Atrium CMDB instance, and click the Metrics tab in the right pane.
  4. Check if the Last Activity column in the Configuration metrics and Performance metrics tables displays the current date.

 

Tip: For faster searching, add an asterisk to the end of your partial query. Example: cert*