You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
description: Learn how to create and manage Azure Machine Learning workspaces by using Terraform.
4
+
description: Learn how to create Azure Machine Learning workspaces with public or private connectivity by using Terraform.
5
5
services: machine-learning
6
6
ms.service: machine-learning
7
7
ms.subservice: enterprise-readiness
8
8
ms.custom: devx-track-terraform
9
9
ms.author: deeikele
10
10
author: denniseik
11
11
ms.reviewer: larryfr
12
-
ms.date: 06/14/2024
12
+
ms.date: 06/17/2024
13
13
ms.topic: how-to
14
14
ms.tool: terraform
15
15
---
16
16
17
17
# Manage Azure Machine Learning workspaces by using Terraform
18
18
19
-
In this article, you learn how to create and manage an Azure Machine Learning workspace using Terraform configuration files. [Terraform](/azure/developer/terraform/) template-based configuration files enable you to define, create, and configure Azure resources in a repeatable and predictable manner. Terraform tracks resource state and can clean up and destroy resources.
19
+
In this article, you learn how to create an Azure Machine Learning workspace by using Terraform configuration files. [Terraform](/azure/developer/terraform/) template-based configuration files enable you to define, create, and configure Azure resources in a repeatable and predictable manner. Terraform tracks resource state and can clean up and destroy resources.
20
20
21
-
A Terraform configuration is a document that defines the resources needed for a deployment. The configuration can also specify deployment variables you can use to provide input values when you use the configuration.
21
+
A Terraform configuration file is a document that defines the resources needed for a deployment. The Terraform configuration can also specify deployment variables to use to provide input values when you apply the configuration.
22
22
23
23
## Prerequisites
24
24
25
25
- An Azure subscription with a free or paid version of Azure Machine Learning. If you don't have an Azure subscription, [create a free account before you begin](https://azure.microsoft.com/free/).
- Terraform configured according to the instructions in this article and in [Configure Terraform in Azure Cloud Shell with Bash](/azure/developer/terraform/get-started-cloud-shell).
26
+
-Terraform installed and configured according to the instructions in [Quickstart: Install and configure Terraform](/azure/developer/terraform/quickstart-configure).
To create an Azure Machine Learning workspace, use one of the following Terraform configurations. An Azure Machine Learning workspace requires various other services as dependencies. The template specifies these [associated resources](./concept-workspace.md#associated-resources). Depending on your needs, you can choose to use a template that creates resources with either public or private network connectivity.
1. Save the file by pressing Ctrl+S and exit the editor by pressing Ctrl+Q.
52
-
53
-
## Deploy a workspace
54
-
55
-
Use one of the following Terraform configurations to create an Azure Machine Learning workspace. An Azure Machine Learning workspace requires various other services as dependencies. The template also specifies these [dependent associated resources](./concept-workspace.md#associated-resources). Depending on your needs, you can choose to use a template that creates resources with either public or private network connectivity.
47
+
> [!NOTE]
48
+
> Some resources in Azure require globally unique names. Before deploying your resources, make sure to set `name` variables to unique values.
56
49
57
50
# [Public network](#tab/publicworkspace)
58
51
59
-
The following configuration crates a workspace with public network connectivity.
60
-
<!-- Some resources in Azure require globally unique names. Before deploying your resources using the following templates, set the `name` variable to a value that is unique.-->
52
+
The following configuration creates a workspace with public network connectivity.
61
53
62
54
Define the following variables in a file called *variables.tf*.
63
55
@@ -69,10 +61,9 @@ Define the following workspace configuration in a file called *workspace.tf*:
69
61
70
62
# [Private network](#tab/privateworkspace)
71
63
72
-
The following configuration creates a workspace in an isolated network environment by using Azure Private Link endpoints. The template includes [private DNS zones](../dns/private-dns-privatednszone.md) to resolve domain names within the virtual network.
73
-
<!-- Some resources in Azure require globally unique names. Before deploying your resources using the following templates, set the `resourceprefix` variable to a value that is unique.-->
64
+
The following configuration creates a workspace in an isolated network environment by using Azure Private Link endpoints. The template includes [private Domain Name System (DNS) zones](../dns/private-dns-privatednszone.md) to resolve domain names within the virtual network.
74
65
75
-
If you use private link endpoints for both Azure Container Registry and Azure Machine Learning, you can't use Container Registry tasks for building [environment](/python/api/azure-ai-ml/azure.ai.ml.entities.environment) images. Instead you can build images by using an Azure Machine Learning compute cluster.
66
+
If you use private link endpoints for both Azure Container Registry and Azure Machine Learning, you can't use Container Registry tasks for building [environment](/python/api/azure-ai-ml/azure.ai.ml.entities.environment) images. Instead you must build images by using an Azure Machine Learning compute cluster.
76
67
77
68
To configure the cluster name to use, set the [image_build_compute_name](https://registry.terraform.io/providers/hashicorp/azurerm/latest/docs/resources/machine_learning_workspace) argument. You can also [allow public access](./how-to-configure-private-link.md?tabs=python#enable-public-access) to a workspace that has a private link endpoint by using the [public_network_access_enabled](https://registry.terraform.io/providers/hashicorp/azurerm/latest/docs/resources/machine_learning_workspace) argument.
78
69
@@ -87,7 +78,7 @@ Define the following workspace configuration in a file called *workspace.tf*:
87
78
Define the following network configuration in a file called *network.tf*:
# For a full reference, see: https://github.com/Azure/terraform/blob/master/quickstart/201-machine-learning-moderately-secure/network.tf
124
112
```
125
113
126
-
To learn more about the options to connect to your private link endpoint workspace, see [Securely connect to your workspace](./how-to-secure-workspace-vnet.md#securely-connect-to-your-workspace).
114
+
- For a full reference, see [201: Machine learning workspace, compute, and a set of network components for network isolation](https://github.com/Azure/terraform/blob/master/quickstart/201-machine-learning-moderately-secure/network.tf).
115
+
- To learn more about how to connect to your private link endpoint workspace, see [Securely connect to your workspace](./how-to-secure-workspace-vnet.md#securely-connect-to-your-workspace).
127
116
128
117
---
129
118
119
+
## Create and apply the plan
120
+
121
+
To create the workspace, run the following code:
122
+
123
+
```terraform
124
+
terraform init
125
+
126
+
terraform plan \
127
+
-var name=<deployment-name> \
128
+
-var environment=<environment-name> \
129
+
# -var <any of the variables set in variables.tf> \
- To learn more about Terraform support on Azure, see [Terraform on Azure documentation](/azure/developer/terraform/).
137
-
- For details on the Terraform Azure provider and Machine Learning module, see [Terraform Registry Azure Resource Manager Provider](https://registry.terraform.io/providers/hashicorp/azurerm/latest/docs/resources/machine_learning_workspace).
138
-
- To find quickstart template examples for Terraform, see [Azure Terraform QuickStart Templates](https://github.com/Azure/terraform/tree/master/quickstart).
142
+
- For details on the Terraform Azure provider and Machine Learning module, see [Terraform Registry Azure Resource Manager provider](https://registry.terraform.io/providers/hashicorp/azurerm/latest/docs/resources/machine_learning_workspace).
143
+
- To find quickstart template examples for Terraform, see the following [Azure Terraform quickstart templates](https://github.com/Azure/terraform/tree/master/quickstart).
139
144
140
-
-[101: Machine learning workspace and compute](https://github.com/Azure/terraform/tree/master/quickstart/101-machine-learning)– the minimal set of resources needed to get started with Azure Machine Learning.
141
-
-[201: Machine learning workspace, compute, and a set of network components for network isolation](https://github.com/Azure/terraform/tree/master/quickstart/201-machine-learning-moderately-secure)– all resources that are needed to create a production-pilot environment for use with HBI data.
142
-
-[202: Similar to 201, but with the option to bring existing network components.](https://github.com/Azure/terraform/tree/master/quickstart/202-machine-learning-moderately-secure-existing-VNet).
143
-
-[301: Machine Learning workspace (Secure Hub and Spoke with Firewall)](https://github.com/azure/terraform/tree/master/quickstart/301-machine-learning-hub-spoke-secure).
145
+
-[101: Machine learning workspace and compute](https://github.com/Azure/terraform/tree/master/quickstart/101-machine-learning)provides the minimal set of resources needed to get started with Azure Machine Learning.
146
+
-[201: Machine learning workspace, compute, and a set of network components for network isolation](https://github.com/Azure/terraform/tree/master/quickstart/201-machine-learning-moderately-secure)provides all resources needed to create a production-pilot environment for use with high business impact (HBI) data.
147
+
-[202: Similar to 201, but with the option to bring existing network components](https://github.com/Azure/terraform/tree/master/quickstart/202-machine-learning-moderately-secure-existing-VNet).
148
+
-[301: Machine Learning workspace (secure hub and spoke with firewall)](https://github.com/azure/terraform/tree/master/quickstart/301-machine-learning-hub-spoke-secure).
144
149
145
150
- To learn more about network configuration options, see [Secure Azure Machine Learning workspace resources using virtual networks](./how-to-network-security-overview.md).
146
151
- For alternative Azure Resource Manager template-based deployments, see [Deploy resources with Resource Manager templates and Resource Manager REST API](/azure/azure-resource-manager/templates/deploy-rest).
147
-
- For information on how to keep your Azure Machine Learning up to date with the latest security updates, see [Vulnerability management](concept-vulnerability-management.md).
152
+
- For information on how to keep your Azure Machine Learning workspace up to date with the latest security updates, see [Vulnerability management](concept-vulnerability-management.md).
0 commit comments