Azure Bus Layanan Geo-Replication (Pratinjau)
Fitur Bus Layanan Geo-Replication adalah salah satu opsi untuk mengisolasi aplikasi Azure Bus Layanan terhadap pemadaman dan bencana, memberikan replikasi metadata (entitas, konfigurasi, properti) dan data (data pesan dan properti pesan / perubahan status).
Catatan
Fitur ini tersedia untuk tingkat Premium Azure Bus Layanan.
Fitur Geo-Replikasi memastikan bahwa metadata dan data namespace terus direplikasi dari wilayah utama ke satu atau beberapa wilayah sekunder.
- Antrean, topik, langganan, filter.
- Data, yang berada di entitas.
- Semua perubahan status dan perubahan properti dijalankan terhadap pesan dalam namespace.
- Konfigurasi namespace layanan.
Catatan
Saat ini hanya satu sekunder yang didukung.
Fitur ini memungkinkan mempromosikan wilayah sekunder apa pun ke primer, kapan saja. Mempromosikan repoint sekunder nama untuk namespace ke wilayah sekunder yang dipilih, dan mengalihkan peran antara wilayah utama dan sekunder. Promosi hampir seketika setelah dimulai.
Penting
- Fitur ini saat ini dalam pratinjau publik, dan karenanya tidak boleh digunakan dalam skenario produksi.
- Wilayah di bawah ini saat ini didukung dalam pratinjau publik.
Wilayah | Wilayah | Wilayah |
---|---|---|
AustraliaCentral | JermanNorth | NorwegiaWest |
AustraliaCentral2 | GermanyWestCentral | PolandCentral |
AustraliaEast | IsraelCentral | SouthAfricaNorth |
AustraliaSoutheast | ItalyNorth | SouthAfricaWest |
BrasilSoutheast | JapanEast | SoutheastAsia |
CanadaCentral | JapanWest | SouthIndia |
CanadaEast | JioIndiaCentral | SpainCentral |
CentralIndia | JioIndiaWest | SwedenCentral |
CentralUS | KoreaCentral | SwitzerlandNorth |
CentralUSEUAP | KoreaSouth | SwissWest |
EastAsia | MexicoCentral | UAECentral |
EastUS2 | NorthCentralUS | UAENorth |
FranceCentral | NorthEurope | UKSouth |
FranceSouth | NorwayEast | UKWest |
- Fitur ini saat ini tersedia di namespace baru. Jika namespace telah mengaktifkan fitur ini sebelumnya, fitur ini dapat dinonaktifkan (dengan menghapus wilayah sekunder), dan diaktifkan kembali.
- Fitur berikut saat ini tidak didukung. Kami terus berupaya menghadirkan lebih banyak fitur ke pratinjau publik, dan akan memperbarui daftar ini dengan status terbaru.
- Dukungan pesan besar.
- Fitur jaringan VNET / tingkat lanjut (titik akhir privat, ACL IP, NSP, titik akhir layanan).
- Identitas (MSI, nonaktifkan autentikasi lokal) dan pengaturan enkripsi (enkripsi kunci yang dikelola pelanggan (CMK) atau bawa enkripsi kunci Anda sendiri (BYOK).
- Penskalaan otomatis.
- Namespace yang dipartisi.
- Mengirim peristiwa ke Event Grid.
- Fitur ini tidak dapat digunakan dalam kombinasi dengan fitur Azure Bus Layanan Geo-Disaster Recovery.
Skenario
Fitur Geo-replikasi dapat digunakan untuk menerapkan skenario yang berbeda, seperti yang dijelaskan di sini.
Pemulihan dari bencana
Data dan metadata terus disinkronkan antara wilayah utama dan sekunder. Jika wilayah tertinggal atau tidak tersedia, dimungkinkan untuk mempromosikan wilayah sekunder sebagai wilayah utama. Promosi ini memungkinkan operasi beban kerja yang tidak terganggu di wilayah yang baru dipromosikan. Promosi semacam itu mungkin diperlukan oleh degradasi Bus Layanan atau layanan lain dalam beban kerja Anda, terutama jika Anda bertujuan untuk menjalankan berbagai komponen bersama-sama. Tergantung pada tingkat keparahan dan layanan yang terkena dampak, promosi dapat direncanakan atau dipaksakan. Jika pesan promosi dalam penerbangan yang direncanakan direplikasi sebelum menyelesaikan promosi, sementara dengan promosi paksa, ini segera dijalankan.
Migrasi wilayah
Ada kalanya Anda ingin memigrasikan beban kerja Bus Layanan Anda untuk berjalan di wilayah yang berbeda. Misalnya, saat Azure menambahkan wilayah baru yang secara geografis lebih dekat ke lokasi, pengguna, atau layanan Anda lainnya. Atau, Anda mungkin ingin bermigrasi ketika wilayah tempat sebagian besar beban kerja Anda berjalan digeser. Fitur Geo-Replikasi juga memberikan solusi yang baik dalam kasus ini. Dalam hal ini, Anda akan menyiapkan Geo-Replikasi pada namespace layanan yang ada dengan wilayah baru yang diinginkan sebagai wilayah sekunder dan menunggu sinkronisasi selesai. Pada titik ini, Anda akan memulai promosi yang direncanakan, memungkinkan pesan dalam penerbangan direplikasi. Setelah promosi selesai, Anda sekarang dapat secara opsional menghapus wilayah lama, yang sekarang menjadi wilayah sekunder, dan terus menjalankan beban kerja Anda di wilayah yang diinginkan.
Konsep dasar
Fitur Geo-Replikasi mengimplementasikan metadata dan replikasi data dalam model replikasi sekunder utama. Pada waktu tertentu ada satu wilayah utama, yang melayani produsen dan konsumen. Sekunder bertindak sebagai wilayah siaga panas, yang berarti bahwa tidak mungkin untuk berinteraksi dengan wilayah sekunder ini. Namun, mereka berjalan dalam konfigurasi yang sama dengan wilayah utama, memungkinkan promosi cepat, dan artinya beban kerja Anda dapat segera terus berjalan setelah promosi selesai. Fitur Geo-Replikasi tersedia untuk tingkat Premium.
Beberapa aspek utama fitur Geo-Replikasi adalah:
- layanan Bus Layanan melakukan replikasi terkelola penuh metadata, data pesan, dan perubahan status pesan dan properti di seluruh wilayah yang mematuhi konsistensi replikasi yang dikonfigurasi di namespace layanan.
- Nama host namespace tunggal; Setelah berhasil mengonfigurasikan namespace layanan yang diaktifkan Geo-Replikasi, pengguna dapat menggunakan nama host namespace di aplikasi klien mereka. Nama host berulah agnostik dari wilayah primer dan sekunder yang dikonfigurasi, dan selalu menunjuk ke wilayah utama.
- Saat pelanggan memulai promosi, nama host menunjuk ke wilayah yang dipilih untuk menjadi wilayah utama baru. Primer lama menjadi wilayah sekunder.
- Tidak dimungkinkan untuk membaca atau menulis di wilayah sekunder.
- Mode replikasi sinkron dan asinkron, dijelaskan lebih lanjut di sini.
- Promosi yang dikelola pelanggan dari wilayah primer ke sekunder, memberikan kepemilikan dan visibilitas penuh untuk resolusi pemadaman. Metrik tersedia, yang dapat membantu mengotomatiskan promosi dari sisi pelanggan.
- Wilayah sekunder dapat ditambahkan atau dihapus atas kebijakan pelanggan.
Mode replikasi
Ada dua mode replikasi, sinkron dan asinkron. Penting untuk mengetahui perbedaan antara kedua mode.
Replikasi asinkron
Menggunakan replikasi asinkron, semua permintaan dilakukan pada primer, setelah itu pengakuan dikirim ke klien. Replikasi ke wilayah sekunder terjadi secara asinkron. Pengguna dapat mengonfigurasi jumlah waktu jeda maksimum yang dapat diterima. Waktu jeda adalah offset sisi layanan antara tindakan terbaru pada wilayah primer dan sekunder. Jika lag untuk sekunder aktif tumbuh di luar konfigurasi pengguna, primer mulai membatasi permintaan masuk.
Replikasi sinkron
Menggunakan replikasi sinkron, semua permintaan direplikasi ke sekunder, yang harus menerapkan dan mengonfirmasi operasi sebelum melakukan pada primer. Dengan demikian, aplikasi Anda menerbitkan dengan kecepatan yang diperlukan untuk menerbitkan, mereplikasi, mengakui, dan menerapkan. Selain itu, ini juga berarti bahwa aplikasi Anda terkait dengan ketersediaan kedua wilayah. Jika wilayah sekunder tertinggal atau tidak tersedia, pesan tidak akan diakui dan diterapkan, dan yang utama akan membatasi permintaan masuk.
Perbandingan mode replikasi
Dengan replikasi sinkron :
- Latensi lebih lama karena operasi penerapan terdistribusi.
- Ketersediaan terkait dengan ketersediaan dua wilayah.
Di sisi lain, replikasi sinkron memberikan jaminan terbesar bahwa data Anda aman. Jika Anda memiliki replikasi sinkron, maka ketika kami menerapkannya, replikasi tersebut berkomitmen di semua wilayah yang Anda konfigurasi untuk Geo-Replikasi, memberikan jaminan data terbaik.
Dengan replikasi asinkron :
- Latensi terpengaruh secara minimal.
- Hilangnya wilayah sekunder tidak segera berdampak pada ketersediaan. Namun, ketersediaan akan terpengaruh setelah lag replikasi maksimum yang dikonfigurasi tercapai.
Dengan demikian, tidak memiliki jaminan absolut bahwa semua wilayah memiliki data sebelum kami menerapkannya seperti yang dilakukan replikasi sinkron, dan kehilangan data atau duplikasi dapat terjadi. Namun, karena Anda tidak lagi segera terpengaruh ketika satu wilayah tertinggal atau tidak tersedia, ketersediaan aplikasi meningkat, selain memiliki latensi yang lebih rendah.
Kemampuan | Replikasi sinkron | Replikasi asinkron |
---|---|---|
Latensi | Lebih lama karena operasi penerapan terdistribusi | Terdampak minimal |
Ketersediaan | Terkait dengan ketersediaan wilayah sekunder | Hilangnya wilayah sekunder tidak segera berdampak pada ketersediaan |
Konsistensi data | Data selalu diterapkan di kedua wilayah sebelum pengakuan | Data yang diterapkan di primer hanya sebelum pengakuan |
RPO (Tujuan Titik Pemulihan) | RPO 0, tidak ada kehilangan data pada promosi | RPO > 0, kemungkinan kehilangan data pada promosi |
Mode replikasi dapat diubah setelah mengonfigurasi Geo-Replikasi. Anda dapat pergi dari sinkron ke asinkron atau dari asinkron ke sinkron. Jika Anda pergi dari asinkron ke sinkron, sekunder Anda akan dikonfigurasi sebagai sinkron setelah jeda mencapai nol. Jika Anda berjalan dengan jeda berkelanjutan karena alasan apa pun, maka Anda mungkin perlu menjeda penerbit Anda agar jeda mencapai nol dan mode Anda untuk dapat beralih ke sinkron. Alasan untuk mengaktifkan replikasi sinkron, alih-alih replikasi asinkron, terkait dengan pentingnya data, kebutuhan bisnis tertentu, atau alasan kepatuhan, daripada ketersediaan aplikasi Anda.
Catatan
Jika wilayah sekunder tertinggal atau menjadi tidak tersedia, aplikasi tidak akan lagi dapat mereplikasi ke wilayah ini dan akan mulai membatasi setelah jeda replikasi tercapai. Untuk terus menggunakan namespace layanan di lokasi utama, wilayah sekunder yang tersusupi dapat dihapus. Jika tidak ada lagi wilayah sekunder yang dikonfigurasi, namespace layanan akan dilanjutkan tanpa Geo-Replikasi diaktifkan. Anda dapat menambahkan wilayah sekunder tambahan kapan saja.
Pilihan wilayah sekunder
Untuk mengaktifkan fitur Geo-Replikasi, Anda perlu menggunakan wilayah primer dan sekunder tempat fitur diaktifkan. Fitur Geo-Replikasi tergantung pada mampu mereplikasi pesan yang diterbitkan dari wilayah utama ke sekunder. Jika wilayah sekunder berada di benua lain, ini berdampak besar pada jeda replikasi dari wilayah primer ke sekunder. Jika menggunakan Geo-Replikasi karena alasan ketersediaan, Anda paling baik dengan wilayah sekunder setidaknya berada di benua yang sama jika memungkinkan. Untuk mendapatkan pemahaman yang lebih baik tentang latensi yang diinduksi oleh jarak geografis, Anda dapat mempelajari lebih lanjut dari statistik latensi pulang pergi jaringan Azure.
Manajemen Geo-Replikasi
Fitur Geo-Replikasi memungkinkan pelanggan mengonfigurasi wilayah sekunder untuk mereplikasi metadata dan data. Dengan demikian, pelanggan dapat melakukan tugas manajemen berikut:
- Mengonfigurasi Geo-Replikasi; Wilayah sekunder dapat dikonfigurasi pada namespace layanan baru atau yang sudah ada di wilayah dengan fitur Geo-Replikasi diaktifkan.
Catatan
Saat ini di pratinjau publik hanya namespace baru yang didukung.
- Mengonfigurasi konsistensi replikasi; Replikasi sinkron dan asinkron diatur ketika Geo-Replikasi dikonfigurasi tetapi juga dapat dialihkan setelahnya.
- Promosi pemicu; Semua promosi diinisiasi pelanggan.
- Hapus sekunder; Jika kapan saja Anda ingin menghapus wilayah sekunder, Anda dapat melakukannya setelah data di wilayah sekunder dihapus.
Siapkan
Menggunakan portal Azure
Bagian berikut adalah gambaran umum untuk menyiapkan fitur Geo-Replikasi pada namespace baru melalui portal Azure.
Catatan
Pengalaman ini mungkin berubah selama pratinjau publik. Kami akan memperbarui dokumen ini dengan sesuai.
- Buat namespace tingkat premium baru.
- Centang kotak centang Aktifkan Replikasi geografis di bawah bagian Replikasi (pratinjau).
- Klik tombol Tambahkan wilayah sekunder, dan pilih wilayah.
- Periksa kotak centang Replikasi sinkron, atau tentukan nilai untuk nilai Lag Replikasi Asinkron - Replikasi Maks dalam hitungan detik.
Menggunakan templat Bicep
Untuk membuat namespace dengan fitur Geo-Replication diaktifkan, tambahkan bagian properti geoDataReplication .
param serviceBusName string
param primaryLocation string
param secondaryLocation string
param maxReplicationLagInSeconds int
resource sb 'Microsoft.ServiceBus/namespaces@2023-01-01-preview' = {
name: serviceBusName
location: primaryLocation
sku: {
name: 'Premium'
tier: 'Premium'
capacity: 1
}
properties: {
geoDataReplication: {
maxReplicationLagDurationInSeconds: maxReplicationLagInSeconds
locations: [
{
locationName: primaryLocation
roleType: 'Primary'
}
{
locationName: secondaryLocation
roleType: 'Secondary'
}
]
}
}
}
Manajemen
Setelah Anda membuat namespace dengan fitur Geo-Replication diaktifkan, Anda dapat mengelola fitur dari bilah Replikasi (pratinjau).
Beralih mode replikasi
Untuk beralih di antara mode replikasi, atau memperbarui jeda replikasi maksimum, klik tautan di bawah Konsistensi replikasi, dan klik kotak centang untuk mengaktifkan/menonaktifkan replikasi sinkron, atau perbarui nilai di kotak teks untuk mengubah jeda replikasi maksimum asinkron.
Menghapus wilayah sekunder
Untuk menghapus wilayah sekunder, klik ...-elipsis di samping wilayah, dan klik Hapus. Untuk menghapus wilayah, ikuti instruksi di bilah pop-up.
Alur promosi
Promosi dipicu secara manual oleh pelanggan (baik secara eksplisit melalui perintah, atau melalui logika bisnis milik klien yang memicu perintah) dan tidak pernah oleh Azure. Ini memberi pelanggan kepemilikan penuh dan visibilitas terkait resolusi pemadaman pada kekuatan Azure. Saat memilih Promosi terencana, layanan menunggu untuk mengejar ketertinggalan replikasi sebelum memulai promosi. Di sisi lain, ketika memilih Promosi paksa , layanan segera memulai promosi. Namespace layanan akan ditempatkan dalam mode baca-saja sejak promosi diminta, hingga waktu promosi selesai. Dimungkinkan untuk melakukan promosi paksa kapan saja setelah promosi yang direncanakan telah dimulai. Ini menempatkan pengguna dalam kontrol untuk mempercepat promosi, ketika failover yang direncanakan membutuhkan waktu lebih lama dari yang diinginkan.
Penting
Saat menggunakan Promosi paksa , data apa pun yang belum direplikasi mungkin hilang.
Setelah promosi dimulai:
Nama host diperbarui untuk menunjuk ke wilayah sekunder, yang dapat memakan waktu hingga beberapa menit.
Catatan
Anda dapat memeriksa wilayah utama saat ini dengan memulai perintah ping: ping your-namespace-fully-qualified-name
Klien secara otomatis terhubung kembali ke wilayah sekunder.
Anda dapat mengotomatiskan promosi baik dengan sistem pemantauan, atau dengan solusi pemantauan yang dibuat khusus. Namun, otomatisasi semacam itu membutuhkan perencanaan dan pekerjaan ekstra, yang tidak dicakup dalam artikel ini.
Menggunakan portal Azure
Di portal, klik ikon Promosikan , dan ikuti instruksi di bilah pop-up untuk menghapus wilayah.
Menggunakan Azure CLI
Jalankan perintah Azure CLI untuk memulai promosi. Properti Paksa bersifat opsional, dan default ke false.
az rest --method post --url https://management.azure.com/subscriptions/<subscriptionId>/resourceGroups/<resourceGroup>/providers/Microsoft.ServiceBus/namespaces/<namespaceName>/failover?api-version=2023-01-01-preview --body "{'properties': {'PrimaryLocation': '<newPrimaryLocation>', 'api-version':'2023-01-01-preview', 'Force':'false'}}"
Memantau replikasi data
Pengguna dapat memantau kemajuan pekerjaan replikasi dengan memantau metrik jeda replikasi di Analitik Log.
- Aktifkan log Metrik di namespace Bus Layanan Anda seperti yang dijelaskan di Monitor Azure Bus Layanan.
- Setelah log Metrik diaktifkan, Anda perlu menghasilkan dan menggunakan data dari namespace selama beberapa menit sebelum Anda mulai melihat log.
- Untuk melihat log Metrik, navigasi ke bagian Pemantauan Bus Layanan dan klik bilah Log. Anda dapat menggunakan kueri berikut untuk menemukan lag replikasi (dalam detik) antara wilayah utama dan sekunder.
AzureMetrics
| where TimeGenerated > ago(1h)
| where MetricName == "ReplicationLagDuration"
Menerbitkan data
Aplikasi penerbitan dapat menerbitkan data ke namespace layanan yang direplikasi secara geografis melalui nama host namespace layanan namespace yang diaktifkan Geo-Replikasi. Pendekatan penerbitan sama dengan kasus non-Geo-Replication dan tidak ada perubahan pada SDK bidang data atau aplikasi klien yang diperlukan. Penerbitan mungkin tidak tersedia selama keadaan berikut:
- Setelah meminta promosi wilayah sekunder, wilayah utama yang ada menolak pesan baru yang diterbitkan ke Bus Layanan hingga promosi selesai.
- Ketika lag replikasi antara wilayah primer dan sekunder mencapai durasi jeda replikasi maksimum, beban kerja masuk penerbit mungkin dibatasi.
Aplikasi publisher tidak dapat langsung mengakses namespace layanan apa pun di wilayah sekunder.
Mengkonsumsi Data
Mengonsumsi aplikasi dapat menggunakan data menggunakan nama host namespace namespace layanan dengan fitur Geo-Replication diaktifkan. Operasi konsumen tidak didukung sejak promosi dimulai hingga promosi selesai.
Pertimbangan
Perhatikan pertimbangan berikut untuk diingat dengan rilis ini:
- Dalam perencanaan promosi Anda, Anda juga harus mempertimbangkan faktor waktu. Misalnya, jika Anda kehilangan konektivitas selama lebih dari 15 hingga 20 menit, Anda dapat memutuskan untuk memulai promosi.
- Mempromosikan infrastruktur terdistribusi yang kompleks harus dipandu setidaknya sekali.
Harga
Tingkat Premium untuk Bus Layanan dihargai per Unit Olahpesan. Dengan fitur Geo-Replikasi, wilayah sekunder berjalan pada jumlah MUs yang sama dengan wilayah utama, dan harga dihitung atas jumlah total MUs. Selain itu, ada biaya untuk berdasarkan bandwidth yang diterbitkan kali jumlah wilayah sekunder. Selama pratinjau publik awal, biaya ini dibebaskan.
Langkah berikutnya
- Lihat referensi REST API Geo-Replikasi di sini.
- Jalankan sampel Geo-Replikasi di GitHub.
- Lihat sampel Geo-Replikasi yang mengirim pesan ke alias.
Untuk mempelajari selengkapnya tentang olahpesan Service Bus, lihat topik berikut ini: