This blog explains about the step-by-step instructions to pull green IT data from Turbonomic into Envizi via webMethods Integration.
Jeya Gandhi Rajan M
Madhukrishna Parike
Jyoti Rani
Indira Kalagara
- 1. Prerequisite
- 2. Architecture
- 3. Create Workflow in webMethods
- 4. Execute the Workflow
- 5. Check the result in Envizi
- 6. Schedule Workflow Executionn
CLICK me for detailed instructions
- Turbonomic v8.14.3 or higher
- Envizi Saas instance access (Click here to get access).
- webMethods SaaS (Click here to signup for Trial).
- Create an user with
Observer
role in Turbonomic. Refer here to create the user.
We would be retreiving Datacenters and its energy consumption (electricity) data from Turbonomic through the Turbonomic APIs.
For each Datacenter in Turbonomic there will be an Account
created in Envizi under a pre-configured Location
.
The entire organization hierarchy with Groups, Locations and Accounts in Envizi may look like this. Look at the location and account highlighted in the image below.
- Location : IN Bank - IBMC-WDC07-Ashburn VA
- Account : IN Bank - IBMC-WDC07-Electricity.
![](/ibm-ecosystem-engineering/turbo-webmethods-envizi-integration/raw/main/images/org-hierarchy.png)
- Get the values for the below fields from Envizi
- Organization (Organization name)
- Organization Link (Organization reference id)
- Account Style Link (Reference id for the account style
S2 - Electricity - kWh
) - Location Name (The location name under which the accounts to be created)
Envizi S3 bucket details are needed to push the data into Envizi. If the S3 is not created in Envizi, refer Steps 1 and 2 here to create it in Envizi.
- From Envizi S3 bucket screen, get the values for the below fields.
- Bucket
- Folder
- Username
- Access Key
- Secret Access Key
Here is the architecture that describes about this Turbonomic and Envizi integration via webMethods.
webMethods Integration flow pulls the list of Cloud Regions and On-prem Data Centers from Turbonomic and sends it to Envizi's S3 bucket in a CSV file. This CSV file will be further processed by the Envizi internally.
Let's create workflow in webMethods.
In this workflow, we will invoke Turbonomic APIs to fetch Energy consumption for each DataCenter locations and transform the JSON API response into the CSV template loaded by Envizi.
CLICK me for detailed instructions
-
Login to your instance of webMethods integration with the respective credentials.
-
Click on
+
under theProjects
tab.
![](/ibm-ecosystem-engineering/turbo-webmethods-envizi-integration/raw/main/images/im-11.png)
-
Enter the Project name.
-
Click on
Create
, to create the project.
![](/ibm-ecosystem-engineering/turbo-webmethods-envizi-integration/raw/main/images/im-12.png)
The project gets created as shown in the below image.
CLICK me for detailed instructions
-
Download the Workflow archive file here.
-
Click on
Import
button. -
Select the Workflow file that is downloaded in the above step.
![](/ibm-ecosystem-engineering/turbo-webmethods-envizi-integration/raw/main/images/im-13.png)
- Enter the values for the following fields.
- Workflow Name
- Workflow Description
- Parameters
Refer the below table for the parameters values.
Name | Value | Comments |
---|---|---|
TurboLoginAPI | https://[Turbonomic-URL]/api/v3/login | Turbonomic Login API. Replace the [Turbonomic-URL] with your Turbonomic instance url |
TurboAccountStatsAPI | https://[Turbonomic-URL]/api/v3/entities/ | Retrieves the Data Centres statistics such as electricity consumption. Replace the [Turbonomic-URL] with your Turbonomic instance url |
TurboDataCentresAPI | https://[Turbonomic-URL]/api/v3/search | Fetches the data centres locations from Turbomic instance. Replace the [Turbonomic-URL] with your Turbonomic instance url |
TurboUserName | Enter the Turbonomic UserName received as part of Pre-Requisite | |
TurboPassword | Enter the Turbonomic Password received as part of Pre-Requisite | |
S3BucketName | S3 Bucket name received as part of Pre-Requisite | |
EnviziTemplateFileName | S3 Folder name and File name as as part of Pre-Requisite. Example: client_7e87560fc4e648/Account_Setup_and_Data_Load_IBMCloud_electricity.csv | |
statsFilter | {"data":{ "startDate":"2024-01-01 00:00:05", "endDate": "2024-12-31 23:59:59","statistics": [ { "name": "Energy", "filters": [ { "type": "relation", "value": "sold" }]}]}} | The statDate and endDate to retrieve the electricity consumption for the period. |
DCNames | "IBMCloud" | The Data Centre names that we are interested to share to Envizi. More data centres can be added with | symbol for example: "IBMCLoud|Vc01dc01" |
![](/ibm-ecosystem-engineering/turbo-webmethods-envizi-integration/raw/main/images/im-14.png)
![](/ibm-ecosystem-engineering/turbo-webmethods-envizi-integration/raw/main/images/im-15.png)
![](/ibm-ecosystem-engineering/turbo-webmethods-envizi-integration/raw/main/images/im-16.png)
- In the above page, click on
+
symbol on theConnect to Hypertext Transfer Protocol (HTTP)
field.
The Add Account popup appears as below.
-
In the
URL
field, enter the valuehttps://[Turbonomic-URL]/api/v3/entities/stats
-
Click
Add
button.
![](/ibm-ecosystem-engineering/turbo-webmethods-envizi-integration/raw/main/images/im-17.png)
The project page updated with the above created value.
- Click on
+
symbol on theConnect to Amazon Web Services
field.
![](/ibm-ecosystem-engineering/turbo-webmethods-envizi-integration/raw/main/images/im-18.png)
The Add Account popup appears as below.
- Enter the following values based on the pre-requisite values from Envizi.
- Access Key ID
- Secret Access Key
- Default Region (us-east-1)
- Click
Add
button.
![](/ibm-ecosystem-engineering/turbo-webmethods-envizi-integration/raw/main/images/im-19.png)
The project page updated with the above created value.
- Click
Import
button.
![](/ibm-ecosystem-engineering/turbo-webmethods-envizi-integration/raw/main/images/im-20.png)
The workflow is created as shown below.
![](/ibm-ecosystem-engineering/turbo-webmethods-envizi-integration/raw/main/images/im-21.png)
CLICK me for detailed instructions
The Envizi template file to be imported into the workflow as a reference data. Let's prepare that.
-
Download the Reference data file from here
-
Update the file with the values based on the below table. But you may need to update the below columns only based on the pre-requisite values from Envizi.
- Organization Link
- Organization
- Account Style Link
Name | Value | Comments |
---|---|---|
Organization Link | 17000252 | The refernce id for the Envizi Organization. Get it from Pre-requisite |
Organization | GSI Demos | The name of the Organization. Get it from Pre-requisite |
Location | IBMCloud | The name of location where the account exists/to be created. It will be updated by webmethods |
Location Ref | Leave it empty | |
Account Style Link | 14445 | The refernce id for the S2 - Electricity - kWh account style. Get it from Pre-requisite |
Account Style Caption | S2 - Electricity - kWh | The account style of this account. It will be updated by webmethods |
Account Subtype | Default | Leave it as it is. |
Account Number | vc01dc01-electricity | The account name. It will be updated by webmethods |
Account Reference | Leave it empty | |
Account Supplier | Leave it empty | |
Account Reader | Leave it empty | |
Record Start YYYY-MM-DD | 02-10-2024 | It will be updated by webmethods |
Record End YYYY-MM-DD | 30-12-2024 | It will be updated by webmethods |
Record Data Quality | Actual | Leave it as it is. |
Record Billing Type | Standard | Leave it as it is. |
Record Subtype | Default | Leave it as it is. |
Record Entry Method | Overwrite | Leave it as it is. s |
Record Reference | Leave it empty | |
Record Invoice Number | Leave it empty | |
Total Electricity (kWh) | 883.799 | Electricity consumption value. It will be updated by webmethods |
Green Power (kWh) | Leave it empty | |
Total Cost | Leave it empty |
-
Goto the
Reference Data
data page by clicking onConfigurations -> Flow service -> Reference data
-
Click on
Add Reference data
button.
![](/ibm-ecosystem-engineering/turbo-webmethods-envizi-integration/raw/main/images/im-22.png)
- In
Save As
column, enter the valueEnviziTemplate
The Browse file
button is enabled.
-
Click on
Browse file
button. -
Choose the above prepared
EnviziTemplate.txt
file
![](/ibm-ecosystem-engineering/turbo-webmethods-envizi-integration/raw/main/images/im-23.png)
The selected file appear like this.
- Click on
Next
button.
![](/ibm-ecosystem-engineering/turbo-webmethods-envizi-integration/raw/main/images/im-24.png)
- Click on
Next
button.
![](/ibm-ecosystem-engineering/turbo-webmethods-envizi-integration/raw/main/images/im-25.png)
- Click on
Done
button.
![](/ibm-ecosystem-engineering/turbo-webmethods-envizi-integration/raw/main/images/im-26.png)
The reference data is created as shown below.
![](/ibm-ecosystem-engineering/turbo-webmethods-envizi-integration/raw/main/images/im-27.png)
CLICK me for detailed instructions
Let's view the imported/created workflow.
- Click on the
Edit
button in the workflow.
![](/ibm-ecosystem-engineering/turbo-webmethods-envizi-integration/raw/main/images/im-28.png)
The workflow page is displayed.
Here is the details about the various nodes.
- Turbonomic API Login : This makes an API call to Turbonomic instance login API which returns
set-cookie
and used to authrize the subsequent API calls. - DataCentre Retrieve : It invokes an API call to Turbonomic instance which returns array list of DataCentre’s.
- JSON Parse : It formats statsFilter raw JSON data.
- Query JSON : It retrieve JSON data from previous node.
- Query JSON : It queries the responseObject JSON data from
DataCentre Retrieve
. - DCTest : It is a flow-service which invokes the Turbonomic stats API to retrieve the electricity consumption and perform the data transformations as needed by Envizi.
- JSON to CSV : This converts JSON data from flowservice into a CSV file.
- S3 Upload File : This node uploads the CSV file from previous node into S3 bucket from which Envizi loads into dashboard.
![](/ibm-ecosystem-engineering/turbo-webmethods-envizi-integration/raw/main/images/im-29.png)
CLICK me for detailed instructions
-
Click
ON
(1) to activate the Workflow -
Click on Run button (2) to start the workflow.
![](/ibm-ecosystem-engineering/turbo-webmethods-envizi-integration/raw/main/images/im-30.png)
CLICK me for detailed instructions
The workflow should have pushed the data from Turbonomic into Envizi's S3.
You can see the Data flow status in S3 like this.
![](/ibm-ecosystem-engineering/turbo-webmethods-envizi-integration/raw/main/images/im-40.png)
The sample data received in S3 from Turbonomic is available here.
Envizi automatically pull the data from S3 and process it. The accounts and account summary page could look like this now.
![](/ibm-ecosystem-engineering/turbo-webmethods-envizi-integration/raw/main/images/im-41.png)
![](/ibm-ecosystem-engineering/turbo-webmethods-envizi-integration/raw/main/images/im-42.png)
![](/ibm-ecosystem-engineering/turbo-webmethods-envizi-integration/raw/main/images/im-43.png)
The workflow can be scheduled for execution. Follow the steps below to define the schedule for workflow execution.
CLICK me for detailed instructions
-
Mouse over the
Trigger
node in the workflow -
Click on
Settings
![](/ibm-ecosystem-engineering/turbo-webmethods-envizi-integration/raw/main/images/im-31.png)
-
Select
Clock
option -
Click on
Next
button.
![](/ibm-ecosystem-engineering/turbo-webmethods-envizi-integration/raw/main/images/im-32.png)
-
Change the schedule as per your need
-
Click on
Done
button
![](/ibm-ecosystem-engineering/turbo-webmethods-envizi-integration/raw/main/images/im-33.png)
The schduling is done and the Trigger node shows the clock icon.
- Click on
Save
button to save the workflow.
![](/ibm-ecosystem-engineering/turbo-webmethods-envizi-integration/raw/main/images/im-34.png)
Now the workflow will execute automatically as per the defined schedule.
Let us create a local user in Turbonomic with the Observer
role.
CLICK me for detailed instructions
- Create a new Local user in Turbonomoic by choosing the below menu option.
Home > SETTINGS > Local User > New Local User
![](/ibm-ecosystem-engineering/turbo-webmethods-envizi-integration/raw/main/images/im-50.png)
-
User name could be
demo_observer
, give some password and choose role asObserver
-
Click
Save
button
![](/ibm-ecosystem-engineering/turbo-webmethods-envizi-integration/raw/main/images/im-51.png)
- User is created.
![](/ibm-ecosystem-engineering/turbo-webmethods-envizi-integration/raw/main/images/im-52.png)
-
Turbonomic - Envizi Integration https://ibm.github.io/IBM-Sustainability-Software-Portfolio-Connectors/turbonomic-envizi/
-
Turbonomic - Envizi Integration https://github.com/IBM/turbonomic-envizi-appconnect-flows
-
Creating Envizi S3 bucket (Refer Steps 1 and 2 here to create the bucket)
-
Getting started with the Turbonomic REST API : https://www.ibm.com/docs/en/tarm/8.13.6?topic=reference-getting-started-turbonomic-rest-api
-
IBM Envizi ESG Suite https://www.ibm.com/docs/en/envizi-esg-suite
-
Integrate your ESG Data into Envizi using Integration Hub https://developer.ibm.com/tutorials/awb-envizi-integration-hub/
-
Sign up for webMethods SaaS Trial https://signup.softwareag.cloud/#/basic-b
#envizi #Sustainability #turbonomic
#ESG Data and Environmental Intelligence #sustainability-highlights-home