Importing historical data from a VMware environment
This topic describes how you can import historical data from a VMware environment using the VMware - vCenter and ESX Server History Extractor ETL module. Use this ETL task, for example, when you want to:
- Add existing VMware vCenter and ESX servers to your network of managed entities
- Fill in data gaps created by a suspension of the VMware Extractor Service.
For more information, refer to the following sections:
Before you begin
You must ensure that:
- The ETL Engine server has access to the URLs of the web services exposed by the vCenter Servers and ESX Server hosts.
The ETL Engine uses JRE, and requires special Security considerations for old SSL keys that may have been created with a key < 1024 bits. For more information, see.
To integrate TrueSight Capacity Optimization with the VMware - vCenter and ESX Server History Extractor, perform the following task:
- Navigate to Administration > ETL & SYSTEM TASKS > ETL tasks.
- In the ETL tasks page, click Add > Add ETL under the Last run tab.
In the Add ETL page, set values for the following properties under each expandable tab.
Basic properties are displayed by default in the Add ETL page. These are the most common properties that you can set for an ETL, and it is acceptable to leave the default selections for each as is.
ETL task name By default, this field is populated based on the selected ETL module. You can s pecify a different name for the ETL Task. Duplicate names are allowed. Run configuration name Default name is already filled out for you. This field is used to differentiate different configurations you can specify for the ETL task. You can then run the ETL task based on it. Deploy status You can select Production or Test to mark the ETL tasks. For example, you can start by marking the task as Test and change it to Production after you have seen that you are getting what you wanted. Description (Optional) Enter a brief description for this ETL. Log level Select how detailed you want the ETL log to be. The log includes Error, Warning and Info type of log information.
- 1 - Light: Add bare minimum activity logs to the log file. By default, this option is selected.
- 5 - Medium: Add medium-detailed activity logs to the log file.
- 10 - Verbose: Add detailed activity logs to the log file. Info,
Note: Log levels 5 and 10 are typically used for debugging or troubleshooting ETL issues. Using a log level of 5 is general practice, however, you may choose level 10 to get a high level of detail while troubleshooting.
Execute in simulation mode Select yes if you want to to validate the connectivity between the ETL engine and the target, and to ensure that the ETL does not have any other configuration issues. When set to yes, the ETL will not store actual data into the data warehouse. This option is useful while testing a new ETL task. Module selection
Ensure that the Based on datasource option is selected.
If you select Based on Open ETL template, TrueSight Capacity Optimization is integrated with a Generic extractor based on the selected Open ETL template. For more information, see.
(BMC recommends you to make this selection first)
Select VMware - vCenter and ESX Server History Extractor. Module description A link in the user interface that points you to this technical document for the ETL. Data type Select any one:
- metrics at Cluster, Resource Pool, Host, Datastore and Virtual Machine level: Select this option to collect metrics at all available levels. You should use this option when your purpose is to manage the capacity of a VMware environment, including all of the virtual machines in it. By default, this option is selected.
- metrics at Cluster, Resource Pool, Host, Datastore level: Select this option when you do not want to collect data for individual virtual machines (for example, when your only purpose is to support BMC Cloud Management Capacity Aware Placement Advice). This option saves disk space, I/O load, and computation, and allows you to manage large cloud environments using a modestly sized implementation of BMC TrueSight Capacity Optimization.
Sharing status Select any one:
- Shared entity catalog: Select this option if, for the same entities, data is coming from multiple sources. For example, BPA ETL.
- Sharing with Entity Catalog : Select an entity catalog from the drop-down list.
- Private entity catalog: Select this option if, for the same entity, data is coming from a single source.
Associate new entities to
Specify the domain where you want to add the entities created by the ETL. You can select an existing domain or create a new one.
By default, a new domain is created for each ETL, with the same name of the extractor module. As the ETL is created, a new hierarchy rule with the same name of the ETL task is automatically created, with an active status; if you update the ETL specifying a different domain, the hierarchy rule will be updated automatically. The hierarchy rule will be created with status ACTIVE.
Select any one of the following options:
- New domain: Create a new domain. By default, this option is selected. Specify the following properties under New domain:
- Parent: Select a parent domain for your new domain from the domain selector control.
- Name: Specify a name for your new domain.
- Existing domain: Select an existing domain. Make a selection for the following property:
- Domain: Select an existing domain from the domain selector control.
If the domain is already used by any other hierarchy rule, a Domain conflict option is displayed. You can select one of the following solutions:
- Enrich domain tree: create a new independent hierarchy rule to add a new set of entities and/or relations not defined by other ETLs (for example this ETL is managing storage while others are managing servers)
- ETL Migration: this configuration is recommended if new ETL manages same set of entities and/or relations (already defined in current domain tree). Typical use case is the migration from one or more ETLs to a new ETL instance. It will stop all relations imported by ETL instances and restore only valid relations after first run; this configuration reuses existing hierarchy rule to correctly manage relation updates
Select a Hierarchy Rule to be used for current ETL from among the rules that are populating the selected domain.
Additional information of the ETL using the selected rule is also displayed.
VMware ETL configuration
VMware server SDK URL Type the URL of the web service exposed by the vCenter Server in the following format:
where, <hostAddress> is the IP address of the server hosting the vCenter Server.
Type the name of the user that VMware vCenter Extractor Service uses to access the ESX Server.
Password required (Optional) If the ESX Server requires a password, select yes, and then type the Password. Otherwise, select no. Password Enter the password. Use AS time zone Select any one:
- yes: Select yes to use the AS time zone.
- no: Select no if you do not want to use the AS time zone.
Import cluster failover threshold metric
Select yes, if you want to import the cluster failover threshold metric using the value of "Admission Control Policy > Host failures the cluster tolerates" cluster configuration.
Select no, if you do not want to import the cluster failover threshold metric.
ETL task properties
Task group Select a task group to classify this ETL into. It is not necessary to group it into a task group. Running on scheduler Select the scheduler over which you want to run the ETL. The type of schedulers available are:
- Primary: Runs on the AS.
- Generic: Runs on a separate machine.
- Scheduler: Runs on a dedicated scheduler machine.
Maximum execution time before warning The number of hours, minutes, or days for which the ETL should be executed before generating warnings or alerts, if any. Frequency Select the frequency for ETL execution. Available options are:
- Predefined: Specify the following details:
- Predefined frequency: Select a frequency from Each Day, Each Week or Each Month.
- Start timestamp: Based on the Predefined frequency selection, specify from the following details:
- hour: Specify hour in HH format.
- minute: Specify minute in MM format.
- week day: Select the day of the week when the ETL has to be executed.
- month day: Select the day of the month when the ETL has to be executed.
- Custom: Specify the following details:
- Custom frequency: Enter a time interval in number of minutes, hours, days, or weeks.
- Custom start timestamp: Specify the timestamp in YYYY-MM-DD HH:MM format or select it using the date picker.
To view or configure Advanced properties, click Advanced. You do not need to set or modify these properties unless you want to change the way the ETL works. These properties are for advanced users and scenarios only.
Enables you to select or deselect metric groups for which data will be populated from the Available datasets. The OpenStack connector allows you to choose only from the given list of datasets, and you cannot include additional datasets to the run configuration of the ETL.
- Click Edit.
- Select one (click) or more (ctrl+click or shift+click) datasets that you want to include from the Available datasets and click >> to move them to Selected datasets.
- Click Apply.
4.x compatibility Select any one:
- Do not Import Virtual Machine metrics at Host level, but only at VM level. By default, this option is selected.
- Import Virtual Machine metrics at Host level [BYGM, BYZN, BYLP] to ensure compatibility of 4.x reports.
Select any one:
- Metrics at Cluster, Resource Pool, Host, Datastore and Virtual Machine level
- Metrics at Cluster, Resource Pool, Host, and Datastore level.
Metric profile selection
Select any one:
Use Global metric profile:Select this to use an out-of-the-box global profile, that is available on . By default, all ETL modules use this profile.
- Select a custom metric profile: Any metric profiles you add in the Add metric profile page (Administration > DATAWAREHOUSE > Metric profiles)
For more information, see .
Levels up to
The metric level defines the amount of metric imported into the data warehouse. If you increase the level, additional load is added to the data warehouse while decreasing the metric level reduces the number of imported metrics.
Choose the metric level to apply on selected metrics:
-  Essential
-  Basic
-  Standard
-  Extended
For more information, see .
Metric list <for selected dataset>
Click Edit and select the metrics that will be loaded for each dataset that you selected under Run configuration > Datasets. If no metric is specified, all metrics will be loaded.
VMware ETL configuration
SSL truststore This property allows you to specify a specific SSL trust store. In case you have an SSL secured connection to the vCenter, the ETL accepts the vCenter certificate and no other configuration is needed. Sampling interval (should be defined in Virtual Center) Select or define the amount of time between 5 minutes, 30 minutes, 2 hours, or 1 day for data aggregation. You can specify a Custom period, in number of minutes for data aggregation. BMC recommends an aggregation period of 30 minutes or longer. Extraction period
Select one of the following options to specify the extraction period:
- Use last counter: Select this option to specify the number of days in the Max extraction period box. By default, five days is specified.
- From-to data extraction: Select this option to use the date picker and specify a specific time period for the extraction.
Note: For the first ETL run, do not select From-to data extraction because, in this mode, the ETL does not set the last counter. Also, in this mode, the ETL does not extract data hierarchy. You can use the From-to data extraction option to configure subsequent ETL runs.
Compatibility lookup names customization Select any one of the following options that you want to use for sharing the lookup between ETLs:
- Default/Recommended: UUID for hosts and Virtual Machines.
- System name for hosts and UUID for Virtual Machines.
- UUID for hosts and system name for Virtual Machines.
- System names for hosts and Virtual Machines.
- Host name for hosts and Virtual Machines.
Extraction parallelism Select the number of threads to keep open simultaneously for importing data. Use AS time zone To record data according the TrueSight Capacity Optimization application server's time zone, select yes. To record data according the ESX Server's time zone, select no. Use Virtual Machine network name as system name Select any one:
- yes: Select yes to use virtual machine network name as system name.
- no: Select no, if you do not want to use the virtual machine network name as system name. By default, this option is selected.
Import advanced VM events Select any one:
- yes: Select yes to import advanced VM events. This uses more storage space.
Following events are classified as advanced VM events:
- VM Power ON
- VM Power OFF
- VM Migration
- VM Reconfiguration
- DRS VM Migration
- VM has been renamed
- no: Select no, if you do not want to import advanced VM events. When you select no, only basic VM events. This improves the performance of this ETL and uses relatively less storage space. By default, this option is selected.
Following events are classified as basic events:
- Host entering maintenance mode
- Host exiting maintenance mode
- Host shutdown
- Host removed from cluster
- Host added from cluster
- Host disconnected from cluster
- Cluster reconfiguration
- VM unregistered from vCenter
- VM registered to vCenter
- VM relocated to vCenter
It is recommended that you set the option to import advanced VM events according to your requirements after you upgrade to TrueSight Capacity Optimization 11.0.
Configure one or both the filtering properties in this section to include or exclude entities while importing. Filtering for clusters and top-level hosts
Specify whether you want to import all or specific clusters and standalone hosts.
- The default selection is None, which indicates that all clusters and standalone hosts are imported.
- To import only the specific clusters and standalone hosts, select Whitelist, and specify the names of clusters and standalone hosts to be imported. For example, cl1;cluster24; host1;esx_host
You can specify these names in any case.
Blacklist file path
Use this property to exclude (blacklist) specific entities while importing, such as hosts and virtual machines.To exclude specific hosts and virtual machines (blacklist)
In a text file, add the names of virtual machines and hosts that you want to exclude from importing in the following format, and save the file on the ETL Engine Server where the ETL runs:
To find UUIDs, select the required virtual machine or host in the Workspace, and click View lookup. The Lookup value column in the Lookup Details table shows the UUID values.
The use of regular expressions is not supported.
- In the Use file at path box, specify the path to this text file.
- After you run the ETL, verify that the specified virtual machines and hosts are not displayed in the hierarchy.
To exclude specific hosts and virtual machines from importing, obtain their UUIDs and add them to a text file as follows:
vh:vmw;44454c4c-4600-1054-8052-cac04f525231 vh:vmw;44454c4c-4600-1054-8052-cac04f525232 gm:vmw;4208badb-6a91-23d1-c6b5-061745b2c8d9 gm:vmw;4208badb-6a91-23d1-c6b5-061745b2c8d7
Where, vh:vmw is the system type and 44454c4c-4600-1054-8052-cac04f525231 is the UUID of host_1. Similarly, gm:vmw is the system type and 4208badb-6a91-23d1-c6b5-061745b2c8d9 is the UUID of vm_1, and so on.
You can specify these names in any case.
After the ETL runs, these specified virtual machines and hosts are not imported.
List of properties
- Click Add.
- Add an additional property in the etl.additional.prop.n box.
- Click Apply.
Repeat this task to add more properties.
Empty dataset behavior Choose one of the following actions if the loader encounters an empty dataset:
- Warn: Warns about an empty dataset.
- Ignore: Ignore the empty dataset and continue parsing.
ETL log file name Name of the file that contains the ETL execution log; the default value is:
Maximum number of rows for CSV output A number which limits the size of the output files. CSV loader output file name Name of the file generated by the CSV loader; the default value is:
BCO loader output file name Name of the file generated by the BMC TrueSight Capacity Optimization loader; the default value is:
Detail mode Select the level of detail:
- Standard: Data will be stored on the database in different tables at the following time granularities: Detail (configurable, by default: 5 minutes), Hourly, Daily, Monthly.
- Raw also: Data will be stored on the database in different tables at the following time granularities: Raw (as available from the original data source), Detail (configurable, by default: 5 minutes), Hourly, Daily, Monthly.
- Raw only: Data will be stored on the database in a table only at Raw granularity (as available from the original data source).
For more information on granularities, see and .
Remove domain suffix from datasource name (Only for systems) If set to True, the domain name is removed from the data source name. For example,
server.domain.comwill be saved as
Leave domain suffix to system name (Only for systems) If set to True, the domain name is maintained in the system name. For example:
server.domain.comwill be saved as such.
Update grouping object definition If set to True, the ETL will be allowed to update the grouping object definition for a metric loaded by an ETL. Skip entity creation (Only for ETL tasks sharing lookup with other tasks) If set to True, this ETL does not create an entity, and discards data from its data source for entities not found in BMC TrueSight Capacity Optimization. It uses one of the other ETLs that share lookup to create the new entity.
Hour mask Specify a value to execute the task only during particular hours within the day. For example, 0 – 23 or 1,3,5 – 12. Day of week mask Select the days so that the task can be executed only during 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 execute the task only during particular days within a month. For example, 5, 9, 18, 27 – 31. Apply mask validation By default this property is set to True. Set it to False if you want to disable the preceding Scheduling options that you specified. Setting it to False is useful if you want to temporarily turn off the mask validation without removing any values. Execute after time Specify a value in the hours:minutes format (for example, 05:00 or 16:00) to wait before the task must be executed. This means that once the task is scheduled, the task execution starts only after the specified time passes. Enqueueable Select one of the following options:
- False (Default): While a particular task is already running, if the next execution command arises – it is ignored.
- True: While a particular task is already running, if the next execution command arises – it is placed in a queue and is executed as soon as the current execution ends.
- Click Save.
You return to the Last run tab under the ETL tasks page.
- Validate the results in simulation mode: In the ETL tasks table under ETL tasks > Last run, locate your ETL (ETL task name), click
After you run the ETL, the Last exit column in the ETL tasks table will display one of the following values:
to run the ETL.
- OK: The ETL executed without any error in simulation mode.
- WARNING: The ETL execution returned some warnings in simulation mode. Check the ETL log.
- ERROR: The ETL execution returned errors and was unsuccessful. Edit the active Run configuration and try again.
- Switch the ETL to production mode: To do this, perform the following task:
- In the ETL tasks table under ETL tasks > Last run, click the ETL under the Name column.
- In the Run configurations table in the ETL details page, click to edit the active run configuration.
- In the Edit run configuration page, navigate to the Run configuration expandable tab and set Execute in simulation mode to No.
- Click Save.
- Locate the ETL in the ETL tasks table and click
After you run the ETL, or schedule the ETL for a run, it will extract the data form the source and transfer it to the TrueSight Capacity Optimization database. to Run it, or schedule an ETL run.
Launch the first ETL run using a non-existing cluster name to retrieve useful information from the ETL log.