Pemulihan bencana dan klaster global Amazon DocumentDB - Amazon DocumentDB

Terjemahan disediakan oleh mesin penerjemah. Jika konten terjemahan yang diberikan bertentangan dengan versi bahasa Inggris aslinya, utamakan versi bahasa Inggris.

Pemulihan bencana dan klaster global Amazon DocumentDB

Dengan menggunakan klaster global, Anda dapat pulih dari bencana seperti kegagalan wilayah dengan cepat. Pemulihan dari bencana biasanya diukur dengan menggunakan nilai untuk RTO danRPO.

  • Tujuan waktu pemulihan (RTO) — Waktu yang dibutuhkan sistem untuk kembali ke keadaan kerja setelah bencana. Dengan kata lain, RTO mengukur downtime. Untuk cluster global, RTO bisa dalam urutan menit.

  • Tujuan titik pemulihan (RPO) — Jumlah data yang dapat hilang (diukur dalam waktu). Untuk cluster global, biasanya RPO diukur dalam hitungan detik.

  • Untuk memulihkan dari pemadaman yang tidak direncanakan, Anda dapat melakukan failover lintas wilayah ke salah satu sekunder di klaster global Anda. Saat klaster global Anda memiliki beberapa wilayah sekunder, pastikan Anda melepaskan semua wilayah sekunder jika Wilayah AWS primer mengalami pemadaman. Kemudian, Anda mempromosikan salah satu wilayah sekunder tersebut menjadi Wilayah AWS primer yang baru. Terakhir, Anda membuat klaster baru di setiap wilayah sekunder lainnya dan melampirkan klaster tersebut ke klaster global Anda.

  • Saat Anda mempromosikan klaster sekunder menjadi klaster primer Anda juga perlu memperbarui titik akhir yang digunakan aplikasi Anda untuk terhubung ke klaster global. Untuk mendapatkan titik akhir penulis baru dari klaster yang baru dipromosikan, Anda dapat mengonversi reader endpoint sebelumnya dengan menghapus -ro dari string titik akhir. Misalnya, jika reader endpoint sebelumnya adalah global-16rr-test-cluster-1.cluster-ro-12345678901.us-west-2.docdb.amazonaws.com, kemudian endpoint baru yang dipromosikan adalah global-16rr-test-cluster-1.cluster-cps2igpwyrwa.us-west-2.rds.amazonaws.com.

Failover untuk klaster global Amazon DocumentDB

Jika seluruh cluster dalam satu Wilayah AWS menjadi tidak tersedia, Anda dapat mempromosikan cluster lain di cluster global untuk memiliki kemampuan baca/tulis.

Anda dapat mengaktifkan mekanisme failover secara manual jika klaster di Wilayah AWS yang berbeda adalah pilihan yang lebih baik untuk menjadi klaster primer. Misalnya, Anda dapat meningkatkan kapasitas salah satu klaster sekunder dan kemudian mempromosikannya menjadi klaster primer. Atau keseimbangan aktivitas di antara Wilayah AWS mungkin berubah, sehingga mengalihkan cluster utama ke cluster lain Wilayah AWS mungkin memberikan latensi yang lebih rendah untuk operasi penulisan.

Prosedur berikut menguraikan apa yang harus dilakukan untuk mempromosikan salah satu klaster sekunder di klaster global DocumentDB.

Untuk mempromosikan cluster sekunder:

  1. Berhenti mengeluarkan DML pernyataan dan operasi penulisan lainnya ke cluster utama di Wilayah AWS with the outage.

  2. Identifikasi cluster dari sekunder Wilayah AWS untuk digunakan sebagai cluster primer baru. Jika Anda memiliki dua (atau lebih) sekunder Wilayah AWS di cluster global Anda, pilih cluster sekunder yang memiliki waktu jeda paling sedikit.

  3. Lepaskan klaster sekunder yang Anda pilih dari klaster global.

    Menghapus klaster sekunder dari klaster global segera menghentikan replikasi dari primer ke sekunder ini dan mempromosikannya ke klaster klaster yang disediakan mandiri dengan kemampuan baca/tulis penuh. Klaster sekunder lainnya yang terkait dengan klaster primer di wilayah dengan pemadaman masih tersedia dan dapat menerima panggilan dari aplikasi Anda. Klaster tersebut juga mengonsumsi sumber daya. Karena Anda membuat ulang klaster global, untuk menghindari otak-terbelah dan masalah lainnya, hapus klaster sekunder lainnya sebelum membuat klaster global baru dalam langkah-langkah berikut.

    Untuk langkah-langkah rinci untuk melepaskan, lihat Menghapus klaster dari klaster global Amazon DocumentDB.

  4. Konfigurasi ulang aplikasi Anda untuk mengirim semua operasi tulis ke klaster yang sekarang berdiri sendiri ini menggunakan titik akhir barunya. Jika Anda menerima nama yang diberikan saat membuat klaster global, Anda dapat mengubah titik akhir dengan menghapus -ro dari string titik akhir klaster di aplikasi Anda.

    Misalnya, titik akhir klaster sekunder my-global.cluster-ro-aaaaaabbbbbb.us-west-1.docdb.amazonaws.com menjadi my-global.cluster-aaaaaabbbbbb.us-west-1.docdb.amazonaws.com ketika klaster tersebut terlepas dari klaster global.

    Klaster ini menjadi klaster primer dari klaster global baru saat Anda mulai menambahkan Wilayah ke dalamnya, pada langkah berikutnya.

  5. Tambahkan Wilayah AWS ke cluster. Saat Anda melakukannya, proses replikasi dari klaster primer ke klaster sekunder akan dimulai.

  6. Tambahkan lebih banyak Wilayah AWS sesuai kebutuhan untuk membuat ulang topologi yang diperlukan untuk mendukung aplikasi Anda. Pastikan bahwa penulisan aplikasi dikirim ke klaster yang benar sebelum, selama, dan setelah membuat perubahan seperti ini, untuk menghindari inkonsistensi data di antara klaster dalam klaster global (masalah split-brain).

  7. Saat pemadaman teratasi dan Anda siap menugaskan Wilayah AWS asli sebagai klaster primer lagi, lakukan langkah yang sama secara terbalik.

  8. Hapus salah satu klaster sekunder dari klaster global. Ini akan memungkinkannya untuk melayani lalu lintas baca/tulis.

  9. Alihkan ulang semua lalu lintas tulis ke klaster primer di Wilayah AWS asli.

  10. Tambahkan Wilayah AWS untuk mengatur satu atau lebih cluster sekunder yang sama Wilayah AWS seperti sebelumnya.

Cluster global Amazon DocumentDB dapat dikelola AWS SDKs menggunakan, memungkinkan Anda membuat solusi untuk mengotomatiskan proses failover klaster global untuk kasus penggunaan Disaster Recovery dan Business Continuity Planning. Salah satu solusi tersebut tersedia untuk pelanggan kami di bawah lisensi Apache 2.0 dan dapat diakses dari repositori alat kami di sini. Solusi ini memanfaatkan Amazon Route53 untuk manajemen titik akhir dan menyediakan fungsi AWS Lambda yang dapat dipicu berdasarkan peristiwa yang sesuai.