REL06-BP04 Mengotomatiskan respons (Peringatan dan pemrosesan waktu nyata) - Pilar Keandalan

REL06-BP04 Mengotomatiskan respons (Peringatan dan pemrosesan waktu nyata)

Gunakan otomatisasi untuk melakukan tindakan ketika peristiwa terdeteksi, misalnya, mengganti komponen yang rusak.

Pemrosesan alarm waktu nyata secara otomatis diimplementasikan agar sistem dapat mengambil tindakan-tindakan korektif dengan cepat dan berupaya mencegah terjadinya kegagalan atau penurunan layanan ketika alarm terpicu. Respons otomatis terhadap alarm dapat mencakup penggantian komponen yang mengalami kegagalan, penyesuaian kapasitas komputasi, pengalihan lalu lintas ke host yang dalam kondisi sehat, zona ketersediaan, atau wilayah lain, dan pemberitahuan operator.

Hasil yang diinginkan: Alarm waktu nyata diidentifikasi, dan pemrosesan alarm otomatis diatur untuk menginvokasi tindakan-tindakan yang tepat yang diambil untuk mempertahankan tujuan tingkat layanan dan perjanjian tingkat layanan (SLA). Otomatisasi dapat berupa banyak hal, dari aktivitas pemulihan diri sebuah komponen hingga failover seluruh situs.

Anti-pola umum:

  • Tidak memiliki inventaris atau katalog alarm waktu nyata utama yang jelas.

  • Tidak ada respons otomatis terhadap alarm-alarm kritis (misalnya, penskalaan otomatis berjalan ketika komputasi hampir habis).

  • Tindakan respons alarm yang kontradiktif.

  • Tidak ada prosedur operasi standar (SOP) yang harus diikuti operator ketika mereka menerima pemberitahuan peringatan.

  • Tidak memantau perubahan konfigurasi, padahal perubahan konfigurasi yang tidak terdeteksi dapat menyebabkan waktu henti terhadap beban kerja.

  • Tidak memiliki strategi untuk membatalkan perubahan konfigurasi yang tidak diinginkan.

Manfaat menerapkan praktik terbaik ini: Melakukan otomatisasi atas pemrosesan alarm dapat meningkatkan ketahanan sistem. Sistem mengambil tindakan-tindakan korektif secara otomatis, sehingga akan mengurangi aktivitas manual yang memberi peluang adanya intervensi manusia yang rawan menyebabkan kesalahan. Operasi beban kerja memenuhi tujuan-tujuan ketersediaan, dan mengurangi gangguan layanan.

Tingkat risiko yang terjadi jika praktik terbaik ini tidak diterapkan: Sedang

Panduan implementasi

Untuk mengelola peringatan secara efektif dan mengotomatiskan responsnya, Anda harus mengkategorikan peringatan berdasarkan tingkat kekritisan dan dampaknya, mendokumentasikan prosedur respons, dan merencanakan respons sebelum menentukan peringkat tugas.

Identifikasi tugas yang membutuhkan tindakan-tindakan tertentu (sering kali diperinci dalam runbook), dan periksa semua runbook dan playbook untuk menentukan tugas mana yang dapat diotomatisasi. Jika tindakan dapat ditentukan, tindakan tersebut sering kali dapat diotomatisasi. Jika tindakan tidak dapat diotomatisasi, maka Anda harus mendokumentasikan langkah-langkah pelaksanaannya dalam SOP dan latih operator untuk melakukannya. Terus cari peluang otomatisasi pada proses-proses yang masih dilakukan secara manual agar Anda dapat membuat dan menerapkan rencana untuk mengotomatiskan respons peringatan.

