diff --git a/samples/manage/synapse-analytics/spark/deploy.ps1 b/samples/manage/synapse-analytics/spark/deploy.ps1 new file mode 100644 index 00000000..4425c69e --- /dev/null +++ b/samples/manage/synapse-analytics/spark/deploy.ps1 @@ -0,0 +1,88 @@ +{ + "$schema": "http://schema.management.azure.com/schemas/2015-01-01/deploymentTemplate.json#", + "contentVersion": "1.0.0.0", + "parameters": { + "sparkPoolName": { + "type": "string" + }, + "workspaceName": { + "type": "string" + }, + "location": { + "type": "string" + }, + "sparkPoolTags": { + "type": "object", + "defaultValue": {} + }, + "sparkAutoScaleEnabled": { + "type": "bool" + }, + "sparkMinNodeCount": { + "type": "int", + "defaultValue": 0 + }, + "sparkMaxNodeCount": { + "type": "int", + "defaultValue": 0 + }, + "sparkNodeCount": { + "type": "int", + "defaultValue": 0 + }, + "sparkNodeSizeFamily": { + "type": "string" + }, + "sparkNodeSize": { + "type": "string" + }, + "sparkAutoPauseEnabled": { + "type": "bool" + }, + "sparkAutoPauseDelayInMinutes": { + "type": "int", + "defaultValue": 0 + }, + "sparkVersion": { + "type": "string" + }, + "packagesRequirementsFileName": { + "type": "string", + "defaultValue": "" + }, + "packagesRequirementsContent": { + "type": "string", + "defaultValue": "" + } + }, + "variables": {}, + "resources": [ + { + "type": "Microsoft.Synapse/workspaces/bigDataPools", + "apiVersion": "2019-06-01-preview", + "name": "[concat(parameters('workspaceName'), '/', parameters('sparkPoolName'))]", + "location": "[parameters('location')]", + "tags": "[parameters('sparkPoolTags')]", + "properties": { + "nodeCount": "[parameters('sparkNodeCount')]", + "nodeSizeFamily": "[parameters('sparkNodeSizeFamily')]", + "nodeSize": "[parameters('sparkNodeSize')]", + "autoScale": { + "enabled": "[parameters('sparkAutoScaleEnabled')]", + "minNodeCount": "[parameters('sparkMinNodeCount')]", + "maxNodeCount": "[parameters('sparkMaxNodeCount')]" + }, + "autoPause": { + "enabled": "[parameters('sparkAutoPauseEnabled')]", + "delayInMinutes": "[parameters('sparkAutoPauseDelayInMinutes')]" + }, + "sparkVersion": "[parameters('sparkVersion')]", + "libraryRequirements": { + "filename": "[parameters('packagesRequirementsFileName')]", + "content": "[parameters('packagesRequirementsContent')]" + } + } + } + ], + "outputs": {} +} \ No newline at end of file diff --git a/samples/manage/synapse-analytics/spark/parameters.json b/samples/manage/synapse-analytics/spark/parameters.json new file mode 100644 index 00000000..b055e5b0 --- /dev/null +++ b/samples/manage/synapse-analytics/spark/parameters.json @@ -0,0 +1,53 @@ +{ + "$schema": "https://schema.management.azure.com/schemas/2015-01-01/deploymentParameters.json#", + "contentVersion": "1.0.0.0", + "parameters": { + "sparkPoolName": { + "value": "jovanpopspark" + }, + "workspaceName": { + "value": "jovanpopws1" + }, + "location": { + "value": "westeurope" + }, + "sparkPoolTags": { + "value": { + "Owner": "jovanpop" + } + }, + "sparkAutoScaleEnabled": { + "value": true + }, + "sparkMinNodeCount": { + "value": 3 + }, + "sparkMaxNodeCount": { + "value": 3 + }, + "sparkNodeCount": { + "value": 0 + }, + "sparkNodeSizeFamily": { + "value": "MemoryOptimized" + }, + "sparkNodeSize": { + "value": "Small" + }, + "sparkAutoPauseEnabled": { + "value": true + }, + "sparkAutoPauseDelayInMinutes": { + "value": 15 + }, + "sparkVersion": { + "value": "2.4" + }, + "packagesRequirementsFileName": { + "value": "" + }, + "packagesRequirementsContent": { + "value": "" + } + } +} \ No newline at end of file diff --git a/samples/manage/synapse-analytics/spark/template.json b/samples/manage/synapse-analytics/spark/template.json new file mode 100644 index 00000000..4425c69e --- /dev/null +++ b/samples/manage/synapse-analytics/spark/template.json @@ -0,0 +1,88 @@ +{ + "$schema": "http://schema.management.azure.com/schemas/2015-01-01/deploymentTemplate.json#", + "contentVersion": "1.0.0.0", + "parameters": { + "sparkPoolName": { + "type": "string" + }, + "workspaceName": { + "type": "string" + }, + "location": { + "type": "string" + }, + "sparkPoolTags": { + "type": "object", + "defaultValue": {} + }, + "sparkAutoScaleEnabled": { + "type": "bool" + }, + "sparkMinNodeCount": { + "type": "int", + "defaultValue": 0 + }, + "sparkMaxNodeCount": { + "type": "int", + "defaultValue": 0 + }, + "sparkNodeCount": { + "type": "int", + "defaultValue": 0 + }, + "sparkNodeSizeFamily": { + "type": "string" + }, + "sparkNodeSize": { + "type": "string" + }, + "sparkAutoPauseEnabled": { + "type": "bool" + }, + "sparkAutoPauseDelayInMinutes": { + "type": "int", + "defaultValue": 0 + }, + "sparkVersion": { + "type": "string" + }, + "packagesRequirementsFileName": { + "type": "string", + "defaultValue": "" + }, + "packagesRequirementsContent": { + "type": "string", + "defaultValue": "" + } + }, + "variables": {}, + "resources": [ + { + "type": "Microsoft.Synapse/workspaces/bigDataPools", + "apiVersion": "2019-06-01-preview", + "name": "[concat(parameters('workspaceName'), '/', parameters('sparkPoolName'))]", + "location": "[parameters('location')]", + "tags": "[parameters('sparkPoolTags')]", + "properties": { + "nodeCount": "[parameters('sparkNodeCount')]", + "nodeSizeFamily": "[parameters('sparkNodeSizeFamily')]", + "nodeSize": "[parameters('sparkNodeSize')]", + "autoScale": { + "enabled": "[parameters('sparkAutoScaleEnabled')]", + "minNodeCount": "[parameters('sparkMinNodeCount')]", + "maxNodeCount": "[parameters('sparkMaxNodeCount')]" + }, + "autoPause": { + "enabled": "[parameters('sparkAutoPauseEnabled')]", + "delayInMinutes": "[parameters('sparkAutoPauseDelayInMinutes')]" + }, + "sparkVersion": "[parameters('sparkVersion')]", + "libraryRequirements": { + "filename": "[parameters('packagesRequirementsFileName')]", + "content": "[parameters('packagesRequirementsContent')]" + } + } + } + ], + "outputs": {} +} \ No newline at end of file diff --git a/samples/manage/synapse-analytics/storage/azuredeploy.json b/samples/manage/synapse-analytics/storage/azuredeploy.json new file mode 100644 index 00000000..38ed6186 --- /dev/null +++ b/samples/manage/synapse-analytics/storage/azuredeploy.json @@ -0,0 +1,77 @@ +{ + "$schema": "https://schema.management.azure.com/schemas/2015-01-01/deploymentTemplate.json#", + "contentVersion": "1.0.0.0", + "parameters": { + "storageAccount": { + "defaultValue": "jovanpopsynapse", + "type": "String" + } + }, + "variables": {}, + "resources": [ + { + "type": "Microsoft.Storage/storageAccounts", + "apiVersion": "2019-04-01", + "name": "[parameters('storageAccount')]", + "location": "westeurope", + "tags": { + "owner": "SynapsePreview" + }, + "sku": { + "name": "Standard_RAGRS", + "tier": "Standard" + }, + "kind": "StorageV2", + "properties": { + "isHnsEnabled": true, + "networkAcls": { + "bypass": "AzureServices", + "virtualNetworkRules": [], + "ipRules": [], + "defaultAction": "Allow" + }, + "supportsHttpsTrafficOnly": true, + "encryption": { + "services": { + "file": { + "enabled": true + }, + "blob": { + "enabled": true + } + }, + "keySource": "Microsoft.Storage" + }, + "accessTier": "Hot" + } + }, + { + "type": "Microsoft.Storage/storageAccounts/blobServices", + "apiVersion": "2019-04-01", + "name": "[concat(parameters('storageAccount'), '/default')]", + "dependsOn": [ + "[resourceId('Microsoft.Storage/storageAccounts', parameters('storageAccount'))]" + ], + "properties": { + "cors": { + "corsRules": [] + }, + "deleteRetentionPolicy": { + "enabled": false + } + } + }, + { + "type": "Microsoft.Storage/storageAccounts/blobServices/containers", + "apiVersion": "2019-04-01", + "name": "[concat(parameters('storageAccount'), '/default/workspace')]", + "dependsOn": [ + "[resourceId('Microsoft.Storage/storageAccounts/blobServices', parameters('storageAccount'), 'default')]", + "[resourceId('Microsoft.Storage/storageAccounts', parameters('storageAccount'))]" + ], + "properties": { + "publicAccess": "None" + } + } + ] +} \ No newline at end of file diff --git a/samples/manage/synapse-analytics/storage/azuredeploy.parameters.json b/samples/manage/synapse-analytics/storage/azuredeploy.parameters.json new file mode 100644 index 00000000..b34f2f42 --- /dev/null +++ b/samples/manage/synapse-analytics/storage/azuredeploy.parameters.json @@ -0,0 +1,9 @@ +{ + "$schema": "https://schema.management.azure.com/schemas/2015-01-01/deploymentParameters.json#", + "contentVersion": "1.0.0.0", + "parameters": { + "clusterStorageAccountName": { + "value": "GEN-UNIQUE" + } + } +} \ No newline at end of file diff --git a/samples/manage/synapse-analytics/storage/metadata.json b/samples/manage/synapse-analytics/storage/metadata.json new file mode 100644 index 00000000..c90fdbbb --- /dev/null +++ b/samples/manage/synapse-analytics/storage/metadata.json @@ -0,0 +1,10 @@ +{ + "$schema": "https://aka.ms/azure-quickstart-templates-metadata-schema#", + "type": "QuickStart", + "itemDisplayName": "Deploy Azure Storage account for Synapse Workspace", + "description": "This template allows you to deploy Azure Storage account for Synapse Workspace.", + "summary": "Deploy Azure Storage account for Synapse Workspace.", + "githubUsername": "jocapc", + "dateUpdated": "2019-10-10" +} + diff --git a/samples/manage/synapse-analytics/storage/readme.md b/samples/manage/synapse-analytics/storage/readme.md new file mode 100644 index 00000000..ca4b9ccb --- /dev/null +++ b/samples/manage/synapse-analytics/storage/readme.md @@ -0,0 +1,12 @@ +# Deploy Azure Storage account for Synapse workspace + +This template deploys Azure Storage account for Synapse workspace + + + + + + + + +`Tags: Azure, Synapse, Storage` \ No newline at end of file