Bagikan melalui


Keandalan di Azure Logic Apps

Azure Logic Apps membantu Anda lebih mudah mengintegrasikan dan mengatur data antara aplikasi, layanan cloud, dan sistem lokal dengan mengurangi berapa banyak kode yang harus Anda tulis.

Saat Anda menggunakan Azure, keandalan adalah tanggung jawab bersama. Microsoft menyediakan berbagai kemampuan untuk mendukung ketahanan dan pemulihan. Anda bertanggung jawab untuk memahami cara kerja kemampuan tersebut dalam semua layanan yang Anda gunakan, dan memilih kemampuan yang Anda butuhkan untuk memenuhi tujuan bisnis dan tujuan waktu aktif Anda.

Artikel ini menjelaskan cara membuat alur kerja aplikasi logika tahan terhadap berbagai potensi pemadaman dan masalah, termasuk kesalahan sementara, pemadaman zona ketersediaan, dan pemadaman wilayah. Ini juga menyoroti informasi utama tentang perjanjian tingkat layanan (SLA) Azure Logic Apps.

Rekomendasi implementasi produksi untuk keandalan

Untuk alur kerja perusahaan dan aman yang memiliki persyaratan isolasi atau keamanan jaringan, kami sarankan Anda membuat dan menjalankan alur kerja Standar di Azure Logic Apps penyewa tunggal, bukan alur kerja Konsumsi di Azure Logic Apps multipenyewa. Untuk informasi selengkapnya, lihat Membuat dan menyebarkan ke lingkungan yang berbeda.

Untuk penyebaran produksi yang memiliki Azure Logic Apps dengan penyewa tunggal, kami sarankan Anda menyiapkan redundansi zona untuk memisahkan sumber daya aplikasi logika Anda di beberapa zona ketersediaan.

Gambaran umum arsitektur keandalan

Bagian ini menjelaskan beberapa aspek penting tentang cara kerja layanan yang paling relevan dari perspektif keandalan. Bagian ini memperkenalkan arsitektur logis, yang mencakup beberapa sumber daya dan fitur yang Anda sebarkan dan gunakan. Ini juga membahas arsitektur fisik, yang memberikan detail tentang cara kerja layanan di bawah sampul.

Arsitektur logika

Sumber daya utama yang Anda sebarkan adalah aplikasi logika. Aplikasi logika konsumsi hanya memiliki satu alur kerja, sementara aplikasi logika Standar dapat memiliki lebih dari satu alur kerja. Sebagian besar alur kerja menggunakan satu atau beberapa koneksi untuk mengakses aplikasi, layanan, dan sistem lain.

Jika Anda mengakses data dalam sistem lokal, Anda mungkin menyebarkan gateway data di lokasi. Setiap sumber daya gerbang mewakili instalasi gerbang data terpisah di komputer lokal. Anda dapat mengonfigurasi gateway data lokal untuk ketersediaan tinggi dengan menggunakan beberapa komputer. Untuk informasi selengkapnya, lihat Dukungan Ketersediaan Tinggi.

Saat Anda menggunakan Azure Logic Apps untuk skenario integrasi perusahaan business-to-business (B2B), Anda dapat menyebarkan akun integrasi tempat Anda menentukan dan menyimpan artefak yang digunakan alur kerja aplikasi logika.

Arsitektur fisik

Untuk aplikasi logika Konsumsi, Azure Logic Apps secara otomatis mengelola infrastruktur komputasi, penyimpanan status, dan sumber daya lainnya. Anda tidak perlu mengonfigurasi atau mengelola komputer virtual (VM) apa pun. Aplikasi logika konsumsi berbagi infrastruktur komputasi antara banyak pelanggan.

Untuk aplikasi logika Standar, Azure Logic Apps menggunakan sumber daya komputasi yang disebut Paket Layanan Alur Kerja, atau paket, yang didedikasikan untuk Anda. Setiap rencana dapat memiliki beberapa instans, yang dapat Anda sebarkan secara opsional di beberapa zona ketersediaan. Setiap instans berkorelasi dengan komputer virtual (VM), meskipun Anda tidak melihat VM tersebut dan tidak perlu mengonfigurasi atau mengelolanya secara langsung. Alur kerja Anda berjalan pada instance paket Anda.

Aplikasi logika standar mengharuskan Anda mengonfigurasi penyimpanan untuk mempertahankan status alur kerja stateful. Untuk informasi selengkapnya, lihat Alur kerja stateful dan stateless.

Aplikasi logika standar menggunakan infrastruktur yang mendasar serupa dengan Azure Functions dan Azure App Service. Tetapi beberapa perbedaan ada dalam cara Anda mengonfigurasi paket untuk aplikasi logika dibandingkan dengan layanan lain.