Langkah-langkah implementasi

  1. Buat inventaris alarm: Untuk mendapatkan daftar semua alarm, Anda dapat menggunakan AWS CLI dengan menggunakan perintah describe-alarms Amazon CloudWatch. Bergantung pada berapa banyak alarm yang telah Anda atur, Anda mungkin harus menggunakan pagination untuk mengambil subset alarm untuk setiap panggilan, atau sebagai alternatif, Anda dapat menggunakan SDK AWS untuk mendapatkan alarm dengan menggunakan panggilan API.

  2. Dokumentasikan semua tindakan alarm: Perbarui runbook dengan semua alarm dan tindakannya, terlepas dari apakah runbook itu manual atau otomatis. AWS Systems Manager menyediakan runbook yang telah ditentukan sebelumnya. Untuk informasi lebih lanjut tentang runbook, lihat Bekerja dengan runbook. Untuk detail tentang cara melihat konten runbook, silakan lihat Menampilkan konten runbook.

  3. Mengatur dan mengelola tindakan alarm: Untuk alarm apa pun yang memerlukan sebuah tindakan, tentukan tindakan otomatis dengan menggunakan CloudWatch SDK. Misalnya, Anda dapat mengubah status instans Amazon EC2 Anda secara otomatis berdasarkan sebuah alarm CloudWatch dengan membuat dan mengaktifkan tindakan pada alarm atau menonaktifkan tindakan pada alarm.

    Anda dapat juga menggunakan Amazon EventBridge untuk memberikan respons secara otomatis terhadap peristiwa sistem, seperti terjadinya masalah ketersediaan aplikasi atau perubahan sumber daya. Anda dapat membuat aturan untuk menunjukkan peristiwa yang sesuai kepentingan Anda, dan tindakan yang akan diambil ketika peristiwa sesuai dengan aturan. Tindakan-tindakan yang dapat dimulai secara otomatis termasuk menginvokasi fungsi AWS Lambda, menginvokasi Run Command Amazon EC2, menyampaikan peristiwa ke Amazon Kinesis Data Streams, dan melihat Mengotomatiskan Amazon EC2 menggunakan EventBridge.

  4. Prosedur Operasi Standar (SOP): Berdasarkan komponen-komponen aplikasi Anda, AWS Resilience Hub merekomendasikan beberapa templat SOP. Anda dapat menggunakan SOP ini untuk mendokumentasikan semua proses yang harus diikuti operator saat ada peringatan yang muncul. Anda juga dapat membuat konsep SOP berdasarkan rekomendasi dari Resilience Hub, di mana Anda memerlukan aplikasi Resilience Hub yang memiliki kebijakan ketahanan terkait, serta penilaian ketahanan historis terhadap aplikasi tersebut. Rekomendasi untuk SOP Anda berasal dari penilaian ketahanan.

    Resilience Hub bekerja dengan Systems Manager untuk melakukan otomatisasi pada langkah-langkah yang diuraikan dalam SOP Anda dengan menyediakan sejumlah dokumen SSM yang dapat Anda gunakan sebagai landasan untuk SOP tersebut. Misalnya, Resilience Hub mungkin akan merekomendasikan SOP untuk menambahkan ruang diska berdasarkan dokumen otomatisasi SSM yang sudah ada.

  5. Lakukan tindakan otomatis menggunakan Amazon DevOps Guru: Anda dapat menggunakan Amazon DevOps Guru untuk melakukan pemantauan secara otomatis terhadap sumber daya aplikasi untuk mengetahui perilaku anomali dan memberikan rekomendasi terarah untuk mempercepat waktu perbaikan serta identifikasi masalah. Dengan DevOps Guru, Anda dapat memantau aliran data operasional dalam waktu dekat dari berbagai sumber, antara lain metrik Amazon CloudWatch, AWS Config, AWS CloudFormation, dan AWS X-Ray. Anda juga dapat menggunakan DevOps Guru untuk secara otomatis membuat OpsItems di OpsCenter dan mengirim peristiwa-peristiwa ke EventBridge untuk otomatisasi tambahan.

Sumber daya

Praktik-praktik terbaik terkait:

Dokumen terkait:

Video terkait:

Contoh terkait: