Terjemahan disediakan oleh mesin penerjemah. Jika konten terjemahan yang diberikan bertentangan dengan versi bahasa Inggris aslinya, utamakan versi bahasa Inggris.
Otomatiskan konsumsi dan visualisasi metrik kustom Amazon MWAA di Amazon Managed Grafana dengan menggunakan Terraform
Faisal Abdullah dan Satya Vajrapu, Amazon Web Services
Ringkasan
Pola ini membahas cara menggunakan Grafana Terkelola Amazon untuk membuat dan memantau metrik khusus yang dicerna oleh Alur Kerja Terkelola Amazon untuk Apache Airflow (Amazon MWAA). Amazon MWAA berfungsi sebagai orkestrator untuk alur kerja, menggunakan Directed Acyclic Graphs () yang ditulis dengan Python. DAGs Pola ini berpusat pada pemantauan metrik kustom, termasuk jumlah total DAGs berjalan dalam satu jam terakhir, hitungan lulus dan gagal DAGs setiap jam, dan durasi rata-rata proses ini. Analisis ini menunjukkan bagaimana Grafana Terkelola Amazon berintegrasi dengan Amazon MWAA untuk memungkinkan pemantauan dan wawasan komprehensif tentang orkestrasi alur kerja dalam lingkungan ini.
Prasyarat dan batasan
Prasyarat
Aktif Akun AWS dengan izin pengguna yang diperlukan untuk membuat dan mengelola hal berikut: Layanan AWS
AWS Identity and Access Management (IAM) peran dan kebijakan
AWS Lambda
Amazon Managed Grafana
Amazon Managed Workflows for Apache Airflow (Amazon MWAA)
Amazon Simple Storage Service (Amazon S3)
Amazon Timestream
Akses ke lingkungan shell yang dapat menjadi terminal pada mesin lokal Anda atau AWS CloudShell.
Lingkungan shell dengan Git diinstal dan versi terbaru dari AWS Command Line Interface (AWS CLI) diinstal dan dikonfigurasi. Untuk informasi selengkapnya, lihat Menginstal atau memperbarui ke versi terbaru dari AWS CLI dokumentasi. AWS CLI
Versi Terraform berikut diinstal:
required_version = ">= 1.6.1, < 2.0.0"Anda dapat menggunakan tfswitch untuk beralihdi antara berbagai versi Terraform. Sumber identitas yang dikonfigurasi AWS IAM Identity Center untuk Anda Akun AWS. Untuk informasi selengkapnya, lihat Konfirmasi sumber identitas Anda di Pusat Identitas IAM di dokumentasi Pusat Identitas IAM. Anda dapat memilih dari default Direktori Pusat Identitas IAM, Active Directory, atau penyedia Identitas eksternal (iDP) seperti Okta. Untuk informasi selengkapnya, lihat Sumber daya terkait.
Batasan
Beberapa Layanan AWS tidak tersedia di semua Wilayah AWS. Untuk ketersediaan Wilayah, lihat Layanan AWS berdasarkan Wilayah
. Untuk titik akhir tertentu, lihat Titik akhir dan kuota layanan, dan pilih tautan untuk layanan.
Versi produk
Terraform
required_version = ">= 1.6.1, < 2.0.0"Grafana yang Dikelola Amazon versi 9.4 atau yang lebih baru. Pola ini diuji pada versi 9.4.
Arsitektur
Diagram arsitektur berikut menyoroti yang Layanan AWS digunakan dalam solusi.

