Failover untuk kelangsungan bisnis dan pemulihan bencana

Untuk memaksimalkan waktu aktif Anda, rencanakan ke depan untuk menjaga kelangsungan bisnis dan mempersiapkan pemulihan bencana dengan Azure Machine Learning.

Microsoft berusaha untuk memastikan bahwa layanan Azure selalu tersedia. Namun, pemadaman layanan yang tidak dienkripsi mungkin terjadi. Kami sarankan agar rencana pemulihan bencana diberlakukan untuk menangani penghentian layanan regional. Dalam artikel ini, Anda akan mempelajari cara:

  • Rencanakan penyebaran multi-regional Azure Machine Learning dan sumber daya terkait.
  • Maksimalkan peluang untuk memulihkan log, notebook, gambar docker, serta metadata lainnya.
  • Desain untuk ketersediaan tinggi solusi Anda.
  • Memulai failover ke wilayah lain.

Penting

Azure Machine Learning sendiri tidak menyediakan failover otomatis atau pemulihan bencana. Pencadangan dan pemulihan metadata ruang kerja, seperti riwayat eksekusi juga tidak tersedia.

Jika Anda secara tidak sengaja menghapus ruang kerja atau komponen terkait, artikel ini juga memberi Anda opsi pemulihan yang saat ini didukung.

Memahami layanan Azure untuk Azure Machine Learning

Azure Machine Learning bergantung pada beberapa layanan Azure. Beberapa layanan tersebut tersedia dalam langganan Anda. Anda bertanggung jawab atas konfigurasi ketersediaan tinggi dari layanan ini. Layanan lain dibuat dalam langganan Microsoft dan dikelola oleh Microsoft.

Layanan Azure meliputi:

  • Infrastruktur Pembelajaran Mesin Azure: Lingkungan yang dikelola Microsoft untuk ruang kerja Azure Machine Learning.

  • Sumber daya terkait: Sumber daya yang disediakan dalam langganan Anda selama pembuatan ruang kerja Azure Machine Learning. Sumber daya ini termasuk Azure Storage, Azure Key Vault, Azure Container Registry, dan Application Insights.

    • Penyimpanan default memiliki data seperti model, data log pelatihan, dan referensi ke aset data.
    • Azure Key Vault memiliki kredensial untuk Azure Storage, Container Registry, dan penyimpanan data.
    • Container Registry memiliki gambar Docker untuk lingkungan pelatihan dan inferensi.
    • Application Insights adalah untuk memantau Azure Machine Learning.
  • Meng-komputasi sumber daya :Sumber daya yang Anda buat setelah penyebaran ruang kerja. Misalnya, Anda dapat membuat instans komputasi atau kluster komputasi untuk melatih model Azure Machine Learning.

    • Instans komputasi dan kluster komputasi: Lingkungan pengembangan model yang dikelola Microsoft.
    • Sumber daya lainnya: Sumber daya komputasi Microsoft yang dapat dilampirkan ke Azure Machine Learning, seperti Azure Kubernetes Service (AKS), Azure Databricks, Azure Container Instances, dan Azure HDInsight. Anda bertanggung jawab untuk mengonfigurasi pengaturan ketersediaan tinggi untuk sumber daya ini.
  • Penyimpanan data lainnya: Azure Pembelajaran Mesin dapat memasang penyimpanan data lain seperti Azure Storage dan Azure Data Lake Storage untuk data pelatihan. Penyimpanan data ini di-provisikan dalam langganan Anda. Anda bertanggung jawab untuk mengonfigurasi pengaturan ketersediaan tinggi mereka. Untuk melihat opsi penyimpanan data lainnya, lihat Membuat penyimpanan data.

Tabel berikut ini memperlihatkan layanan Azure dikelola oleh Microsoft dan mana yang dikelola oleh Anda. Ini juga menunjukkan layanan yang sangat tersedia secara default.

Layanan Dikelola oleh Ketersediaan tinggi secara default
Infrastruktur Azure Machine Learning Microsoft
Sumber daya terkait
Azure Storage Anda
Key Vault Anda
Container Registry Anda
Application Insights Anda NA
Sumber daya komputasi
Hitung intance Microsoft
Kluster komputasi Microsoft
Sumber daya komputasi lainnya seperti AKS,
Azure Databricks, Container Instances, HDInsight
Anda
Penyimpanan data lainnya seperti Azure Storage, SQL Database,
Azure Database for PostgreSQL, Azure Database for MySQL,
Sistem File Azure Databricks
Anda

Artikel lainnya menjelaskan tindakan yang perlu Anda ambil untuk membuat masing-masing layanan ini sangat tersedia.

Merencanakan penyebaran multi-regional

