Baca dalam bahasa Inggris

Bagikan melalui


Azure Event Hubs - Pemulihan bencana geografis

Artikel ini menjelaskan fitur pemulihan bencana geografis yang mereplikasi metadata dan tersedia secara umum. Ini tidak menjelaskan fitur replikasi geografis pratinjau publik, yang mereplikasi data dan metadata. Untuk informasi selengkapnya, lihat Replikasi geografis.

Model kluster Azure Event Hubs yang aktif dengan dukungan zona ketersediaan memberikan ketahanan terhadap pemadaman perangkat keras dan pusat data. Namun, jika bencana di mana seluruh wilayah dan semua zona tidak tersedia, Anda dapat menggunakan pemulihan bencana geografis untuk memulihkan beban kerja dan konfigurasi aplikasi Anda. Pemulihan Geo-Disaster memastikan bahwa seluruh konfigurasi namespace layanan (Azure Event Hubs, Grup Konsumen, dan pengaturan) terus direplikasi dari namespace utama ke namespace layanan sekunder saat dipasangkan.

Fitur pemulihan bencana Geo Azure Service Bus adalah solusi pemulihan bencana. Konsep dan alur kerja yang dijelaskan dalam artikel ini berlaku untuk skenario bencana, dan bukan untuk pemadaman sementara. Untuk diskusi terperinci tentang pemulihan bencana di Microsoft Azure, lihat artikel ini. Dengan pemulihan Geo-Disaster, Anda dapat memulai perpindahan failover sekali-saja dari primer ke sekunder kapan saja. Pemindahan failover menunjuk nama alias yang dipilih untuk namespace ke namespace sekunder. Setelah pemindahan, pemasangan kemudian dihapus. Failover hampir dijalankan seketika setelah dimulai.

Penting

  • Fitur ini memungkinkan kelangsungan operasi seketika dengan konfigurasi yang sama, tetapi tidak mereplikasi data peristiwa. Kecuali bencana menyebabkan hilangnya semua zona, data peristiwa yang dipertahankan di Hub Peristiwa utama setelah failover akan dapat dipulihkan dan peristiwa bersejarah dapat diperoleh dari sana setelah akses dipulihkan. Untuk mereplikasi konten antrean dan langganan topik serta mengoperasikan namespace yang sesuai dalam konfigurasi aktif untuk mengatasi pemadaman dan bencana, jangan hanya mengandalkan set fitur pemulihan bencana Geo ini, tetapi ikuti panduan replikasi.
  • Penetapan kontrol akses berbasis peran (RBAC) Microsoft Entra ke entitas di namespace layanan utama tidak direplikasi ke namespace sekunder. Buat tugas peran secara manual di namespace layanan sekunder untuk mengamankan aksesnya.

Konsep dan istilah dasar

Fitur pemulihan bencana menerapkan metadata pemulihan bencana, dan mengandalkan namespace pemulihan bencana primer dan sekunder. Fitur pemulihan bencana geografis hanya tersedia untuk tingkat standar, premium, dan khusus. Anda tidak perlu membuat perubahan string koneksi apa pun, karena koneksi dibuat melalui alias.

Alat berikut ini digunakan dalam artikel ini:

  • Alias: Nama untuk konfigurasi pemulihan bencana yang Anda siapkan. Alias menyediakan string koneksi Nama Domain yang Sepenuhnya Memenuhi Syarat (FQDN) yang stabil. Aplikasi menggunakan string koneksi alias ini untuk menyambungkan ke namespace.
  • Namespace primer/sekunder: Namespace yang sesuai dengan alias. Namespace utama aktif dan menerima pesan (bisa berupa namespace layanan yang sudah ada atau baru). Namespace sekunder pasif dan tidak menerima pesan. Metadata di antara keduanya disinkronkan, sehingga keduanya dapat menerima pesan dengan lancar tanpa kode aplikasi atau perubahan string koneksi. Untuk memastikan bahwa hanya namespace aktif yang menerima pesan, Anda harus menggunakan alias.
  • Metadata: Entitas seperti hub peristiwa dan grup konsumen, dan properti layanan mereka yang terkait dengan namespace layanan. Hanya entitas dan pengaturannya yang direplikasi secara otomatis. Pesan dan acara tidak direplikasi.
  • Failover: Proses aktivasi namespace sekunder.

