<?xml version="1.0" encoding="UTF-8"?>
<rss xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns:taxo="http://purl.org/rss/1.0/modules/taxonomy/" version="2.0">
  <channel>
    <title>topic Re: Databricks App in Azure Databricks with private link cluster (no Public IP) in Administration &amp; Architecture</title>
    <link>https://community.databricks.com/t5/administration-architecture/databricks-app-in-azure-databricks-with-private-link-cluster-no/m-p/110906#M3038</link>
    <description>&lt;P&gt;Do you have a private endpoint for &lt;SPAN&gt;databricks_ui_api &lt;/SPAN&gt;? You need &lt;SPAN&gt;to establish a private endpoint for users to access web app.&lt;/SPAN&gt;&lt;/P&gt;</description>
    <pubDate>Fri, 21 Feb 2025 19:10:18 GMT</pubDate>
    <dc:creator>MariuszK</dc:creator>
    <dc:date>2025-02-21T19:10:18Z</dc:date>
    <item>
      <title>Databricks App in Azure Databricks with private link cluster (no Public IP)</title>
      <link>https://community.databricks.com/t5/administration-architecture/databricks-app-in-azure-databricks-with-private-link-cluster-no/m-p/106068#M2783</link>
      <description>&lt;P&gt;Hello,&lt;BR /&gt;I've deployed Azure Databricks with a standard Private Link setup (no public IP). Everything works as expected—I can log in via the private/internal network, create clusters, and manage workloads without any issues.&lt;/P&gt;&lt;P&gt;When I create a Databricks App, it generates a URL like:&amp;nbsp;&lt;FONT face="courier new,courier"&gt;&amp;lt;name&amp;gt;.azure.databricksapps.com&lt;/FONT&gt;&lt;/P&gt;&lt;P&gt;Since I didn’t initially have a Private DNS Zone for &lt;FONT face="courier new,courier"&gt;azure.databricksapps.com&lt;/FONT&gt;, my system resolved this address to a public IP. To fix this, I:&lt;/P&gt;&lt;UL&gt;&lt;LI&gt;Created a Private DNS Zone for &lt;FONT face="courier new,courier"&gt;azure.databricksapps.com&lt;/FONT&gt;.&lt;/LI&gt;&lt;LI&gt;Added an A record pointing&lt;FONT face="courier new,courier"&gt; &amp;lt;name&amp;gt;.azure.databricksapps.com&lt;/FONT&gt; to my Databricks workspace private IP endpoint (same as used in privatelink.azuredatabricks.net for this workspace).&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;SPAN&gt;Behavior Before Adding the Private DNS Zone:&lt;BR /&gt;&lt;FONT face="courier new,courier"&gt;nslookup &amp;lt;app-name&amp;gt;.azure.databricksapps.com&lt;/FONT&gt; → Resolved to a public IP.&lt;BR /&gt;curl or accessing via a browser resulted in:&lt;BR /&gt;&lt;FONT face="courier new,courier"&gt;{"X-Databricks-Reason-Phrase":"Public access is not allowed for workspace: xyz"}&lt;/FONT&gt;&lt;BR /&gt;&lt;BR /&gt;Behavior After Adding the Private DNS Zone:&lt;BR /&gt;&lt;FONT face="courier new,courier"&gt;nslookup &amp;lt;app-name&amp;gt;.azure.databricksapps.com&lt;/FONT&gt; → Now resolves to the private IP (as expected).&lt;BR /&gt;However, curl and browser requests still go through the public IP and return the same error:&lt;BR /&gt;&lt;FONT face="courier new,courier"&gt;{"X-Databricks-Reason-Phrase":"Public access is not allowed for workspace: xyz"}&lt;/FONT&gt;&lt;BR /&gt;&lt;BR /&gt;Is additional configuration needed to ensure Databricks Apps work over Private Link?&lt;BR /&gt;Does this feature require a Public IP, or should it work fully within a private network?&lt;BR /&gt;&lt;/SPAN&gt;&lt;/P&gt;</description>
      <pubDate>Fri, 17 Jan 2025 12:01:56 GMT</pubDate>
      <guid>https://community.databricks.com/t5/administration-architecture/databricks-app-in-azure-databricks-with-private-link-cluster-no/m-p/106068#M2783</guid>
      <dc:creator>Behwar</dc:creator>
      <dc:date>2025-01-17T12:01:56Z</dc:date>
    </item>
    <item>
      <title>Re: Databricks App in Azure Databricks with private link cluster (no Public IP)</title>
      <link>https://community.databricks.com/t5/administration-architecture/databricks-app-in-azure-databricks-with-private-link-cluster-no/m-p/106074#M2784</link>
      <description>&lt;P&gt;Hello&amp;nbsp;&lt;a href="https://community.databricks.com/t5/user/viewprofilepage/user-id/114882"&gt;@Behwar&lt;/a&gt;,&lt;/P&gt;
&lt;P&gt;Did you make sure that your internal DNS is configured to map the web application workspace URL to your front-end VPC endpoint. This involves creating an A-record in your internal DNS that maps the workspace URL directly to the front-end (workspace) VPC endpoint private IP&lt;/P&gt;</description>
      <pubDate>Fri, 17 Jan 2025 12:40:38 GMT</pubDate>
      <guid>https://community.databricks.com/t5/administration-architecture/databricks-app-in-azure-databricks-with-private-link-cluster-no/m-p/106074#M2784</guid>
      <dc:creator>Alberto_Umana</dc:creator>
      <dc:date>2025-01-17T12:40:38Z</dc:date>
    </item>
    <item>
      <title>Re: Databricks App in Azure Databricks with private link cluster (no Public IP)</title>
      <link>https://community.databricks.com/t5/administration-architecture/databricks-app-in-azure-databricks-with-private-link-cluster-no/m-p/106090#M2785</link>
      <description>&lt;P&gt;I'm using Azure, so instead of a VPC endpoint, I'm working with Azure Private Link. Here's what I checked and did:&lt;/P&gt;&lt;UL&gt;&lt;LI&gt;Verified my Databricks workspace private endpoint under privatelink.azuredatabricks.net.&lt;/LI&gt;&lt;LI&gt;Created a Private DNS Zone for azure.databricksapps.com and mapped &amp;lt;app-name&amp;gt; to the same private IP as my Databricks workspace.&lt;/LI&gt;&lt;LI&gt;Linked my VNet to the Private DNS Zone so all internal resources resolve it correctly.&lt;/LI&gt;&lt;LI&gt;Confirmed that nslookup now returns the private IP, but browser and curl still attempt to route via the public IP.&lt;/LI&gt;&lt;/UL&gt;</description>
      <pubDate>Fri, 17 Jan 2025 13:12:56 GMT</pubDate>
      <guid>https://community.databricks.com/t5/administration-architecture/databricks-app-in-azure-databricks-with-private-link-cluster-no/m-p/106090#M2785</guid>
      <dc:creator>Behwar</dc:creator>
      <dc:date>2025-01-17T13:12:56Z</dc:date>
    </item>
    <item>
      <title>Re: Databricks App in Azure Databricks with private link cluster (no Public IP)</title>
      <link>https://community.databricks.com/t5/administration-architecture/databricks-app-in-azure-databricks-with-private-link-cluster-no/m-p/110704#M3028</link>
      <description>&lt;P&gt;I am also facing the same issue. Is the recommendation to create one A-record for each app, which sounds a bit cumbersome.&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;</description>
      <pubDate>Thu, 20 Feb 2025 08:38:40 GMT</pubDate>
      <guid>https://community.databricks.com/t5/administration-architecture/databricks-app-in-azure-databricks-with-private-link-cluster-no/m-p/110704#M3028</guid>
      <dc:creator>sparkplug</dc:creator>
      <dc:date>2025-02-20T08:38:40Z</dc:date>
    </item>
    <item>
      <title>Re: Databricks App in Azure Databricks with private link cluster (no Public IP)</title>
      <link>https://community.databricks.com/t5/administration-architecture/databricks-app-in-azure-databricks-with-private-link-cluster-no/m-p/110906#M3038</link>
      <description>&lt;P&gt;Do you have a private endpoint for &lt;SPAN&gt;databricks_ui_api &lt;/SPAN&gt;? You need &lt;SPAN&gt;to establish a private endpoint for users to access web app.&lt;/SPAN&gt;&lt;/P&gt;</description>
      <pubDate>Fri, 21 Feb 2025 19:10:18 GMT</pubDate>
      <guid>https://community.databricks.com/t5/administration-architecture/databricks-app-in-azure-databricks-with-private-link-cluster-no/m-p/110906#M3038</guid>
      <dc:creator>MariuszK</dc:creator>
      <dc:date>2025-02-21T19:10:18Z</dc:date>
    </item>
    <item>
      <title>Re: Databricks App in Azure Databricks with private link cluster (no Public IP)</title>
      <link>https://community.databricks.com/t5/administration-architecture/databricks-app-in-azure-databricks-with-private-link-cluster-no/m-p/115429#M3248</link>
      <description>&lt;P&gt;Behwar : you should have to create a specific private DNS zone for&amp;nbsp;&lt;SPAN&gt;azure.databricksapps.com - if you do a nslookup on your apps url - you will see that it points to your workspace. In Azure using Azure (recursive) DNS you can see an important behavior that will give you a clue on how to handle apps with a workspace that has no public access that uses a private endpoint for access.&amp;nbsp;&lt;BR /&gt;If I do a nslookup -debug on my apps URL, the url points to a canonical (CNAME) of the databricks workspace URL, that URL points to a canonical (CNAME) to the privatelink URL which depending on if I have a private DNS zone or forwarding rule should either stop there and resolve to a private IP address or if not continue on to point to the regional control plane endpoint.&amp;nbsp;&lt;BR /&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN&gt;Example : I have my app "yoworlld" and if I do a nslookup -debug without a private DNS zone you can see this behavior :&amp;nbsp;&lt;BR /&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;LI-CODE lang="python"&gt;% nslookup -debug yoworld-7338663619064447.7.azure.databricksapps.com 
