Azure CLI 拡張機能 v1 を使用して Azure Machine Learning ワークスペースを管理する
適用対象: Azure CLI ml extension v1
重要
この記事の Azure CLI コマンドの一部では、Azure Machine Learning 用に azure-cli-ml
、つまり v1 の拡張機能を使用しています。 v1 拡張機能のサポートは、2025 年 9 月 30 日に終了します。 その日付まで、v1 拡張機能をインストールして使用できます。
2025 年 9 月 30 日より前に、ml
(v2) 拡張機能に移行することをお勧めします。 v2 拡張機能の詳細については、Azure ML CLI 拡張機能と Python SDK v2 に関するページを参照してください。
この記事では、Azure CLI を使用して Azure Machine Learning ワークスペースを作成および管理する方法について説明します。 Azure CLI には、Azure リソースを管理するためのコマンドが用意されています。また、オートメーションに重点を置くことで、Azure で迅速に作業できるように設計されています。 CLI の機械学習拡張機能には、Azure Machine Learning リソースを操作するためのコマンドが用意されています。
前提条件
Azure サブスクリプション。 お持ちでない場合は、無料版または有料版の Azure Machine Learning をお試しください。
ご使用のローカル環境からこのドキュメントの CLI コマンドを使用するには、Azure CLI が必要です。
Azure Cloud Shell を使用する場合は、ブラウザーを使用してクラウド内に存在する CLI にアクセスします。
制限事項
新しいワークスペースを作成する場合は、ワークスペースに必要なサービスを自動的に作成するか、既存のサービスを使用することができます。 ワークスペースとは異なる Azure サブスクリプション の既存のサービスを使用する場合は、それらのサービスを含むサブスクリプションに Azure Machine Learning 名前空間を登録する必要があります。 たとえば、サブスクリプション B 内のストレージ アカウントを使用するワークスペースをサブスクリプション A 内に作成する場合、そのワークスペースでそのストレージ アカウントを使用する前に、Azure Machine Learning 名前空間をサブスクリプション B 内に登録する必要があります。
Azure Machine Learning のリソース プロバイダーは、Microsoft.MachineLearningServices です。 それが登録済みかどうか確認する方法、またはそれを登録する方法については、「Azure リソース プロバイダーと種類」をご覧ください。
重要
この情報は、ワークスペースの作成時に提供されるリソース (Azure Storage アカウント、Azure Container Registry、Azure Key Vault、Application Insights) のみに適用されます。
ヒント
Azure Application Insights インスタンスは、ワークスペースの作成時に作成されます。 必要に応じて、クラスターの作成後に Application Insights インスタンスを削除できます。 それを削除すると、ワークスペースから収集される情報が限定され、問題のトラブルシューティングがより困難になる場合があります。 ワークスペースによって作成された Application Insights インスタンスを削除する場合、それを再作成する唯一の方法は、そのワークスペースを削除して再作成することです。
Application Insights インスタンスの使用方法の詳細については、「Machine Learning Web サービス エンドポイントからのデータの監視と収集」を参照してください。
セキュリティで保護された CLI 通信
一部の Azure CLI コマンドは、インターネット経由で Azure Resource Manager と通信します。 この通信は、HTTPS/TLS 1.2 を使ってセキュリティ保護されます。
Azure Machine Learning CLI 拡張機能 v1 (azure-cli-ml
) では、Azure Resource Manager と通信するのは一部のコマンドだけです。 具体的には、Azure リソースを作成、更新、削除、一覧表示、または表示するコマンドです。 トレーニング ジョブの送信などの操作は、Azure Machine Learning ワークスペースと直接通信します。 ワークスペースがプライベート エンドポイントでセキュリティ保護されている場合、azure-cli-ml
拡張機能によって提供されるコマンドをセキュリティ保護するにはそれで十分です。
Azure サブスクリプションへの CLI の接続
重要
Azure Cloud Shell を使用している場合は、このセクションを省略できます。 Cloud Shell では、Azure サブスクリプションにログインするアカウントを使用して自動的に認証が行われます。
CLI から Azure サブスクリプションを認証するには、いくつかの方法があります。 最も簡単な方法は、ブラウザーを使用して対話形式で認証することです。 対話形式で認証するには、コマンド ラインまたはターミナルを開き、次のコマンドを使用します。
az login
CLI で既定のブラウザーを開くことができる場合、開いたブラウザにサインイン ページが読み込まれます。 それ以外の場合は、ブラウザーを開き、コマンド ラインの指示に従う必要があります。 この手順では、https://aka.ms/devicelogin にアクセスして認証コードを入力する必要があります。
ヒント
サインインすると、ご使用の Azure アカウントに関連付けられているサブスクリプションの一覧が表示されます。 isDefault: true
が示されているサブスクリプション情報が、Azure CLI コマンドに対して現在アクティブになっているサブスクリプションです。 このサブスクリプションは、Azure Machine Learning ワークスペースが含まれているものと同じである必要があります。 サブスクリプション情報は、Azure portal の自分のワークスペースの概要ページで確認できます。
別のサブスクリプションを選択するには、Azure CLI コマンドを使用して az account set -s <subscription>
コマンドを実行し、切り替えるサブスクリプション名または ID を指定します。 サブスクリプションの選択の詳細については、「複数の Azure サブスクリプションの使用」を参照してください。
その他の認証方法については、「Azure CLI を使用してサインインする」を参照してください。
リソース グループを作成する
Azure Machine Learning ワークスペースは、リソース グループ内に作成する必要があります。 既存のリソース グループを使用することも、新しいリソース グループを作成することもできます。 新しいリソース グループを作成 するには、次のコマンドを使用します。 <resource-group-name>
をこのリソース グループに使用する名前に置き換えます。 <location>
をこのリソース グループに使用する Azure リージョンに置き換えます。
注意
Azure Machine Learning が使用可能なリージョンを選択する必要があります。 詳細については、「リージョン別の利用可能な製品」を参照してください。
az group create --name <resource-group-name> --location <location>
このコマンドからの応答は、次の JSON のようになります。 出力値を使用して、作成されたリソースを特定したり、オートメーションのための後続の CLI ステップへの入力として解析したりすることができます。
{
"id": "/subscriptions/<subscription-GUID>/resourceGroups/<resourcegroupname>",
"location": "<location>",
"managedBy": null,
"name": "<resource-group-name>",
"properties": {
"provisioningState": "Succeeded"
},
"tags": null,
"type": null
}
リソース グループの操作の詳細については、「az group」を参照してください。
ワークスペースの作成
Azure Machine Learning ワークスペースをデプロイするとき、他のさまざまなサービスが、関連付けられている依存リソースとして必要です。 CLI を使用してワークスペースを作成するとき、CLI によって新しい関連リソースが作成されるようにすることも、自分で既存のリソースをアタッチすることもできます。
重要
独自のストレージ アカウントをアタッチする場合は、次の条件を満たしていることを確認してください。
- ストレージ アカウントが Premium アカウント (Premium_LRS と Premium_GRS) "ではない"
- Azure Blob と Azure File の両方の機能が有効になっている
- 階層型名前空間 (ADLS Gen 2) が無効です。これらの要件は、ワークスペースによって使用される "既定" のストレージ アカウントのみを対象としています。
Azure コンテナー レジストリをアタッチするとき、これを Azure Machine Learning ワークスペースで使用するには、事前に管理者アカウントが有効になっている必要があります。
サービスが自動的に作成される新しいワークスペースを作成するには、次のコマンドを使用します。
az ml workspace create -w <workspace-name> -g <resource-group-name>
重要
既存のリソースをアタッチする場合、必ずしもすべてを指定する必要はありません。 1 つ以上を指定できます。 たとえば、既存のストレージ アカウントを指定すると、ワークスペースによって他のリソースが作成されます。
ワークスペース作成コマンドの出力は、次の JSON のようになります。 出力値を使用して、作成されたリソースを特定したり、後続の CLI ステップへの入力として解析したりすることができます。
{
"applicationInsights": "/subscriptions/<service-GUID>/resourcegroups/<resource-group-name>/providers/microsoft.insights/components/<application-insight-name>",
"containerRegistry": "/subscriptions/<service-GUID>/resourcegroups/<resource-group-name>/providers/microsoft.containerregistry/registries/<acr-name>",
"creationTime": "2019-08-30T20:24:19.6984254+00:00",
"description": "",
"friendlyName": "<workspace-name>",
"id": "/subscriptions/<service-GUID>/resourceGroups/<resource-group-name>/providers/Microsoft.MachineLearningServices/workspaces/<workspace-name>",
"identityPrincipalId": "<GUID>",
"identityTenantId": "<GUID>",
"identityType": "SystemAssigned",
"keyVault": "/subscriptions/<service-GUID>/resourcegroups/<resource-group-name>/providers/microsoft.keyvault/vaults/<key-vault-name>",
"location": "<location>",
"name": "<workspace-name>",
"resourceGroup": "<resource-group-name>",
"storageAccount": "/subscriptions/<service-GUID>/resourcegroups/<resource-group-name>/providers/microsoft.storage/storageaccounts/<storage-account-name>",
"type": "Microsoft.MachineLearningServices/workspaces",
"workspaceid": "<GUID>"
}
詳細な構成
プライベート ネットワーク接続用にワークスペースを構成する
ユース ケースと組織の要件に応じて、プライベート ネットワーク接続を使用してAzure Machine Learning を構成できます。 Azure CLI を使用して、ワークスペースと、ワークスペース リソースのプライベート リンク エンドポイントをデプロイできます。 お使いのワークスペースでのプライベート エンドポイントと仮想ネットワーク (VNet) の使用の詳細については、「仮想ネットワークの分離とプライバシーの概要」を参照してください。 複雑なリソース構成については、Azure Resource Manager などのテンプレート ベースのデプロイ オプションも参照してください。
ワークスペースへのアクセスを仮想ネットワークに制限する場合、az ml workspace create
コマンドの一部として次のパラメーターを使用するか、az ml workspace private-endpoint
を使用することができます。
az ml workspace create -w <workspace-name>
-g <resource-group-name>
--pe-name "<pe name>"
--pe-auto-approval "<pe-autoapproval>"
--pe-resource-group "<pe name>"
--pe-vnet-name "<pe name>"
--pe-subnet-name "<pe name>"
--pe-name
:作成するプライベート エンドポイントの名前。--pe-auto-approval
:ワークスペースへのプライベート エンドポイント接続を自動的に承認するかどうか。--pe-resource-group
:プライベート エンドポイントを作成するリソース グループ。 仮想ネットワークが含まれているグループと同じグループでなければなりません。--pe-vnet-name
:プライベート エンドポイントを作成する既存の仮想ネットワーク。--pe-subnet-name
:プライベート エンドポイントを作成するサブネットの名前。 既定値はdefault
です。
これらのコマンドの使用方法の詳細については、CLI リファレンス ページをご覧ください。
カスタマー マネージド キーと High Business Impact ワークスペース
ワークスペースのメタデータは、既定で Microsoft が管理する Azure Cosmos DB インスタンスに格納されます。 このデータは Microsoft のマネージド キーで暗号化されます。 Microsoft のマネージド キーを使用する代わりに、独自のキーを指定することもできます。 これにより、データ格納目的で、Azure サブスクリプションで追加のリソース セットが作成されます。
暗号化用の独自のキーを持ち込むときに作成されるリソースの詳細については、Azure Machine Learning を使用したデータの暗号化に関するページをご覧ください。
--cmk-keyvault
パラメーターを使用して、キーを格納する Azure Key Vault を指定し、--resource-cmk-uri
を使用して、コンテナー内のキーのリソース ID と URI を指定します。
お使いのワークスペース上で Microsoft が収集するデータを制限するには、追加で --hbi-workspace
パラメーターを指定できます。
az ml workspace create -w <workspace-name>
-g <resource-group-name>
--cmk-keyvault "<cmk keyvault name>"
--resource-cmk-uri "<resource cmk uri>"
--hbi-workspace
注意
データ暗号化の追加リソースを管理するために、ご自分のサブスクリプションに対する共同作成者のアクセス許可を使用して、Machine Learning アプリ (ID とアクセスの管理) を承認します。
注意
Azure Cosmos DB は、モデルのパフォーマンス、実験によってログに記録された情報、またはモデル デプロイからログに記録された情報などの情報を格納するために使用されることはありません。 これらの項目の監視の詳細については、アーキテクチャと概念に関する記事の「監視とログ記録」セクションを参照してください。
重要
業務への影響が大きいは、ワークスペースの作成時にのみ選択できます。 ワークスペースの作成後にこの設定を変更することはできません。
カスタマー マネージド キーと High Business Impact ワークスペースの詳細については、「Azure Machine Learning のエンタープライズ セキュリティ」を参照してください。
CLI を使用したワークスペースの管理
ワークスペース情報の取得
ワークスペースに関する情報を取得するには、次のコマンドを使用します。
az ml workspace show -w <workspace-name> -g <resource-group-name>
ワークスペースの更新
ワークスペースを更新するには、次のコマンドを使用します。
az ml workspace update -n <workspace-name> -g <resource-group-name>
依存リソースのキーの同期
ワークスペースに使用されているいずれかのリソースのアクセス キーを変更すると、ワークスペースが新しいキーと同期されるまでに約 1 時間かかります。 ワークスペースで新しいキーを直ちに同期させるには、次のコマンドを使用します。
az ml workspace sync-keys -w <workspace-name> -g <resource-group-name>
キーの変更の詳細については、「ストレージ アカウント キーの再生成」を参照してください。
ワークスペースを削除する
警告
ワークスペースに対して論理的な削除が有効になっている場合は、削除後に復旧できます。 論理的な削除が有効になっていない場合、またはワークスペースを完全に削除するオプションを選択した場合は、復旧できません。 詳細については、削除されたワークスペースの復旧に関する記事を参照してください。
不要になったワークスペースを削除するには、次のコマンドを使用します。
az ml workspace delete -w <workspace-name> -g <resource-group-name>
重要
ワークスペースを削除しても、ワークスペースで使用されている Application Insights、ストレージ アカウント、キー コンテナー、またはコンテナー レジストリは削除されません。
リソース グループを削除することもできます。これにより、ワークスペースとリソース グループ内の他のすべての Azure リソースが削除されます。 リソース グループを削除するには、次のコマンドを使用します。
az group delete -g <resource-group-name>
ヒント
Azure Machine Learning の既定の動作では、ワークスペースを論理的に削除します。 ワークスペースはすぐに削除されるのではなく、削除対象としてマークされることを意味します。 詳細については、「論理的な削除」に関する記事をご覧ください。
トラブルシューティング
リソース プロバイダーのエラー
Azure Machine Learning ワークスペース (またはワークスペースで使用されるリソース) を作成しようとすると、次のメッセージに似たエラーが表示されることがあります。
No registered resource provider found for location {location}
The subscription is not registered to use namespace {resource-provider-namespace}
ほとんどのリソースプロバイダーは自動的に登録されますが、すべてではありません。 このメッセージが表示された場合は、言及されているプロバイダーを登録する必要があります。
次の表に、Azure Machine Learning で必要なリソース プロバイダーの一覧を示します。
リソース プロバイダー | 必要な理由 |
---|---|
Microsoft.MachineLearningServices | Azure Machine Learning ワークスペースの作成。 |
Microsoft.Storage | Azure Storage アカウントは、ワークスペースの既定のストレージとして使用されます。 |
Microsoft.ContainerRegistry | Azure Container Registry は、Docker イメージを構築するためにワークスペースによって使用されます。 |
Microsoft.KeyVault | Azure Key Vault は、シークレットを格納するためにワークスペースによって使用されます。 |
Microsoft.Notebooks | Azure Machine Learning コンピューティング インスタンス上の統合されたノートブック。 |
Microsoft.ContainerService | トレーニング済みのモデルを Azure Kubernetes Service にデプロイすることを計画している場合。 |
Azure Machine Learning でカスタマー マネージド キーを使用することを計画している場合は、以下のサービス プロバイダーを登録する必要があります。
リソース プロバイダー | 必要な理由 |
---|---|
Microsoft.DocumentDB | ワークスペースのメタデータをログに記録する Azure CosmosDB インスタンス。 |
Microsoft.Search | Azure Search では、ワークスペースのインデックス作成機能を提供します。 |
Azure Machine Learning でマネージド仮想ネットワークを使用する場合は、Microsoft.Network リソース プロバイダーを登録する必要があります。 このリソース プロバイダーは、マネージド仮想ネットワークのプライベート エンドポイントを作成するときにワークスペースによって使用されます。
リソースプロバイダーの登録については、「リソースプロバイダー登録エラーの解決」を参照してください。
ワークスペースの移動
警告
Azure Machine Learning ワークスペースを別のサブスクリプションに移動したり、所有するサブスクリプションを新しいテナントに移動したりすることは、サポートされていません。 エラーの原因になります。
Azure Container Registry の削除
Azure Machine Learning ワークスペースでは、一部の操作に対して Azure Container Registry (ACR) が使用されます。 これにより ACR インスタンスは、最初に必要になったときに自動的に作成されます。
警告
ワークスペースに対して Azure Container Registry が作成されたら、削除しないでください。 それを行うと、Azure Machine Learning ワークスペースが破損します。
次のステップ
機械学習の Azure CLI 拡張機能の詳細については、az ml (v1) のドキュメントを参照してください。
ワークスペースの問題を確認するには、「ワークスペース診断の使用方法」を参照してください。
ワークスペースを新しい Azure サブスクリプションに移動する方法については、ワークスペースを移動する方法に関するページを参照してください。
最新のセキュリティ更新プログラムを使用して Azure Machine Learning を最新の状態に保つ方法については、脆弱性の管理に関する記事を参照してください。