Menggunakan citra terkelola untuk membuat kumpulan citra kustom

Untuk membuat kumpulan citra khusus untuk mesin virtual (VM) kumpulan Batch, Anda dapat menggunakan citra terkelola untuk membuat citra Azure Compute Gallery. Hanya menggunakan citra terkelola juga didukung, tetapi hanya berlaku untuk versi API hingga 2019-08-01.

Peringatan

Dukungan untuk membuat kumpulan Batch menggunakan gambar terkelola dihentikan setelah 31 Maret 2026. Silakan migrasikan untuk menghosting gambar kustom di Azure Compute Gallery untuk digunakan untuk membuat kumpulan gambar kustom di Batch. Untuk informasi selengkapnya, lihat panduan migrasi.

Topik ini menjelaskan cara membuat kumpulan citra kustom hanya menggunakan citra terkelola.

Prasyarat

  • Sumber daya citra terkelola. Untuk membuat kumpulan komputer virtual menggunakan citra kustom, Anda harus memiliki atau membuat sumber daya citra terkelola di langganan dan wilayah Azure yang sama dengan akun Batch. Citra harus dibuat dari salinan bayangan disk OS VM dan bisa juga beserta disk data lampirannya.

    • Gunakan citra kustom unik untuk setiap kumpulan yang Anda buat.
    • Untuk membuat kumpulan dengan citra menggunakan API Batch, tentukan ID sumber daya citra, yang berbentuk /subscriptions/xxxx-xxxxxx-xxxxx-xxxxxx/resourceGroups/myResourceGroup/providers/Microsoft.Compute/images/myImage.
    • Sumber daya citra terkelola harus ada untuk seumur hidup kumpulan untuk memungkinkan perluasan skala dan dapat dibuang setelah kumpulan dihapus.
  • Autentikasi Microsoft Entra. API klien Batch harus menggunakan autentikasi Microsoft Entra. Dukungan Azure Batch untuk ID Microsoft Entra didokumenkan dalam Mengautentikasi solusi layanan Batch dengan Direktori Aktif.

Menyiapkan citra terkelola

Di Azure, Anda dapat menyiapkan citra terkelola dari:

  • Salinan bayangan OS dan diska data Azure VM
  • Azure VM umum dengan diska terkelola
  • VHD lokal umum yang diunggah ke awan

Untuk menskalakan kumpulan Batch secara andal dengan citra terkelola, sebaiknya buat citra terkelola hanya dengan metode pertama: menggunakan salinan bayangan diska VM. Langkah-langkah berikut menunjukkan cara menyiapkan VM, mengambil salinan bayangan, dan membuat citra terkelola dari salinan bayangan.

Siapkan VM

Jika Anda membuat VM baru untuk gambar, gunakan gambar Marketplace Azure pihak pertama yang didukung oleh Batch sebagai gambar dasar untuk gambar terkelola Anda. Hanya citra pihak pertama yang dapat digunakan sebagai citra dasar. Untuk mendapatkan daftar lengkap referensi gambar Marketplace Azure yang didukung oleh Azure Batch, lihat Mencantumkan Gambar yang Didukung.

Catatan

Anda tidak dapat menggunakan citra pihak ketiga yang memiliki lisensi tambahan dan ketentuan pembelian sebagai citra dasar Anda. Untuk informasi tentang gambar Marketplace ini, lihat panduan untuk VM Linux atau Windows .

Untuk menggunakan gambar pihak ketiga, Anda dapat menggunakan Azure Compute Gallery. Silakan lihat Menggunakan Azure Compute Gallery untuk membuat kumpulan gambar kustom untuk informasi selengkapnya.

  • Pastikan VM dibuat dengan diska terkelola. Ini adalah pengaturan penyimpanan default saat Anda membuat VM.
  • Jangan instal ekstensi Azure, seperti ekstensi Skrip Kustom, pada VM. Jika gambar berisi ekstensi yang telah diinstal sebelumnya, Azure mungkin mengalami masalah saat menyebarkan kumpulan Batch.
  • Saat menggunakan diska data terlampir, Anda perlu memasang dan memformat diska dari dalam VM untuk menggunakannya.
  • Pastikan bahwa citra OS dasar yang Anda sediakan menggunakan drive temp default. Agen simpul Batch saat ini hanya kompatible dengan drive temp default.
  • Pastikan disk OS tidak dienkripsi.
  • Setelah VM berjalan, sambungkan melalui RDP (untuk Windows) atau SSH (untuk Linux). Instal perangkat lunak yang diperlukan atau salin data yang diinginkan.

Membuat salinan bayangan VM

Salinan bayangan adalah salinan VHD baca-saja lengkap. Untuk membuat salinan bayangan OS atau disk data VM, Anda dapat menggunakan portal Microsoft Azure atau alat baris perintah. Untuk langkah-langkah dan opsi membuat rekam jepret, lihat panduan untuk VM.

Membuat citra dari satu atau beberapa salinan bayangan

Untuk membuat citra terkelola dari salinan bayangan, gunakan alat bantu baris perintah Azure seperti perintah az image create. Anda dapat membuat citra dengan menentukan salinan bayangan diska OS dan secara opsional satu atau beberapa salinan bayangan diska data.

Membuat kumpulan dari citra terkelola

