Bagikan melalui


Memecahkan masalah kegagalan alokasi saat Anda menerapkan Cloud Services di Azure

Penting

Cloud Services (klasik) sekarang tidak lagi digunakan untuk pelanggan baru dan akan dihentikan untuk semua pelanggan pada 31 Agustus 2024. Penyebaran baru sebaiknya menggunakan Azure Resource Manager yang baru berdasarkan model penyebaran Azure Cloud Services (dukungan tambahan).

Ringkasan

Saat Anda menerapkan instans ke Layanan Awan, atau menambahkan instans peran web atau pekerja baru, Microsoft Azure mengalokasikan sumber daya komputasi. Anda mungkin terkadang menerima kesalahan saat menjalankan operasi ini bahkan sebelum Anda mencapai batas langganan Azure. Artikel ini menjelaskan penyebab beberapa kegagalan alokasi umum dan menyarankan kemungkinan remediasi. Informasi ini mungkin juga berguna saat Anda merencanakan penerapan layanan Anda.

Jika masalah Azure Anda tidak diatasi dalam artikel ini, kunjungi forum Azure di Microsoft Q & A dan Stack Overflow. Anda dapat memposting masalah Anda di forum ini, atau memposting ke @AzureSupport di Twitter. Anda juga dapat mengirimkan permintaan dukungan Azure. Untuk mengirimkan permintaan dukungan, pada halaman dukungan Azure, pilih Dapatkan dukungan.

Latar Belakang - Cara kerja alokasi

Server di pusat data Azure dipartisi ke dalam kluster. Permintaan alokasi layanan awan baru dicoba dalam beberapa kluster. Saat instans pertama diterapkan ke layanan awan (baik dalam penahapan atau produksi), layanan awan tersebut disematkan ke kluster. Penerapan lebih lanjut untuk layanan awan akan terjadi di kluster yang sama. Dalam artikel ini, kita akan menyebutnya sebagai "disematkan ke kluster". Diagram 1 di bawah ini mengilustrasikan kasus alokasi normal yang dicoba dalam beberapa kluster; Diagram 2 mengilustrasikan kasus alokasi yang disematkan ke Kluster 2 karena di situlah Cloud Service CS_1 yang ada dihosting.

Allocation Diagram

Mengapa kegagalan Alokasi terjadi

Ketika permintaan alokasi disematkan ke kluster, ada kemungkinan lebih tinggi untuk gagal menemukan sumber daya bebas karena kumpulan sumber daya yang tersedia terbatas pada kluster. Selain itu, jika permintaan alokasi Anda disematkan ke kluster tetapi jenis sumber daya yang Anda minta tidak didukung oleh kluster tersebut, permintaan Anda akan gagal bahkan jika kluster memiliki sumber daya gratis. Diagram 3 di bawah ini menggambarkan kasus di mana alokasi yang disematkan gagal karena satu-satunya kluster kandidat tidak memiliki sumber daya gratis. Diagram 4 mengilustrasikan kasus di mana alokasi yang disematkan gagal karena satu-satunya kluster kandidat tidak mendukung ukuran VM yang diminta, meskipun kluster memiliki sumber daya bebas.

Pinned Allocation Failure

Memecahkan masalah kegagalan alokasi untuk layanan awan

Pesan kesalahan

Di portal Microsoft Azure, navigasi ke layanan awan Anda dan di bar samping pilih Log operasi (klasik) untuk melihat log.

Lihat solusi lebih lanjut untuk pengecualian di bawah ini:

Tipe Pengecualian Pesan kesalahan Solution
FabricInternalServerError Operasi gagal dengan kode kesalahan 'InternalError' dan errorMessage 'Server mengalami kesalahan internal. Silakan coba kembali permintaannya.'. Memecahkan masalah FabricInternalServerError
ServiceAllocationFailure Operasi gagal dengan kode kesalahan 'InternalError' dan errorMessage 'Server mengalami kesalahan internal. Silakan coba kembali permintaannya.'. Memecahkan masalah ServiceAllocationFailure
LocationNotFoundForRoleSize Operasi '{Operation ID}' gagal: 'Tingkat VM yang diminta saat ini tidak tersedia di Wilayah ({Region ID}) untuk langganan ini. Silakan coba tingkat lain atau terapkan ke lokasi yang berbeda.'. Memecahkan masalah LocationNotFoundForRoleSize
ConstrainedAllocationFailed Operasi Azure '{Operation ID}' gagal dengan kode Compute.ConstrainedAllocationFailed. Alokasi gagal; tidak dapat memenuhi batasan dalam permintaan. Penyebaran layanan baru yang diminta terikat ke Grup Afinitas, atau menargetkan Jaringan Virtual, atau ada penyebaran yang ada di bawah layanan yang di hosting ini. Salah satu kondisi ini membatasi penerapan baru ke sumber daya Azure tertentu. Coba lagi nanti atau coba kurangi ukuran VM atau jumlah instans peran. Atau, jika memungkinkan, hapus batasan tersebut atau coba terapkan ke wilayah lain. Memecahkan masalah ConstrainedAllocationFailed
OverconstrainedAllocationRequest Ukuran VM (atau kombinasi ukuran VM) yang diperlukan oleh penyebaran ini tidak dapat disediakan karena batasan permintaan penyebaran. Jika memungkinkan, cobalah batasan relaksasi seperti pengikatan jaringan virtual, menyebarkan ke layanan yang di-hosting tanpa penyebaran lain di dalamnya dan ke grup afinitas yang berbeda atau tanpa grup afinitas, atau coba terapkan ke wilayah lain. Memecahkan masalah OverconstrainedAllocationRequest

