Mengelola ruang kerja Azure Machine Learning menggunakan Azure CLI

BERLAKU UNTUK:ekstensi ml Azure CLI v2 (saat ini)

Dalam artikel ini, Anda mempelajari cara membuat ruang kerja Azure Machine Learning menggunakan Azure CLI. Azure CLI dilengkapi dengan perintah untuk mengelola sumber daya Azure dan dirancang untuk membuat Anda bekerja dengan cepat dengan Azure, dengan penekanan pada otomatisasi. Ekstensi pembelajaran mesin ke CLI menyediakan perintah untuk bekerja dengan sumber daya Azure Machine Learning.

Anda juga dapat mengelola ruang kerja portal Azure dan Python SDK, Azure PowerShell, atau melalui ekstensi Visual Studio Code.

Prasyarat

Batasan

  • Saat membuat ruang kerja baru, Anda dapat membuat layanan yang diperlukan secara otomatis oleh ruang kerja atau menggunakan layanan yang sudah ada. Jika Anda ingin menggunakan layanan yang sudah ada dari langganan Azure yang berbeda dari ruang kerja, Anda harus mendaftarkan kumpulan nama Pembelajaran Mesin Azure dalam langganan yang berisi layanan tersebut. Misalnya, membuat ruang kerja di langganan A yang menggunakan akun penyimpanan dari langganan B, kumpulan nama Pembelajaran Mesin Azure harus terdaftar di langganan B sebelum Anda dapat menggunakan akun penyimpanan dengan ruang kerja.

    Penyedia sumber daya untuk Pembelajaran Mesin Azure adalah Microsoft.MachineLearningServices. Untuk informasi tentang cara melihat apakah sudah terdaftar dan cara mendaftarkannya, lihat artikel jenis dan penyedia sumber daya Azure.

    Penting

    Ini hanya berlaku untuk sumber daya yang disediakan selama pembuatan ruang kerja, Azure Storage Account, Azure Container Register, Azure Key Vault, dan Application Insights.

Tip

Instans Azure Application Insights dibuat saat Anda membuat ruang kerja. Anda dapat menghapus instans Application Insights setelah pembuatan kluster jika Anda mau. Menghapusnya membatasi informasi yang dikumpulkan dari ruang kerja, dan mungkin membuatnya lebih sulit untuk memecahkan masalah. Jika Anda menghapus instans Application Insights yang dibuat oleh ruang kerja, Anda tidak dapat membuatnya kembali tanpa menghapus dan membuat ulang ruang kerja.

Untuk informasi selengkapnya tentang penggunaan instans Application Insights ini, lihat Memantau dan mengumpulkan data dari titik akhir layanan web Pembelajaran Mesin.

Komunikasi CLI yang aman

Beberapa perintah Azure CLI berkomunikasi dengan Azure Resource Manager melalui internet. Komunikasi ini diamankan menggunakan HTTPS/TLS 1.2.

Dengan ekstensi CLI Azure Machine Learning v2 ('ml'), semua perintah berkomunikasi dengan Azure Resource Manager. Hal ini termasuk data operasional seperti parameter YAML dan metadata. Apabila ruang kerja Azure Machine Learning Anda bersifat publik (yaitu, tidak berada di belakang jaringan virtual), maka konfigurasi tambahan tidak diperlukan. Komunikasi diamankan menggunakan HTTPS/TLS 1.2.

Apabila ruang kerja Azure Machine Learning Anda menggunakan titik akhir privat serta jaringan virtual dan Anda menggunakan CLI v2, pilih salah satu konfigurasi berikut untuk digunakan:

Untuk informasi selengkapnya tentang komunikasi CLI v2, lihat Menginstal dan menyiapkan CLI.

Menyambungkan CLI ke langganan Azure Anda

Penting

Jika Anda menggunakan Azure Cloud Shell, Anda dapat melewati bagian ini. Shell cloud secara otomatis mengautentikasi Anda menggunakan akun yang Anda gunakan untuk masuk ke langganan Azure.

Ada beberapa cara untuk mengautentikasi langganan Azure Anda dari CLI. Yang paling sederhana adalah mengautentikasi secara interaktif menggunakan browser. Untuk mengautentikasi secara interaktif, buka baris perintah atau terminal dan gunakan perintah berikutini:

