How to Build Open Source Cloud Asset Inventory with CloudQuery and Microsoft Power BI
In this blog post, we will walk you through how to setup CloudQuery to build your cloud asset inventory in PostgreSQL and connect it to Microsoft Power BI for visualization, monitoring and reporting.
ETL (Extract-Transform-Load) ingestion layer: CloudQuery
Data Visualization and Exploration Platform: Microsoft Power BI
Raw SQL access to all your cloud asset inventory to create views or explore any questions or connection between resources.
Multi-Cloud Asset Inventory: Ingest configuration from all your clouds to a single datastore with a unified structure.
Avoid yet-another-dashboard fatigue: Reuse your existing Power BI setup to build a cloud asset inventory.
If it’s your first time using CloudQuery we suggest you first run it locally to get familiar with the tool, take a look at our Getting Started with Azure Guide.
If you are already familiar with CloudQuery, take a look at how to deploy it to Azure on AKS at https://github.com/cloudquery/terraform-azure-cloudquery.
Unfortunately, Power BI does not support the PostgresSQL connector from the web application.
We can still use the PostgresSQL connector by downloading the Power BI Desktop from here.
Connection to Local / Remote server requires you to authorize the IP of the machine you’re running Power BI Desktop on.
See connection full walkthrough.
Get Data and choose PostgresSQL database (In this tutorial we will connect to publicly accessible PostgresSQL server with authorized IP) and fill-in the connection details:
Choose the table you want to visualize, in this case we will choose the
💡 To create the
azure_resourcesview, run the following view before importing to the data studio.
Choose the table to visualize
Design your report
You can reuse Power BI to export/share those reports as well!
In this post we showed you how to build an open-source cloud asset inventory with CloudQuery as the ETL (Extract-Transform-Load) / data-ingestion layer and Microsoft Power BI as the visualization platforms. This approach eliminates the yet-another-dashboard fatigue and gives you the ability to pick the best-in-class visualization tools and/or reuse your current stack.