Penyebaran multi-regional bergantung pada pembuatan Azure Machine Learning dan sumber daya (infrastruktur) lainnya di dua wilayah Azure. Jika penghentian regional terjadi, Anda dapat beralih ke wilayah lain. Saat merencanakan tempat menyebarkan sumber daya Anda, pertimbangkan:

  • Ketersediaan regional: Jika memungkinkan, gunakan wilayah di area geografis yang sama, belum tentu yang paling dekat. Untuk memeriksa ketersediaan regional untuk Azure Machine Learning, lihat Produk Azure menurut wilayah.

  • Wilayah berpasangan Azure:Wilayah berpasangan mengoordinasikan pembaruan platform dan memprioritaskan upaya pemulihan jika diperlukan. Namun, tidak semua wilayah mendukung wilayah berpasangan. Untuk informasi selengkapnya, lihat Wilayah berpasangan Azure.

  • Ketersediaan layanan:Putuskan apakah sumber daya yang digunakan oleh solusi Anda harus panas/panas, panas/hangat, atau panas/dingin.

    • Panas/panas: Kedua wilayah aktif pada saat yang sama, dengan satu wilayah siap untuk segera digunakan.
    • Panas/hangat: Wilayah primer aktif, wilayah sekunder memiliki sumber daya penting (misalnya, model yang disebarkan) siap untuk memulai. Sumber daya nonkritis perlu disebarkan secara manual di wilayah sekunder.
    • Panas/dingin:Wilayah primer aktif, wilayah sekunder memiliki Azure Machine Learning dan sumber daya lain yang disebarkan, bersama dengan data yang diperlukan. Sumber daya seperti model, penyebaran model, atau saluran pipa perlu disebarkan secara manual.

Tip

Bergantung pada persyaratan bisnis Anda, Anda dapat memutuskan untuk memperlakukan sumber daya Azure Machine Learning yang berbeda secara berbeda. Misalnya, Anda mungkin ingin menggunakan panas/panas untuk model yang disebarkan (inferensi), dan panas/dingin untuk eksperimen (pelatihan).

Azure Machine Learning dibangun di atas layanan lain. Beberapa layanan dapat dikonfigurasi untuk direplikasi ke wilayah lain. Lainnya, Anda harus membuat secara manual di beberapa wilayah. Tabel berikut ini menyediakan daftar layanan, yang bertanggung jawab atas replikasi, dan ringkasan konfigurasi:

Layanan Azure Geo-direplikasi oleh Konfigurasi
Ruang kerja Azure Machine Learning Anda Membuat ruang kerja di wilayah yang dipilih.
Komputasi Pembelajaran Mesin Anda Membuat sumber daya komputasi di wilayah yang dipilih. Untuk sumber daya komputasi yang dapat menskalakan secara dinamis, pastikan kedua wilayah menyediakan kuota komputasi yang cukup untuk kebutuhan Anda.
registri Pembelajaran Mesin Anda Buat registri di beberapa wilayah.
Key Vault Microsoft Gunakan instans Azure Machine Learning yang sama dengan ruang kerja dan sumber daya Azure Machine Learning di kedua wilayah. Azure Key Vault secara otomatis gagal ke wilayah sekunder. Untuk informasi selengkapnya, lihat Ketersediaan dan redundansi Azure Key Vault.
Container Registry Microsoft Konfigurasikan instans Container Registry untuk mereplikasi registri secara geografis ke wilayah yang dipasangkan untuk Azure Machine Learning. Gunakan instans yang sama untuk kedua instans ruang kerja. Untuk informasi selengkapnya, lihat Replikasi geografis di Azure Container Registry.
Akun Penyimpanan Anda Azure Pembelajaran Mesin tidak mendukung failover akun penyimpanan default menggunakan penyimpanan geo-redundan (GRS), penyimpanan geo-zona-redundan (GZRS), penyimpanan geo-redundan akses baca (RA-GRS), atau penyimpanan geo-zona-redundan akses baca (RA-GZRS). Buat akun penyimpanan terpisah untuk penyimpanan default setiap ruang kerja.
Buat akun atau layanan penyimpanan terpisah untuk penyimpanan data lainnya. Untuk informasi lebih lanjut, lihat Redundansi Azure Storage.
Application Insights Anda Buat Application Insights untuk ruang kerja di kedua wilayah. Untuk menyesuaikan periode dan detail penyimpanan data, lihat Pengumpulan, penahanan, dan penyimpanan data di Application Insights.