Pasangan ruang nama yang didukung

Kombinasi ruang nama primer dan sekunder berikut didukung:

Tingkat namespace layanan utama Tingkat namespace layanan sekunder yang diizinkan
Standard Standar, Khusus
Premium Premium
Khusus Khusus

Penting

Anda tidak dapat memasangkan namespace yang berada di kluster khusus yang sama. Anda tidak dapat memasangkan namespace yang berada di kluster khusus yang sama.

Alur penyetelan dan failover

Bagian berikut ini adalah gambaran umum dari proses failover, dan menjelaskan cara menyiapkan failover awal.

Cuplikan layar memperlihatkan gambaran umum proses failover.

Catatan

Fitur Pemulihan bencana geografis tidak mendukung failover otomatis.

Siapkan

Anda terlebih dahulu membuat atau menggunakan namespace primer yang sudah ada, dan namespace sekunder baru, lalu memasangkan keduanya. Pemasangan ini memberi Anda alias yang dapat digunakan untuk tersambung. Karena menggunakan alias, Anda tidak perlu mengubah string koneksi. Hanya namespace baru yang dapat ditambahkan ke pemasangan failover Anda.

  1. Buat namespace primer.

  2. Buat namespace sekunder di wilayah yang berbeda. Langkah ini bersifat opsional. Anda dapat membuat namespace sekunder saat membuat pasangan di langkah berikutnya.

  3. Di portal Azure, navigasikan ke namespace primer Anda.

  4. Pilih Pemulihan Geo di menu sebelah kiri, lalu pilih Mulai pemasangan pada bar alat.

    Cuplikan layar yang memperlihatkan halaman Pemulihan geografis untuk namespace Layanan Pusat Aktivitas dengan tombol Mulai Pemasangan dipilih.

  5. Pada halaman Mulai pemasangan, ikuti langkah-langkah berikut:

    1. Pilih namespace sekunder yang sudah ada atau buat di wilayah lain. Dalam contoh ini, ruang nama yang ada dipilih.
    2. Untuk Alias, masukkan alias untuk pemasangan geo-dr.
    3. Lalu, pilih Buat.

    Cuplikan layar yang memperlihatkan pilihan namespace sekunder untuk pemasangan.

  6. Anda akan melihat halaman Geo-DR Alias. Anda juga dapat membuka halaman Geo-DR Alias dari halaman namespace primer dengan memilih Geo-recovery di menu sebelah kiri.

    Cuplikan layar yang memperlihatkan halaman Alias Geo-DR memperlihatkan namespace primer dan sekunder.

  7. Pada halaman Alias Geo-DR, pilih Kebijakan akses bersama di menu sebelah kiri untuk mengakses string koneksi primer untuk alias. Use this connection string instead of using the connection string to the primary/secondary namespace directly.

  8. Pada halaman Gambaran Umum ini, Anda bisa melakukan tindakan berikut:

    1. Putuskan pemasangan antara namespace primer dan sekunder. Pilih Putuskan pemasangan pada bar alat.

    2. Lakukan failover secara manual ke namespace sekunder. Pilih Failover pada bar alat.

      Cuplikan layar yang memperlihatkan menu Putuskan Pemasangan dan Failover di halaman Alias Geo-DR Azure Event Hubs.

      Peringatan

      Failover mengaktifkan namespace sekunder dan menghapus namespace utama dari pemasangan Geo-Disaster Recovery. Buat namespace lain untuk memiliki pasangan pemulihan bancana-geo baru.

Akhirnya, Anda harus menambahkan beberapa pemantauan untuk mendeteksi apakah failover diperlukan. Dalam kebanyakan kasus, layanan ini adalah salah satu bagian dari ekosistem besar dan dengan demikian failover otomatis jarang dimungkinkan, karena seringkali failover harus dilakukan sinkron dengan subsistem atau infrastruktur yang tersisa.

Contoh

Dalam salah satu contoh skenario ini, pertimbangkan solusi Point of Sale (POS) yang memancarkan pesan atau peristiwa. Hub Kejadian meneruskan peristiwa tersebut ke beberapa solusi pemetaan atau reformatting, yang kemudian meneruskan data yang dipetakan ke sistem lain untuk diproses lebih lanjut. Pada saat itu, semua sistem ini mungkin dihosting di wilayah Azure yang sama. Keputusan kapan dan bagian apa yang gagal tergantung pada aliran data dalam infrastruktur Anda.

