Friday, 3 September 2021

Virtual Network Data Gateway for Power BI

Case
My company doesn't allow public end points on my Azure resources like the Azure SQL Database and the Azure Data Lake. Now Power BI cannot use these sources directly and therefore we have to install an On-premises Data Gateway on an Azure Virtual Machine within the same VNET as my sources (or in a peered VNET). Is there an alternative for this VM solution?
Data Gateways and one with a different icon

























Solution
Yes there is a promising new alternative for the silly VM solution, but there are some caveats which will be shared in the conclusions. A few months ago Microsoft announced the VNET Data Gateway for cloud sources. Now the service is available for testing. The two main benefits are:
  • No need for a Virtual Machine which you need to maintain (but which you probably forget)
  • No need for the On-Premises Data Gateway which you need to nearly update each month
You will still need a Virtual Network (VNET) to connect this service to other Azure services to allow the connection to Power BI or other services of the Power Platform. Within this VNET we need a subnet that can delegate to the Microsoft Power Platform.


1) Resource Provider Microsoft.PowerPlatform
The first step for adding the VNET gateway is to check within your Azure Subscription whether the Resource Provider Microsoft.PowerPlatform is already registered (probably not). By registering this Provider you will be able to connect the Subnet of Step 2 to the Gateway of step 3.
  • Go to the Azure portal and login as an owner of the Subscription.
  • Go to the Subscription overview page (the same subscription where your VNET is also located)
  • In the left menu you will find the option Resource Providers.
  • Search for Microsoft.PowerPlatform and check the Status column. If is Says NotRegistered then select it and hit the Register button in the top.
Register Resource Provider













2) Add Subnet to VNet
Now that we have the new Resource Provider we can add a Subnet to an existing VNET. The VNET is a simple default 'installation' with an address space of 10.240.134.0/23 (512 addresses 10.240.134.0 to 10.240.135.255). 
  • Go to your existing VNET
  • In the left menu click on Subnets to see the available subnets
  • Click in + Subnet (not + Gateway Subnet) to add a new Subnet
  • Give it a suitable name (gatewaysubnet is reserved/not allowed)
  • Choose a small Subnet address range, 28 will give you 16 ip addresses of which 11 can be used to add gateways. IP6 is now allowed at the moment.
  • The most important property for the VNET gateways is Subnet delegation. Make sure to set it to Microsoft.PowerPlatform/vnetaccesslinks.
Add Subnet to VNET












3) Add VNET Gateway
For the final step, creating the gateway, we need to go to the Power Platform admin center. So this means it not an Azure located service. For this step you need to be add least an Azure Network Contributor (but Subscription Owner will work as well).
  • Log in to the Power Platform admin center
  • In the left menu click on Data (preview)
  • Then go to the tab Virtual Network data gateways to see existing gateways or to add a new one
  • Click on + New to add a new VNET Gateway
  • Select the Azure Subscription of your VNET / subnet. Subscriptions where step 1 was not performed will give an error when you select them: Please register "Microsoft.PowerPlatform" as a resource provider for this subscription to continue creating a virtual network data gateway.
  • Select the Resource Group of your VNET
  • Select the VNET
  • Select the Subnet of step 2
  • Give the new Gateway a suitable new
Add Virtual Network data gateway













You can also add other user to use this new gateway, but at this moment you can only add administrators and you wont see the Can use or the Can use + Share option. Probably because it is still in Public Preview at the moment of writing.
Can use or the Can use + Share are missing













Conclusion
In this post you learned about the new Virtual Network Data Gateway for Power BI. The lack of maintenance is the big benefit for this new service. But there are also a few caveats besides being a Preview service. Some of them will probably be solved when the service will get the status General Available.
  1. This new service only works for Power BI premium workspaces. This is a real big deal since I don't want to make all my workspaces premium.
  2. The price is still unknown. May be it will be a premium feature, but then they have to solve the first issue.
  3. The performance to Azure Data Lake is very slow compared to an On-premises Data Gateway on an Azure VM (up to 6 times slower!). This is a bug where they are working on. However this brings up an other issue. How can you tweak the performance of this new gateway. You cannot create a cluster with multiple gateways and you cannot chance the core/memory.
  4. The number of source is still a bit low. Only Microsoft cloud services are supported (since you cannot install third party drivers). 
  5. On-prem sources are also not supported which would be very useful to reduce the number of servers (and maintenance) in my on-prem network since VNET can also be connected via VPN to the on-prem network. However Microsoft products like SQL Server should work since they use the same drivers as Azure SQL Database (not tested).
  6. Can use & Can use + Share is still missing which only allows gateway admins to use this service.
So altogether a very promising new service from Microsoft. Still a couple of issues, but hopefully they will all be fixed when it will be General Available. The real deal breaker will be issue 1 and solving issue 5 will really boost the success of this new service. For more detailed installation steps read Docs.

No comments:

Post a Comment