Menggunakan Elastic Beanstalk dengan Amazon EventBridge - AWS Elastic Beanstalk

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

Menggunakan Elastic Beanstalk dengan Amazon EventBridge

Menggunakan Amazon EventBridge, Anda dapat membuat aturan berdasar kejadian yang memantau sumber Elastic Beanstalk Anda dan memulai tindakan target yang menggunakan lainnyaAWSjasa. Misalnya, Anda dapat menetapkan aturan untuk mengirimkan pemberitahuan email dengan menandakan topik Amazon SNS setiap kali kondisi dari lingkungan produksi berubah menjadi status Peringatan. Atau, Anda dapat mengatur fungsi Lambda untuk menyampaikan pemberitahuan ke Slack setiap kali kondisi lingkungan Anda berubah menjadi status Berdegradasi atau Parah.

Anda dapat membuat aturan di Amazon EventBridge untuk bertindak pada salah satu peristiwa Elastic Beanstalk berikut:

  • Perubahan keadaan untuk operasi lingkungan (termasuk membuat, memperbarui, dan mengakhiri operasi). Peristiwa menentukan apakah perubahan keadaan telah dimulai, berhasil, atau gagal.

  • Perubahan keadaan untuk sumber daya lainnya.Selain lingkungan, sumber daya lain yang dipantau meliputi penyeimbang beban, grup auto scaling, dan instans.

  • Transisi kondisi untuk lingkungan. Peristiwa ini menyatakan di mana kondisi lingkungan telah beralih dari satu status kondisi ke status kondisi lainnya.

  • Perubahan keadaan untuk pembaruan yang terkelola. Peristiwa menentukan apakah perubahan keadaan telah dimulai, berhasil, atau gagal.

Untuk menangkap peristiwa Elastic Beanstalk tertentu yang Anda minati, tentukan pola spesifik peristiwa itu EventBridge dapat digunakan untuk mendeteksi peristiwa. Pola peristiwa memiliki struktur yang sama dengan peristiwa mereka cocokkan. Pola mengutip bidang yang ingin Anda cocokkan dan memberikan nilai yang Anda cari. Peristiwa dipancarkan atas dasar upaya terbaik. Mereka dikirim dari Elastic Beanstalk ke EventBridge dalam waktu dekat secara langsung dalam keadaan operasional normal. Namun, situasi dapat timbul yang dapat menunda atau mencegah pengiriman suatu peristiwa.

Untuk daftar bidang yang terkandung dalam peristiwa Elastic Beanstalk dan mungkin nilai-nilai string mereka, lihat Pemetaan bidang peristiwa Elastic Beanstalk. Untuk informasi tentang caranya EventBridge aturan bekerja dengan pola acara, lihatPola Peristiwa dan Peristiwa di EventBridge.

Memantau sumber Elastic Beanstalk dengan EventBridge

Dengan EventBridge, Anda dapat membuat aturan yang menentukan tindakan yang harus dilakukan ketika Elastic Beanstalk memancarkan peristiwa untuk sumber daya. Misalnya, Anda dapat membuat aturan yang mengirimkan pesan email kapan pun status lingkungan berubah.

Parameter EventBridge konsolPolauntuk membangun pola peristiwa Elastic Beanstalk. Jika Anda memilih opsi ini di EventBridgekonsol ketika Anda membuat aturan, Anda dapat membangun pola peristiwa Elastic Beanstalk dengan cepat. Anda hanya perlu memilih bidang peristiwa dan nilai. Ketika Anda membuat pilihan, konsol membangun dan menampilkan pola peristiwa. Atau, Anda dapat secara manual mengedit pola peristiwa yang Anda bangun dan dapat menyimpannya sebagai pola kustom. Konsol juga memberi Anda opsi untuk menampilkan detailSampel PeristiwaAnda dapat menyalin dan menempelkan ke pola peristiwa yang sedang Anda buat.

Jika Anda lebih memilih untuk mengetik atau menyalin dan menyisipkan pola peristiwa ke EventBridge konsol, Anda dapat memilih untuk menggunakanPoladi konsol. Dengan melakukan ini, Anda tidak perlu pergi melalui langkah-langkah memilih bidang dan nilai-nilai yang dijelaskan sebelumnya. Topik ini menawarkan contoh kedua pola pencocokan peristiwa dan peristiwa Elastic Beanstalk yang dapat Anda gunakan.

