Cara memperbarui Azure Cloud Service (klasik)
Penting
Cloud Services (klasik) sekarang tidak digunakan lagi untuk semua pelanggan per 1 September 2024. Setiap penyebaran yang sedang berjalan akan dihentikan dan dimatikan oleh Microsoft dan data akan hilang secara permanan mulai Oktober 2024. Penyebaran baru sebaiknya menggunakan Azure Resource Manager yang baru berdasarkan model penyebaran Azure Cloud Services (dukungan tambahan).
Proses untuk memperbarui layanan cloud, termasuk peran dan OS tamunya, mengambil tiga langkah. Pertama, file biner dan konfigurasi untuk layanan awan baru atau versi OS harus diunggah. Selanjutnya, Azure mencadangkan sumber daya komputasi dan jaringan untuk layanan awan berdasarkan persyaratan versi layanan awan baru. Akhirnya, Azure melakukan peningkatan bergulir untuk memperbarui penyewa secara bertahap ke versi baru atau OS tamu, sambil mempertahankan ketersediaan Anda. Artikel ini membahas detail langkah terakhir ini - peningkatan bergulir.
Memperbarui Layanan Azure
Azure mengatur instans peran Anda ke dalam pengelompokan logis yang disebut domain pemutakhiran (UD). Meningkatkan domain (UD) adalah kumpulan instans peran logis yang diperbarui sebagai grup. Azure memperbarui layanan awan satu UD sekaligus, yang memungkinkan instans di UD lain untuk terus melayani lalu lintas.
Jumlah default domain peningkatan adalah 5. Anda dapat menentukan jumlah domain peningkatan yang berbeda dengan menyertakan atribut upgradeDomainCount dalam file definisi layanan (.csdef). Untuk informasi selengkapnya tentang atribut upgradeDomainCount, lihat Skema Definisi Azure Cloud Service (File.csdef).
Saat Anda melakukan pembaruan di tempat dari satu atau beberapa peran dalam layanan Anda, Azure memperbarui kumpulan instans peran sesuai dengan domain peningkatan tempat peran tersebut berada. Azure memperbarui semua instans di domain peningkatan tertentu - menghentikannya, memperbaruinya, membawanya kembali on-line - lalu pindah ke domain berikutnya. Dengan hanya menghentikan instans yang berjalan di domain peningkatan saat ini, Azure memastikan bahwa pembaruan terjadi dengan dampak sesingkat mungkin ke layanan yang sedang berjalan. Untuk informasi selengkapnya, lihat Bagaimana pembaruan dilakukan nanti di artikel ini.
Catatan
Meskipun persyaratan pembaruan dan peningkatan memiliki arti yang sedikit berbeda dalam konteks Azure, mereka dapat digunakan secara bergantian untuk proses dan deskripsi fitur dalam dokumen ini.
Layanan Anda harus menentukan setidaknya dua instans peran agar peran tersebut diperbarui tanpa waktu henti. Jika layanan hanya terdiri dari satu instans dari satu peran, layanan Anda tidak tersedia hingga pembaruan di tempat selesai.
Artikel ini membahas informasi berikut tentang pembaruan Azure:
- Perubahan layanan yang diperbolehkan selama pembaruan
- Bagaimana peningkatan berlanjut
- Pembatalan pembaruan
- Memulai beberapa operasi bermutasi pada penyebaran yang sedang berlangsung
- Distribusi peran di seluruh domain peningkatan
Perubahan layanan yang diperbolehkan selama pembaruan
Tabel berikut ini memperlihatkan perubahan yang diperbolehkan pada layanan selama pembaruan:
Perubahan yang diizinkan untuk hosting, layanan, dan peran | Pembaruan di tempat | Bertahap (pertukaran VIP) | Menghapus dan menyebarkan ulang |
---|---|---|---|
Versi sistem operasi | Ya | Ya | Ya |
Tingkat kepercayaan .NET | Ya | Ya | Ya |
Ukuran komputer virtual1 | Ya2 | Ya | Ya |
Pengaturan penyimpanan lokal | Hanya tambah2 | Ya | Ya |
Menambahkan atau menghapus peran dalam layanan | Ya | Ya | Ya |
Jumlah instans dalam peran tertentu | Ya | Ya | Ya |
Jumlah atau tipe titik akhir untuk layanan | Ya2 | Tidak | Ya |
Nama dan nilai pengaturan konfigurasi | Ya | Ya | Ya |
Nilai (tapi bukan nama) dari pengaturan konfigurasi | Ya | Ya | Ya |
Tambah sertifikat baru | Ya | Ya | Ya |
Ubah sertifikat yang sudah ada | Ya | Ya | Ya |
Sebarkan kode baru | Ya | Ya | Ya |
1 Perubahan ukuran terbatas pada subkumpulan ukuran yang tersedia untuk layanan awan.
2 Memerlukan Azure SDK 1.5 atau versi yang lebih baru.
Peringatan
Mengubah ukuran komputer virtual akan menghancurkan data lokal.
Item berikut ini tidak didukung selama pembaruan:
- Mengubah nama peran. Hapus lalu tambahkan peran dengan nama baru.
- Mengubah jumlah Domain Peningkatan.
- Mengurangi ukuran sumber daya lokal.
Jika Anda membuat pembaruan lain untuk definisi layanan Anda, seperti mengurangi ukuran sumber daya lokal, Anda harus melakukan pembaruan pertukaran VIP sebagai gantinya. Untuk informasi selengkapnya, lihat Penyebaran Swap.
Bagaimana peningkatan berlanjut
Anda dapat memutuskan apakah Anda ingin memperbarui semua peran dalam layanan Anda atau satu peran dalam layanan. Dalam kedua kasus, semua contoh dari setiap peran yang sedang ditingkatkan dan milik domain pemutakhiran pertama dihentikan, ditingkatkan, dan dibawa kembali secara online. Setelah kembali online, instans di domain peningkatan kedua dihentikan, ditingkatkan, dan dibawa kembali secara online. Layanan awan dapat memiliki paling banyak satu peningkatan aktif pada satu waktu. Peningkatan selalu dilakukan terhadap versi terbaru layanan awan.
Diagram berikut mengilustrasikan bagaimana peningkatan berlangsung jika Anda memutakhirkan semua peran dalam layanan:
Diagram berikutnya ini menggambarkan bagaimana pembaruan berlangsung jika Anda hanya meningkatkan satu peran:
Selama pembaruan otomatis, Azure Fabric Controller secara berkala mengevaluasi kesehatan layanan awan untuk menentukan kapan aman untuk berjalan di UD berikutnya. Evaluasi kesehatan ini dilakukan berdasarkan per peran dan hanya mempertimbangkan instans dalam versi terbaru (yaitu, instans dari ED yang sudah berjalan). Ini memverifikasi bahwa, untuk setiap peran, jumlah minimum instans peran mencapai status terminal yang memuaskan.
Batas Waktu Mulai Instans Peran
Fabric Controller menunggu 30 menit agar setiap instans peran mencapai status Dimulai. Jika durasi waktu habis berlalu, Fabric Controller akan terus berjalan ke instans peran berikutnya.
Dampak untuk mendorong data selama peningkatan Cloud Service
Saat Anda meningkatkan layanan dari satu instans ke beberapa instans, Azure menurunkan layanan Anda saat peningkatan dilakukan. Perjanjian tingkat layanan yang menjamin ketersediaan layanan hanya berlaku untuk layanan yang disebarkan dengan lebih dari satu instans. Daftar berikut ini menjelaskan bagaimana setiap skenario peningkatan layanan Azure memengaruhi data di setiap drive:
Skenario | Drive C | Drive D | Drive E |
---|---|---|---|
Boot ulang komputer virtual (VM) | Diawetkan | Diawetkan | Diawetkan |
Mulai ulang portal | Diawetkan | Diawetkan | Dihancurkan |
Reimage portal | Diawetkan | Dihancurkan | Dihancurkan |
Peningkatan Di Tempat | Diawetkan | Diawetkan | Dihancurkan |
Migrasi node | Dihancurkan | Dihancurkan | Dihancurkan |
Dalam daftar sebelumnya, drive E: mewakili drive akar peran, dan tidak boleh dikodekan secara permanen. Sebagai gantinya, gunakan variabel lingkungan %RoleRoot% untuk mewakili drive.
Untuk meminimalkan waktu henti saat meningkatkan layanan instans tunggal, terapkan layanan multi-instans baru ke server pementasan dan lakukan pertukaran VIP.
Pembatalan pembaruan
Azure memberikan fleksibilitas dalam mengelola layanan selama pembaruan dengan memungkinkan Anda memulai lebih banyak operasi pada layanan, setelah Pengontrol Azure Fabric menerima permintaan pembaruan awal. Pembatalan hanya dapat dilakukan ketika pembaruan (perubahan konfigurasi) atau peningkatan dalam keadaan sedang berlangsung pada penyebaran. Pembaruan atau peningkatan dianggap sedang berlangsung selama setidaknya ada satu instans layanan yang tetap tidak diperbarui ke versi baru. Untuk menguji apakah pemutaran kembali diizinkan, periksa nilai bendera RollbackAllowed diatur ke true. Dapatkan operasi Penyebaran dan Dapatkan Properti Layanan Cloud mengembalikan bendera RollbackAllowed untuk referensi Anda.
Catatan
Masuk akal untuk memanggil Pemutaran kembali pada pembaruan atau peningkatan di tempat karena peningkatan swap VIP melibatkan penggantian satu seluruh instans yang berjalan dari layanan Anda dengan yang lain.
Pembatalan pembaruan yang sedang berlangsung memiliki efek berikut pada penyebaran:
- Setiap instans peran yang tetap tidak diperbarui atau tidak diperbarui ke versi baru tidak diperbarui atau ditingkatkan, karena instans tersebut sudah menjalankan versi target layanan.
- Setiap instans peran yang sudah diperbarui atau ditingkatkan ke versi baru file paket layanan (*.cspkg) atau file konfigurasi layanan (*.cscfg) (atau kedua file) dikembalikan ke versi pra-pemutakhiran file ini.
Fitur berikut menyediakan fungsionalitas ini:
Operasi Pembatalan Pembaruan Atau Peningkatan, yang dapat dipanggil pada pembaruan konfigurasi (dipicu dengan memanggil Ubah Konfigurasi Penyebaran) atau peningkatan (dipicu dengan memanggil Penyebaran Peningkatan) selama setidaknya ada satu instans dalam layanan yang tetap tidak diperbarui ke versi baru.
Elemen Terkunci dan elemen RollbackAllowed, yang dikembalikan sebagai bagian dari isi respons operasi Get Deployment dan Get Cloud Service Properties:
- Elemen Terkunci memungkinkan Anda mendeteksi kapan operasi bermutasi dapat dipanggil pada penyebaran tertentu.
- Elemen RollbackAllowed memungkinkan Anda mendeteksi kapan operasi Rollback Update Or Upgrade dapat dipanggil pada penyebaran tertentu.
Untuk melakukan pemutaran kembali, Anda tidak perlu memeriksa elemen Terkunci dan RollbackAllowed. Cukup untuk mengkonfirmasi bahwa RollbackAllowed diatur ke true. Elemen-elemen ini hanya dikembalikan jika metode ini dipanggil dengan menggunakan header permintaan yang diatur ke "x-ms-version: 2011-10-01" atau versi yang lebih baru. Untuk informasi selengkapnya tentang membuat versi header, lihat penerapan versi model penyebaran klasik.
Ada beberapa situasi di mana pemutaran kembali pembaruan atau peningkatan tidak didukung, situasi ini adalah sebagai berikut:
- Pengurangan sumber daya lokal - Jika pembaruan meningkatkan sumber daya lokal untuk peran yang tidak diizinkan platform Azure untuk kembali.
- Batasan kuota - Jika pembaruan adalah operasi menurunkan skala, Anda mungkin tidak lagi memiliki kuota komputasi yang memadai untuk menyelesaikan operasi pembatalan. Setiap langganan Azure memiliki kuota yang terkait dengannya. Kuota menentukan jumlah maksimum inti yang dapat digunakan oleh semua layanan yang dihosting milik langganan tersebut. Jika melakukan pemutaran kembali pembaruan tertentu akan menempatkan langganan Anda melebihi kuota, pemutaran kembali tersebut tidak akan diaktifkan.
- Kondisi balapan - Jika pembaruan awal selesai, pembatalan tidak dimungkinkan.
Contoh kapan pembatalan pembaruan mungkin berguna adalah jika Anda menggunakan operasi Tingkatkan Penyebaran dalam mode manual untuk mengontrol tingkat di mana peningkatan utama di tempat diluncurkan ke layanan yang dihosting Azure Anda.
Selama peluncuran peningkatan, Anda memanggil Tingkatkan Penyebaran dalam mode manual dan mulai memandu domain peningkatan. Jika pada titik tertentu, saat memantau peningkatan, Anda mencatat beberapa instans peran di domain peningkatan pertama tidak responsif, Anda dapat memanggil operasi Pembaruan Atau Peningkatan Putar Kembali pada penyebaran. Operasi ini tidak tersentuh instans yang tetap tidak dimutakhirkan dan mengembalikan instans yang ditingkatkan ke paket dan konfigurasi layanan sebelumnya.
Memulai beberapa operasi bermutasi pada penyebaran yang sedang berlangsung
Dalam beberapa kasus, Anda mungkin ingin memulai beberapa operasi bermutasi simultan pada penyebaran yang sedang berlangsung. Misalnya, Anda dapat melakukan pembaruan layanan dan, saat pembaruan diluncurkan di seluruh layanan Anda, Anda ingin membuat beberapa perubahan, seperti mengembalikan pembaruan, menerapkan pembaruan yang berbeda, atau bahkan menghapus penyebaran. Kasus di mana skenario ini mungkin muncul adalah jika peningkatan layanan berisi kode buggy yang menyebabkan instans peran yang ditingkatkan berulang kali mengalami crash. Dalam hal ini, Azure Fabric Controller tidak dapat membuat kemajuan dalam menerapkan peningkatan tersebut karena jumlah instans yang tidak mencukup di domain yang ditingkatkan sehat. Status ini disebut sebagai penyebaran macet. Anda dapat melepaskan penyebaran dengan mengembalikan pembaruan atau menerapkan pembaruan baru di atas yang gagal.
Setelah Pengontrol Azure Fabric menerima permintaan awal untuk memperbarui atau meningkatkan layanan, Anda dapat memulai operasi bermutasi berikutnya. Artinya, Anda tidak perlu menunggu operasi awal selesai sebelum Anda dapat memulai operasi bermutasi lain.
Memulai operasi pembaruan kedua saat pembaruan pertama sedang berlangsung diputar mirip dengan operasi pemutaran kembali. Jika pembaruan kedua dalam mode otomatis, domain peningkatan pertama segera ditingkatkan, mungkin mengarah ke instans dari beberapa domain peningkatan sedang offline pada saat yang sama.
Operasi bermutasi adalah sebagai berikut: Ubah Konfigurasi Penyebaran, Penyebaran Peningkatan, Status Penyebaran Pembaruan, Hapus Penyebaran, dan Pembaruan Atau Peningkatan Pembatalan.
Dua operasi, Dapatkan Penyebaran dan Dapatkan Properti Layanan Cloud, mengembalikan bendera Terkunci. Anda dapat memeriksa bendera Terkunci untuk menentukan apakah Anda dapat memanggil operasi bermutasi pada penyebaran tertentu.
Untuk memanggil versi metode ini yang mengembalikan bendera Terkunci, Anda harus mengatur header permintaan ke "x-ms-version: 2011-10-01" atau yang lebih baru. Untuk informasi selengkapnya tentang membuat versi header, lihat penerapan versi model penyebaran klasik.
Distribusi peran di seluruh domain peningkatan
Azure mendistribusikan instans peran secara merata di sejumlah domain peningkatan yang dapat dikonfigurasi sebagai bagian dari file definisi layanan (.csdef). Jumlah maksimum domain peningkatan adalah 20 dan defaultnya adalah 5. Untuk informasi selengkapnya tentang cara mengubah file definisi layanan, lihat Skema Definisi Layanan Azure (File.csdef).
Misalnya, jika peran Anda memiliki 10 instans, secara default setiap domain peningkatan berisi dua instans. Jika peran Anda memiliki 14 instans, maka empat domain peningkatan berisi tiga instans, dan domain kelima berisi dua.
Domain peningkatan diidentifikasi dengan indeks berbasis nol: domain peningkatan pertama memiliki ID 0, dan domain peningkatan kedua memiliki ID 1, dan seterusnya.
Diagram berikut mengilustrasikan bagaimana peran dalam layanan yang berisi dua peran didistribusikan saat layanan menentukan dua domain peningkatan. Layanan ini menjalankan delapan instans peran web dan sembilan instans peran pekerja.
Catatan
Perhatikan bahwa Azure mengontrol bagaimana instans dialokasikan di seluruh domain peningkatan. Tidak dimungkinkan untuk menentukan instans mana yang dialokasikan ke domain mana.
Langkah berikutnya
Cara Mengelola Layanan Awan
Cara Memantau Layanan Awan
Cara Mengonfigurasi Layanan Awan