Google Cloud Platform - GCP API Extractor
Use the Google Cloud Platform - GCP API Extractor to collect configuration and performance data of your virtual machines that are provisioned in the Google Cloud Platform (GCP) cloud. The collected data is used for analyzing and optimizing the capacity of your Google Cloud infrastructure.
The ETL makes API calls to collect the following metrics:
- GCP metrics from the Google Compute Engine and Google BigQuery services
- Stackdriver metrics from virtual machine instances
If you apply tags to categorize the GCP resources by related business services, you can configure the ETL to display business services and their related resources as a hierarchy in the Workspace. This hierarchy enables you to sort and view capacity management metrics by business services.
Collecting data by using the GCP API ETL
To collect data by using the GCP API ETL, do the following tasks:
I. Complete the preconfiguration tasks.
II. Configure the ETL.
III. Run the ETL.
Before you configure and run the ETL, complete the pre-configuration tasks. The ETL uses the service account key files to collect data from your Google Cloud Platform project resources.
You can create a service account in one of the following ways:
- Create a single service account and share it across multiple GCP projects.
- Create a separate service account for each GCP project.
Depending on how you create your service account, select a tab, and complete the steps:
Step | Details |
---|---|
Subscribe to the Google Cloud Platform.
|
|
Create projects to manage virtual machine instances, billing, and Cloud Platform services. |
|
Create a billing account. |
|
Create a service account. The ETL uses the service account to connect to the Google Cloud Platform. |
|
Add the email addresses of the service accounts for the projects (projects that are linked to the billing account) to the billing account, and assign the Billing Account Viewer role to each service account that you want to use for the ETL. |
|
Enable the APIs and services for each project to collect data.
|
|
Create a Stackdriver account and install the monitoring agent.
|
You can use the Monitoring agent to collect additional data such as metrics and logs from third-party applications. Before installing the Monitoring agent, you must create and enable a Stackdriver account. For information about how to create a Stackdriver account, see Collecting additional metrics using the Stackdriver monitoring. |
Ensure that the time is correctly set on the host where the ETL engine runs.
|
BMC recommends to use the Network Time Protocol (NTP) client and synchronize the host clock with the network time server.
|
Step | Details |
---|---|
Subscribe to the Google Cloud Platform. |
|
Create projects to manage virtual machine instances, billing, and Cloud Platform services.
|
|
Create a billing account.
|
|
Create a service account. The ETL uses the service account to connect to Google Cloud Platform. |
|
|
|
Enable the APIs and services for each project to collect data. |
|
Create a Stackdriver account and install the monitoring agent. |
You can use the Monitoring agent to collect additional data such as metrics and logs from third-party applications. Before installing the Monitoring agent, you must create and enable a Stackdriver account. For information about how to create a Stackdriver account, see Collecting additional metrics using the Stackdriver monitoring.
|
Ensure that the time is correctly set on the host where the ETL engine runs.
|
BMC recommends to use the Network Time Protocol (NTP) client and synchronize the host clock with the network time server.
|
You must configure the ETL to connect to GCP 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:
- Navigate to Administration > ETL & System Tasks > and select ETL tasks.
- On the ETL tasks page, click Add > Add ETL under the Last run tab. The Add ETL page displays the configuration properties. You must configure properties in the following tabs: Run configuration, Entity catalog, and Google Cloud configuration
On the Run configuration tab, select Google Cloud Platform - GCP API 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.
- 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 GCP API 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 the GCP resources.
Click the Google Cloud configuration tab, and configure the following properties:
Property Description Service account key file directory Do the following to upload the service account key files:
- Create a folder and copy the service account key files of projects to this folder.
- Compress the folder by using a compression utility.
- Click Choose file to browse and select this compressed folder (.zip), and click Upload.
The names of the service account key files are displayed after successful upload.
When you run the ETL, it uses the service account key files (files that are in the valid JSON format) to collect data from your GCP project resources. For a single service account key file, the ETL collects data from all the projects that use this service account.
Business Service hierarchy If you want to view data of your GCP resources by business services, retain the default selection of Create Business Service hierarchy based on specified tag key. Specify the appropriate tag key name. For example, service.
Example scenario:
You have VMs that are tagged as follows:- AS1: {user=John, Purpose=Dev, Service=Data Solutions}
- vl-pub-bco-qa35: {user=Adam, Purpose=Production, Service=Data Solutions}
- vl-pun-bco-qa20: {user=Jane, Purpose=QA, Service=Data Solutions}
When you run the ETL, data is displayed in a hierarchy as follows:
If you do not use business services, data is displayed as follows:
(Optional) Override the default values of properties in the following tabs:
- Click Save.
The details of the newly configured GCP API ETL are displayed.
(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:
- On the Add ETL page, click Advanced.
Configure the following properties:
Click Save.
The details of the newly configured GCP API ETL are displayed.
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:
- Navigate to Administration > ETL & System Tasks, and select ETL tasks.
- On the ETL tasks page, click the ETL. The ETL details are displayed.
- In the Run configurations table, click Edit to modify the ETL configuration settings.
- On the Run configuration tab, ensure that the Execute in simulation mode option is set to Yes, and click Save.
- Click Run active configuration. A confirmation message about the ETL run job submission is displayed.
- 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. - If the ETL run status is Warning, Error, or Failed:
- On the ETL tasks page, click in the last column of the ETL name row.
- Check the log and reconfigure the ETL if required.
- Run the ETL again.
- 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
- On the ETL tasks page, click the ETL. The ETL details are displayed.
- In the Run configurations table, click Edit to modify the ETL configuration settings. The Edit run configuration page is displayed.
- On the Run configuration tab, select No for the Execute in simulation mode option, and click Save.
- 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:
- On the ETL tasks page, click the ETL, and click Edit task. The ETL details are displayed.
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 and the scheduler to which you want to assign the ETL task.
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.
Verify that the ETL ran successfully and check whether the GCP data is refreshed in the Workspace.
To verify whether the ETL ran successfully
- Click Administration > ETL and System Tasks > ETL tasks.
- In the Last exec time column corresponding to the ETL name, verify that the current date and time are displayed.
- In the Last exit column corresponding to the ETL name, verify that the status is OK.
In case of WARNING or ERROR, click in the last column of the ETL name row to review the log files.
To verify that the GCP data is refreshed:
- In the Workspace tab, expand (domain name) > Business Services > (system name) > Instances.
- In the left pane, verify that the hierarchy displays your new and updated GCP instances.
- Click a GCP virtual machine instance, and click the Metrics tab in the right pane.
- Check if the Last Activity column in the Configuration data and Performance metrics tables displays the current date.
To learn more about these metrics and other related concepts, see Entities, lookup information, and metrics for Google Cloud Platform. To collect additional data such as metrics and logs from third-party applications, see Collecting additional metrics using the Stackdriver monitoring.
Comments
Log in or register to comment.