Anda dapat mengotomatiskan failover baik dengan sistem pemantauan ataupun dengan solusi pemantauan yang dibuat khusus. Namun, otomatisasi semacam itu membutuhkan perencanaan dan pekerjaan ekstra, yang tidak dicakup dalam artikel ini.

Alur failover

Jika Anda memulai failover, diperlukan dua langkah:

  1. Jika pemadaman lain terjadi, Anda ingin dapat melakukan failover lagi. Jadi, siapkan namespace pasif lain dan perbarui pemasangan.
  2. Tarik pesan dari namespace primer sebelumnya setelah tersedia lagi. Setelah itu, gunakan namespace tersebut untuk pesan reguler di luar pengaturan pemulihan geografis Anda, atau hapus ruang nama primer yang lama.

Catatan

Hanya semantik penerusan yang gagal yang didukung. Dalam skenario ini, Anda melakukan failover, lalu memasangkan kembali dengan namespace baru. Fallback tidak didukung; misalnya, dalam kluster SQL.

Gambar yang menunjukkan alur failover.

Failover manual

Bagian ini memperlihatkan cara kegagalan secara manual saat menggunakan portal Azure, CLI, PowerShell, C#, dll.

  1. Di portal Azure, navigasikan ke namespace primer Anda.

  2. Pilih Pemulihan geografis di menu sebelah kiri.

  3. Lakukan failover secara manual ke namespace sekunder. Pilih Failover pada bar alat.

    Peringatan

    Failover akan mengaktifkan namespace sekunder dan menghapus namespace primer dari pemasangan Geo-Pemulihan Bencana. Buat namespace lain untuk memiliki pasangan pemulihan bancana-geo baru.

Manajemen

Jika Anda membuat kesalahan; misalnya, Anda memasangkan bidang yang salah selama pengaturan awal, Anda dapat memutuskan pemasangan dua namespace kapan saja. Jika Anda ingin menggunakan namespace yang dipasangkan sebagai namespace biasa, hapus alias.

Pertimbangan

Perhatikan pertimbangan berikut untuk diingat:

  1. Secara desain, pemulihan bencana geografis Azure Event Hubs tidak mereplikasi data, dan oleh karena itu Anda tidak dapat menggunakan kembali nilai offset lama hub peristiwa utama Anda di hub peristiwa sekunder Anda. Sebaiknya mulai ulang penerima peristiwa Anda dengan salah satu metode berikut:

    • EventPosition.FromStart() - Jika Anda ingin membaca semua data di hub peristiwa sekunder Anda.
    • EventPosition.FromEnd() - Jika Anda ingin membaca semua data baru dari waktu koneksi ke hub peristiwa sekunder Anda.
    • EventPosition.FromEnqueuedTime(dateTime) - Jika Anda ingin membaca semua data yang diterima di hub acara sekunder Anda mulai dari tanggal dan waktu tertentu.
  2. Dalam perencanaan failover Anda, Anda juga harus mempertimbangkan faktor waktu. Misalnya, jika Anda kehilangan konektivitas selama lebih dari 15 hingga 20 menit, Anda mungkin memutuskan untuk memulai failover.

  3. Faktanya bahwa tidak ada data yang direplikasi berarti bahwa sesi aktif saat ini tidak direplikasi. Selain itu, deteksi duplikat dan pesan terjadwal mungkin tidak berfungsi. Sesi baru, pesan terjadwal baru, dan duplikat baru akan berfungsi.

  4. Melakukan failover atas infrastruktur terdistribusi yang kompleks harus dilatih setidaknya sekali.

  5. Menyinkronkan entitas dapat memakan waktu, sekitar 50-100 entitas per menit.

  6. Beberapa aspek bidang manajemen untuk namespace layanan sekunder menjadi baca-saja saat pasangan pemulihan geografis aktif.

  7. Bidang data namespace sekunder akan bersifat baca-saja saat pemasangan pemulihan geografis aktif. Bidang data namespace sekunder akan menerima permintaan GET untuk mengaktifkan validasi konektivitas klien dan kontrol akses.