az login

Jika CLI dapat membuka browser default Anda, CLI akan melakukannya dan memuat halaman masuk. Jika tidak, Anda perlu membuka browser dan mengikuti instruksi pada baris perintah. Petunjuknya meliputi penjelajahan ke https://aka.ms/devicelogin dan memasukkan kode otorisasi.

Tip

Setelah masuk, Anda melihat daftar langganan yang terkait dengan akun Azure Anda. Informasi langganan dengan isDefault: true adalah langganan yang saat ini diaktifkan untuk perintah Azure CLI. Langganan ini harus sama dengan yang berisi ruang kerja Azure Machine Learning Anda. Anda dapat menemukan ID langganan dari portal Azure dengan mengunjungi halaman gambaran umum untuk ruang kerja Anda..

Untuk memilih langganan lain, gunakan az account set -s <subscription name or ID> perintah dan tentukan nama atau ID langganan untuk dialihkan. Untuk informasi selengkapnya tentang pemilihan langganan, lihat Menggunakan beberapa Langganan Azure.

Untuk metode autentikasi lainnya, lihat Masuk dengan Azure CLI.

Buat grup sumber daya

Ruang kerja Azure Machine Learning harus dibuat di dalam grup sumber daya. Anda dapat menggunakan grup sumber daya yang sudah ada atau membuat yang baru. Untuk membuat grup sumber daya baru, gunakan perintah berikut. Ganti <resource-group-name> dengan nama yang akan digunakan untuk grup sumber daya ini. Ganti <location> dengan wilayah Azure yang akan digunakan untuk grup sumber daya ini:

Catatan

Anda harus memilih wilayah tempat Azure Machine Learning tersedia. Untuk informasi, lihat Produk yang tersedia menurut wilayah.

az group create --name <resource-group-name> --location <location>

Respons dari perintah ini sama dengan JSON berikut. Anda dapat menggunakan nilai output untuk menemukan sumber daya yang dibuat atau mengurainya sebagai input ke langkah CLI berikutnya untuk otomatisasi.

{
  "id": "/subscriptions/<subscription-GUID>/resourceGroups/<resourcegroupname>",
  "location": "<location>",
  "managedBy": null,
  "name": "<resource-group-name>",
  "properties": {
    "provisioningState": "Succeeded"
  },
  "tags": null,
  "type": null
}

Untuk informasi selengkapnya tentang bekerja dengan grup sumber daya, lihat grup az.

Membuat ruang kerja

Jika Anda menyebarkan ruang kerja Azure Machine Learning, berbagai layanan lain diperlukan sebagai sumber daya dependen terkait. Jika Anda menggunakan CLI untuk membuat ruang kerja, CLI dapat membuat sumber daya terkait baru atas nama Anda atau Anda dapat memasang sumber daya yang sudah ada.

Penting

Saat melampirkan akun penyimpanan Anda sendiri, pastikan akun tersebut memenuhi kriteria berikut:

  • Akun penyimpanan bukan akun premium (Premium_LRS dan Premium_GRS)
  • Kemampuan Azure Blob dan Azure File diaktifkan
  • Namespace Layanan Hierarki (ADLS Gen 2) dinonaktifkan Persyaratan ini hanya untuk akun penyimpanan default yang digunakan oleh ruang kerja.

Saat melampirkan registri kontainer Azure, Anda harus mengaktifkan akun admin sebelum dapat digunakan dengan ruang kerja Azure Machine Learning.

Untuk membuat ruang kerja baru tempat layanan dibuat secara otomatis, gunakan perintah berikut:

az ml workspace create -n <workspace-name> -g <resource-group-name>

Penting

Jika sumber daya yang sudah ada dipasang, Anda tidak perlu menentukan semuanya. Anda dapat menentukan satu atau beberapa. Misalnya, Anda dapat menentukan akun penyimpanan yang ada dan ruang kerja akan membuat sumber daya lainnya.

Output perintah pembuatan ruang kerja ini sama dengan JSON berikut. Anda dapat menggunakan nilai output untuk menemukan sumber daya yang dibuat atau mengurainya sebagai input ke langkah-langkah CLI berikutnya.

{
  "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>"
}

Konfigurasi tingkat lanjut