Untuk informasi selengkapnya, lihat Perbedaan antara aplikasi logika Standar versus aplikasi logika Konsumsi.

Ketahanan terhadap kesalahan sementara

Kesalahan sementara adalah kegagalan yang bersifat sementara dan intermiten dalam komponen. Mereka sering terjadi di lingkungan terdistribusi seperti cloud, dan mereka adalah bagian normal dari operasi. Kesalahan sementara memperbaiki diri setelah waktu yang singkat. Penting bahwa aplikasi Anda dapat menangani kesalahan sementara, biasanya dengan mencoba kembali permintaan yang terpengaruh.

Semua aplikasi yang dihosting cloud harus mengikuti panduan penanganan kesalahan sementara Azure saat berkomunikasi dengan API, database, dan komponen lain yang dihosting cloud. Untuk informasi selengkapnya, lihat Rekomendasi untuk menangani kesalahan sementara.

Di Azure Logic Apps, banyak pemicu dan tindakan alur kerja secara otomatis mendukung kebijakan coba lagi, yang secara otomatis mencoba kembali permintaan yang gagal karena kesalahan sementara. Untuk informasi selengkapnya tentang cara mengubah atau menonaktifkan kebijakan coba lagi, lihat Menangani kesalahan dan pengecualian di Azure Logic Apps.

Jika tindakan gagal, Anda dapat menyesuaikan perilaku tindakan berikutnya. Anda juga dapat membuat cakupan untuk mengelompokkan tindakan terkait yang mungkin gagal atau berhasil secara bersamaan.

Untuk informasi selengkapnya, lihat Menangani kesalahan dan pengecualian di Azure Logic Apps.

Ketahanan terhadap kegagalan zona ketersediaan

Zona ketersediaan adalah grup pusat data yang terpisah secara fisik dalam wilayah Azure. Ketika satu zona gagal, layanan dapat melakukan failover ke salah satu zona yang tersisa.

Azure Logic Apps mendukung redundansi zona, yang menyebarkan sumber daya komputasi dan status di beberapa zona ketersediaan. Saat Anda mendistribusikan sumber daya beban kerja aplikasi logika di seluruh zona ketersediaan, Anda meningkatkan ketahanan dan keandalan untuk beban kerja aplikasi logika produksi Anda.

Alur kerja aplikasi logika Consumption yang baru dan yang sudah ada di Azure Logic Apps multi-penyewa secara otomatis memiliki redundansi zona.

Azure Logic Apps mendukung redundansi zona, yang menyebarkan sumber daya komputasi di beberapa zona ketersediaan. Anda dapat secara opsional mengonfigurasi redundansi zona untuk status yang disimpan alur kerja aplikasi logika Anda. Saat Anda mendistribusikan sumber daya beban kerja aplikasi logika di seluruh zona ketersediaan, Anda meningkatkan ketahanan dan keandalan untuk beban kerja aplikasi logika produksi Anda.

Untuk alur kerja Standar yang memiliki opsi hosting Paket Layanan Alur Kerja di Azure Logic Apps penyewa tunggal, Anda dapat mengaktifkan redundansi zona secara opsional.

Untuk alur kerja Standar yang memiliki opsi hosting App Service Environment, Anda dapat mengaktifkan redundansi zona secara opsional. Untuk informasi selengkapnya tentang bagaimana App Service Environment mendukung zona ketersediaan, lihat Keandalan di Lingkungan App Service.

Persyaratan

  • Dukungan wilayah: Aplikasi konsumsi yang disebarkan di wilayah mana pun yang mendukung zona ketersediaan secara otomatis tahan terhadap gangguan zona. Jepang Barat adalah pengecualian. Ini tidak mendukung logika aplikasi zona redundan karena beberapa layanan dependen tidak mendukung redundansi zona.
  • Dukungan wilayah: Anda dapat menyebarkan aplikasi logika Standar zona-redundan dengan Paket Layanan Alur Kerja di wilayah mana pun yang mendukung zona ketersediaan untuk App Service. Jepang Barat adalah pengecualian. Ini tidak mendukung logika aplikasi zona redundan karena beberapa layanan dependen tidak mendukung redundansi zona. Untuk informasi selengkapnya, lihat Keandalan di App Service.
  • Dukungan wilayah: Untuk melihat wilayah mana yang mendukung zona ketersediaan untuk Lingkungan App Service, lihat Wilayah.
  • Jumlah instans: Anda harus menyebarkan setidaknya dua instans Paket Layanan Alur Kerja Anda. Setiap instans kira-kira sesuai dengan satu VM, jadi untuk mendistribusikan instans ini (VM) di beberapa zona ketersediaan, Anda harus memiliki dua instans minimal.