Diagram sebelumnya melangkah melalui alur kerja berikut:
Metrik khusus dalam Amazon MWAA berasal dari DAGs yang dijalankan di dalam lingkungan. Metrik diunggah ke bucket Amazon S3 dalam format file CSV. Berikut ini DAGs menggunakan kemampuan kueri database Amazon MWAA:
run-example-dag— DAG ini berisi contoh kode Python yang mendefinisikan satu atau lebih tugas. Ini berjalan setiap 7 menit dan mencetak tanggal. Setelah mencetak tanggal, DAG menyertakan tugas untuk tidur, atau menjeda, eksekusi untuk durasi tertentu.other-sample-dag— DAG ini berjalan setiap 10 menit dan mencetak tanggalnya. Setelah mencetak tanggal, DAG menyertakan tugas untuk tidur, atau menjeda, eksekusi untuk durasi tertentu.data-extract— DAG ini berjalan setiap jam dan menanyakan database Amazon MWAA dan mengumpulkan metrik. Setelah metrik dikumpulkan, DAG ini menuliskannya ke bucket Amazon S3 untuk diproses dan dianalisis lebih lanjut.
Untuk merampingkan pemrosesan data, fungsi Lambda berjalan saat dipicu oleh peristiwa Amazon S3, yang memfasilitasi pemuatan metrik ke Timestream.
Timestream terintegrasi sebagai sumber data dalam Grafana Terkelola Amazon tempat semua metrik khusus dari Amazon MWAA disimpan.
Pengguna dapat melakukan kueri data dan membuat dasbor khusus untuk memvisualisasikan indikator kinerja utama dan mendapatkan wawasan tentang orkestrasi alur kerja dalam Amazon MWAA.
Alat
Layanan AWS
AWS IAM Identity Centermembantu Anda mengelola akses masuk tunggal (SSO) secara terpusat ke semua aplikasi Anda Akun AWS dan cloud.
AWS Lambdaadalah layanan komputasi yang membantu Anda menjalankan kode tanpa perlu menyediakan atau mengelola server. Ini menjalankan kode Anda hanya bila diperlukan dan skala secara otomatis, jadi Anda hanya membayar untuk waktu komputasi yang Anda gunakan. Dalam pola ini, AWS Lambda jalankan kode Python sebagai respons terhadap peristiwa Amazon S3 dan mengelola sumber daya komputasi secara otomatis.
Grafana Terkelola Amazon adalah layanan visualisasi data terkelola sepenuhnya yang dapat Anda gunakan untuk menanyakan, mengkorelasikan, dan memvisualisasikan, serta memperingatkan metrik, log, dan jejak Anda. Pola ini menggunakan Grafana Terkelola Amazon untuk membuat dasbor visualisasi dan peringatan metrik.
Amazon Managed Workflows for Apache Airflow (Amazon MWAA) adalah layanan orkestrasi terkelola untuk Apache Airflow yang dapat Anda gunakan untuk menyiapkan dan mengoperasikan pipeline data di cloud dalam skala besar. Apache
Airflow adalah alat open source yang digunakan untuk secara terprogram menulis, menjadwalkan, dan memantau urutan proses dan tugas yang disebut sebagai alur kerja. Dalam pola ini, sampel DAGs dan ekstraktor metrik DAG digunakan di Amazon MWAA. Amazon Simple Storage Service (Amazon S3) adalah layanan penyimpanan objek berbasis cloud yang membantu Anda menyimpan, melindungi, dan mengambil sejumlah data. Dalam pola ini, Amazon S3 digunakan untuk menyimpan DAGs, skrip, dan metrik khusus dalam format CSV.
Amazon Timestream for LiveAnalytics is adalah database deret waktu yang cepat, terukur, dikelola sepenuhnya, dan dibuat khusus yang memudahkan penyimpanan dan analisis triliunan titik data deret waktu per hari. Timestream for LiveAnalytics juga terintegrasi dengan layanan yang umum digunakan untuk pengumpulan data, visualisasi, dan pembelajaran mesin. Dalam pola ini, ini digunakan untuk menelan metrik kustom Amazon MWAA yang dihasilkan.
Alat-alat lainnya
HashiCorp Terraform
adalah alat infrastruktur sebagai kode (IAc) yang membantu Anda menggunakan kode untuk menyediakan dan mengelola infrastruktur dan sumber daya cloud. Pola ini menggunakan modul Terraform untuk mengotomatiskan penyediaan infrastruktur di. AWS
Repositori kode
Kode untuk pola ini tersedia GitHub di repositori visualize-amazon-mwaa-custom-metrics-grafanastacks/InfraFolder berisi yang berikut:
File konfigurasi Terraform untuk semua sumber daya AWS
Grafana dasbor file.json di folder
grafanaAlur Kerja Terkelola Amazon untuk Apache DAGs Airflow di folder
mwaa/dagsKode Lambda untuk mengurai file.csv dan menyimpan metrik di database Timestream di folder
srcKebijakan IAM. File json di folder
templates
Praktik terbaik
Terraform harus menyimpan status tentang infrastruktur dan konfigurasi terkelola Anda sehingga dapat memetakan sumber daya dunia nyata ke konfigurasi Anda. Secara default, Terraform menyimpan status secara lokal dalam file bernama. terraform.tfstate Sangat penting untuk memastikan keamanan dan integritas file status Terraform Anda karena file tersebut mempertahankan status infrastruktur Anda saat ini. Untuk informasi selengkapnya, lihat Remote State
Epik
| Tugas | Deskripsi | Keterampilan yang dibutuhkan |
|---|---|---|
Menyebarkan infrastruktur. | Untuk menerapkan infrastruktur solusi, lakukan hal berikut:
| AWS DevOps |
| Tugas | Deskripsi | Keterampilan yang dibutuhkan |
|---|---|---|
Validasi lingkungan Amazon MWAA. | Untuk memvalidasi lingkungan Amazon MWAA, lakukan hal berikut:
| AWS DevOps, Insinyur data |
Verifikasi jadwal DAG. | Untuk melihat setiap jadwal DAG, buka tab Jadwal di UI Aliran Udara. Masing-masing dari berikut ini DAGs memiliki jadwal pra-konfigurasi, yang berjalan di lingkungan Amazon MWAA dan menghasilkan metrik khusus:
Anda juga dapat melihat keberhasilan menjalankan setiap DAG di bawah kolom Runs. | Insinyur data, AWS DevOps |
| Tugas | Deskripsi | Keterampilan yang dibutuhkan |
|---|---|---|
Konfigurasikan akses ke ruang kerja Grafana Terkelola Amazon. | Skrip Terraform membuat ruang kerja, dasbor, dan metrik Grafana Terkelola Amazon yang diperlukan. Untuk mengonfigurasi akses sehingga Anda dapat melihatnya, lakukan hal berikut:
| AWS DevOps |
Instal plugin Amazon Timestream. | Metrik kustom Amazon MWAA dimuat ke database Timestream. Anda menggunakan plugin Timestream untuk memvisualisasikan metrik dengan dasbor Grafana Terkelola Amazon. Untuk menginstal plugin Timestream, lakukan hal berikut:
Untuk informasi selengkapnya, lihat Memperluas ruang kerja Anda dengan plugin di dokumentasi Grafana Terkelola Amazon. | AWS DevOps, DevOps insinyur |
| Tugas | Deskripsi | Keterampilan yang dibutuhkan |
|---|---|---|
Lihat dasbor Grafana Terkelola Amazon. | Untuk melihat metrik yang dimasukkan ke dalam ruang kerja Grafana Terkelola Amazon, lakukan hal berikut:
Halaman metrik dasbor menampilkan informasi berikut:
| AWS DevOps |
Sesuaikan dasbor Grafana Terkelola Amazon. | Untuk menyesuaikan dasbor untuk penyempurnaan masa depan lebih lanjut, lakukan hal berikut:
Atau, kode sumber untuk dasbor ini tersedia dalam | AWS DevOps |
| Tugas | Deskripsi | Keterampilan yang dibutuhkan |
|---|---|---|
Jeda Amazon MWAA DAG berjalan. | Untuk menjeda DAG berjalan, lakukan hal berikut:
| AWS DevOps, Insinyur data |
Hapus objek di bucket Amazon S3. | Untuk menghapus bucket Amazon S3 mwaa-events-bucket-* dan mwaa-metrics-bucket-*, ikuti petunjuk penggunaan konsol Amazon S3 di Menghapus bucket di dokumentasi Amazon S3. | AWS DevOps |
Hancurkan sumber daya yang dibuat oleh Terraform. | Untuk menghancurkan sumber daya yang dibuat oleh Terraform dan file status Terraform lokal terkait, lakukan hal berikut:
| AWS DevOps |
Pemecahan Masalah
| Isu | Solusi |
|---|---|
| Tingkatkan versi Anda AWS CLI ke versi terbaru. |
Memuat sumber data kesalahan -
| Kesalahannya terputus-putus. Tunggu beberapa menit, lalu segarkan sumber data Anda untuk melihat sumber data Timestream yang terdaftar. |
Sumber daya terkait
AWS dokumentasi
AWS video
https://www.youtube-nocookie.com/embed/XX2Xcz-Ps9U? kontrol=0
https://www.youtube-nocookie.com/embed/Z4 JHxl2xp Og? kontrol=0
Informasi tambahan
Anda dapat membuat solusi pemantauan dan peringatan komprehensif untuk lingkungan Amazon MWAA Anda, memungkinkan manajemen proaktif dan respons cepat terhadap potensi masalah atau anomali. Grafana yang Dikelola Amazon mencakup kemampuan berikut:
Peringatan — Anda dapat mengonfigurasi lansiran di Grafana Terkelola Amazon berdasarkan ambang batas atau kondisi yang telah ditentukan sebelumnya. Siapkan notifikasi email untuk mengingatkan pemangku kepentingan terkait saat metrik tertentu melebihi atau jatuh di bawah ambang batas yang ditentukan. Untuk informasi selengkapnya, lihat Peringatan Grafana di dokumentasi Grafana Terkelola Amazon.
Integrasi — Anda dapat mengintegrasikan Grafana Terkelola Amazon dengan berbagai alat pihak ketiga seperti OpsGenie, PagerDuty, atau Slack untuk kemampuan notifikasi yang ditingkatkan. Misalnya, Anda dapat mengatur webhook atau mengintegrasikan dengan APIs untuk memicu insiden dan notifikasi di platform ini berdasarkan peringatan yang dihasilkan di Amazon Managed Grafana. Selain itu, pola ini menyediakan GitHub repositori