Mengonfigurasi ruang kerja untuk konektivitas jaringan privat

Bergantung pada kasus penggunaan dan persyaratan organisasi, Anda dapat memilih untuk mengonfigurasi Azure Machine Learning menggunakan konektivitas jaringan privat. Anda dapat menggunakan Azure CLI untuk menyebarkan ruang kerja dan titik akhir tautan Privat untuk sumber daya ruang kerja. Untuk informasi selengkapnya tentang menggunakan titik akhir privat dan jaringan virtual (VNet) dengan ruang kerja Anda, lihat Ringkasan privasi dan isolasi jaringan virtual. Untuk konfigurasi sumber daya yang kompleks, lihat juga opsi penyebaran berbasis template termasuk Azure Resource Manager.

Saat menggunakan link privat, ruang kerja Anda tidak dapat menggunakan Azure Container Registry untuk membangun citra docker. Oleh karena itu, Anda harus mengatur properti image_build_compute ke nama kluster komputasi CPU yang akan digunakan untuk pembangunan lingkungan gambar Docker. Anda juga dapat menentukan apakah ruang kerja tautan pribadi harus dapat diakses melalui internet menggunakan properti public_network_access.

$schema: https://azuremlschemas.azureedge.net/latest/workspace.schema.json
name: mlw-privatelink-prod
location: eastus
display_name: Private Link endpoint workspace-example
description: When using private link, you must set the image_build_compute property to a cluster name to use for Docker image environment building. You can also specify whether the workspace should be accessible over the internet.
image_build_compute: cpu-compute
public_network_access: Disabled
tags:
  purpose: demonstration
az ml workspace create -g <resource-group-name> --file privatelink.yml

Setelah membuat ruang kerja, gunakan perintah CLI jaringan Azure guna membuat titik akhir tautan pribadi untuk ruang kerja.

az network private-endpoint create \
    --name <private-endpoint-name> \
    --vnet-name <vnet-name> \
    --subnet <subnet-name> \
    --private-connection-resource-id "/subscriptions/<subscription>/resourceGroups/<resource-group-name>/providers/Microsoft.MachineLearningServices/workspaces/<workspace-name>" \
    --group-id amlworkspace \
    --connection-name workspace -l <location>

Untuk membuat entri zona DNS privat untuk ruang kerja, gunakan perintah berikut:

# Add privatelink.api.azureml.ms
az network private-dns zone create \
    -g <resource-group-name> \
    --name 'privatelink.api.azureml.ms'

az network private-dns link vnet create \
    -g <resource-group-name> \
    --zone-name 'privatelink.api.azureml.ms' \
    --name <link-name> \
    --virtual-network <vnet-name> \
    --registration-enabled false

az network private-endpoint dns-zone-group create \
    -g <resource-group-name> \
    --endpoint-name <private-endpoint-name> \
    --name myzonegroup \
    --private-dns-zone 'privatelink.api.azureml.ms' \
    --zone-name 'privatelink.api.azureml.ms'

# Add privatelink.notebooks.azure.net
az network private-dns zone create \
    -g <resource-group-name> \
    --name 'privatelink.notebooks.azure.net'

az network private-dns link vnet create \
    -g <resource-group-name> \
    --zone-name 'privatelink.notebooks.azure.net' \
    --name <link-name> \
    --virtual-network <vnet-name> \
    --registration-enabled false

az network private-endpoint dns-zone-group add \
    -g <resource-group-name> \
    --endpoint-name <private-endpoint-name> \
    --name myzonegroup \
    --private-dns-zone 'privatelink.notebooks.azure.net' \
    --zone-name 'privatelink.notebooks.azure.net'

Kunci yang dikelola pelanggan dan ruang kerja berdampak bisnis tinggi

Secara default, metadata untuk ruang kerja disimpan dalam instans Azure Cosmos DB yang dikelola Microsoft. Data ini dienkripsi menggunakan kunci terkelola Microsoft. Alih-alih menggunakan kunci yang dikelola Microsoft, Anda dapat menggunakan kunci Anda sendiri. Melakukan hal tersebut akan menciptakan satu set sumber daya tambahan di langganan Azure Anda untuk menyimpan data Anda.