Untuk mengaktifkan pemulihan dan menghidupkan ulang yang cepat di wilayah sekunder, kami merekomendasikan praktik pengembangan berikut:

  • Menggunakan templat Azure Resource Manager. Templat adalah 'infrastructure-as-code', dan memungkinkan Anda untuk dengan cepat menyebarkan layanan di kedua wilayah.
  • Untuk menghindari drift di antara kedua wilayah, perbarui saluran integrasi dan penyebaran berkelanjutan untuk disebarkan ke kedua wilayah.
  • Saat mengotomatiskan penyebaran, sertakan konfigurasi sumber daya komputasi yang terpasang di ruang kerja seperti Azure Kubernetes Service.
  • Buat penetapan peran untuk pengguna di kedua wilayah.
  • Buat sumber daya jaringan seperti Azure Virtual Networks dan titik akhir privat untuk kedua wilayah. Pastikan pengguna memiliki akses ke kedua lingkungan jaringan. Misalnya, konfigurasi VPN dan DNS untuk kedua jaringan virtual.

Komputasi dan layanan data

Bergantung pada kebutuhan Anda, Anda mungkin memiliki lebih banyak layanan komputasi atau data yang digunakan oleh Azure Pembelajaran Mesin. Misalnya, Anda dapat menggunakan Azure Kubernetes Services atau Azure SQL Database. Gunakan informasi berikut untuk mempelajari cara mengonfigurasi layanan ini untuk ketersediaan tinggi.

Sumber daya komputasi

Layanan data

Tip

Jika Anda menyediakan kunci yang dikelola pelanggan sendiri untuk menyebarkan ruang kerja Azure Machine Learning, Azure Cosmos DB juga disediakan dalam langganan Anda. Dalam hal ini, Anda bertanggung jawab untuk mengonfigurasi pengaturan ketersediaan tinggi. Lihat Ketersediaan tinggi dengan Azure Cosmos DB.

Desain untuk ketersediaan tinggi

Zona ketersediaan

Layanan Azure tertentu mendukung zona ketersediaan. Untuk wilayah yang mendukung zona ketersediaan, jika zona mengalami jeda beban kerja dan data harus disimpan. Namun, data tidak tersedia untuk di-refresh hingga zona kembali online.

Untuk informasi selengkapnya, lihat Layanan zona ketersediaan dan dukungan wilayah.

Menyebarkan komponen penting ke beberapa wilayah

Tentukan tingkat kelangsungan bisnis yang Anda bidik. Tingkat mungkin berbeda antara komponen solusi Anda. Misalnya, Anda mungkin ingin memiliki konfigurasi panas/panas untuk alur produksi atau penyebaran model, dan panas/dingin untuk eksperimen.

Mengelola data pelatihan tentang penyimpanan terisolasi

Dengan menjaga penyimpanan data Anda terisolasi dari penyimpanan default yang digunakan ruang kerja untuk log, Anda dapat:

  • Lampirkan instans penyimpanan yang sama dengan penyimpanan data ke ruang kerja utama dan sekunder.
  • Manfaatkan replikasi geografis untuk akun penyimpanan data dan maksimalkan waktu aktif Anda.

Mengelola aset pembelajaran mesin sebagai kode

Catatan

Pencadangan dan pemulihan metadata ruang kerja seperti riwayat eksekusi, model, dan lingkungan tidak tersedia. Menentukan aset dan konfigurasi sebagai kode yang menggunakan spesifikasi YAML akan membantu Anda membuat ulang aset di seluruh ruang kerja jika terjadi bencana.

Pekerjaan di Azure Machine Learning ditentukan oleh spesifikasi pekerjaan. Spesifikasi ini mencakup dependensi pada artefak input yang dikelola pada tingkat instans ruang kerja, termasuk lingkungan dan komputasi. Untuk pengiriman dan penyebaran pekerjaan multi-wilayah, kami merekomendasikan praktik berikut:

  • Kelola basis kode Anda secara lokal, didukung oleh repositori Git.

    • Ekspor buku catatan penting dari studio Azure Machine Learning.
    • Alur ekspor yang ditulis di studio sebagai kode.
  • Mengelola konfigurasi sebagai kode.

    • Hindari referensi yang dikodekan secara permanen ke ruang kerja. Sebagai gantinya, konfigurasikan referensi ke instans ruang kerja menggunakan file konfigurasi dan gunakan MLClient.from_config() untuk menginisialisasi ruang kerja.
    • Gunakan Dockerfile jika Anda menggunakan gambar Docker kustom.

Memulai failover

Melanjutkan bekerja di ruang kerja failover

Ketika ruang kerja utama Anda menjadi tidak tersedia, Anda dapat beralih ke ruang kerja sekunder untuk melanjutkan eksperimen dan pengembangan. Azure Pembelajaran Mesin tidak mengirimkan pekerjaan secara otomatis ke ruang kerja sekunder jika ada pemadaman. Perbarui konfigurasi kode Anda untuk mengarahkan ke sumber daya ruang kerja baru. Kami sarankan untuk menghindari referensi ruang kerja yang dikodekan secara permanen. Sebagai gantinya, gunakan file konfigurasi ruang kerja untuk meminimalkan langkah pengguna manual saat mengubah ruang kerja. Pastikan juga memperbarui otomatisasi apa pun, seperti integrasi berkelanjutan dan alur penyebaran ke ruang kerja baru.