Untuk membuat aturan untuk peristiwa sumber daya
  1. Masuk keAWSmenggunakan account yang memiliki izin untuk digunakan EventBridge dan Elastic Beanstalk.

  2. Buka Amazon EventBridge konsolhttps://console.aws.amazon.com/events/.

  3. Di panel navigasi, pilih Aturan.

  4. Pilih Buat aturan.

  5. Masukkan Nama untuk aturan tersebut, dan, secara opsional, deskripsi.

  6. UntukBus peristiwa, pilihdefault. Saat layanan AWS di akun Anda menghasilkan kejadian, layanan tersebut akan selalu masuk ke bus kejadian default akun Anda.

  7. UntukJenis aturan, pilihAturan dengan pola peristiwa.

  8. Pilih Selanjutnya.

  9. UntukSumber peristiwa, pilihAWSperistiwa atau EventBridge peristiwa.

  10. (Opsional) UntukSampel peristiwa, pilihAWSacara. ENTERElastic Beanstalkdi bidang pencarian. Ini akan memberikan daftar contoh acara Elastic Beanstalk tempat Anda dapat memilih untuk ditampilkan. Langkah ini hanya menampilkan contoh peristiwa yang dapat Anda referensi. Itu tidak mempengaruhi hasil pembuatan aturan. ParameterContoh peristiwa Elastic Beanstalkbagian ini nanti di topik ini memberikan contoh dari jenis peristiwa yang sama.

  11. DiPola peristiwabagian, pilihBentuk pola.

    catatan

    Jika Anda sudah memiliki teks untuk pola peristiwa dan tidak memerlukan EventBridge konsol untuk membangunnya untuk Anda, pilihPola kustom (editor JSON). Anda kemudian dapat secara manual memasukkan atau menyalin dan menempelkan teks kePola peristiwakotak. PilihSelanjutnya, dan pergi ke langkah tentang memasuki target.

  12. UntukSumber peristiwa, pilihAWSjasa.

  13. UntukAWSlayanan, pilihElastic Beanstalk.

  14. UntukJenis acara, pilihPerubahan.

  15. Langkah ini mencakup bagaimana Anda dapat bekerja dengan jenis detail, status, dan tingkat kepelikan bidang peristiwa untuk Elastic Beanstalk. Ketika Anda memilih bidang ini dan nilai-nilai yang ingin Anda cocokkan, konsol membangun dan menampilkan pola peristiwa.

    • Jikakamu pilihhanya satunilaiJenis detail tertentu, Anda dapat memilih satu nilai atau lebih untuk bidang berikutnya dalam hierarki.

    • JikaAnda memilihlebih dari satunilaiJenis detail tertentu, jangan memilih nilai spesifik untuk bidang berikutnya dalam hierarki. Ini mencegah logika pencocokan ambigu di bidang dalam pola peristiwa Anda.

    Bidang peristiwa lingkungan tidak terpengaruh oleh hirarki ini, sehingga menampilkan seperti yang dijelaskan di langkah berikutnya.

  16. Untuk lingkungan, pilihLingkungan apa punatauLingkungan tertentu.

    • Jika Anda memilihLingkungan tertentu, Anda dapat memilih satu atau lebih lingkungan dari daftar dropdown. EventBridge menambahkan semua lingkungan yang Anda pilih di dalamEnvironmentName[]diperincianbagian dari pola acara. Kemudian, aturan Anda memfilter semua peristiwa untuk mencakup hanya lingkungan tertentu yang Anda pilih.

    • Jika Anda memilih Lingkungan apa pun, maka tidak ada lingkungan yang ditambahkan ke pola peristiwa Anda. Karena itu, aturan Anda tidak memfilter salah satu peristiwa Elastic Beanstalk berdasarkan lingkungan.

  17. Pilih Selanjutnya.

  18. UntukJenis target, pilihAWSlayanan.

  19. UntukPilih target, pilih tindakan target yang akan diambil ketika peristiwa perubahan keadaan diterima dari Elastic Beanstalk.

    Misalnya, Anda dapat menggunakan topik Amazon Simple Notification Service (SNS) untuk mengirim email atau pesan teks ketika peristiwa terjadi. Untuk melakukannya, Anda harus terlebih dahulu membuat topik Amazon SNS menggunakan konsol Amazon SNS. Untuk mempelajari lebih lanjut, lihat Menggunakan Amazon SNS untuk pemberitahuan pengguna.

    penting

    Beberapa tindakan target mungkin memerlukan penggunaan layanan lain dan dikenakan biaya tambahan, seperti layanan Amazon SNS atau Lambda. Untuk informasi lebih lanjut tentang harga AWS, lihat https://aws.amazon.com/pricing/. Beberapa layanan merupakan bagian dari Tingkat Penggunaan Gratis AWS. Jika Anda adalah pelanggan baru, Anda dapat menguji layanan ini secara gratis. Lihat https://aws.amazon.com/free/ untuk informasi selengkapnya.

  20. (Opsional) PilihTambahkan target lainuntuk menentukan tindakan target tambahan untuk aturan peristiwa.

  21. Pilih Selanjutnya.

  22. (Opsional) Masukkan satu atau lebih tanda untuk aturan. Untuk informasi selengkapnya, lihatAmazon EventBridge tagdi dalamAmazon EventBridge Panduan Pengguna.

  23. Pilih Selanjutnya.

  24. Tinjau detail aturan dan pilihBuat aturan.