Untuk mempelajari lebih lanjut sumber daya yang dibuat jika Anda membawa kunci enkripsi Anda sendiri, lihat Enkripsi data dengan Azure Machine Learning.

Gunakan parameter customer_managed_key dan parameter yangn berisi key_vault dan key_uri, untuk menentukan ID sumber daya dan uri kunci di dalam vault.

Untuk membatasi data yang dikumpulkan Microsoft di ruang kerja, Anda juga dapat menentukan properti hbi_workspace.

$schema: https://azuremlschemas.azureedge.net/latest/workspace.schema.json
name: mlw-cmkexample-prod
location: eastus
display_name: Customer managed key encryption-example
description: This configurations shows how to create a workspace that uses customer-managed keys for encryption.
customer_managed_key: 
  key_vault: /subscriptions/<SUBSCRIPTION_ID>/resourceGroups/<RESOURCE_GROUP>/providers/Microsoft.KeyVault/vaults/<KEY_VAULT>
  key_uri: https://<KEY_VAULT>.vault.azure.net/keys/<KEY_NAME>/<KEY_VERSION>
tags:
  purpose: demonstration

Kemudian, Anda dapat mereferensikan file konfigurasi ini sebagai bagian dari perintah CLI pembuatan ruang kerja.

az ml workspace create -g <resource-group-name> --file cmk.yml

Catatan

Otorisasi Aplikasi Pembelajaran Mesin (dalam Pengelolaan Identitas dan Akses) dengan izin kontributor pada langganan Anda untuk mengelola sumber daya tambahan enkripsi data.

Catatan

Azure Cosmos DB tidak digunakan untuk menyimpan informasi seperti performa model, informasi yang dicatat oleh eksperimen, atau informasi yang dicatat dari penyebaran model Anda.

Penting

Memilih dampak bisnis yang tinggi hanya dapat dilakukan saat membuat ruang kerja. Anda tidak dapat mengubah pengaturan ini setelah pembuatan ruang kerja.

Untuk informasi selengkapnya tentang kunci yang dikelola pelanggan dan ruang kerja berdampak bisnis tinggi, lihat Keamanan perusahaan untuk Azure Machine Learning.

Menggunakan CLI untuk mengelola ruang kerja

Dapatkan informasi ruang kerja

Untuk mendapatkan informasi tentang ruang kerja, gunakan perintah berikut:

az ml workspace show -n <workspace-name> -g <resource-group-name>

Untuk informasi selengkapnya, lihat dokumentasi tampilkan ruang kerja az ml.

Memperbarui ruang kerja

Untuk memperbarui ruang kerja, gunakan perintah berikut ini:

az ml workspace update -n <workspace-name> -g <resource-group-name>

Untuk informasi selengkapnya, lihat dokumentasi perbarui ruang kerja az ml.

Sinkronkan kunci untuk sumber daya dependen

Jika Anda mengubah kunci akses untuk salah satu sumber daya yang digunakan oleh ruang kerja Anda, diperlukan waktu sekitar satu jam agar ruang kerja disinkronkan ke kunci baru. Untuk memaksa ruang kerja agar segera menyinkronkan kunci baru, gunakan perintah berikut:

az ml workspace sync-keys -n <workspace-name> -g <resource-group-name>

Untuk informasi selengkapnya tentang mengubah kunci, lihat Membuat ulang kunci akses penyimpanan.

Untuk informasi selengkapnya tentang perintah sync-keys, lihat az ml workspace sync-keys.

Hapus ruang kerja

Peringatan

Jika penghapusan sementara diaktifkan untuk ruang kerja, penghapusan dapat dipulihkan setelah penghapusan. Jika penghapusan sementara tidak diaktifkan, atau Anda memilih opsi untuk menghapus ruang kerja secara permanen, itu tidak dapat dipulihkan. Untuk informasi selengkapnya, lihat Memulihkan ruang kerja yang dihapus.

Untuk menghapus ruang kerja setelah tidak lagi diperlukan, gunakan perintah berikut:

az ml workspace delete -n <workspace-name> -g <resource-group-name>

Penting

Menghapus ruang kerja tidak menghapus wawasan aplikasi, akun penyimpanan, brankas kunci, atau registri kontainer yang digunakan oleh ruang kerja.

