BMC Discovery 11.x Extractor


Use BMC Discovery ETL to fetch relationships between business services, applications, and the supporting IT infrastructure. The ETL connects to BMC Discovery to collect this mapping information. You can use it to effectively manage your business services and applications. These relationship details are displayed as a hierarchy in the BMC Helix Continuous Optimization. The ETL makes REST API calls for fetching the mapping information from BMC Discovery.

Supported BMC Discovery versions:

  • 23.1
  • 21.02
  • 20.02, 20.08
  • 11.3, 11.2, 11.1



Collecting data by using the BMC Discovery 11.x Extractor

To collect data by using the BMC Discovery 11.x Extractor, do the following tasks:

I. Complete the preconfiguration tasks.

II. Configure the ETL.

Step I. Complete the preconfiguration tasks

  1. Create a user in the BMC Discovery and assign the API access rights. The ETL uses the credentials of this user and REST API calls to connect to BMC Discovery for data collection.
    1. Log in to the BMC Discovery as an administrator.
    2. Click settings setting_icon_discovery_etl.png.
    3. Under Security, click Users > Add.
      add_user_page_bmc_discovery.png

    4. On the Add User page, do the following:

      1. From the Template list, select User.
      2. Specify the user name and password details.
      3. Under Groups, select these check boxes to assign rights and add the user to these Public groups: api-access and never-deactivate
      4. Click Apply.

      The settings are saved, and a confirmation message is displayed.

  2. Add manual groups for creating business services.
    1. Log in to the BMC Discovery as an administrator.
    2. Under Quick View, click any of the following options:

      • Application Instances (also known as Business Applications) - To add groups to application instances
      • Hosts - To add groups to systems under hosts
      • Virtual Machines - To add groups to virtual machines

      bmc_discovery_ai_list.png

    3. Select the check boxes corresponding to the application instances, systems, or virtual machines for which you want to add manual groups.

      bmc_discovery_manual_grps_as_tags.png

    4. Click Actions > Manual Groups, create the required manual groups, and select them. The selected groups are displayed under Manual Groups.
  3. Ensure that the BMC Discovery is configured to use the HTTPS protocol.
  4. (optional) To import virtual machines that are created in VMware, ensure that the following prerequisites are met:
    • BMC Discovery is upgraded to March 2019 or later TKU.
    • Each virtual machine has a vCenter UUID and is discovered using vCenter credentials. To specify vCenter credentials, do the following steps:
      1. Log in to the BMC Discovery as an administrator.
      2. Click Manage > Credentials.
      3. Click Add > Other (or Host), and select vCenter from the Credentials Types list.

        bmc_discovery_vcenter_credentials.png
      4. Specify the vCenter credentials and other details, and click Apply.
      5. Run the discovery process.

Step II. Configure the ETL

You must configure the ETL to connect to BMC Discovery 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.

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 BMC Discovery Extractor
  3. On the Run Configuration tab, select BMC Discovery 11.x Extractor from the ETL Module list. The name of the ETL is displayed in the ETL task name field. You can edit this field to customize the name.

    add_etl_page_discovery.png
  4. Click the Entity catalog tab, and select one of the following options:
    • Shared Entity Catalog:

      Select if other ETLs access the same entities that are used by the BMC Discovery 11.x ETL.

      • From the Sharing with Entity Catalog list, select the entity catalog name that is shared between ETLs.
    • Private Entity Catalog: Select if this is the only ETL that extracts data from BMC Discovery.
      If you are collecting business services data, we recommend that you select Shared Entity Catalog to avoid duplication of entities.
  5. Click the BMC Discovery Extractor tab, and configure the following properties:

    The [confluence_table-plus] macro is a standalone macro and it cannot be used inline. Click on this message for details.

  6. (Optional) Override the default values of properties in the following tabs:
    Run configuration
    Property
    Description
    Execute in simulation mode
    By default, the ETL execution in simulation mode is selected to validate connectivity with the data source, and to ensure that the ETL does not have any configuration issues. In the simulation mode, the ETL does not load data into the database. This option is useful when you want to test a new ETL task. To run the ETL in the production mode, select No.
    BMC recommends that you run the ETL in the simulation mode after ETL configuration and then run it in the production mode.
    Object relationships
    Property
    Description
    Associate new entities to
    Specify the domain to which you want to add the entities created by the ETL.Select one of the following options:
    • New domain: This option is selected by default. Select a parent domain, and specify a name for your new domain.
    • Existing domain: Select an existing domain from the Domain list. 
    By default, a new domain with the same ETL name is created for each ETL. Important: To create a shared project hierarchy, in Associate new entities to, for the first ETL configuration, select New domain, and for the second ETL configuration, select Existing domain. To create a private project hierarchy, in Associate new entities to, for the second ETL configuration, select an existing domain.
    ETL task properties
    Property
    Description
    Task group
    Select a task group to classify the ETL.
    Running on scheduler
    Select a compatible scheduler for running the ETL. See following note on compatible scheduler.
    Maximum execution time before warning
    Indicates the number of hours, minutes, or days for which the ETL must run before generating warnings or alerts, if any.
    Frequency
    Select one of the following frequencies to run the ETL:
    • Predefined: This is the default selection. Select a daily, weekly, or monthly frequency, and then select a time to start the ETL run accordingly.
      • Start timestamp: hour\minute: Select the HH:MM start timestamp to add to the ETL execution running on a Predefined frequency.
    • Custom: Specify a custom frequency, select an appropriate unit of time, and then specify a day and a time to start the ETL run.
      • Custom start timestamp: Select a YYYY-MM-DD HH:MM timestamp to add to the ETL execution running on a Custom frequency.

    *Scheduler compatible with this ETL: Remote ETL Engine.
  7. Click Save.
  8. The ETL tasks page shows the details of the newly configured BMC Discovery 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.
    Collection level
    Property
    Description
    Metric profile selection
    Select the metric profile that the ETL must use. The ETL collects data for the group of metrics that is defined by the selected metric profile.
    • Use Global metric profile: This is selected by default. All the out-of-the-box ETLs use this profile.
    • Select a custom metric profile: Select the custom profile that you want to use from the Custom metric profile list. This list displays all the custom profiles that you have created.
    For more information about metric profiles, see Adding-and-managing-metric-profiles.
    Levels up to
    Specify the metric level that defines the number of metrics that can be imported into the database. The load on the database increases or decreases depending on the selected metric level.To learn more about metric levels, see Adding-and-managing-metric-profiles.

    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.

    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 . 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 Discovery 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 Discovery 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 BMC Discovery data is refreshed:

  1. Click Workspace tab.
  2. Expand All Domains > (domain_name) > (business_service) > (systems) > (system_name).
  3. In the left pane, verify that the hierarchy displays the new and updated business services and computer systems in your environment.
  4. Click an computer system, and click the Metrics tab in the right pane.
  5. Check if the Last Activity column in the Configuration data table displays the current date.

The following image shows sample metrics data. To learn more about these metrics and other related concepts, see Entities-lookup-information-and-API-calls-for-BMC-Discovery.

bmc_discovery_config_metrics.PNG

 

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