Contoh pola peristiwa Elastic Beanstalk

Pola peristiwa memiliki struktur yang sama dengan peristiwa mereka cocokkan. Pola mengutip bidang yang ingin Anda cocokkan dan memberikan nilai yang Anda cari.

  • Perubahan status kondisi untuk semua lingkungan

    { "source": [ "aws.elasticbeanstalk" ], "detail-type": [ "Health status change" ] }
  • Perubahan status kondisi untuk lingkungan berikut: myEnvironment1 dan myEnvironment2. Pola peristiwa ini memfilter untuk dua lingkungan tertentu, sedangkan sebelumnya contoh Perubahan status kondisi yang tidak memfilter mengirimkan peristiwa untuk semua lingkungan.

    {"source": [ "aws.elasticbeanstalk" ], "detail-type": [ "Health status change" ], "detail": { "EnvironmentName": [ "myEnvironment1", "myEnvironment2" ] } }
  • Perubahan status sumber daya Elastic Beanstalk untuk semua lingkungan

    { "source": [ "aws.elasticbeanstalk" ], "detail-type": [ "Elastic Beanstalk resource status change" ] }
  • Perubahan status sumber daya Elastic Beanstalk dengan Pembaruan lingkungan Status gagal dan KESALAHAN Severity untuk lingkungan berikut: myEnvironment1 dan myEnvironment2

    {"source": [ "aws.elasticbeanstalk" ], "detail-type": [ "Elastic Beanstalk resource status change" ], "detail": { "Status": [ "Environment update failed" ], "Severity": [ "ERROR" ], "EnvironmentName": [ "myEnvironment1", "myEnvironment2" ] } }
  • Perubahan status sumber daya lainnya untuk penyeimbang beban, grup auto scaling, dan instans

    { "source": [ "aws.elasticbeanstalk" ], "detail-type": [ "Other resource status change" ] }
  • Perubahan status pembaruan yang terkelola untuk semua lingkungan

    { "source": [ "aws.elasticbeanstalk" ], "detail-type": [ "Managed update status change" ] }
  • Untuk menangkap Semua peristiwa dari Elastic Beanstalk (tidak termasuk bagian detail-type)

    { "source": [ "aws.elasticbeanstalk" ] }

Contoh peristiwa Elastic Beanstalk

Berikut ini adalah kejadian Elastic Beanstalk untuk perubahan status sumber daya:

