Skip to content

Commit 44bd1d8

Browse files
Merge pull request #717 from JocaPC/master
Adding synapse analytic deployment template
2 parents 8618eb3 + de7c885 commit 44bd1d8

10 files changed

Lines changed: 374 additions & 0 deletions

File tree

Lines changed: 59 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,59 @@
1+
{
2+
"$schema": "http://schema.management.azure.com/schemas/2015-01-01/deploymentTemplate.json#",
3+
"contentVersion": "1.0.0.0",
4+
"parameters": {
5+
"name": {
6+
"type": "String"
7+
},
8+
"sqlAdministratorLogin": {
9+
"type": "String"
10+
},
11+
"sqlAdministratorPassword": {
12+
"type": "SecureString"
13+
},
14+
"tagValues": {
15+
"defaultValue": {"Created with":"Synapse Azure Resource Manager deploment template"},
16+
"type": "Object"
17+
}
18+
},
19+
"resources": [
20+
{
21+
"type": "Microsoft.Resources/deployments",
22+
"apiVersion": "2018-05-01",
23+
"name": "storage",
24+
"properties": {
25+
"mode": "Incremental",
26+
"templateLink": {
27+
"uri": "[uri(deployment().properties.templateLink.uri, '/microsoft/sql-server-samples/master/samples/manage/synapse-analytics/storage/azuredeploy.json')]",
28+
"contentVersion": "1.0.0.0"
29+
},
30+
"parameters":{
31+
"storageAccount":{"value": "[parameters('name')]"}
32+
}
33+
}
34+
},
35+
{
36+
"type": "Microsoft.Resources/deployments",
37+
"apiVersion": "2018-05-01",
38+
"name": "workspace",
39+
"properties": {
40+
"mode": "Incremental",
41+
"templateLink": {
42+
"uri": "[uri(deployment().properties.templateLink.uri, '/microsoft/sql-server-samples/master/samples/manage/synapse-analytics/workspace/azuredeploy.json')]",
43+
"contentVersion": "1.0.0.0"
44+
},
45+
"parameters":{
46+
"name":{"value": "[parameters('name')]"},
47+
"sqlAdministratorLogin":{"value": "[parameters('sqlAdministratorLogin')]"},
48+
"sqlAdministratorPassword":{"value": "[parameters('sqlAdministratorPassword')]"},
49+
"defaultDataLakeStorageAccountName":{"value": "[parameters('name')]"},
50+
"tagValues":{"value": "[parameters('tagValues')]"}
51+
}
52+
},
53+
"dependsOn": [
54+
"storage"
55+
]
56+
}
57+
],
58+
"outputs": {}
59+
}
Lines changed: 12 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,12 @@
1+
# Deploy Azure Synapse workspace
2+
3+
This template deploys Azure Synapse workspace with underlying Data Lake Storage.
4+
5+
<a href="https://portal.azure.com/#create/Microsoft.Template/uri/https%3A%2F%2Fraw.githubusercontent.com%2Fmicrosoft%2Fsql-server-samples%2Fmaster%2Fsamples%2Fmanage%2Fsynapse-analytics%2Fazuredeploy.json" target="_blank">
6+
<img src="https://raw.githubusercontent.com/Azure/azure-quickstart-templates/master/1-CONTRIBUTION-GUIDE/images/deploytoazure.png"/>
7+
</a>
8+
<a href="http://armviz.io/#/?load=https%3A%2F%2Fraw.githubusercontent.com%2Fmicrosoft%2Fsql-server-samples%2Fmaster%2Fsamples%2Fmanage%2Fsynapse-analytics%2Fworkspace%2Fazuredeploy.json" target="_blank">
9+
<img src="https://raw.githubusercontent.com/Azure/azure-quickstart-templates/master/1-CONTRIBUTION-GUIDE/images/visualizebutton.png"/>
10+
</a>
11+
12+
`Tags: Azure, Synapse, Analytics`
Lines changed: 77 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,77 @@
1+
{
2+
"$schema": "https://schema.management.azure.com/schemas/2015-01-01/deploymentTemplate.json#",
3+
"contentVersion": "1.0.0.0",
4+
"parameters": {
5+
"storageAccount": {
6+
"type": "string"
7+
}
8+
},
9+
"variables": {},
10+
"resources": [
11+
{
12+
"type": "Microsoft.Storage/storageAccounts",
13+
"apiVersion": "2019-04-01",
14+
"name": "[parameters('storageAccount')]",
15+
"location": "[resourceGroup().location]",
16+
"tags": {
17+
"Type": "Synapse Data Lake Storage",
18+
"Created with":"Synapse Azure Resource Manager deploment template"
19+
},
20+
"sku": {
21+
"name": "Standard_RAGRS",
22+
"tier": "Standard"
23+
},
24+
"kind": "StorageV2",
25+
"properties": {
26+
"isHnsEnabled": true,
27+
"networkAcls": {
28+
"bypass": "AzureServices",
29+
"virtualNetworkRules": [],
30+
"ipRules": [],
31+
"defaultAction": "Allow"
32+
},
33+
"supportsHttpsTrafficOnly": true,
34+
"encryption": {
35+
"services": {
36+
"file": {
37+
"enabled": true
38+
},
39+
"blob": {
40+
"enabled": true
41+
}
42+
},
43+
"keySource": "Microsoft.Storage"
44+
},
45+
"accessTier": "Hot"
46+
}
47+
},
48+
{
49+
"type": "Microsoft.Storage/storageAccounts/blobServices",
50+
"apiVersion": "2019-04-01",
51+
"name": "[concat(parameters('storageAccount'), '/default')]",
52+
"dependsOn": [
53+
"[resourceId('Microsoft.Storage/storageAccounts', parameters('storageAccount'))]"
54+
],
55+
"properties": {
56+
"cors": {
57+
"corsRules": []
58+
},
59+
"deleteRetentionPolicy": {
60+
"enabled": false
61+
}
62+
}
63+
},
64+
{
65+
"type": "Microsoft.Storage/storageAccounts/blobServices/containers",
66+
"apiVersion": "2019-04-01",
67+
"name": "[concat(parameters('storageAccount'), '/default/workspace')]",
68+
"dependsOn": [
69+
"[resourceId('Microsoft.Storage/storageAccounts/blobServices', parameters('storageAccount'), 'default')]",
70+
"[resourceId('Microsoft.Storage/storageAccounts', parameters('storageAccount'))]"
71+
],
72+
"properties": {
73+
"publicAccess": "None"
74+
}
75+
}
76+
]
77+
}
Lines changed: 9 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,9 @@
1+
{
2+
"$schema": "https://schema.management.azure.com/schemas/2015-01-01/deploymentParameters.json#",
3+
"contentVersion": "1.0.0.0",
4+
"parameters": {
5+
"clusterStorageAccountName": {
6+
"value": "GEN-UNIQUE"
7+
}
8+
}
9+
}
Lines changed: 10 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,10 @@
1+
{
2+
"$schema": "https://aka.ms/azure-quickstart-templates-metadata-schema#",
3+
"type": "QuickStart",
4+
"itemDisplayName": "Deploy Azure Storage account for Synapse Workspace",
5+
"description": "This template allows you to deploy Azure Storage account for Synapse Workspace.",
6+
"summary": "Deploy Azure Storage account for Synapse Workspace.",
7+
"githubUsername": "jocapc",
8+
"dateUpdated": "2019-10-10"
9+
}
10+
Lines changed: 15 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,15 @@
1+
# Deploy Azure Storage account for Synapse workspace
2+
3+
This template deploys configured Azure Storage account for Synapse workspace.
4+
5+
<a href="https://portal.azure.com/#create/Microsoft.Template/uri/https%3A%2F%2Fraw.githubusercontent.com%2Fmicrososft%2Fsql-server-samples%2Fmaster%2Fsamples%2Fmanage%2Fsynapse-analytics%2Fstorage%2Fazuredeploy.json" target="_blank">
6+
<img src="https://raw.githubusercontent.com/Azure/azure-quickstart-templates/master/1-CONTRIBUTION-GUIDE/images/deploytoazure.png"/>
7+
</a>
8+
<a href="http://armviz.io/#/?load=https%3A%2F%2Fraw.githubusercontent.com%2Fmicrosoft%2Fsql-server-samples%2Fmaster%2Fsamples%2Fmanage%2Fsynapse-analytics%2Fstorage%2Fazuredeploy.json" target="_blank">
9+
<img src="https://raw.githubusercontent.com/Azure/azure-quickstart-templates/master/1-CONTRIBUTION-GUIDE/images/visualizebutton.png"/>
10+
</a>
11+
12+
When you create storage, use [this link](https://portal.azure.com/?feature.customportal=false&feature.canmodifystamps=true&SqlAzureExtension=synapse&microsoft_azure_synapse_assettypeoptions=%7B%22SynapseWorkspace%22%3A%7B%22options%22%3A%22%22%7D%2C%22SparkPool%22%3A%7B%22options%22%3A%22hideassettype%22%7D%7D&microsoft_azure_marketplace_ItemHideKey=SynapseExtensionPreview#blade/Microsoft_Azure_Marketplace/MarketplaceOffersBlade/selectedMenuItemId/home/searchQuery/Azure%2BSynapse%2BAnalytics%2B(preview)
13+
) to create Azure Synapse Analytics workspace **(not former DataWarehouse)** and assign the Azure Storage account created with this template.
14+
15+
`Tags: Azure, Synapse, Storage`
Lines changed: 128 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,128 @@
1+
{
2+
"$schema": "http://schema.management.azure.com/schemas/2015-01-01/deploymentTemplate.json#",
3+
"contentVersion": "1.0.0.0",
4+
"parameters": {
5+
"name": {
6+
"type": "String"
7+
},
8+
"defaultDataLakeStorageAccountName": {
9+
"type": "String",
10+
"metadata": {
11+
"description": "Data Lake Storage account that you will use for Synapse Workspace."
12+
}
13+
},
14+
"defaultDataLakeStorageFilesystemName": {
15+
"defaultValue": "workspace",
16+
"type": "String",
17+
"metadata": {
18+
"description": "Container in Data Lake Storage account that you will use for Synapse Workspace."
19+
}
20+
},
21+
"sqlAdministratorLogin": {
22+
"type": "String"
23+
},
24+
"sqlAdministratorPassword": {
25+
"type": "SecureString"
26+
},
27+
"tagValues": {
28+
"defaultValue": {"Created with":"Synapse Azure Resource Manager deploment template"},
29+
"type": "Object"
30+
},
31+
"storageSubscriptionID": {
32+
"defaultValue": "[subscription().subscriptionId]",
33+
"type": "String",
34+
"metadata": {
35+
"description": "Do not change this value if Data Lake Storage is placed in the same subscription as Synapse Workspace(recommended)."
36+
}
37+
},
38+
"storageResourceGroupName": {
39+
"defaultValue": "[resourceGroup().name]",
40+
"type": "String",
41+
"metadata": {
42+
"description": "Do not change this value if Data Lake Storage is placed in the same resource group as Synapse Workspace."
43+
}
44+
},
45+
"storageLocation": {
46+
"defaultValue": "[resourceGroup().location]",
47+
"type": "String",
48+
"metadata": {
49+
"description": "Do not change this value if Data Lake Storage is placed in the same region as Synapse Workspace(recommended)."
50+
}
51+
}
52+
},
53+
"variables": {
54+
"storageBlobDataContributorRoleID": "ba92f5b4-2d11-453d-a403-e96b0029c9fe",
55+
"defaultDataLakeStorageAccountUrl": "[concat('https://', parameters('defaultDataLakeStorageAccountName'), '.dfs.core.windows.net')]"
56+
},
57+
"resources": [
58+
{
59+
"type": "Microsoft.Synapse/workspaces",
60+
"apiVersion": "2019-06-01-preview",
61+
"name": "[parameters('name')]",
62+
"location": "[resourceGroup().location]",
63+
"tags": "[parameters('tagValues')]",
64+
"identity": {
65+
"type": "SystemAssigned"
66+
},
67+
"properties": {
68+
"defaultDataLakeStorage": {
69+
"accountUrl": "[variables('defaultDataLakeStorageAccountUrl')]",
70+
"filesystem": "[parameters('defaultDataLakeStorageFilesystemName')]"
71+
},
72+
"virtualNetworkProfile": {
73+
"computeSubnetId": ""
74+
},
75+
"sqlAdministratorLogin": "[parameters('sqlAdministratorLogin')]",
76+
"sqlAdministratorLoginPassword": "[parameters('sqlAdministratorPassword')]"
77+
},
78+
"resources": [
79+
{
80+
"type": "firewallrules",
81+
"apiVersion": "2019-06-01-preview",
82+
"name": "allowAll",
83+
"location": "[resourceGroup().location]",
84+
"dependsOn": [
85+
"[concat('Microsoft.Synapse/workspaces/', parameters('name'))]"
86+
],
87+
"properties": {
88+
"startIpAddress": "0.0.0.0",
89+
"endIpAddress": "255.255.255.255"
90+
}
91+
}
92+
]
93+
},
94+
{
95+
"type": "Microsoft.Resources/deployments",
96+
"apiVersion": "2019-05-01",
97+
"name": "storageRoleDeploymentResource",
98+
"dependsOn": [
99+
"[concat('Microsoft.Synapse/workspaces/', parameters('name'))]"
100+
],
101+
"properties": {
102+
"mode": "Incremental",
103+
"template": {
104+
"$schema": "https://schema.management.azure.com/schemas/2015-01-01/deploymentTemplate.json#",
105+
"contentVersion": "1.0.0.0",
106+
"parameters": {},
107+
"variables": {},
108+
"resources": [
109+
{
110+
"type": "Microsoft.Storage/storageAccounts/blobServices/containers/providers/roleAssignments",
111+
"apiVersion": "2018-09-01-preview",
112+
"name": "[concat(parameters('defaultDataLakeStorageAccountName'), '/default/', parameters('defaultDataLakeStorageFilesystemName'), '/Microsoft.Authorization/', guid(concat(resourceGroup().id, '/', variables('storageBlobDataContributorRoleID'), '/', parameters('name'))))]",
113+
"location": "[parameters('storageLocation')]",
114+
"properties": {
115+
"roleDefinitionId": "[resourceId('Microsoft.Authorization/roleDefinitions', variables('storageBlobDataContributorRoleID'))]",
116+
"principalId": "[reference(concat('Microsoft.Synapse/workspaces/', parameters('name')), '2019-06-01-preview', 'Full').identity.principalId]",
117+
"principalType": "ServicePrincipal"
118+
}
119+
}
120+
]
121+
}
122+
},
123+
"subscriptionId": "[parameters('storageSubscriptionID')]",
124+
"resourceGroup": "[parameters('storageResourceGroupName')]"
125+
}
126+
],
127+
"outputs": {}
128+
}
Lines changed: 42 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,42 @@
1+
{
2+
"$schema": "https://schema.management.azure.com/schemas/2015-01-01/deploymentParameters.json#",
3+
"contentVersion": "1.0.0.0",
4+
"parameters": {
5+
"name": {
6+
"value": ""
7+
},
8+
"location": {
9+
"value": ""
10+
},
11+
"defaultDataLakeStorageAccountName": {
12+
"value": ""
13+
},
14+
"defaultDataLakeStorageFilesystemName": {
15+
"value": ""
16+
},
17+
"sqlAdministratorLogin": {
18+
"value": ""
19+
},
20+
"setWorkspaceIdentityRbacOnFilesystem": {
21+
"value": true
22+
},
23+
"allowAllConnections": {
24+
"value": true
25+
},
26+
"poolSubnetId": {
27+
"value": ""
28+
},
29+
"tagValues": {
30+
"value": {}
31+
},
32+
"storageSubscriptionID": {
33+
"value": "9932f414-50cd-474d-8a1a-bf0649225d73"
34+
},
35+
"storageResourceGroupName": {
36+
"value": ""
37+
},
38+
"storageLocation": {
39+
"value": ""
40+
}
41+
}
42+
}
Lines changed: 10 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,10 @@
1+
{
2+
"$schema": "https://aka.ms/azure-quickstart-templates-metadata-schema#",
3+
"type": "QuickStart",
4+
"itemDisplayName": "Deploy Azure Synapse Workspace",
5+
"description": "This template allows you to deploy Azure Synapse Workspace.",
6+
"summary": "Deploy Azure Synapse Workspace.",
7+
"githubUsername": "jocapc",
8+
"dateUpdated": "2019-10-10"
9+
}
10+
Lines changed: 12 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,12 @@
1+
# Deploy Azure Synapse workspace
2+
3+
This template deploys Azure Synapse workspace.
4+
5+
<a href="https://portal.azure.com/#create/Microsoft.Template/uri/https%3A%2F%2Fraw.githubusercontent.com%2Fmicrosoft%2Fsql-server-samples%2Fmaster%2Fsamples%2Fmanage%2Fsynapse-analytics%2Fworkspace%2Fazuredeploy.json" target="_blank">
6+
<img src="https://raw.githubusercontent.com/Azure/azure-quickstart-templates/master/1-CONTRIBUTION-GUIDE/images/deploytoazure.png"/>
7+
</a>
8+
<a href="http://armviz.io/#/?load=https%3A%2F%2Fraw.githubusercontent.com%2Fmicrosoft%2Fsql-server-samples%2Fmaster%2Fsamples%2Fmanage%2Fsynapse-analytics%2Fworkspace%2Fazuredeploy.json" target="_blank">
9+
<img src="https://raw.githubusercontent.com/Azure/azure-quickstart-templates/master/1-CONTRIBUTION-GUIDE/images/visualizebutton.png"/>
10+
</a>
11+
12+
`Tags: Azure, Synapse, Analytics`

0 commit comments

Comments
 (0)