Pertimbangan

  • Penyimpanan: Saat mengonfigurasi penyimpanan eksternal untuk alur kerja Standar stateful, Anda harus mengonfigurasi akun penyimpanan Anda untuk redundansi zona. Untuk informasi selengkapnya, lihat Pertimbangan penyimpanan untuk Azure Functions.
  • Konektor: Konektor bawaan akan menjadi redundan zona secara otomatis apabila aplikasi logika Anda juga redundan zona.

  • Akun integrasi: Akun integrasi SKU Premium secara default bersifat redundan untuk zona.

Biaya

Tidak ada biaya tambahan yang berlaku untuk menggunakan redundansi zona. Semua aplikasi logika Konsumsi baru dan yang sudah ada secara otomatis redundan zona.

Saat Anda memiliki aplikasi logika Standar dengan Paket Layanan Alur Kerja di Azure Logic Apps penyewa tunggal, tidak ada biaya tambahan yang berlaku untuk mengaktifkan redundansi zona jika Anda memiliki dua instans paket atau lebih. Anda dikenakan biaya berdasarkan SKU paket Anda, kapasitas yang ditentukan, dan instans yang Anda skalakan naik atau turun, berdasarkan kriteria skala otomatis Anda. Jika Anda mengaktifkan zona ketersediaan tetapi menentukan kurang dari dua instance, platform akan memberlakukan minimum dua instance dan menagih Anda untuk kedua instance tersebut.

App Service Environment memiliki model harga tertentu untuk redundansi zona. Untuk informasi selengkapnya, lihat Harga.

Mengonfigurasi dukungan zona ketersediaan

Alur kerja aplikasi logika konsumsi secara otomatis mendukung redundansi zona, sehingga tidak diperlukan konfigurasi.

  • Membuat aplikasi logika zona-redundan baru: Untuk mengaktifkan redundansi zona untuk aplikasi logika Standar, lihat Mengaktifkan redundansi zona untuk aplikasi logika Anda.

  • Aktifkan redundansi zona pada aplikasi logika yang ada: Anda tidak dapat mengaktifkan redundansi zona setelah membuat paket layanan. Sebagai gantinya, Anda perlu membuat paket baru yang mengaktifkan redundansi zona dan menghapus yang lama.

  • Nonaktifkan redundansi zona: Anda tidak dapat menonaktifkan redundansi zona setelah membuat Paket Layanan Alur Kerja. Sebagai gantinya, Anda perlu membuat paket baru yang menonaktifkan redundansi zona dan menghapus yang lama.

Perencanaan dan manajemen kapasitas

Untuk mempersiapkan kegagalan zona ketersediaan, pertimbangkan untuk menyediakan kapasitas paket Anda secara berlebihan. Provisi berlebihan memungkinkan solusi untuk mentolerir beberapa tingkat kehilangan kapasitas dan masih terus berfungsi tanpa penurunan performa. Untuk informasi selengkapnya, lihat Mengelola kapasitas dengan penyediaan berlebih.

Perilaku ketika semua zona sehat

Bagian ini menjelaskan apa yang diharapkan ketika sumber daya aplikasi logika dikonfigurasi untuk redundansi zona dan semua zona ketersediaan beroperasi.

  • Perutean lalu lintas antar zona: Selama operasi normal, pemanggilan alur kerja dapat menggunakan sumber daya komputasi dari zona ketersediaan apa pun di wilayah tersebut.

  • Replikasi data antar zona: Untuk alur kerja stateful, status alur kerja direplikasi secara sinkron antara zona ketersediaan dengan menggunakan penyimpanan zona redundan (ZRS).

  • Pengaturan rute lalu lintas antar zona: Selama operasi normal, pemanggilan alur kerja tersebar di antara semua instance rencana yang tersedia di semua zona ketersediaan.

  • Replikasi data antar zona: Untuk alur kerja stateful, status alur kerja disimpan berdasarkan penyimpanan status yang Anda konfigurasi. Saat Anda menggunakan Azure Storage sebagai sistem penyimpanan eksternal, Anda perlu menggunakan penyimpanan zona redundan (ZRS), yang secara sinkron mereplikasi status alur kerja antar zona ketersediaan.

Perilaku selama kegagalan zona

