Pengantar Cloud Native Chaos Engineering

Di blog ini, saya akan berbagi pembelajaran saya dari Live streaming tentang chaos engineering. tautan yang dapat ditemukan [di sini].

https://www.youtube.com/watch?v=LK0oDLQE4S8

Masalah sebelum Chaos Engineering

Sebelum Chaos Engineering diadopsi, tidak ada cara untuk mengatasi masalah yang tidak dapat diprediksi. Misalnya, lalu lintas tinggi pada aplikasi akan menyebabkan gangguan sistem. Pemadaman ini, bahkan untuk waktu yang kecil akan menelan biaya jutaan bagi perusahaan dan juga reputasi mereka. Di sinilah kami merasa bahwa pengujian yang disederhanakan secara normal tidak cukup.

Ada banyak layanan yang berjalan dalam sistem dan interaksi di antara mereka tidak dapat diprediksi. Interaksi ini sering mengakibatkan downtime sistem.

Apa itu Rekayasa Kekacauan?

Rekayasa kekacauan dapat dianggap sebagai mekanisme menjalankan eksperimen pada sistem dengan memaparkannya ke skenario kehidupan nyata untuk melihat apakah sistem dapat menahan gangguan yang tidak terduga. Ini termasuk skenario lalu lintas tinggi pada sistem atau ketika sistem menghadapi gangguan apa pun. Dengan menjalankan eksperimen ini pada sistem kami mencoba untuk mengetahui kelemahannya dan membuat sistem lebih tangguh. Setiap peristiwa yang mampu mengganggu kondisi tunak adalah variabel potensial dalam eksperimen Chaos

Ada empat langkah dalam Chaos Engineering:

  • Stabil
  • Hipotesa
  • Percobaan
  • Menyesuaikan

Rincian lebih lanjut tentang ini dapat ditemukan di https://principlesofchaos.org/

Apa itu ketahanan?

Ketahanan adalah kemampuan sistem untuk tetap bekerja bahkan ketika terjadi kesalahan. Ketahanan sistem dapat ditantang dengan banyak cara seperti ketika layanan menjadi tidak sehat atau ketika sebuah node dalam klaster Kubernetes menjadi tidak siap atau ketika ada kebocoran memori dalam sistem. Rekayasa kekacauan melayani masalah ini karena tidak mempertahankan sistem yang tangguh.

Bagaimana membangun ketahanan

  1. Identifikasi kondisi tunak yaitu keadaan yang kita inginkan agar sistem berada dalam keadaan ideal.
  2. Perkenalkan kesalahan yang terkait dengan apa yang ingin Anda uji
  3. Apakah sistem mendapatkan kembali keadaan tunaknya setelah memperkenalkan kesalahan?
  4. Jika ya maka sistemnya tangguh
  5. Jika tidak, maka perbaiki kelemahan ini dan perkenalkan kesalahan lagi

Bagaimana Litmus dan Chaos Engineering diperkenalkan di ruang DevOps?

Ide umumnya adalah bahwa kita juga harus fokus pada operasi dan bukan hanya sisi pengembangan. Alih-alih menulis tes untuk semua layanan mikro satu per satu, kami dapat mengotomatiskan seluruh proses menggunakan Litmus. Ini membuat semuanya sangat halus.

Mengapa Kubernetes?

  • Kubernetes adalah standar de facto di industri.
  • Kubernetes sangat skalabel.
  • Ketersediaan tinggi

Rekayasa Kekacauan Asli Cloud

Cloud Native memanfaatkan ide menggunakan penyimpanan cloud untuk menjalankan layanan mikro di sistem. Beberapa prinsip Cloud Native Chaos Engineering adalah:

  • Proyek terutama open source
  • Dukungan komunitas
  • Observabilitas terbuka
  • Buka API
  • GitOps

Manfaat:

  • Jalankan layanan tanpa pemadaman
  • Jalankan layanan untuk memenuhi SLA dan SLO bisnis
  • Skala layanan Anda sesuai permintaan
  • Tingkatkan layanan Anda tanpa gangguan

Beberapa keuntungan menggunakan Lakmus:

  • Lakmus adalah lintas awan
  • Dibutuhkan pendekatan cloud-native untuk membuat, mengelola, dan memantau kekacauan
  • Ini adalah kerangka kerja lengkap untuk menerapkan Rekayasa Kekacauan dalam ekosistem cloud-native
  • Ini membantu pengembang dan SRE untuk mengotomatiskan eksperimen kekacauan.

Sumber Daya yang Berguna

Masalah ramah pemula untuk disumbangkan:

https://github.com/litmuschaos/litmus

https://github.com/litmuschaos/test-t…

https://github.com/litmuschaos/websit…

Blog dan video untuk mempelajari lebih lanjut tentang Lakmus:

https://dev.to/litmus-chaos

https://medium.com/litmus-chaos

https://www.youtube.com/channel/UCa57…

https://github.com/litmusbot/katacoda…

Anda juga dapat bergabung dengan komunitas slack! Di situlah Anda dapat mengajukan pertanyaan dan mempelajari lebih lanjut tentang kekacauan & berkontribusi pada Litmus! Untuk bergabung dengan slack silahkan ikuti langkah-langkah berikut!
Langkah 1: Bergabunglah dengan slack Kubernetes menggunakan tautan berikut: https://slack.k8s.io/

Langkah 2: Bergabung dengan #litmus saluran pada slack Kubernetes atau menggunakan link ini setelah bergabung dengan slack Kubernetes: https://slack.litmuschaos.io/

Terima kasih! 🙂

July 29, 2021

codeorayo

Ampuh! Ini rahasia mengembangkan aplikasi secara instan, tinggal download dan kembangkan. Gabung sekarang juga! Premium Membership [PRIVATE] https://premium.codeorayo.com

Leave a Reply

Your email address will not be published. Required fields are marked *