Membuat dan mengelola instans komputasi Azure Machine Learning dengan CLI v1

BERLAKU UNTUK:Ekstensi ml Azure CLI v1Python SDK azureml v1

Pelajari cara membuat dan mengelola instans komputasi di ruang kerja Azure Machine Learning Anda dengan CLI v1.

Gunakan instans komputasi sebagai lingkungan pengembangan anda yang sepenuhnya dikonfigurasi dan dikelola di cloud. Untuk pengembangan dan pengujian, Anda juga dapat menggunakan instance sebagai target komputasi pelatihan atau untuk target inferensi. Instans komputasi dapat menjalankan beberapa pekerjaan secara paralel dan memiliki antrean pekerjaan. Sebagai lingkungan pengembangan, instans komputasi tidak dapat dibagikan dengan pengguna lain di ruang kerja Anda.

Instans komputasi dapat menjalankan pekerjaan dengan aman di lingkungan jaringan virtual, tanpa mengharuskan perusahaan untuk membuka port SSH. Pekerjaan dijalankan dalam lingkungan ter-kontainer dan mengemas dependensi model Anda dalam kontainer Docker.

Dalam artikel ini, Anda akan mempelajari cara:

  • Buat instans komputasi
  • Mengelola (memulai, menghentikan, memulai ulang, menghapus) instans komputasi

Catatan

Artikel ini hanya membahas cara melakukan tugas-tugas ini menggunakan CLI v1. Untuk cara terbaru mengelola instans komputasi, lihat Membuat kluster komputasi Azure Machine Learning.

Prasyarat

Buat

Penting

Item yang ditandai (pratinjau) di bawah ini saat ini berada dalam pratinjau publik. Versi pratinjau disediakan tanpa perjanjian tingkat layanan, dan tidak disarankan untuk beban kerja produksi. Fitur tertentu mungkin tidak didukung atau mungkin memiliki kemampuan terbatas. Untuk mengetahui informasi selengkapnya, lihat Ketentuan Penggunaan Tambahan untuk Pratinjau Microsoft Azure.

Perkiraan waktu: Sekitar 5 menit.

Pembuatan instans komputasi adalah proses satu kali untuk ruang kerja Anda. Anda dapat menggunakan kembali komputasi sebagai stasiun kerja pengembangan atau sebagai target komputasi untuk pelatihan. Anda dapat memiliki beberapa instans komputasi yang terpasang pada ruang kerja Anda.

Inti khusus per wilayah per kuota keluarga VM dan total kuota regional, yang berlaku untuk pembuatan instans komputasi, bersatu dan dibagikan dengan kuota klaster komputasi pelatihan Azure Machine Learning. Menghentikan instans komputasi tidak membebaskan kuota untuk memastikan Anda dapat memulai ulang instans komputasi. Tidak mungkin mengubah ukuran mesin virtual dari instans komputasi setelah dibuat.

Contoh berikut menunjukkan cara membuat instans komputasi:

BERLAKU UNTUK:Python SDK azureml v1

import datetime
import time

from azureml.core.compute import ComputeTarget, ComputeInstance
from azureml.core.compute_target import ComputeTargetException

# Choose a name for your instance
# Compute instance name should be unique across the azure region
compute_name = "ci{}".format(ws._workspace_id)[:10]

# Verify that instance does not exist already
try:
    instance = ComputeInstance(workspace=ws, name=compute_name)
    print('Found existing instance, use it.')
except ComputeTargetException:
    compute_config = ComputeInstance.provisioning_configuration(
        vm_size='STANDARD_D3_V2',
        ssh_public_access=False,
        # vnet_resourcegroup_name='<my-resource-group>',
        # vnet_name='<my-vnet-name>',
        # subnet_name='default',
        # admin_user_ssh_public_key='<my-sshkey>'
    )
    instance = ComputeInstance.create(ws, compute_name, compute_config)
    instance.wait_for_completion(show_output=True)

Untuk informasi selengkapnya tentang kelas, metode, dan parameter yang digunakan dalam contoh ini, lihat dokumen referensi berikut:

Kelola

Memulai, menghentikan, memulai ulang, dan menghapus instans komputasi. Instans komputasi tidak secara otomatis menurunkan skala, jadi pastikan untuk menghentikan sumber daya untuk mencegah biaya yang sedang berlangsung. Menghentikan instans komputasi yang membatalkannya. Kemudian mulai lagi ketika Anda membutuhkannya. Saat menghentikan instans komputasi menghentikan penagihan selama jam komputasi, Anda masih akan ditagih untuk disk, IP publik, dan penyeimbang muatan standar.

Tip

Instans komputasi memiliki disk OS 120GB. Jika Anda kehabisan ruang disk, gunakan terminal untuk menghapus setidaknya 1-2 GB sebelum Anda menghentikan atau memulai ulang instans komputasi. Jangan hentikan instans komputasi dengan mengeluarkan pematian sudo dari terminal. Ukuran disk sementara pada instans komputasi bergantung pada ukuran VM yang dipilih dan dipasang di /mnt.

BERLAKU UNTUK:Python SDK azureml v1

Dalam contoh di bawah ini, nama instans komputasi adalah instans.

  • Dapatkan status

    # get_status() gets the latest status of the ComputeInstance target
    instance.get_status()
    
  • Hentikan

    # stop() is used to stop the ComputeInstance
    # Stopping ComputeInstance will stop the billing meter and persist the state on the disk.
    # Available Quota will not be changed with this operation.
    instance.stop(wait_for_completion=True, show_output=True)
    
  • Mulai

    # start() is used to start the ComputeInstance if it is in stopped state
    instance.start(wait_for_completion=True, show_output=True)
    
  • Mulai ulang

    # restart() is used to restart the ComputeInstance
    instance.restart(wait_for_completion=True, show_output=True)
    
  • Hapus

    # delete() is used to delete the ComputeInstance target. Useful if you want to re-use the compute name
    instance.delete(wait_for_completion=True, show_output=True)
    

Azure RBAC memungkinkan Anda mengontrol pengguna mana di ruang kerja yang dapat membuat, menghapus, memulai, menghentikan, memulai ulang instans komputasi. Semua pengguna dalam peran kontributor dan pemilik ruang kerja dapat membuat, menghapus, memulai, menghentikan, dan memulai ulang instans komputasi di seluruh ruang kerja. Namun, hanya pembuat instans komputasi tertentu, atau pengguna yang ditetapkan jika dibuat atas nama mereka, yang diizinkan untuk mengakses Jupyter, JupyterLab, RStudio, dan Posit Workbench (sebelumnya RStudio Workbench) pada instans komputasi tersebut. Instans komputasi didedikasikan untuk satu pengguna yang memiliki akses root. Pengguna tersebut memiliki akses ke Jupyter/JupyterLab/RStudio/Posit Workbench yang berjalan pada instans. Instans komputasi akan memiliki masuk pengguna tunggal dan semua tindakan akan menggunakan identitas pengguna tersebut untuk Azure RBAC dan atribusi eksekusi eksperimen. Akses SSH dikontrol melalui mekanisme kunci publik/privat.

Tindakan ini dapat dikontrol oleh Azure RBAC:

  • Microsoft.MachineLearningServices/workspaces/computes/read
  • Microsoft.MachineLearningServices/workspaces/computes/write
  • Microsoft.MachineLearningServices/workspaces/computes/write
  • Microsoft.MachineLearningServices/workspaces/computes/start/action
  • Microsoft.MachineLearningServices/workspaces/computes/stop/action
  • Microsoft.MachineLearningServices/workspaces/computes/restart/action
  • Microsoft.MachineLearningServices/workspaces/computes/updateSchedules/action

Untuk membuat instans komputasi, Anda memerlukan izin untuk tindakan berikut:

  • Microsoft.MachineLearningServices/workspaces/computes/write
  • Microsoft.MachineLearningServices/workspaces/computes/write

Langkah berikutnya