Contoh pesan kesalahan:

"Operasi Azure '{operation id}' gagal dengan kode Compute.ConstrainedAllocationFailed. Alokasi gagal; tidak dapat memenuhi batasan dalam permintaan. Penyebaran layanan baru yang diminta terikat ke Grup Afinitas, atau menargetkan Jaringan Virtual, atau ada penyebaran yang ada di bawah layanan yang di hosting ini. Salah satu kondisi ini membatasi penerapan baru ke sumber daya Azure tertentu. Coba lagi nanti atau coba kurangi ukuran VM atau jumlah instans peran. Atau, jika memungkinkan, hapus batasan tersebut atau coba terapkan ke wilayah lain."

Masalah Umum

Berikut adalah skenario alokasi umum yang menyebabkan permintaan alokasi disematkan ke satu kluster.

  • Menerapkan Slot Penahapan: Jika layanan awan memiliki penerapan di salah satu slot, maka seluruh layanan awan disematkan ke kluster tertentu. Ini berarti bahwa jika penyebaran sudah ada di slot produksi, penyebaran penahapan baru hanya dapat dialokasikan di klaster yang sama dengan slot produksi. Jika kluster mendekati kapasitas, maka permintaan bisa gagal.
  • Penskalaan - Menambahkan instans baru ke layanan awan yang ada harus mengalokasikan dalam kluster yang sama. Permintaan penskalaan kecil biasanya dapat dialokasikan, tetapi tidak selalu. Jika kluster mendekati kapasitas, maka permintaan bisa gagal.
  • Grup Afinitas - Penerapan baru ke layanan awan yang kosong dapat dialokasikan oleh fabrik di kluster mana pun di wilayah tersebut, kecuali jika layanan awan disematkan pada grup afinitas. Penerapan pada grup afinitas yang sama akan dilakukan di kluster yang sama. Jika kluster mendekati kapasitas, maka permintaan bisa gagal.
  • Affinity Group vNet - Jaringan Virtual Lama terikat dengan grup afinitas dan bukan wilayah, serta layanan awan di Virtual Network ini akan disematkan ke kluster grup afinitas. Penerapan ke jenis jaringan virtual ini akan dicoba pada kluster yang disematkan. Jika kluster mendekati kapasitas, maka permintaan bisa gagal.

Solusi

  1. Menerapkan ulang ke layanan awan baru - Solusi ini kemungkinan paling berhasil karena memungkinkan platform untuk memilih dari semua kluster di wilayah itu.

    • Terapkan beban kerja ke layanan awan baru
    • Perbarui data CNAME atau catatan A untuk mengarahkan lalu lintas ke layanan awan baru
    • Setelah tidak ada lalu lintas yang masuk ke situs lama, Anda dapat menghapus layanan awan lama. Solusi ini tidak akan menimbulkan downtime.
  2. Menghapus slot produksi dan penahapan - Solusi ini akan mempertahankan nama DNS Anda yang ada, tetapi akan menyebabkan downtime ke aplikasi Anda.

    • Hapus slot produksi dan pementasan layanan awan yang ada sehingga layanan awan kosong, lalu
    • Buat penerapan baru di layanan awan yang ada. Ini akan mencoba kembali alokasi pada semua kluster di wilayah tersebut. Pastikan layanan awan tidak terikat dengan grup afinitas.
  3. IP yang dicadangkan - Solusi ini akan mempertahankan alamat IP Anda yang ada, tetapi akan menyebabkan downtime ke aplikasi Anda.

    • Buat ReservedIP untuk penyebaran Anda yang ada menggunakan PowerShell

      New-AzureReservedIP -ReservedIPName {new reserved IP name} -Location {location} -ServiceName {existing service name}
      
    • Ikuti #2 dari atas, pastikan untuk menentukan ReservedIP baru dalam CSCFG layanan.

  4. Menghapus grup afinitas untuk penyebaran baru - Grup Afinitas tidak lagi direkomendasikan. Ikuti langkah-langkah #1 di atas untuk menyebarkan layanan cloud baru. Pastikan layanan awan tidak berada dalam grup afinitas.

  5. Mengonversi ke Jaringan Virtual Regional - Lihat Cara bermigrasi dari Grup Afinitas ke Virtual Netwrok Regional (VNet).