使用 Azure PowerShell 管理 Azure 机器学习工作区
使用适用于 Azure 机器学习的 Azure PowerShell 模块来创建和管理 Azure 机器学习工作区。 有关 Azure 机器学习的 Azure PowerShell cmdlet 的完整列表,请参阅 Az.MachineLearningServices 参考文档。
还可以使用 Azure CLI、Azure 门户和 Python SDK 或通过 VS Code 扩展管理工作区。
先决条件
一个 Azure 订阅。 如果没有 Azure 订阅,请尝试试用版订阅。
Azure PowerShell 模块。 若要确保拥有最新版本,请参阅安装 Azure PowerShell 模块。
重要
尽管 Az.MachineLearningServices PowerShell 模块为预览版,但必须使用
Install-Module
cmdlet 单独安装它。Install-Module -Name Az.MachineLearningServices -Scope CurrentUser -Repository PSGallery -Force
登录 Azure
运行 Connect-AzAccount -Environment AzureChinaCloud
命令以登录 Azure 订阅,并按照屏幕上的说明操作。
Connect-AzAccount -Environment AzureChinaCloud
如果你不知道要使用哪个位置,可以列出可用的位置。 使用以下代码示例显示位置列表,并找到要使用的位置。 此示例使用“chinaeast2”。 将位置存储在变量中,并使用该变量,这样就可以在一个位置更改它。
Get-AzLocation | Select-Object -Property Location
$Location = 'chinaeast2'
创建资源组
使用 New-AzResourceGroup 创建 Azure 资源组。 资源组是在其中部署和管理 Azure 资源的逻辑容器。
$ResourceGroup = 'MyResourceGroup'
New-AzResourceGroup -Name $ResourceGroup -Location $Location
创建依赖项资源
Azure 机器学习工作区依赖于以下 Azure 资源:
- Application Insights
- Azure Key Vault
- Azure 存储帐户
使用以下命令创建这些资源并检索每个资源的 Azure 资源管理器 ID:
注意
在运行以下命令之前,必须为订阅注册 Microsoft.Insights 资源提供程序。 这是一次性注册。 使用 Register-AzResourceProvider -ProviderNamespace Microsoft.Insights
执行注册。
创建 Application Insights 实例:
$AppInsights = 'MyAppInsights' New-AzApplicationInsights -Name $AppInsights -ResourceGroupName $ResourceGroup -Location $Location $appid = (Get-AzResource -Name $AppInsights -ResourceGroupName $ResourceGroup).ResourceId
创建 Azure 密钥保管库:
重要
每个密钥保管库必须具有唯一的名称。 在以下示例中,将
MyKeyVault
替换为密钥保管库名称。$KeyVault = 'MyKeyVault' New-AzKeyVault -Name $KeyVault -ResourceGroupName $ResourceGroup -Location $Location $kvid = (Get-AzResource -Name $KeyVault -ResourceGroupName $ResourceGroup).ResourceId
创建 Azure 存储帐户:
重要
每个存储帐户都必须有唯一名称。 在以下示例中将
MyStorage
替换为存储帐户的名称。 在运行以下示例之前,可以使用Get-AzStorageAccountNameAvailability -Name 'YourUniqueName'
验证名称。$Storage = 'MyStorage' $storageParams = @{ Name = $Storage ResourceGroupName = $ResourceGroup Location = $Location SkuName = 'Standard_LRS' Kind = 'StorageV2' } New-AzStorageAccount @storageParams $storeid = (Get-AzResource -Name $Storage -ResourceGroupName $ResourceGroup).ResourceId
创建工作区
注意
在运行以下命令之前,必须为订阅注册 Microsoft.MachineLearningServices 资源提供程序。 这是一次性注册。 使用 Register-AzResourceProvider -ProviderNamespace Microsoft.MachineLearningServices
执行注册。
以下命令创建工作区并将其配置为使用之前创建的服务。 它还将工作区配置为使用系统分配的托管标识,该标识用于访问这些服务。 有关将托管标识用于 Azure 机器学习的详细信息,请参阅设置对其他服务的身份验证一文。
$Workspace = 'MyWorkspace'
$mlWorkspaceParams = @{
Name = $Workspace
ResourceGroupName = $ResourceGroup
Location = $Location
ApplicationInsightID = $appid
KeyVaultId = $kvid
StorageAccountId = $storeid
IdentityType = 'SystemAssigned'
}
New-AzMLWorkspace @mlWorkspaceParams
获取工作区信息
要检索工作区列表,请使用以下命令:
Get-AzMLWorkspace
要检索有关特定工作区的信息,请提供名称和资源组信息:
Get-AzMLWorkspace -Name $Workspace -ResourceGroupName $ResourceGroup
创建工作区
警告
如果为工作区启用了软删除,则可以在删除后恢复它。 如果未启用软删除,或者选择永久删除工作区的选项,则无法恢复该工作区。 有关详细信息,请参阅恢复已删除的工作区。
若要删除不再需要的工作区,请使用以下命令:
Remove-AzMLWorkspace -Name $Workspace -ResourceGroupName $ResourceGroup
重要
删除某个工作区不会删除该工作区使用的 Application Insights、存储帐户、密钥保管库或容器注册表。
也可以删除资源组,这会删除该资源组中的工作区和所有其他 Azure 资源。 若要删除资源组,请使用以下命令:
Remove-AzResourceGroup -Name $ResourceGroup
后续步骤
若要检查工作区是否存在问题,请参阅如何使用工作区诊断。
若要了解如何将工作区移到新 Azure 订阅,请参阅如何移动工作区。
有关如何使用最新的安全更新使 Azure 机器学习保持最新状态的信息,请参阅漏洞管理。
要了解如何使用工作区训练 ML 模型,请参阅一天玩转 Azure 机器学习教程。