Microsoft.MachineLearningServices workspaces/computes 2020-08-01
- Latest
- 2024-07-01-preview
- 2024-04-01
- 2024-04-01-preview
- 2024-01-01-preview
- 2023-10-01
- 2023-08-01-preview
- 2023-06-01-preview
- 2023-04-01
- 2023-04-01-preview
- 2023-02-01-preview
- 2022-12-01-preview
- 2022-10-01
- 2022-10-01-preview
- 2022-06-01-preview
- 2022-05-01
- 2022-02-01-preview
- 2022-01-01-preview
- 2021-07-01
- 2021-04-01
- 2021-03-01-preview
- 2021-01-01
- 2020-09-01-preview
- 2020-08-01
- 2020-06-01
- 2020-05-15-preview
- 2020-05-01-preview
- 2020-04-01
- 2020-03-01
- 2020-02-18-preview
- 2020-01-01
- 2019-11-01
- 2019-06-01
- 2019-05-01
- 2018-11-19
- 2018-03-01-preview
Bicep resource definition
The workspaces/computes resource type can be deployed with operations that target:
- Resource groups - See resource group deployment commands
For a list of changed properties in each API version, see change log.
Resource format
To create a Microsoft.MachineLearningServices/workspaces/computes resource, add the following Bicep to your template.
resource symbolicname 'Microsoft.MachineLearningServices/workspaces/computes@2020-08-01' = {
name: 'string'
location: 'string'
tags: {
tagName1: 'tagValue1'
tagName2: 'tagValue2'
}
sku: {
name: 'string'
tier: 'string'
}
parent: resourceSymbolicName
identity: {
type: 'string'
userAssignedIdentities: {
{customized property}: {}
}
}
properties: {
computeLocation: 'string'
description: 'string'
resourceId: 'string'
computeType: 'string'
// For remaining properties, see Compute objects
}
}
Compute objects
Set the computeType property to specify the type of object.
For AKS, use:
computeType: 'AKS'
properties: {
agentCount: int
agentVmSize: 'string'
aksNetworkingConfiguration: {
dnsServiceIP: 'string'
dockerBridgeCidr: 'string'
serviceCidr: 'string'
subnetId: 'string'
}
clusterFqdn: 'string'
sslConfiguration: {
cert: 'string'
cname: 'string'
key: 'string'
status: 'string'
}
}
For AmlCompute, use:
computeType: 'AmlCompute'
properties: {
osType: 'string'
remoteLoginPortPublicAccess: 'string'
scaleSettings: {
maxNodeCount: int
minNodeCount: int
nodeIdleTimeBeforeScaleDown: 'string'
}
subnet: {
id: 'string'
}
userAccountCredentials: {
adminUserName: 'string'
adminUserPassword: 'string'
adminUserSshPublicKey: 'string'
}
vmPriority: 'string'
vmSize: 'string'
}
For ComputeInstance, use:
computeType: 'ComputeInstance'
properties: {
applicationSharingPolicy: 'string'
computeInstanceAuthorizationType: 'personal'
personalComputeInstanceSettings: {
assignedUser: {
objectId: 'string'
tenantId: 'string'
}
}
sshSettings: {
adminPublicKey: 'string'
sshPublicAccess: 'string'
}
subnet: {
id: 'string'
}
vmSize: 'string'
}
For Databricks, use:
computeType: 'Databricks'
properties: {
databricksAccessToken: 'string'
}
For DataFactory, use:
computeType: 'DataFactory'
For DataLakeAnalytics, use:
computeType: 'DataLakeAnalytics'
properties: {
dataLakeStoreAccountName: 'string'
}
For HDInsight, use:
computeType: 'HDInsight'
properties: {
address: 'string'
administratorAccount: {
password: 'string'
privateKeyData: 'string'
publicKeyData: 'string'
username: 'string'
}
sshPort: int
}
For VirtualMachine, use:
computeType: 'VirtualMachine'
properties: {
address: 'string'
administratorAccount: {
password: 'string'
privateKeyData: 'string'
publicKeyData: 'string'
username: 'string'
}
sshPort: int
virtualMachineSize: 'string'
}
Property values
workspaces/computes
Name | Description | Value |
---|---|---|
name | The resource name See how to set names and types for child resources in Bicep. |
string (required) Character limit: 3-24 for compute instance 3-32 for AML compute 2-16 for other compute types Valid characters: Alphanumerics and hyphens. |
location | Specifies the location of the resource. | string |
tags | Contains resource tags defined as key/value pairs. | Dictionary of tag names and values. See Tags in templates |
sku | The sku of the workspace. | Sku |
parent | In Bicep, you can specify the parent resource for a child resource. You only need to add this property when the child resource is declared outside of the parent resource. For more information, see Child resource outside parent resource. |
Symbolic name for resource of type: workspaces |
identity | The identity of the resource. | Identity |
properties | Compute properties | Compute |
Identity
Name | Description | Value |
---|---|---|
type | The identity type. | 'None' 'SystemAssigned' 'SystemAssigned,UserAssigned' 'UserAssigned' (required) |
userAssignedIdentities | The list of user identities associated with resource. The user identity dictionary key references will be ARM resource ids in the form: '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ManagedIdentity/userAssignedIdentities/{identityName}'. | IdentityUserAssignedIdentities |
IdentityUserAssignedIdentities
Name | Description | Value |
---|---|---|
{customized property} | ComponentsSgqdofSchemasIdentityPropertiesUserassigne... |
ComponentsSgqdofSchemasIdentityPropertiesUserassigne...
This object doesn't contain any properties to set during deployment. All properties are ReadOnly.
Compute
Name | Description | Value |
---|---|---|
computeLocation | Location for the underlying compute | string |
description | The description of the Machine Learning compute. | string |
resourceId | ARM resource id of the underlying compute | string |
computeType | Set the object type | AKS AmlCompute ComputeInstance Databricks DataFactory DataLakeAnalytics HDInsight VirtualMachine (required) |
AKS
Name | Description | Value |
---|---|---|
computeType | The type of compute | 'AKS' (required) |
properties | AKS properties | AKSProperties |
AKSProperties
Name | Description | Value |
---|---|---|
agentCount | Number of agents | int Constraints: Min value = 1 |
agentVmSize | Agent virtual machine size | string |
aksNetworkingConfiguration | AKS networking configuration for vnet | AksNetworkingConfiguration |
clusterFqdn | Cluster full qualified domain name | string |
sslConfiguration | SSL configuration | SslConfiguration |
AksNetworkingConfiguration
Name | Description | Value |
---|---|---|
dnsServiceIP | An IP address assigned to the Kubernetes DNS service. It must be within the Kubernetes service address range specified in serviceCidr. | string Constraints: Pattern = ^(?:(?:25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\.){3}(?:25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)$ |
dockerBridgeCidr | A CIDR notation IP range assigned to the Docker bridge network. It must not overlap with any Subnet IP ranges or the Kubernetes service address range. | string Constraints: Pattern = ^([0-9]{1,3}\.){3}[0-9]{1,3}(\/([0-9]|[1-2][0-9]|3[0-2]))?$ |
serviceCidr | A CIDR notation IP range from which to assign service cluster IPs. It must not overlap with any Subnet IP ranges. | string Constraints: Pattern = ^([0-9]{1,3}\.){3}[0-9]{1,3}(\/([0-9]|[1-2][0-9]|3[0-2]))?$ |
subnetId | Virtual network subnet resource ID the compute nodes belong to | string |
SslConfiguration
Name | Description | Value |
---|---|---|
cert | Cert data | string |
cname | CNAME of the cert | string |
key | Key data | string |
status | Enable or disable ssl for scoring | 'Auto' 'Disabled' 'Enabled' |
AmlCompute
Name | Description | Value |
---|---|---|
computeType | The type of compute | 'AmlCompute' (required) |
properties | AML Compute properties | AmlComputeProperties |
AmlComputeProperties
Name | Description | Value |
---|---|---|
osType | Compute OS Type | 'Linux' 'Windows' |
remoteLoginPortPublicAccess | State of the public SSH port. Possible values are: Disabled - Indicates that the public ssh port is closed on all nodes of the cluster. Enabled - Indicates that the public ssh port is open on all nodes of the cluster. NotSpecified - Indicates that the public ssh port is closed on all nodes of the cluster if VNet is defined, else is open all public nodes. It can be default only during cluster creation time, after creation it will be either enabled or disabled. | 'Disabled' 'Enabled' 'NotSpecified' |
scaleSettings | Scale settings for AML Compute | ScaleSettings |
subnet | Virtual network subnet resource ID the compute nodes belong to. | ResourceId |
userAccountCredentials | Credentials for an administrator user account that will be created on each compute node. | UserAccountCredentials |
vmPriority | Virtual Machine priority | 'Dedicated' 'LowPriority' |
vmSize | Virtual Machine Size | string |
ScaleSettings
Name | Description | Value |
---|---|---|
maxNodeCount | Max number of nodes to use | int (required) |
minNodeCount | Min number of nodes to use | int |
nodeIdleTimeBeforeScaleDown | Node Idle Time before scaling down amlCompute. This string needs to be in the RFC Format. | string |
ResourceId
Name | Description | Value |
---|---|---|
id | The ID of the resource | string (required) |
UserAccountCredentials
Name | Description | Value |
---|---|---|
adminUserName | Name of the administrator user account which can be used to SSH to nodes. | string (required) |
adminUserPassword | Password of the administrator user account. | string |
adminUserSshPublicKey | SSH public key of the administrator user account. | string |
ComputeInstance
Name | Description | Value |
---|---|---|
computeType | The type of compute | 'ComputeInstance' (required) |
properties | Compute Instance properties | ComputeInstanceProperties |
ComputeInstanceProperties
Name | Description | Value |
---|---|---|
applicationSharingPolicy | Policy for sharing applications on this compute instance among users of parent workspace. If Personal, only the creator can access applications on this compute instance. When Shared, any workspace user can access applications on this instance depending on his/her assigned role. | 'Personal' 'Shared' |
computeInstanceAuthorizationType | The Compute Instance Authorization type. Available values are personal (default). | 'personal' |
personalComputeInstanceSettings | Settings for a personal compute instance. | PersonalComputeInstanceSettings |
sshSettings | Specifies policy and settings for SSH access. | ComputeInstanceSshSettings |
subnet | Virtual network subnet resource ID the compute nodes belong to. | ResourceId |
vmSize | Virtual Machine Size | string |
PersonalComputeInstanceSettings
Name | Description | Value |
---|---|---|
assignedUser | A user explicitly assigned to a personal compute instance. | AssignedUser |
AssignedUser
Name | Description | Value |
---|---|---|
objectId | User’s AAD Object Id. | string (required) |
tenantId | User’s AAD Tenant Id. | string (required) |
ComputeInstanceSshSettings
Name | Description | Value |
---|---|---|
adminPublicKey | Specifies the SSH rsa public key file as a string. Use "ssh-keygen -t rsa -b 2048" to generate your SSH key pairs. | string |
sshPublicAccess | State of the public SSH port. Possible values are: Disabled - Indicates that the public ssh port is closed on this instance. Enabled - Indicates that the public ssh port is open and accessible according to the VNet/subnet policy if applicable. | 'Disabled' 'Enabled' |
Databricks
Name | Description | Value |
---|---|---|
computeType | The type of compute | 'Databricks' (required) |
properties | DatabricksProperties |
DatabricksProperties
Name | Description | Value |
---|---|---|
databricksAccessToken | Databricks access token | string |
DataFactory
Name | Description | Value |
---|---|---|
computeType | The type of compute | 'DataFactory' (required) |
DataLakeAnalytics
Name | Description | Value |
---|---|---|
computeType | The type of compute | 'DataLakeAnalytics' (required) |
properties | DataLakeAnalyticsProperties |
DataLakeAnalyticsProperties
Name | Description | Value |
---|---|---|
dataLakeStoreAccountName | DataLake Store Account Name | string |
HDInsight
Name | Description | Value |
---|---|---|
computeType | The type of compute | 'HDInsight' (required) |
properties | HDInsightProperties |
HDInsightProperties
Name | Description | Value |
---|---|---|
address | Public IP address of the master node of the cluster. | string |
administratorAccount | Admin credentials for master node of the cluster | VirtualMachineSshCredentials |
sshPort | Port open for ssh connections on the master node of the cluster. | int |
VirtualMachineSshCredentials
Name | Description | Value |
---|---|---|
password | Password of admin account | string |
privateKeyData | Private key data | string |
publicKeyData | Public key data | string |
username | Username of admin account | string |
VirtualMachine
Name | Description | Value |
---|---|---|
computeType | The type of compute | 'VirtualMachine' (required) |
properties | VirtualMachineProperties |
VirtualMachineProperties
Name | Description | Value |
---|---|---|
address | Public IP address of the virtual machine. | string |
administratorAccount | Admin credentials for virtual machine | VirtualMachineSshCredentials |
sshPort | Port open for ssh connections. | int |
virtualMachineSize | Virtual Machine size | string |
Sku
Name | Description | Value |
---|---|---|
name | Name of the sku | string |
tier | Tier of the sku like Basic or Enterprise | string |
Quickstart templates
The following quickstart templates deploy this resource type.
Template | Description |
---|---|
Create a Machine Learning Service ADLA Compute |
This template creates a Machine Learning Service ADLA Compute. |
Create a Machine Learning Service Aks Compute |
This template creates a Machine Learning Service Aks Compute. |
Create a Machine Learning Service DSVM Compute |
This template creates a Machine Learning Service DSVM Compute. |
Create a Machine Learning Service HDInsight cluster |
This template creates a Machine Learning Service HDInsight cluster |
Create an Azure Machine Learning aks compute |
This template creates an Azure Machine Learning aks compute. |
Create an Azure Machine Learning compute cluster |
This template creates an Azure Machine Learning compute cluster. |
Create an Azure Machine Learning compute instance |
This template creates an Azure Machine Learning compute instance on behalf of another user with a sample inline setup script |
Create a LinkedService in Azure Machine Learning workspace |
This template creates a LinkedService in an existing Azure Machine Learning workspace. |
Create an AKS compute target with a Private IP address |
This template creates an AKS compute target in given Azure Machine Learning service workspace with a private IP address. |
ARM template resource definition
The workspaces/computes resource type can be deployed with operations that target:
- Resource groups - See resource group deployment commands
For a list of changed properties in each API version, see change log.
Resource format
To create a Microsoft.MachineLearningServices/workspaces/computes resource, add the following JSON to your template.
{
"type": "Microsoft.MachineLearningServices/workspaces/computes",
"apiVersion": "2020-08-01",
"name": "string",
"location": "string",
"tags": {
"tagName1": "tagValue1",
"tagName2": "tagValue2"
},
"sku": {
"name": "string",
"tier": "string"
},
"identity": {
"type": "string",
"userAssignedIdentities": {
"{customized property}": {}
}
},
"properties": {
"computeLocation": "string",
"description": "string",
"resourceId": "string",
"computeType": "string"
// For remaining properties, see Compute objects
}
}
Compute objects
Set the computeType property to specify the type of object.
For AKS, use:
"computeType": "AKS",
"properties": {
"agentCount": "int",
"agentVmSize": "string",
"aksNetworkingConfiguration": {
"dnsServiceIP": "string",
"dockerBridgeCidr": "string",
"serviceCidr": "string",
"subnetId": "string"
},
"clusterFqdn": "string",
"sslConfiguration": {
"cert": "string",
"cname": "string",
"key": "string",
"status": "string"
}
}
For AmlCompute, use:
"computeType": "AmlCompute",
"properties": {
"osType": "string",
"remoteLoginPortPublicAccess": "string",
"scaleSettings": {
"maxNodeCount": "int",
"minNodeCount": "int",
"nodeIdleTimeBeforeScaleDown": "string"
},
"subnet": {
"id": "string"
},
"userAccountCredentials": {
"adminUserName": "string",
"adminUserPassword": "string",
"adminUserSshPublicKey": "string"
},
"vmPriority": "string",
"vmSize": "string"
}
For ComputeInstance, use:
"computeType": "ComputeInstance",
"properties": {
"applicationSharingPolicy": "string",
"computeInstanceAuthorizationType": "personal",
"personalComputeInstanceSettings": {
"assignedUser": {
"objectId": "string",
"tenantId": "string"
}
},
"sshSettings": {
"adminPublicKey": "string",
"sshPublicAccess": "string"
},
"subnet": {
"id": "string"
},
"vmSize": "string"
}
For Databricks, use:
"computeType": "Databricks",
"properties": {
"databricksAccessToken": "string"
}
For DataFactory, use:
"computeType": "DataFactory"
For DataLakeAnalytics, use:
"computeType": "DataLakeAnalytics",
"properties": {
"dataLakeStoreAccountName": "string"
}
For HDInsight, use:
"computeType": "HDInsight",
"properties": {
"address": "string",
"administratorAccount": {
"password": "string",
"privateKeyData": "string",
"publicKeyData": "string",
"username": "string"
},
"sshPort": "int"
}
For VirtualMachine, use:
"computeType": "VirtualMachine",
"properties": {
"address": "string",
"administratorAccount": {
"password": "string",
"privateKeyData": "string",
"publicKeyData": "string",
"username": "string"
},
"sshPort": "int",
"virtualMachineSize": "string"
}
Property values
workspaces/computes
Name | Description | Value |
---|---|---|
type | The resource type | 'Microsoft.MachineLearningServices/workspaces/computes' |
apiVersion | The resource api version | '2020-08-01' |
name | The resource name See how to set names and types for child resources in JSON ARM templates. |
string (required) Character limit: 3-24 for compute instance 3-32 for AML compute 2-16 for other compute types Valid characters: Alphanumerics and hyphens. |
location | Specifies the location of the resource. | string |
tags | Contains resource tags defined as key/value pairs. | Dictionary of tag names and values. See Tags in templates |
sku | The sku of the workspace. | Sku |
identity | The identity of the resource. | Identity |
properties | Compute properties | Compute |
Identity
Name | Description | Value |
---|---|---|
type | The identity type. | 'None' 'SystemAssigned' 'SystemAssigned,UserAssigned' 'UserAssigned' (required) |
userAssignedIdentities | The list of user identities associated with resource. The user identity dictionary key references will be ARM resource ids in the form: '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ManagedIdentity/userAssignedIdentities/{identityName}'. | IdentityUserAssignedIdentities |
IdentityUserAssignedIdentities
Name | Description | Value |
---|---|---|
{customized property} | ComponentsSgqdofSchemasIdentityPropertiesUserassigne... |
ComponentsSgqdofSchemasIdentityPropertiesUserassigne...
This object doesn't contain any properties to set during deployment. All properties are ReadOnly.
Compute
Name | Description | Value |
---|---|---|
computeLocation | Location for the underlying compute | string |
description | The description of the Machine Learning compute. | string |
resourceId | ARM resource id of the underlying compute | string |
computeType | Set the object type | AKS AmlCompute ComputeInstance Databricks DataFactory DataLakeAnalytics HDInsight VirtualMachine (required) |
AKS
Name | Description | Value |
---|---|---|
computeType | The type of compute | 'AKS' (required) |
properties | AKS properties | AKSProperties |
AKSProperties
Name | Description | Value |
---|---|---|
agentCount | Number of agents | int Constraints: Min value = 1 |
agentVmSize | Agent virtual machine size | string |
aksNetworkingConfiguration | AKS networking configuration for vnet | AksNetworkingConfiguration |
clusterFqdn | Cluster full qualified domain name | string |
sslConfiguration | SSL configuration | SslConfiguration |
AksNetworkingConfiguration
Name | Description | Value |
---|---|---|
dnsServiceIP | An IP address assigned to the Kubernetes DNS service. It must be within the Kubernetes service address range specified in serviceCidr. | string Constraints: Pattern = ^(?:(?:25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\.){3}(?:25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)$ |
dockerBridgeCidr | A CIDR notation IP range assigned to the Docker bridge network. It must not overlap with any Subnet IP ranges or the Kubernetes service address range. | string Constraints: Pattern = ^([0-9]{1,3}\.){3}[0-9]{1,3}(\/([0-9]|[1-2][0-9]|3[0-2]))?$ |
serviceCidr | A CIDR notation IP range from which to assign service cluster IPs. It must not overlap with any Subnet IP ranges. | string Constraints: Pattern = ^([0-9]{1,3}\.){3}[0-9]{1,3}(\/([0-9]|[1-2][0-9]|3[0-2]))?$ |
subnetId | Virtual network subnet resource ID the compute nodes belong to | string |
SslConfiguration
Name | Description | Value |
---|---|---|
cert | Cert data | string |
cname | CNAME of the cert | string |
key | Key data | string |
status | Enable or disable ssl for scoring | 'Auto' 'Disabled' 'Enabled' |
AmlCompute
Name | Description | Value |
---|---|---|
computeType | The type of compute | 'AmlCompute' (required) |
properties | AML Compute properties | AmlComputeProperties |
AmlComputeProperties
Name | Description | Value |
---|---|---|
osType | Compute OS Type | 'Linux' 'Windows' |
remoteLoginPortPublicAccess | State of the public SSH port. Possible values are: Disabled - Indicates that the public ssh port is closed on all nodes of the cluster. Enabled - Indicates that the public ssh port is open on all nodes of the cluster. NotSpecified - Indicates that the public ssh port is closed on all nodes of the cluster if VNet is defined, else is open all public nodes. It can be default only during cluster creation time, after creation it will be either enabled or disabled. | 'Disabled' 'Enabled' 'NotSpecified' |
scaleSettings | Scale settings for AML Compute | ScaleSettings |
subnet | Virtual network subnet resource ID the compute nodes belong to. | ResourceId |
userAccountCredentials | Credentials for an administrator user account that will be created on each compute node. | UserAccountCredentials |
vmPriority | Virtual Machine priority | 'Dedicated' 'LowPriority' |
vmSize | Virtual Machine Size | string |
ScaleSettings
Name | Description | Value |
---|---|---|
maxNodeCount | Max number of nodes to use | int (required) |
minNodeCount | Min number of nodes to use | int |
nodeIdleTimeBeforeScaleDown | Node Idle Time before scaling down amlCompute. This string needs to be in the RFC Format. | string |
ResourceId
Name | Description | Value |
---|---|---|
id | The ID of the resource | string (required) |
UserAccountCredentials
Name | Description | Value |
---|---|---|
adminUserName | Name of the administrator user account which can be used to SSH to nodes. | string (required) |
adminUserPassword | Password of the administrator user account. | string |
adminUserSshPublicKey | SSH public key of the administrator user account. | string |
ComputeInstance
Name | Description | Value |
---|---|---|
computeType | The type of compute | 'ComputeInstance' (required) |
properties | Compute Instance properties | ComputeInstanceProperties |
ComputeInstanceProperties
Name | Description | Value |
---|---|---|
applicationSharingPolicy | Policy for sharing applications on this compute instance among users of parent workspace. If Personal, only the creator can access applications on this compute instance. When Shared, any workspace user can access applications on this instance depending on his/her assigned role. | 'Personal' 'Shared' |
computeInstanceAuthorizationType | The Compute Instance Authorization type. Available values are personal (default). | 'personal' |
personalComputeInstanceSettings | Settings for a personal compute instance. | PersonalComputeInstanceSettings |
sshSettings | Specifies policy and settings for SSH access. | ComputeInstanceSshSettings |
subnet | Virtual network subnet resource ID the compute nodes belong to. | ResourceId |
vmSize | Virtual Machine Size | string |
PersonalComputeInstanceSettings
Name | Description | Value |
---|---|---|
assignedUser | A user explicitly assigned to a personal compute instance. | AssignedUser |
AssignedUser
Name | Description | Value |
---|---|---|
objectId | User’s AAD Object Id. | string (required) |
tenantId | User’s AAD Tenant Id. | string (required) |
ComputeInstanceSshSettings
Name | Description | Value |
---|---|---|
adminPublicKey | Specifies the SSH rsa public key file as a string. Use "ssh-keygen -t rsa -b 2048" to generate your SSH key pairs. | string |
sshPublicAccess | State of the public SSH port. Possible values are: Disabled - Indicates that the public ssh port is closed on this instance. Enabled - Indicates that the public ssh port is open and accessible according to the VNet/subnet policy if applicable. | 'Disabled' 'Enabled' |
Databricks
Name | Description | Value |
---|---|---|
computeType | The type of compute | 'Databricks' (required) |
properties | DatabricksProperties |
DatabricksProperties
Name | Description | Value |
---|---|---|
databricksAccessToken | Databricks access token | string |
DataFactory
Name | Description | Value |
---|---|---|
computeType | The type of compute | 'DataFactory' (required) |
DataLakeAnalytics
Name | Description | Value |
---|---|---|
computeType | The type of compute | 'DataLakeAnalytics' (required) |
properties | DataLakeAnalyticsProperties |
DataLakeAnalyticsProperties
Name | Description | Value |
---|---|---|
dataLakeStoreAccountName | DataLake Store Account Name | string |
HDInsight
Name | Description | Value |
---|---|---|
computeType | The type of compute | 'HDInsight' (required) |
properties | HDInsightProperties |
HDInsightProperties
Name | Description | Value |
---|---|---|
address | Public IP address of the master node of the cluster. | string |
administratorAccount | Admin credentials for master node of the cluster | VirtualMachineSshCredentials |
sshPort | Port open for ssh connections on the master node of the cluster. | int |
VirtualMachineSshCredentials
Name | Description | Value |
---|---|---|
password | Password of admin account | string |
privateKeyData | Private key data | string |
publicKeyData | Public key data | string |
username | Username of admin account | string |
VirtualMachine
Name | Description | Value |
---|---|---|
computeType | The type of compute | 'VirtualMachine' (required) |
properties | VirtualMachineProperties |
VirtualMachineProperties
Name | Description | Value |
---|---|---|
address | Public IP address of the virtual machine. | string |
administratorAccount | Admin credentials for virtual machine | VirtualMachineSshCredentials |
sshPort | Port open for ssh connections. | int |
virtualMachineSize | Virtual Machine size | string |
Sku
Name | Description | Value |
---|---|---|
name | Name of the sku | string |
tier | Tier of the sku like Basic or Enterprise | string |
Quickstart templates
The following quickstart templates deploy this resource type.
Template | Description |
---|---|
Create a Machine Learning Service ADLA Compute |
This template creates a Machine Learning Service ADLA Compute. |
Create a Machine Learning Service Aks Compute |
This template creates a Machine Learning Service Aks Compute. |
Create a Machine Learning Service DSVM Compute |
This template creates a Machine Learning Service DSVM Compute. |
Create a Machine Learning Service HDInsight cluster |
This template creates a Machine Learning Service HDInsight cluster |
Create an Azure Machine Learning aks compute |
This template creates an Azure Machine Learning aks compute. |
Create an Azure Machine Learning compute cluster |
This template creates an Azure Machine Learning compute cluster. |
Create an Azure Machine Learning compute instance |
This template creates an Azure Machine Learning compute instance on behalf of another user with a sample inline setup script |
Create a LinkedService in Azure Machine Learning workspace |
This template creates a LinkedService in an existing Azure Machine Learning workspace. |
Create an AKS compute target with a Private IP address |
This template creates an AKS compute target in given Azure Machine Learning service workspace with a private IP address. |
Terraform (AzAPI provider) resource definition
The workspaces/computes resource type can be deployed with operations that target:
- Resource groups
For a list of changed properties in each API version, see change log.
Resource format
To create a Microsoft.MachineLearningServices/workspaces/computes resource, add the following Terraform to your template.
resource "azapi_resource" "symbolicname" {
type = "Microsoft.MachineLearningServices/workspaces/computes@2020-08-01"
name = "string"
location = "string"
parent_id = "string"
tags = {
tagName1 = "tagValue1"
tagName2 = "tagValue2"
}
identity {
type = "string"
identity_ids = []
}
body = jsonencode({
properties = {
computeLocation = "string"
description = "string"
resourceId = "string"
computeType = "string"
// For remaining properties, see Compute objects
}
sku = {
name = "string"
tier = "string"
}
})
}
Compute objects
Set the computeType property to specify the type of object.
For AKS, use:
computeType = "AKS"
properties = {
agentCount = int
agentVmSize = "string"
aksNetworkingConfiguration = {
dnsServiceIP = "string"
dockerBridgeCidr = "string"
serviceCidr = "string"
subnetId = "string"
}
clusterFqdn = "string"
sslConfiguration = {
cert = "string"
cname = "string"
key = "string"
status = "string"
}
}
For AmlCompute, use:
computeType = "AmlCompute"
properties = {
osType = "string"
remoteLoginPortPublicAccess = "string"
scaleSettings = {
maxNodeCount = int
minNodeCount = int
nodeIdleTimeBeforeScaleDown = "string"
}
subnet = {
id = "string"
}
userAccountCredentials = {
adminUserName = "string"
adminUserPassword = "string"
adminUserSshPublicKey = "string"
}
vmPriority = "string"
vmSize = "string"
}
For ComputeInstance, use:
computeType = "ComputeInstance"
properties = {
applicationSharingPolicy = "string"
computeInstanceAuthorizationType = "personal"
personalComputeInstanceSettings = {
assignedUser = {
objectId = "string"
tenantId = "string"
}
}
sshSettings = {
adminPublicKey = "string"
sshPublicAccess = "string"
}
subnet = {
id = "string"
}
vmSize = "string"
}
For Databricks, use:
computeType = "Databricks"
properties = {
databricksAccessToken = "string"
}
For DataFactory, use:
computeType = "DataFactory"
For DataLakeAnalytics, use:
computeType = "DataLakeAnalytics"
properties = {
dataLakeStoreAccountName = "string"
}
For HDInsight, use:
computeType = "HDInsight"
properties = {
address = "string"
administratorAccount = {
password = "string"
privateKeyData = "string"
publicKeyData = "string"
username = "string"
}
sshPort = int
}
For VirtualMachine, use:
computeType = "VirtualMachine"
properties = {
address = "string"
administratorAccount = {
password = "string"
privateKeyData = "string"
publicKeyData = "string"
username = "string"
}
sshPort = int
virtualMachineSize = "string"
}
Property values
workspaces/computes
Name | Description | Value |
---|---|---|
type | The resource type | "Microsoft.MachineLearningServices/workspaces/computes@2020-08-01" |
name | The resource name | string (required) Character limit: 3-24 for compute instance 3-32 for AML compute 2-16 for other compute types Valid characters: Alphanumerics and hyphens. |
location | Specifies the location of the resource. | string |
parent_id | The ID of the resource that is the parent for this resource. | ID for resource of type: workspaces |
tags | Contains resource tags defined as key/value pairs. | Dictionary of tag names and values. |
sku | The sku of the workspace. | Sku |
identity | The identity of the resource. | Identity |
properties | Compute properties | Compute |
Identity
Name | Description | Value |
---|---|---|
type | The identity type. | "SystemAssigned" "SystemAssigned,UserAssigned" "UserAssigned" (required) |
identity_ids | The list of user identities associated with resource. The user identity dictionary key references will be ARM resource ids in the form: '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ManagedIdentity/userAssignedIdentities/{identityName}'. | Array of user identity IDs. |
IdentityUserAssignedIdentities
Name | Description | Value |
---|---|---|
{customized property} | ComponentsSgqdofSchemasIdentityPropertiesUserassigne... |
ComponentsSgqdofSchemasIdentityPropertiesUserassigne...
This object doesn't contain any properties to set during deployment. All properties are ReadOnly.
Compute
Name | Description | Value |
---|---|---|
computeLocation | Location for the underlying compute | string |
description | The description of the Machine Learning compute. | string |
resourceId | ARM resource id of the underlying compute | string |
computeType | Set the object type | AKS AmlCompute ComputeInstance Databricks DataFactory DataLakeAnalytics HDInsight VirtualMachine (required) |
AKS
Name | Description | Value |
---|---|---|
computeType | The type of compute | "AKS" (required) |
properties | AKS properties | AKSProperties |
AKSProperties
Name | Description | Value |
---|---|---|
agentCount | Number of agents | int Constraints: Min value = 1 |
agentVmSize | Agent virtual machine size | string |
aksNetworkingConfiguration | AKS networking configuration for vnet | AksNetworkingConfiguration |
clusterFqdn | Cluster full qualified domain name | string |
sslConfiguration | SSL configuration | SslConfiguration |
AksNetworkingConfiguration
Name | Description | Value |
---|---|---|
dnsServiceIP | An IP address assigned to the Kubernetes DNS service. It must be within the Kubernetes service address range specified in serviceCidr. | string Constraints: Pattern = ^(?:(?:25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\.){3}(?:25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)$ |
dockerBridgeCidr | A CIDR notation IP range assigned to the Docker bridge network. It must not overlap with any Subnet IP ranges or the Kubernetes service address range. | string Constraints: Pattern = ^([0-9]{1,3}\.){3}[0-9]{1,3}(\/([0-9]|[1-2][0-9]|3[0-2]))?$ |
serviceCidr | A CIDR notation IP range from which to assign service cluster IPs. It must not overlap with any Subnet IP ranges. | string Constraints: Pattern = ^([0-9]{1,3}\.){3}[0-9]{1,3}(\/([0-9]|[1-2][0-9]|3[0-2]))?$ |
subnetId | Virtual network subnet resource ID the compute nodes belong to | string |
SslConfiguration
Name | Description | Value |
---|---|---|
cert | Cert data | string |
cname | CNAME of the cert | string |
key | Key data | string |
status | Enable or disable ssl for scoring | "Auto" "Disabled" "Enabled" |
AmlCompute
Name | Description | Value |
---|---|---|
computeType | The type of compute | "AmlCompute" (required) |
properties | AML Compute properties | AmlComputeProperties |
AmlComputeProperties
Name | Description | Value |
---|---|---|
osType | Compute OS Type | "Linux" "Windows" |
remoteLoginPortPublicAccess | State of the public SSH port. Possible values are: Disabled - Indicates that the public ssh port is closed on all nodes of the cluster. Enabled - Indicates that the public ssh port is open on all nodes of the cluster. NotSpecified - Indicates that the public ssh port is closed on all nodes of the cluster if VNet is defined, else is open all public nodes. It can be default only during cluster creation time, after creation it will be either enabled or disabled. | "Disabled" "Enabled" "NotSpecified" |
scaleSettings | Scale settings for AML Compute | ScaleSettings |
subnet | Virtual network subnet resource ID the compute nodes belong to. | ResourceId |
userAccountCredentials | Credentials for an administrator user account that will be created on each compute node. | UserAccountCredentials |
vmPriority | Virtual Machine priority | "Dedicated" "LowPriority" |
vmSize | Virtual Machine Size | string |
ScaleSettings
Name | Description | Value |
---|---|---|
maxNodeCount | Max number of nodes to use | int (required) |
minNodeCount | Min number of nodes to use | int |
nodeIdleTimeBeforeScaleDown | Node Idle Time before scaling down amlCompute. This string needs to be in the RFC Format. | string |
ResourceId
Name | Description | Value |
---|---|---|
id | The ID of the resource | string (required) |
UserAccountCredentials
Name | Description | Value |
---|---|---|
adminUserName | Name of the administrator user account which can be used to SSH to nodes. | string (required) |
adminUserPassword | Password of the administrator user account. | string |
adminUserSshPublicKey | SSH public key of the administrator user account. | string |
ComputeInstance
Name | Description | Value |
---|---|---|
computeType | The type of compute | "ComputeInstance" (required) |
properties | Compute Instance properties | ComputeInstanceProperties |
ComputeInstanceProperties
Name | Description | Value |
---|---|---|
applicationSharingPolicy | Policy for sharing applications on this compute instance among users of parent workspace. If Personal, only the creator can access applications on this compute instance. When Shared, any workspace user can access applications on this instance depending on his/her assigned role. | "Personal" "Shared" |
computeInstanceAuthorizationType | The Compute Instance Authorization type. Available values are personal (default). | "personal" |
personalComputeInstanceSettings | Settings for a personal compute instance. | PersonalComputeInstanceSettings |
sshSettings | Specifies policy and settings for SSH access. | ComputeInstanceSshSettings |
subnet | Virtual network subnet resource ID the compute nodes belong to. | ResourceId |
vmSize | Virtual Machine Size | string |
PersonalComputeInstanceSettings
Name | Description | Value |
---|---|---|
assignedUser | A user explicitly assigned to a personal compute instance. | AssignedUser |
AssignedUser
Name | Description | Value |
---|---|---|
objectId | User’s AAD Object Id. | string (required) |
tenantId | User’s AAD Tenant Id. | string (required) |
ComputeInstanceSshSettings
Name | Description | Value |
---|---|---|
adminPublicKey | Specifies the SSH rsa public key file as a string. Use "ssh-keygen -t rsa -b 2048" to generate your SSH key pairs. | string |
sshPublicAccess | State of the public SSH port. Possible values are: Disabled - Indicates that the public ssh port is closed on this instance. Enabled - Indicates that the public ssh port is open and accessible according to the VNet/subnet policy if applicable. | "Disabled" "Enabled" |
Databricks
Name | Description | Value |
---|---|---|
computeType | The type of compute | "Databricks" (required) |
properties | DatabricksProperties |
DatabricksProperties
Name | Description | Value |
---|---|---|
databricksAccessToken | Databricks access token | string |
DataFactory
Name | Description | Value |
---|---|---|
computeType | The type of compute | "DataFactory" (required) |
DataLakeAnalytics
Name | Description | Value |
---|---|---|
computeType | The type of compute | "DataLakeAnalytics" (required) |
properties | DataLakeAnalyticsProperties |
DataLakeAnalyticsProperties
Name | Description | Value |
---|---|---|
dataLakeStoreAccountName | DataLake Store Account Name | string |
HDInsight
Name | Description | Value |
---|---|---|
computeType | The type of compute | "HDInsight" (required) |
properties | HDInsightProperties |
HDInsightProperties
Name | Description | Value |
---|---|---|
address | Public IP address of the master node of the cluster. | string |
administratorAccount | Admin credentials for master node of the cluster | VirtualMachineSshCredentials |
sshPort | Port open for ssh connections on the master node of the cluster. | int |
VirtualMachineSshCredentials
Name | Description | Value |
---|---|---|
password | Password of admin account | string |
privateKeyData | Private key data | string |
publicKeyData | Public key data | string |
username | Username of admin account | string |
VirtualMachine
Name | Description | Value |
---|---|---|
computeType | The type of compute | "VirtualMachine" (required) |
properties | VirtualMachineProperties |
VirtualMachineProperties
Name | Description | Value |
---|---|---|
address | Public IP address of the virtual machine. | string |
administratorAccount | Admin credentials for virtual machine | VirtualMachineSshCredentials |
sshPort | Port open for ssh connections. | int |
virtualMachineSize | Virtual Machine size | string |
Sku
Name | Description | Value |
---|---|---|
name | Name of the sku | string |
tier | Tier of the sku like Basic or Enterprise | string |