Membuat eksperimen kekacauan yang menggunakan kesalahan langsung layanan untuk fail over instans Azure Cosmos DB

Anda dapat menggunakan eksperimen chaos untuk memverifikasi bahwa aplikasi Anda tahan terhadap kegagalan dengan menyebabkan kegagalan tersebut dalam lingkungan yang terkendali. Dalam artikel ini, Anda menyebabkan failover Azure Cosmos DB multi-baca dan tulis tunggal dengan menggunakan eksperimen chaos dan Azure Chaos Studio. Menjalankan eksperimen ini dapat membantu Anda bertahan melawan kehilangan data ketika peristiwa failover terjadi.

Anda dapat menggunakan langkah-langkah yang sama ini untuk menyiapkan dan menjalankan eksperimen untuk kesalahan langsung layanan apa pun. Kesalahan langsung layanan berjalan langsung terhadap sumber daya Azure tanpa perlu instrumentasi. Kesalahan berbasis agen memerlukan penginstalan agen chaos.

Prasyarat

  • Langganan Azure. Jika Anda tidak memiliki Langganan Azure, buat Akun gratis Azure sebelum memulai.
  • Akun Azure Cosmos DB. Jika Anda tidak memiliki akun Azure Cosmos DB, ikuti langkah-langkah ini untuk membuatnya.
  • Setidaknya satu membaca dan satu menulis pengaturan wilayah untuk akun Azure Cosmos DB Anda.

Aktifkan Chaos Studio di akun Azure Cosmos DB Anda

Chaos Studio tidak dapat menyuntikkan kesalahan terhadap sumber daya kecuali sumber daya tersebut ditambahkan ke Chaos Studio terlebih dahulu. Anda menambahkan sumber daya ke Chaos Studio dengan membuat target dan kemampuan pada sumber daya. Akun Azure Cosmos DB hanya memiliki satu jenis target (service-direct) dan satu kemampuan (failover). Sumber daya lain mungkin memiliki hingga dua jenis target. Salah satu jenis target adalah untuk kesalahan langsung layanan. Jenis target lain adalah untuk kesalahan berbasis agen. Sumber daya lain mungkin memiliki banyak kemampuan lain.

  1. Buka portal Microsoft Azure.

  2. Cari Chaos Studio di bilah pencarian.

  3. Pilih Target dan buka akun Azure Cosmos DB Anda.

    Screenshot that shows the Targets view in the Azure portal.

  4. Pilih kotak centang di samping akun Azure Cosmos DB Anda. Pilih Aktifkan target lalu pilih Aktifkan target langsung layanan dari menu dropdown.

    Screenshot that shows enabling targets in the Azure portal.

  5. Konfirmasikan bahwa sumber daya yang diinginkan tercantum. Pilih Tinjau + Aktifkan, lalu Aktifkan.

  6. Pemberitahuan muncul yang menunjukkan bahwa sumber daya yang dipilih berhasil diaktifkan.

    Screenshot that shows a notification showing the target was successfully enabled.

Anda sekarang telah berhasil menambahkan akun Azure Cosmos DB Anda ke Chaos Studio. Dalam tampilan Target, Anda juga dapat mengelola kemampuan yang diaktifkan pada sumber daya ini. Memilih tautan Kelola tindakan di samping sumber daya menampilkan kemampuan yang diaktifkan untuk sumber daya tersebut.

Membuat eksperimen

Sekarang Anda dapat membuat eksperimen Anda. Eksperimen chaos mendefinisikan tindakan yang ingin Anda ambil terhadap sumber daya target. Tindakan diatur dan dijalankan secara berurutan. Eksperimen chaos juga mendefinisikan tindakan yang ingin Anda ambil terhadap cabang, yang berjalan secara paralel.

  1. Pilih tab Eksperimen di Chaos Studio. Dalam tampilan ini, Anda dapat melihat dan mengelola semua eksperimen chaos Anda. Pilih Buat>Eksperimen baru.

    Screenshot that shows the Experiments view in the Azure portal.

  2. Isi Langganan, Grup Sumber Daya, dan Lokasi tempat Anda ingin menyebarkan eksperimen chaos. Beri nama eksperimen Anda. Pilih Berikutnya: Perancang eksperimen.

    Screenshot that shows adding basic experiment details.

  3. Anda sekarang berada di perancang eksperimen Chaos Studio. Perancang eksperimen memungkinkan Anda membangun eksperimen dengan menambahkan langkah, cabang, dan kesalahan. Berikan nama yang mudah diingat ke Langkah dan Cabang Anda dan pilih Tambahkan tindakan > Tambahkan kesalahan.

    Screenshot that shows the experiment designer.

  4. Pilih Failover CosmosDB dari daftar dropdown. Isi Durasi dengan jumlah menit yang Anda inginkan agar kegagalan berlangsung dan readRegion dengan wilayah baca akun Azure Cosmos DB Anda. Pilih Berikutnya: Sumber daya target.

    Screenshot that shows fault properties.

  5. Pilih akun Azure Cosmos DB Anda dan pilih Berikutnya.

    Screenshot that shows adding a target.

  6. Verifikasi bahwa eksperimen Anda terlihat benar dan pilih Tinjau + buat.>

    Screenshot that shows reviewing and creating an experiment.

Berikan izin eksperimen ke sumber daya target Anda

Saat membuat eksperimen chaos, Chaos Studio membuat identitas terkelola yang ditetapkan sistem yang mengeksekusi kesalahan pada sumber daya target Anda. Identitas ini harus diberi izin yang sesuai ke sumber daya target agar eksperimen berhasil berjalan. Anda dapat menggunakan langkah-langkah ini untuk sumber daya dan jenis target apa pun dengan memodifikasi penetapan peran di langkah 3 agar sesuai dengan peran yang sesuai untuk sumber daya dan jenis target tersebut ..

  1. Buka akun Azure Cosmos DB Anda dan pilih Kontrol akses (IAM).

    Screenshot that shows the Azure Cosmos DB Overview page.

  2. Pilih Tambahkan Tambahkan>penetapan peran.

    Screenshot that shows the Access control overview.

  3. Cari Operator Cosmos DB dan pilih perannya. Pilih Selanjutnya.

    Screenshot that shows assigning the Azure Cosmos DB Operator role.

  4. Pilih Pilih anggota dan cari nama eksperimen Anda. Pilih eksperimen Anda dan pilih Pilih. Jika ada beberapa eksperimen di penyewa yang sama dengan nama yang sama, nama eksperimen Anda dipotong dengan karakter acak ditambahkan.

    Screenshot that shows adding an experiment to a role.

  5. Pilih Tinjau + tetapkan>Tinjau + tetapkan.

Jalankan eksperimen Anda

Anda sekarang siap untuk menjalankan eksperimen Anda. Untuk melihat efeknya, kami sarankan Anda membuka gambaran umum akun Azure Cosmos DB dan masuk ke Mereplikasi data secara global di tab browser terpisah. Menyegarkan secara berkala selama eksperimen menunjukkan pertukaran wilayah.

  1. Dalam tampilan Eksperimen, pilih eksperimen Anda. Pilih Mulai>OK.
  2. Saat Status berubah menjadi Berjalan, pilih Detail untuk eksekusi terbaru di bawah Riwayat untuk melihat detail eksperimen yang sedang berjalan.

Langkah berikutnya

Sekarang setelah Anda menjalankan eksperimen langsung layanan Azure Cosmos DB, Anda siap untuk: