Pengujian Penyisipan Kesalahan memungkinkan Anda melakukan eksperimen penyisipan kesalahan, yaitu metode untuk memasukkan kesalahan ke dalam sistem guna menguji ketahanannya sebelum menyebabkan kegagalan yang nyata dan tidak terduga yang berdampak pada pelanggan Anda. Dengan Pengujian Penyisipan Kesalahan, Anda dapat menyisipkan kesalahan ke berbagai komponen di lingkungan Google Cloud Anda untuk memastikan aplikasi Anda menanganinya dengan cara yang dapat diprediksi.
Untuk rilis awal Pengujian Injeksi Kesalahan, kesalahan umumnya setara dengan kegagalan resource target. Kegagalan ini akan memicu aplikasi Anda untuk mengalihkan traffic ke instance yang responsif jika Anda telah mendesain fault tolerance ke dalam aplikasi Anda.
Anda diharapkan untuk mengamati aplikasi sebelum, selama, dan setelah menyuntikkan kesalahan untuk memverifikasi bahwa aplikasi menangani kesalahan seperti yang diharapkan.
Mengapa menggunakan Pengujian Injeksi Kesalahan?
Pengujian Injeksi Kesalahan memungkinkan Anda menjalankan eksperimen pada ketahanan aplikasi Anda dalam Google Cloud berbagai skenario kegagalan. Bagian utama dari spektrum ini adalah menjalankan eksperimen untuk memperkirakan kegagalan zona dan region, yang sulit atau tidak mungkin Anda jalankan sepenuhnya sendiri. Google Cloud Selain itu, Pengujian Penyisipan Kesalahan berfungsi sebagai alat pengembangan dan peningkatan kualitas yang berharga, sehingga Anda dapat menjalankan eksperimen pada mekanisme ketahanan yang dirancang sebelum menerapkannya di lingkungan produksi. Menemukan masalah sebelum muncul dalam produksi memungkinkan peningkatan desain yang lebih cepat, menghindari waktu non-operasional yang mahal dan hilangnya reputasi, serta meningkatkan pengalaman Anda secara keseluruhan.
Tanpa produk injeksi kesalahan yang kompatibel dengan Google Cloud, Anda harus melakukan eksperimen sendiri. Melakukan eksperimen sendiri menimbulkan masalah – Google Cloud adalah lingkungan bersama, dan dalam banyak kasus, Anda mungkin tidak memiliki akses langsung ke layanan dan infrastruktur yang mendasarinya. Skenario ini dapat menyebabkan eksperimen yang tidak memadai dan melelahkan yang pada akhirnya mungkin tidak efektif dalam mencapai tujuannya untuk bereksperimen dengan ketahanan aplikasi Anda secara tepat. Pengujian Penyisipan Kesalahan membantu Anda mengurangi upaya untuk mengotomatiskan eksperimen ini, memberi Anda akses untuk memicu mode kegagalan yang biasanya tidak dapat Anda akses, dan meningkatkan keakuratan upaya eksperimentasi Anda.
Untuk pelanggan yang diatur, melakukan eksperimen rutin sering kali menjadi persyaratan agar tetap mematuhi badan pengatur industri. Dalam kasus ini, eksperimen sering kali berbentuk pengujian pemulihan bencana, yang menunjukkan bahwa kegagalan zona atau region tidak akan menghentikan aplikasi untuk terus beroperasi secara efektif.
Kesalahan yang tersedia untuk eksperimen
Kesalahan berikut tersedia
- Failover Cloud SQL - melakukan failover database dari primer ke standby.
- Menurunkan Kualitas Traffic Aplikasi - menyimulasikan penurunan kualitas traffic melalui load balancer lapisan 7
Kesalahan ini dirancang untuk membatasi cakupan eksperimen ke resource satu project di satu region atau yang lebih sempit. Eksperimen tidak akan memengaruhi cakupan yang lebih luas dari yang dimaksudkan. Namun, kesalahan ini menyebabkan kegagalan nyata pada resource yang ditargetkan di lingkungannya.
Dengan menargetkan komponen infrastruktur seperti database Cloud SQL atau Load Balancer Aplikasi, serta komponen lain yang akan didukung pada masa mendatang, Anda dapat memperkirakan kegagalan zona atau region secara wajar dalam konteks aplikasi Anda sendiri.
Cara menggunakan Pengujian Injeksi Kesalahan
Sebelum menggunakan Pengujian Injeksi Kesalahan, pastikan hal berikut:
- Lingkungan yang akan diuji memiliki beberapa redundansi. Saat kesalahan dimasukkan, aplikasi lingkungan ini dapat terus berjalan di infrastruktur redundan.
- Untuk Admin atau Pemilik Google Cloud resource: Pertimbangkan dengan cermat siapa yang mendapatkan izin untuk menyiapkan dan menjalankan eksperimen Pengujian Penyisipan Kesalahan. Menyebabkan kesalahan pada komponen infrastruktur yang berjalan di lingkungan Google Cloud Anda akan menyebabkan gangguan. Oleh karena itu, Anda harus memberikan izin hanya kepada operator yang memahami cara arsitektur lingkungan cloud mereka dibuat dan cara melakukan eksperimen dengan aman terkait ketahanan arsitektur tersebut, sehingga mereka dapat mengonfigurasi eksperimen dengan cara yang tidak menyebabkan gangguan yang tidak diinginkan.
Penggunaan Pengujian Injeksi Kesalahan melibatkan penyiapan eksperimen. Untuk menyiapkan eksperimen baru, Anda harus membuat template eksperimen terlebih dahulu, yang menentukan kesalahan yang akan disisipkan dan resource target. Selanjutnya, Anda akan menjalankan eksperimen dari template. Eksperimen adalah serangkaian tindakan yang ditentukan dalam template yang akan dijalankan terhadap resource yang Anda pilih dalam template.