Server:		10.248.117.1
Address:	10.248.117.1#53

------------
    QUESTIONS:
	yoworld-7338663619064447.7.azure.databricksapps.com, type = A, class = IN
    ANSWERS:
    -&amp;gt;  yoworld-7338663619064447.7.azure.databricksapps.com
	canonical name = adb-7338663619064447.7.azuredatabricks.net.
	ttl = 300
    -&amp;gt;  adb-7338663619064447.7.azuredatabricks.net
	canonical name = adb-7338663619064447.7.privatelink.azuredatabricks.net.
	ttl = 300
    -&amp;gt;  adb-7338663619064447.7.privatelink.azuredatabricks.net
	canonical name = westus.azuredatabricks.net.
	ttl = 300
    -&amp;gt;  westus.azuredatabricks.net
	internet address = 13.91.180.32
	ttl = 41&lt;/LI-CODE&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&lt;SPAN&gt;Same URL with private endpoints and a private DNS zone for privatelink.azuredatabricks.net linked to my vnet :&amp;nbsp;&lt;BR /&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;LI-CODE lang="python"&gt;&amp;gt; yoworld-7338663619064447.7.azure.databricksapps.com
Server:168.63.129.16
Address:168.63.129.16#53

Non-authoritative answer:
yoworld-7338663619064447.7.azure.databricksapps.com canonical name = adb-7338663619064447.7.azuredatabricks.net.
adb-7338663619064447.7.azuredatabricks.net canonical name = adb-7338663619064447.7.privatelink.azuredatabricks.net.
Name:adb-7338663619064447.7.privatelink.azuredatabricks.net
Address: 100.64.254.16&lt;/LI-CODE&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&lt;SPAN&gt;You can see that it found the private IP for the workspace private endpoint on its own.&amp;nbsp;&lt;BR /&gt;&lt;BR /&gt;The challenge is if you are not using Azure DNS, or a properly configured forwarder, the hand off to the workspace URL is lost. For custom DNS you may need to add a CNAME that points to the workspace URL or an A record that points to the private endpoint IP address.&amp;nbsp;&lt;/SPAN&gt;&lt;/P&gt;</description>
      <pubDate>Mon, 14 Apr 2025 17:24:47 GMT</pubDate>
      <guid>https://community.databricks.com/t5/administration-architecture/databricks-app-in-azure-databricks-with-private-link-cluster-no/m-p/115429#M3248</guid>
      <dc:creator>rugger-bricks</dc:creator>
      <dc:date>2025-04-14T17:24:47Z</dc:date>
    </item>
  </channel>
</rss>