Anda juga dapat menghapus grup sumber daya, yang menghapus ruang kerja dan semua sumber daya Azure lainnya di grup sumber daya. Untuk menghapus grup sumber daya, gunakan perintah berikut:

az group delete -g <resource-group-name>

Untuk informasi selengkapnya, lihat dokumentasi hapus ruang kerja az ml.

Tip

Perilaku default untuk Azure Pembelajaran Mesin adalah menghapus sementara ruang kerja. Ini berarti bahwa ruang kerja tidak segera dihapus, tetapi sebaliknya ditandai untuk penghapusan. Untuk informasi selengkapnya, lihat Penghapusan sementara.

Pemecahan Masalah

Kesalahan penyedia sumber daya

Saat membuat ruang kerja Azure Machine Learning, atau sumber daya yang digunakan oleh ruang kerja, Anda mungkin menerima kesalahan yang mirip dengan pesan berikut:

  • No registered resource provider found for location {location}
  • The subscription is not registered to use namespace {resource-provider-namespace}

Sebagian besar penyedia sumber daya secara otomatis terdaftar, tetapi tidak semua. Jika Anda menerima pesan ini, Anda perlu mendaftarkan penyedia yang disebutkan.

Tabel berikut berisi daftar penyedia sumber daya yang diperlukan oleh Azure Machine Learning:

Penyedia sumber daya Mengapa dibutuhkan
Microsoft.MachineLearningServices Membuat ruang kerja Azure Machine Learning.
Microsoft.Storage Akun Azure Storage: Digunakan sebagai penyimpanan data default untuk ruang kerja.
Microsoft.ContainerRegistry Azure Container Registry digunakan oleh ruang kerja untuk membangun gambar Docker.
Microsoft.KeyVault Azure Key Vault digunakan oleh ruang kerja untuk menyimpan rahasia.
Microsoft.Notebooks Notebook terintegrasi pada instans komputasi Azure Machine Learning.
Microsoft.ContainerService Jika Anda berencana menyebarkan model terlatih ke Azure Kubernetes Services.

Jika Anda berencana menggunakan kunci yang dikelola pelanggan dengan Azure Machine Learning, maka penyedia layanan berikut harus terdaftar:

Penyedia sumber daya Mengapa dibutuhkan
Microsoft.DocumentDB Instans Azure CosmosDB yang mencatat metadata untuk ruang kerja.
Microsoft.Search Azure Search menyediakan kemampuan pengindeksan untuk ruang kerja.

Jika Anda berencana menggunakan jaringan virtual terkelola dengan Azure Pembelajaran Mesin, penyedia sumber daya Microsoft.Network harus didaftarkan. Penyedia sumber daya ini digunakan oleh ruang kerja saat membuat titik akhir privat untuk jaringan virtual terkelola.

Untuk informasi selengkapnya tentang cara mendaftarkan penyedia sumber daya, lihat Mengatasi kesalahan untuk pendaftaran penyedia sumber daya.

Memindahkan ruang kerja

Peringatan

Memindahkan ruang kerja Azure Machine Learning Anda ke langganan lain, atau memindahkan langganan yang dimiliki ke penyewa baru, tidak didukung. Melakukannya dapat menyebabkan kesalahan.

Menghapus Azure Container Registry

Ruang kerja Azure Machine Learning menggunakan Azure Container Registry (ACR) untuk beberapa operasi. Ini akan secara otomatis membuat instans ACR ketika pertama kali membutuhkannya.

Peringatan

Setelah Azure Container Registry dibuat untuk ruang kerja, jangan dihapus. Menghapusnya akan merusak ruang kerja Pembelajaran Mesin Microsoft Azure Anda.

Langkah berikutnya

Untuk informasi selengkapnya tentang ekstensi Azure CLI untuk pembelajaran mesin, lihat dokumentasi az ml.

Untuk memeriksa masalah dengan ruang kerja Anda, lihat Cara menggunakan diagnostik ruang kerja.

Untuk mempelajari cara memindahkan ruang kerja ke langganan Azure baru, lihat Cara memindahkan ruang kerja.

Untuk informasi tentang cara menjaga Azure Pembelajaran Mesin Anda tetap terbarui dengan pembaruan keamanan terbaru, lihat Manajemen kerentanan.