Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Added OutboundNetworkDependenciesEndpoints API #15498

Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
Original file line number Diff line number Diff line change
Expand Up @@ -652,6 +652,49 @@
}
}
}
},
"/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Databricks/workspaces/{workspaceName}/outboundNetworkDependenciesEndpoints": {
"get": {
"tags": [
"GET"
],
"summary": "Gets a list of egress endpoints (network endpoints of all outbound dependencies) in the specified Workspace.",
"description": "Gets the list of endpoints that VNET Injected Workspace's Cluster call Azure Databricks Control Plane. You must configure outbound access to these endpoints. For more information, see https://docs.microsoft.com/en-us/azure/databricks/administration-guide/cloud-configurations/azure/udr",
"operationId": "OutboundNetworkDependenciesEndpoints_List",
"x-ms-examples": {
"List OutboundNetworkDependenciesEndpoints by Workspace": {
"$ref": "./examples/OutboundNetworkDependenciesEndpointsList.json"
}
},
"parameters": [
{
"$ref": "#/parameters/ResourceGroupName"
},
{
"$ref": "#/parameters/WorkspaceName"
},
{
"$ref": "#/parameters/ApiVersionParameter"
},
{
"$ref": "#/parameters/SubscriptionIdParameter"
}
],
"responses": {
"200": {
"description": "The response contains list of outbound network dependency endpoints",
"schema": {
"$ref": "#/definitions/OutboundEnvironmentEndpointCollection"
}
},
"default": {
"description": "Error response describing why the operation failed.",
"schema": {
"$ref": "#/definitions/ErrorResponse"
}
}
}
}
}
},
"definitions": {
Expand Down Expand Up @@ -1532,6 +1575,71 @@
"name": "PrivateEndpointConnectionProvisioningState",
"modelAsString": true
}
},
"EndpointDependency": {
"description": "A domain name or IP address the Workspace is reaching at.",
"type": "object",
"properties": {
"domainName": {
"description": "The domain name of the dependency.",
"type": "string"
},
"endpointDetails": {
"description": "The Ports used when connecting to domainName.",
"type": "array",
"items": {
"$ref": "#/definitions/EndpointDetail"
}
}
}
},
"EndpointDetail": {
"description": "Connect information from the Workspace to a single endpoint.",
"type": "object",
"properties": {
"ipAddress": {
"description": "An IP Address that Domain Name currently resolves to.",
"type": "string"
},
"port": {
"format": "int32",
"description": "The port an endpoint is connected to.",
"type": "integer"
},
"latency": {
"format": "double",
"description": "The time in milliseconds it takes for the connection to be created from the Workspace to this IpAddress at this Port.",
"type": "number"
},
"isAccessible": {
"description": "Whether it is possible to create a connection from the Workspace to this IpAddress at this Port.",
"type": "boolean"
}
}
},
"OutboundEnvironmentEndpoint": {
"description": "Egress endpoints which Workspace connects to for common purposes.",
"type": "object",
"properties": {
"category": {
"description": "The category of endpoints accessed by the Workspace, e.g. azure-storage, azure-mysql, etc.",
"type": "string"
},
"endpoints": {
"description": "The endpoints that Workspace connect to",
"type": "array",
"items": {
"$ref": "#/definitions/EndpointDependency"
}
}
}
},
"OutboundEnvironmentEndpointCollection": {
"description": "Collection of outbound network dependency endpoints",
"type": "array",
"items": {
"$ref": "#/definitions/OutboundEnvironmentEndpoint"
}
}
},
"parameters": {
Expand Down
Original file line number Diff line number Diff line change
@@ -0,0 +1,120 @@
{
"parameters": {
"workspaceName": "myWorkspace",
"resourceGroupName": "myResourceGroup",
"api-version": "2021-04-01-preview",
"subscriptionId": "11111111-1111-1111-1111-111111111111"
},
"responses": {
"200": {
"body": [
{
"category": "Webapp",
"endpoints": [
{
"endpointDetails": [
{
"ipAddress": "11.111.111.11/11",
"port": 123
},
{
"ipAddress": "22.222.222.22/22",
"port": 123
}
]
}
]
},
{
"category": "Control Plane NAT",
"endpoints": [
{
"endpointDetails": [
{
"ipAddress": "33.33.333.333/33",
"port": 123
}
]
}
]
},
{
"category": "Extended infrastructure",
"endpoints": [
{
"endpointDetails": [
{
"ipAddress": "44.44.44.44/44",
"port": 123
}
]
}
]
},
{
"category": "Azure Storage",
"endpoints": [
{
"domainName": "xxx.blob.core.windows.net",
"endpointDetails": [
{
"port": 123
}
]
},
{
"domainName": "yyy.blob.core.windows.net",
"endpointDetails": [
{
"port": 123
}
]
},
{
"domainName": "zzz.blob.core.windows.net",
"endpointDetails": [
{
"port": 123
}
]
}
]
},
{
"category": "Azure My SQL",
"endpoints": [
{
"domainName": "xxx.mysql.database.azure.com",
"endpointDetails": [
{
"port": 1234
}
]
},
{
"domainName": "yyy.mysql.database.azure.com",
"endpointDetails": [
{
"port": 1234
}
]
}
]
},
{
"category": "Azure Servicebus",
"endpoints": [
{
"domainName": "xxx.servicebus.windows.net",
"endpointDetails": [
{
"port": 1234
}
]
}
]
}
]
}
}
}
Original file line number Diff line number Diff line change
@@ -0,0 +1,43 @@
{
"parameters": {
"subscriptionId": "subid",
"resourceGroupName": "rg",
"workspaceName": "myWorkspace",
"peeringName": "vNetPeering",
"api-version": "2021-04-01-preview"
},
"responses": {
"200": {
"headers": {},
"body": {
"id": "/subscriptions/0140911e-1040-48da-8bc9-b99fb3dd88a6/resourceGroups/subramantest/providers/Microsoft.Databricks/workspaces/adbworkspace/virtualNetworkPeerings/vNetPeeringTest",
"name": "vNetPeeringTest",
"properties": {
"allowVirtualNetworkAccess": true,
"allowForwardedTraffic": false,
"allowGatewayTransit": false,
"useRemoteGateways": false,
"remoteVirtualNetwork": {
"id": "/subscriptions/0140911e-1040-48da-8bc9-b99fb3dd88a6/resourceGroups/subramantest/providers/Microsoft.Network/virtualNetworks/subramanvnet"
},
"remoteAddressSpace": {
"addressPrefixes": [
"10.203.0.0/16"
]
},
"databricksVirtualNetwork": {
"id": "/subscriptions/0140911e-1040-48da-8bc9-b99fb3dd88a6/resourceGroups/databricks-rg-adbworkspace-2jsxhmzoyooxm/providers/Microsoft.Network/virtualNetworks/workers-vnet"
},
"databricksAddressSpace": {
"addressPrefixes": [
"10.139.0.0/16"
]
},
"peeringState": "Initiated",
"provisioningState": "Succeeded"
}
}
},
"204": {}
}
}
Original file line number Diff line number Diff line change
@@ -0,0 +1,45 @@
{
"parameters": {
"subscriptionId": "subid",
"resourceGroupName": "rg",
"workspaceName": "myWorkspace",
"api-version": "2021-04-01-preview"
},
"responses": {
"200": {
"headers": {},
"body": {
"value": [
{
"id": "/subscriptions/0140911e-1040-48da-8bc9-b99fb3dd88a6/resourceGroups/subramantest/providers/Microsoft.Databricks/workspaces/adbworkspace/virtualNetworkPeerings/vNetPeeringTest",
"name": "vNetPeeringTest",
"properties": {
"allowVirtualNetworkAccess": true,
"allowForwardedTraffic": false,
"allowGatewayTransit": false,
"useRemoteGateways": false,
"remoteVirtualNetwork": {
"id": "/subscriptions/0140911e-1040-48da-8bc9-b99fb3dd88a6/resourceGroups/subramantest/providers/Microsoft.Network/virtualNetworks/subramanvnet"
},
"remoteAddressSpace": {
"addressPrefixes": [
"10.203.0.0/16"
]
},
"databricksVirtualNetwork": {
"id": "/subscriptions/0140911e-1040-48da-8bc9-b99fb3dd88a6/resourceGroups/databricks-rg-adbworkspace-2jsxhmzoyooxm/providers/Microsoft.Network/virtualNetworks/workers-vnet"
},
"databricksAddressSpace": {
"addressPrefixes": [
"10.139.0.0/16"
]
},
"peeringState": "Initiated",
"provisioningState": "Succeeded"
}
}
]
}
}
}
}
Loading