Bagian ini menjelaskan apa yang diharapkan ketika terjadi pemadaman zona ketersediaan dan sumber daya aplikasi logika dikonfigurasi untuk redundansi zona.

  • Deteksi dan respons: Azure Logic Apps bertanggung jawab untuk mendeteksi kegagalan di zona ketersediaan. Anda tidak perlu melakukan apa pun untuk memulai failover zona.
  • Pemberitahuan: Microsoft tidak secara otomatis memberi tahu Anda saat zona tidak berfungsi. Namun, Anda dapat menggunakan Azure Service Health untuk memahami kesehatan layanan secara keseluruhan, termasuk kegagalan zona apa pun, dan Anda dapat menyiapkan pemberitahuan Service Health untuk memberi tahu Anda tentang masalah.
  • Permintaan aktif: Jika zona ketersediaan menjadi tidak tersedia, Azure Logic Apps mengakhiri eksekusi alur kerja yang sedang berlangsung yang berjalan pada VM di zona ketersediaan yang rusak. Platform secara otomatis melanjutkan alur kerja pada VM lain di zona ketersediaan yang berbeda. Karena perilaku ini, alur kerja aktif mungkin mengalami beberapa kesalahan sementara atau latensi yang lebih tinggi ketika VM baru ditambahkan ke zona ketersediaan yang tersisa.

  • Waktu henti yang diharapkan: Tidak ada waktu henti yang diharapkan di Azure Logic Apps. Tetapi jika dependensi ada pada layanan lain yang mengalami waktu henti, aplikasi logika Anda mungkin juga terpengaruh.

  • Kehilangan data yang diharapkan: Tidak ada kehilangan data yang diharapkan.

  • Pengaturan Ulang Lalu Lintas: Lalu lintas masuk secara otomatis didistribusikan ke infrastruktur di zona yang berfungsi dengan baik.
  • Pendistribusian ulang lalu lintas: Lalu lintas masuk secara otomatis didistribusikan ke instance rencana baru di zona yang berfungsi dengan baik saat tersedia. Untuk informasi selengkapnya, lihat Perilaku selama kegagalan zona.
  • Perilaku nonruntime: Alur kerja aplikasi logika dalam rencana zona redundan terus berjalan meskipun zona ketersediaan mengalami pemadaman. Tetapi perilaku nonruntime mungkin terpengaruh selama pemadaman zona ketersediaan. Untuk informasi selengkapnya dan daftar perilaku ini, lihat Perilaku selama kegagalan zona.
  • Perilaku nonruntime: Alur kerja aplikasi logika dalam rencana zona redundan terus berjalan meskipun zona ketersediaan mengalami pemadaman. Tetapi perilaku nonruntime mungkin terpengaruh selama pemadaman zona ketersediaan. Untuk informasi selengkapnya dan daftar perilaku ini, lihat Lingkungan - Perilaku selama kegagalan zona.

Pemulihan Zona

Saat zona ketersediaan pulih, Azure Logic Apps secara otomatis memulihkan instans di zona ketersediaan, menghapus instans sementara yang dibuat di zona ketersediaan lain, dan mengalihkan lalu lintas antara instans Anda seperti biasa.

Uji kegagalan zona

Azure Logic Apps mengelola perutean lalu lintas, failover, dan failback untuk sumber daya aplikasi logika zona redundan. Anda tidak perlu memulai apa pun. Fitur ini dikelola sepenuhnya, sehingga Anda tidak perlu memvalidasi proses kegagalan zona ketersediaan.

Ketahanan terhadap kegagalan di seluruh wilayah

Setiap aplikasi logika disebarkan ke dalam satu wilayah Azure. Jika wilayah tidak dapat diakses, aplikasi logika Anda juga tidak tersedia.

Solusi multi-wilayah kustom untuk ketahanan

Untuk ketahanan yang lebih tinggi, Anda dapat menyebarkan aplikasi logika siaga atau cadangan di wilayah sekunder dan melakukan failover ke wilayah lain tersebut jika wilayah utama tidak tersedia. Untuk menyiapkan kemampuan ini, selesaikan tugas berikut:

  • Sebarkan aplikasi logika Anda di wilayah primer dan sekunder.
  • Konfigurasi ulang koneksi ke sumber daya sesuai kebutuhan.
  • Mengonfigurasi kebijakan penyeimbangan beban dan failover.
  • Rencanakan untuk memantau status kesehatan instans utama dan memulai proses failover.

Untuk informasi selengkapnya tentang penyebaran multi-wilayah untuk alur kerja aplikasi logika Anda, lihat artikel berikut ini:

Perjanjian tingkat layanan

Perjanjian tingkat layanan (SLA) untuk layanan Azure menjelaskan ketersediaan yang diharapkan dari setiap layanan dan kondisi yang harus dipenuhi solusi Anda untuk mencapai harapan ketersediaan tersebut. Untuk informasi selengkapnya, lihat SLA untuk layanan online.