{ "version":"0", "id":"1234a678-1b23-c123-12fd3f456e78", "detail-type":"Elastic Beanstalk resource status change", "source":"aws.elasticbeanstalk", "account":"111122223333", "time":"2020-11-03T00:31:54Z", "region":"us-east-1", "resources":[ "arn:was:elasticbeanstalk:us-east-1:111122223333:environment/myApplication/myEnvironment" ], "detail":{ "Status":"Environment creation started", "EventDate":1604363513951, "ApplicationName":"myApplication", "Message":"createEnvironment is starting.", "EnvironmentName":"myEnvironment", "Severity":"INFO" } }

Berikut ini adalah kejadian Elastic Beanstalk untuk perubahan status kondisi:

{ "version":"0", "id":"1234a678-1b23-c123-12fd3f456e78", "detail-type":"Health status change", "source":"aws.elasticbeanstalk", "account":"111122223333", "time":"2020-11-03T00:34:48Z", "region":"us-east-1", "resources":[ "arn:was:elasticbeanstalk:us-east-1:111122223333:environment/myApplication/myEnvironment" ], "detail":{ "Status":"Environment health changed", "EventDate":1604363687870, "ApplicationName":"myApplication", "Message":"Environment health has transitioned from Pending to Ok. Initialization completed 1 second ago and took 2 minutes.", "EnvironmentName":"myEnvironment", "Severity":"INFO" } }

Pemetaan bidang peristiwa Elastic Beanstalk

Tabel berikut memetakan bidang peristiwa Elastic Beanstalk dan kemungkinan nilai string-nya ke EventBridge detail-typeBidang. Untuk informasi lebih lanjut tentang caranya EventBridge bekerja dengan pola acara untuk layanan, lihatPola Peristiwa dan Peristiwa di EventBridge.

EventBridge bidangjenis-detail: Bidang Elastic BeanstalkStatus Bidang Elastic BeanstalkKepelikan Bidang Elastic BeanstalkPesan

Perubahan status sumber daya Elastic Beanstalk

Pembuatan lingkungan dimulai

INFO

createEnvironment dimulai.

Pembuatan lingkungan berhasil

INFO

createEnvironment berhasil diselesaikan.

Pembuatan lingkungan berhasil

INFO

Lingkungan yang diluncurkan: <Environment Name>. Namun, ada masalah saat peluncuran. Lihat log peristiwa untuk rincian.

Pembuatan lingkungan gagal

KESALAHAN

Gagal meluncurkan lingkungan.

Pembaruan lingkungan dimulai

INFO

Pemutakhiran lingkungan dimulai.

Memperbarui lingkungan berhasil

INFO

Pemutakhiran lingkungan berhasil diselesaikan.

Pembaruan lingkungan gagal

KESALAHAN

Gagal men-deploy konfigurasi.

Penghentian lingkungan dimulai

INFO

terminateEnvironment dimulai.

Penghentian lingkungan berhasil

INFO

terminateEnvironment berhasil diselesaikan.

Penghentian lingkungan gagal

INFO

Langkah penghentian lingkungan gagal karena setidaknya salah satu alur kerja penghentian lingkungan gagal.

Perubahan status sumber daya lainnya

grup Auto Scaling dibuat

INFO

createEnvironment dimulai.

Grup Auto Scaling dihapus

INFO

createEnvironment dimulai.

Instans ditambahkan

INFO

Menambahkan instans [i-123456789a12b1234] ke lingkungan Anda.

Instans dihapus

INFO

Instans dihapus [i-123456789a12b1234] dari lingkungan Anda.

Penyeimbang beban dibuat

INFO

Penyeimbang beban yang dibuat bernama: <LB Name>

Penyeimbang beban dihapus

INFO

Penyeimbang beban yang dihapus bernama: <LB Name>

Perubahan status kondisi

Lingkungan kondisi diubah

INFO/WARN

Kondisi lingkungan telah beralih ke <healthStatus>.

Lingkungan kondisi diubah

INFO/WARN

Kondisi lingkungan telah beralih dari <healthStatus> ke <healthStatus>.

Perubahan status pembaruan yang terkelola

Dikelola diperbarui dimulai

INFO

Pembaruan platform yang terkelola sedang berlangsung.

Pembaruan yang terkelola gagal

INFO

Pembaruan yang terkelola gagal, mencoba kembali dalam % menit.