Setelah Anda menemukan ID sumber daya citra terkelola Anda, buat kumpulan citra kustom dari citra itu. Langkah-langkah berikut menunjukkan kepada Anda cara membuat kumpulan citra kustom menggunakan Batch Service atau Batch Management.

Catatan

Pastikan bahwa identitas yang Anda gunakan untuk autentikasi Microsoft Entra memiliki izin ke sumber daya gambar. Lihat Autentikasi solusi layanan Batch dengan Direktori Aktif.

Sumber daya untuk citra terkelola harus ada untuk seumur hidup kumpulan. Jika sumber daya yang mendasarinya dihapus, maka kumpulan tidak dapat diperluas skalanya.

Batch Service .NET SDK

private static VirtualMachineConfiguration CreateVirtualMachineConfiguration(ImageReference imageReference)
{
    return new VirtualMachineConfiguration(
        imageReference: imageReference,
        nodeAgentSkuId: "batch.node.windows amd64");
}

private static ImageReference CreateImageReference()
{
    return new ImageReference(
        virtualMachineImageId: "/subscriptions/{sub id}/resourceGroups/{resource group name}/providers/Microsoft.Compute/images/{image definition name}");
}

private static void CreateBatchPool(BatchClient batchClient, VirtualMachineConfiguration vmConfiguration)
{
    try
    {
        CloudPool pool = batchClient.PoolOperations.CreatePool(
            poolId: PoolId,
            targetDedicatedComputeNodes: PoolNodeCount,
            virtualMachineSize: PoolVMSize,
            virtualMachineConfiguration: vmConfiguration);

        pool.Commit();
    }

Batch Management REST API

REST API URI

 PUT https://management.azure.com/subscriptions/{sub id}/resourceGroups/{resource group name}/providers/Microsoft.Batch/batchAccounts/{account name}/pools/{pool name}?api-version=2020-03-01

Isi Permintaan

 {
   "properties": {
     "vmSize": "{VM size}",
     "deploymentConfiguration": {
       "virtualMachineConfiguration": {
         "imageReference": {
           "id": "/subscriptions/{sub id}/resourceGroups/{resource group name}/providers/Microsoft.Compute/images/{image name}"
         },
         "nodeAgentSkuId": "{Node Agent SKU ID}"
       }
     }
   }
 }

Pertimbangan kumpulan besar

Jika Anda berencana untuk membuat kumpulan dengan ratusan VM atau lebih menggunakan gambar kustom, penting untuk mengikuti panduan sebelumnya untuk menggunakan gambar yang dibuat dari rekam jepret VM.

Perhatikan juga pertimbangan berikut:

  • Batas ukuran - Batch membatasi ukuran kumpulan hingga 2500 node komputasi khusus, atau 1000 Node spot, saat Anda menggunakan gambar kustom.

    Jika Anda menggunakan citra yang sama (atau beberapa citra berdasarkan salinan bayangan yang sama) untuk membuat beberapa kumpulan, total simpul komputasi di kumpulan tidak dapat melebihi batas sebelumnya. Kami tidak merekomendasikan penggunaan citra atau salinan bayangan yang mendasarinya untuk lebih dari satu kumpulan.

    Batas dapat dikurangi jika Anda mengonfigurasi kumpulan dengan kumpulan NAT masuk.

  • Ubah Timeout - Jika kumpulan Anda berisi jumlah simpul tetap (tidak otomatis), tingkatkan properti resizeTimeout dari kumpulan ke nilai seperti 20-30 menit. Jika kumpulan Anda tidak mencapai ukuran target dalam periode timeout, lakukan operasi ubah ukuran lain.

    Jika Anda merencanakan kumpulan dengan lebih dari 300 simpul komputasi, Anda mungkin perlu mengubah ukuran kumpulan beberapa kali untuk mencapai ukuran target.

Dengan menggunakan Azure Compute Gallery, Anda dapat membuat kumpulan yang lebih besar dengan gambar yang disesuaikan bersama dengan lebih banyak replika Gambar Bersama bersama dengan peningkatan manfaat performa seperti penurunan waktu agar simpul siap.

Pertimbangan untuk menggunakan Packer

Membuat sumber daya citra terkelola secara langsung dengan Packer hanya dapat dilakukan dengan mode langganan pengguna Akun batch. Untuk akun mode layanan Batch, Anda perlu membuat VHD terlebih dahulu, lalu mengimpor VHD ke sumber daya citra terkelola. Bergantung pada mode alokasi kumpulan Anda (langganan pengguna, atau layanan Batch), langkah-langkah Anda untuk membuat sumber daya gambar terkelola bervariasi.

Pastikan bahwa sumber daya yang digunakan untuk membuat citra terkelola ada untuk masa pakai kumpulan apa pun yang merujuk pada citra kustom. Kegagalan untuk melakukannya dapat mengakibatkan kegagalan alokasi kumpulan dan/atau kegagalan ubah ukuran.

Jika citra atau sumber daya yang mendasarinya dihapus, Anda mungkin mendapatkan kesalahan yang mirip dengan: There was an error encountered while performing the last resize on the pool. Please try resizing the pool again. Code: AllocationFailed. Jika Anda mendapatkan kesalahan ini, pastikan bahwa sumber daya yang mendasar belum dihapus.

Untuk informasi selengkapnya tentang menggunakan Packer dalam membuat VM, lihat Bangun citra Linux dengan Packer atau Bangun citra Windows dengan Packer.

Langkah berikutnya