Titik Akhir Privat

Bagian ini memberikan lebih banyak pertimbangan saat menggunakan pemulihan bencana Geo dengan namespace yang menggunakan titik akhir pribadi. Untuk mempelajari tentang menggunakan titik akhir privat dengan Hub Kejadian secara umum, lihat Mengonfigurasi titik akhir privat.

Pasangan baru

Jika Anda mencoba melakukan pemasangan antara namespace primer dengan titik akhir pribadi dan namespace sekunder tanpa titik akhir pribadi, pemasangan akan gagal. Pemasangan akan berhasil hanya jika namespace primer dan sekunder memiliki titik akhir pribadi. Sebaiknya Anda menggunakan konfigurasi yang sama pada namespace primer dan sekunder serta pada jaringan virtual tempat titik akhir pribadi dibuat.

Catatan

Ketika Anda mencoba memasangkan namespace primer dengan titik akhir pribadi dan namespace sekunder, proses validasi hanya memeriksa apakah titik akhir pribadi ada pada namespace sekunder. Ini tidak memeriksa apakah titik akhir berfungsi atau akan berfungsi setelah failover. Anda bertanggung jawab untuk memastikan bahwa namespace sekunder dengan titik akhir pribadi akan berfungsi seperti yang diharapkan setelah failover.

Untuk menguji bahwa konfigurasi titik akhir privat sama pada namespace utama dan sekunder, kirim permintaan baca (misalnya: Dapatkan Event Hub)ke ruang nama sekunder dari luar jaringan virtual, dan verifikasi bahwa Anda menerima pesan kesalahan dari layanan.

Pasangan yang sudah ada

Jika pemasangan antara namespace primer dan sekunder sudah ada, pembuatan titik akhir pribadi pada namespace primer akan gagal. Untuk mengatasinya, buat titik akhir pribadi pada namespace sekunder terlebih dahulu, lalu buat titik akhir untuk namespace primer.

Catatan

Meskipun kami mengizinkan akses baca-saja ke namespace sekunder, pembaruan untuk konfigurasi titik akhir pribadi diizinkan.

Saat membuat konfigurasi pemulihan bencana untuk aplikasi dan Service Bus, Anda harus membuat titik akhir pribadi untuk namespace Service Bus primer dan sekunder terhadap jaringan virtual yang menghosting instans primer dan sekunder pada aplikasi Anda.

Katakanlah Anda memiliki dua jaringan virtual: VNET-1, VNET-2 dan namespace primer dan sekunder ini: EventHubs-Namespace1-Primary, EventHubs-Namespace2-Secondary. Anda perlu melakukan langkah-langkah berikut:

  • Pada EventHubs-Namespace1-Primary, buat dua titik akhir privat yang menggunakan subnet dari VNET-1 dan VNET-2
  • Pada EventHubs-Namespace2-Secondary, buat dua titik akhir privat yang menggunakan subnet yang sama dari VNET-1 dan VNET-2

Titik akhir privat dan jaringan virtual

Keuntungan dari pendekatan ini adalah failover dapat terjadi pada lapisan aplikasi yang terpisah dari namespace Event Hubs. Pertimbangkan skenario berikut:

Failover khusus aplikasi: Di sini, aplikasi tidak akan ada tetapi VNET-1 akan pindah ke VNET-2. Karena kedua titik akhir privat dikonfigurasi pada dan VNET-1 VNET-2 untuk namespace primer dan sekunder, aplikasi hanya akan berfungsi.

Faiolver hanya namespace Event Hubs: Di sini lagi, karena kedua titik akhir pribadi dikonfigurasi pada kedua jaringan virtual untuk namespace primer dan sekunder, aplikasi akan tetap berfungsi.

Catatan

Untuk panduan tentang pemulihan bencana geo jaringan virtual, lihat Virtual Network - Kelangsungan Bisnis.

Kontrol Akses Berbasis Peran

Penetapan kontrol akses berbasis peran (RBAC) Microsoft Entra ke entitas di namespace layanan utama tidak direplikasi ke namespace sekunder. Buat tugas peran secara manual di namespace layanan sekunder untuk mengamankan aksesnya.

Tinjau contoh atau dokumentasi referensi berikut.