Azure Pembelajaran Mesin tidak dapat menyinkronkan atau memulihkan artefak atau metadata antar instans ruang kerja. Bergantung pada strategi penyebaran aplikasi, Anda mungkin harus memindahkan artefak atau membuat ulang input eksperimen, seperti aset data, di ruang kerja failover untuk melanjutkan pengiriman pekerjaan. Jika Anda telah mengonfigurasi ruang kerja utama dan sumber daya ruang kerja sekunder untuk berbagi sumber daya terkait dengan geo-replikasi diaktifkan, beberapa objek mungkin tersedia secara langsung ke ruang kerja failover. Misalnya, jika kedua ruang kerja berbagi gambar docker yang sama, penyimpanan data yang dikonfigurasi, dan sumber daya Azure Key Vault. Diagram berikut menunjukkan konfigurasi di mana dua ruang kerja berbagi gambar yang sama (1), penyimpanan data (2), dan Azure Key Vault (3).

Diagram failover antara wilayah berpasangan.

Catatan

Setiap pekerjaan yang berjalan ketika penghentian layanan terjadi tidak akan secara otomatis beralih ke ruang kerja sekunder. Juga tidak mungkin bahwa pekerjaan akan dilanjutkan dan diselesaikan dengan sukses di ruang kerja utama setelah penghentian diselesaikan. Sebaliknya, pekerjaan ini harus dilipat kembali, baik di ruang kerja sekunder atau di primer (setelah penghentian diselesaikan).

Memindahkan artefak antar ruang kerja

Bergantung pada pendekatan pemulihan Anda, Anda mungkin perlu menyalin artefak di antara ruang kerja untuk melanjutkan pekerjaan Anda. Saat ini, portabilitas artefak antar ruang kerja terbatas. Sebaiknya kelola artefak sebagai kode jika memungkinkan agar dapat dibuat ulang dalam instans failover.

Artefak berikut dapat diekspor dan diimpor antar ruang kerja dengan menggunakan ekstensi Azure CLI untuk pembelajaran mesin:

Artefak Ekspor Impor
Model az ml model download --name {NAME} --version {VERSION} az ml model create
Lingkungan az ml environment share --name my-environment --version {VERSION} --resource-group {RESOURCE_GROUP} --workspace-name {WORKSPACE} --share-with-name {NEW_NAME_IN_REGISTRY} --share-with-version {NEW_VERSION_IN_REGISTRY} --registry-name {REGISTRY_NAME} az ml environment create
Pekerjaan Azure Machine Learning az ml job download -n {NAME} -g {RESOURCE_GROUP} -w {WORKSPACE_NAME} az ml job create -f {FILE} -g {RESOURCE_GROUP} -w {WORKSPACE_NAME}
Aset data az ml data share --name {DATA_NAME} --version {VERSION} --resource-group {RESOURCE_GROUP} --workspace-name {WORKSPACE} --share-with-name {NEW_NAME_IN_REGISTRy} --share-with-version {NEW_VERSION_IN_REGISTRY} --registry-name {REGISTRY_NAME} az ml data create -f {FILE} -g {RESOURCE_GROUP} --registry-name {REGISTRY_NAME}

Tip

  • Output pekerjaan disimpan di akun penyimpanan default yang terkait dengan ruang kerja. Meskipun output pekerjaan mungkin menjadi tidak dapat diakses dari antarmuka pengguna studio jika terjadi penghentian layanan, Anda dapat mengakses data tersebut secara langsung melalui akun penyimpanan. Untuk informasi selengkapnya tentang bekerja dengan data yang disimpan dalam blob, lihat Membuat, mengunduh, dan mencantumkan gumpalan dengan Azure CLI.

Opsi pemulihan

Penghapusan ruang kerja

Jika Anda secara tidak sengaja menghapus ruang kerja, Anda mungkin dapat memulihkannya. Untuk langkah-langkah pemulihan, lihat Memulihkan data ruang kerja setelah penghapusan yang tidak disengaja dengan penghapusan sementara.

Meskipun ruang kerja Anda tidak dapat dipulihkan, Anda mungkin masih dapat mengambil buku catatan Anda dari sumber daya penyimpanan Azure terkait ruang kerja dengan mengikuti langkah-langkah berikut:

  • Di portal Azure, navigasikan ke akun penyimpanan yang ditautkan ke ruang kerja Azure Pembelajaran Mesin yang dihapus.
  • Di bagian Penyimpanan data di sebelah kiri, pilih File bersama.
  • Notebook Anda terletak di file yang dibagikan dengan nama yang berisi ID ruang kerja Anda.

Langkah berikutnya

Untuk mempelajari penyebaran infrastruktur berulang dengan Azure Machine Learning, gunakan Templat Azure Resource Manager.