

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
<a name="automate-ingestion-and-visualization-of-amazon-mwaa-custom-metrics"></a>

*Faisal Abdullah dan Satya Vajrapu, Amazon Web Services*

## Ringkasan
<a name="automate-ingestion-and-visualization-of-amazon-mwaa-custom-metrics-summary"></a>

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
<a name="automate-ingestion-and-visualization-of-amazon-mwaa-custom-metrics-prereqs"></a>

**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](https://docs.aws.amazon.com/cloudshell/latest/userguide/welcome.html).
+ 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](https://docs.aws.amazon.com/cli/latest/userguide/getting-started-install.html) dari AWS CLI dokumentasi. AWS CLI
+ Versi Terraform berikut diinstal: `required_version = ">= 1.6.1, < 2.0.0"` Anda dapat menggunakan [tfswitch untuk beralih](https://tfswitch.warrensbox.com/) di 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](https://docs.aws.amazon.com/singlesignon/latest/userguide/prereq-identity-sources.html) 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](#automate-ingestion-and-visualization-of-amazon-mwaa-custom-metrics-resources).

**Batasan**
+ Beberapa Layanan AWS tidak tersedia di semua Wilayah AWS. Untuk ketersediaan Wilayah, lihat [Layanan AWS berdasarkan Wilayah](https://aws.amazon.com/about-aws/global-infrastructure/regional-product-services/). Untuk titik akhir tertentu, lihat [Titik akhir dan kuota layanan](https://docs.aws.amazon.com/general/latest/gr/aws-service-information.html), 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
<a name="automate-ingestion-and-visualization-of-amazon-mwaa-custom-metrics-architecture"></a>

Diagram arsitektur berikut menyoroti yang Layanan AWS digunakan dalam solusi.

![\[Alur kerja untuk mengotomatiskan konsumsi metrik kustom Amazon MWAA.\]](http://docs.aws.amazon.com/id_id/prescriptive-guidance/latest/patterns/images/pattern-img/3458d0a9-aee1-428a-bf2f-c357bb531c64/images/b43ed8d2-94ac-4438-913b-81c7eba8f3e0.png)


Diagram sebelumnya melangkah melalui alur kerja berikut:

1. 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.

1. Untuk merampingkan pemrosesan data, fungsi Lambda berjalan saat dipicu oleh peristiwa Amazon S3, yang memfasilitasi pemuatan metrik ke Timestream.

1. Timestream terintegrasi sebagai sumber data dalam Grafana Terkelola Amazon tempat semua metrik khusus dari Amazon MWAA disimpan.

1. 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
<a name="automate-ingestion-and-visualization-of-amazon-mwaa-custom-metrics-tools"></a>

**Layanan AWS**
+ [AWS IAM Identity Center](https://docs.aws.amazon.com/singlesignon/latest/userguide/what-is.html)membantu Anda mengelola akses masuk tunggal (SSO) secara terpusat ke semua aplikasi Anda Akun AWS dan cloud.
+ [AWS Lambda](https://docs.aws.amazon.com/lambda/latest/dg/welcome.html)adalah 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](https://docs.aws.amazon.com/grafana/latest/userguide/what-is-Amazon-Managed-Service-Grafana.html) 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](https://docs.aws.amazon.com/mwaa/latest/userguide/what-is-mwaa.html)) adalah layanan orkestrasi terkelola untuk Apache Airflow yang dapat Anda gunakan untuk menyiapkan dan mengoperasikan pipeline data di cloud dalam skala besar. [Apache](https://airflow.apache.org/) 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](https://docs.aws.amazon.com/AmazonS3/latest/userguide/Welcome.html)) 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](https://docs.aws.amazon.com/timestream/latest/developerguide/what-is-timestream.html) 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](https://www.terraform.io/docs) 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-grafana](https://github.com/aws-samples/visualize-amazon-mwaa-custom-metrics-grafana). `stacks/Infra`Folder berisi yang berikut:
+ File konfigurasi Terraform untuk semua sumber daya AWS 
+ Grafana dasbor file.json di folder `grafana`
+ Alur Kerja Terkelola Amazon untuk Apache DAGs Airflow di folder `mwaa/dags`
+ Kode Lambda untuk mengurai file.csv dan menyimpan metrik di database Timestream di folder `src`
+ Kebijakan IAM. File json di folder `templates`

## Praktik terbaik
<a name="automate-ingestion-and-visualization-of-amazon-mwaa-custom-metrics-best-practices"></a>

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](https://developer.hashicorp.com/terraform/language/state/remote) dalam dokumentasi Terraform. 

## Epik
<a name="automate-ingestion-and-visualization-of-amazon-mwaa-custom-metrics-epics"></a>

### Terapkan infrastruktur menggunakan Terraform
<a name="deploy-the-infrastructure-using-terraform"></a>


| Tugas | Deskripsi | Keterampilan yang dibutuhkan | 
| --- | --- | --- | 
| Menyebarkan infrastruktur. | Untuk menerapkan infrastruktur solusi, lakukan hal berikut:[\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/id_id/prescriptive-guidance/latest/patterns/automate-ingestion-and-visualization-of-amazon-mwaa-custom-metrics.html) | AWS DevOps | 

### Validasi sumber daya infrastruktur yang digunakan
<a name="validate-the-deployed-infrastructure-resources"></a>


| Tugas | Deskripsi | Keterampilan yang dibutuhkan | 
| --- | --- | --- | 
| Validasi lingkungan Amazon MWAA. | Untuk memvalidasi lingkungan Amazon MWAA, lakukan hal berikut:[\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/id_id/prescriptive-guidance/latest/patterns/automate-ingestion-and-visualization-of-amazon-mwaa-custom-metrics.html) | 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: [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/id_id/prescriptive-guidance/latest/patterns/automate-ingestion-and-visualization-of-amazon-mwaa-custom-metrics.html)Anda juga dapat melihat keberhasilan menjalankan setiap DAG di bawah kolom **Runs**.  | Insinyur data, AWS DevOps | 

### Konfigurasikan lingkungan Grafana yang Dikelola Amazon
<a name="configure-the-gra-environment"></a>


| 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:[\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/id_id/prescriptive-guidance/latest/patterns/automate-ingestion-and-visualization-of-amazon-mwaa-custom-metrics.html) | 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:[\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/id_id/prescriptive-guidance/latest/patterns/automate-ingestion-and-visualization-of-amazon-mwaa-custom-metrics.html)Untuk informasi selengkapnya, lihat [Memperluas ruang kerja Anda dengan plugin](https://docs.aws.amazon.com/grafana/latest/userguide/grafana-plugins.html#manage-plugins) di dokumentasi Grafana Terkelola Amazon. | AWS DevOps, DevOps insinyur | 

### Visualisasikan metrik khusus di dasbor Grafana Terkelola Amazon
<a name="visualize-the-custom-metrics-in-the-gra-dashboard"></a>


| 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:[\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/id_id/prescriptive-guidance/latest/patterns/automate-ingestion-and-visualization-of-amazon-mwaa-custom-metrics.html)Halaman metrik dasbor menampilkan informasi berikut:[\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/id_id/prescriptive-guidance/latest/patterns/automate-ingestion-and-visualization-of-amazon-mwaa-custom-metrics.html) | AWS DevOps | 
| Sesuaikan dasbor Grafana Terkelola Amazon. | Untuk menyesuaikan dasbor untuk penyempurnaan masa depan lebih lanjut, lakukan hal berikut:[\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/id_id/prescriptive-guidance/latest/patterns/automate-ingestion-and-visualization-of-amazon-mwaa-custom-metrics.html)Atau, kode sumber untuk dasbor ini tersedia dalam `dashboard.json` file di `stacks/infra/grafana` folder di [GitHub repositori](https://github.com/aws-samples/visualize-amazon-mwaa-custom-metrics-grafana/blob/main/stacks/infra/grafana/dashboard.json). | AWS DevOps | 

### Bersihkan AWS sumber daya
<a name="clean-up-aws-resources"></a>


| Tugas | Deskripsi | Keterampilan yang dibutuhkan | 
| --- | --- | --- | 
| Jeda Amazon MWAA DAG berjalan. | Untuk menjeda DAG berjalan, lakukan hal berikut:[\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/id_id/prescriptive-guidance/latest/patterns/automate-ingestion-and-visualization-of-amazon-mwaa-custom-metrics.html) | AWS DevOps, Insinyur data | 
| Hapus objek di bucket Amazon S3. | Untuk menghapus bucket Amazon S3 **mwaa-events-bucket-\$1 dan **mwaa-metrics-bucket-\$1****, ikuti petunjuk penggunaan konsol Amazon S3 di Menghapus [bucket](https://docs.aws.amazon.com/AmazonS3/latest/userguide/delete-bucket.html) 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:[\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/id_id/prescriptive-guidance/latest/patterns/automate-ingestion-and-visualization-of-amazon-mwaa-custom-metrics.html) | AWS DevOps | 

## Pemecahan masalah
<a name="automate-ingestion-and-visualization-of-amazon-mwaa-custom-metrics-troubleshooting"></a>


| Isu | Solusi | 
| --- | --- | 
| `null_resource.plugin_mgmt (local-exec): aws: error: argument operation: Invalid choice, valid choices are:` | Tingkatkan versi Anda AWS CLI ke [versi terbaru](https://docs.aws.amazon.com/cli/latest/userguide/getting-started-install.html). | 
| Memuat sumber data kesalahan - `Fetch error: 404 Not Found Instantiating…` | Kesalahannya terputus-putus. Tunggu beberapa menit, lalu segarkan sumber data Anda untuk melihat sumber data Timestream yang terdaftar.  | 

## Sumber daya terkait
<a name="automate-ingestion-and-visualization-of-amazon-mwaa-custom-metrics-resources"></a>

**AWS dokumentasi**
+ [Grafana yang Dikelola Amazon untuk dasbor dan visualisasi](https://docs.aws.amazon.com/prescriptive-guidance/latest/implementing-logging-monitoring-cloudwatch/amg-dashboarding-visualization.html)
+ [Konfigurasikan Grafana Terkelola Amazon untuk menggunakan Okta](https://docs.aws.amazon.com/grafana/latest/userguide/AMG-SAML-providers-okta.html)
+ [Gunakan AWS IAM Identity Center dengan ruang kerja Grafana Terkelola Amazon Anda](https://docs.aws.amazon.com/grafana/latest/userguide/authentication-in-AMG-SSO.html)
+ [Bekerja dengan DAGs di Amazon MWAA](https://docs.aws.amazon.com/mwaa/latest/userguide/working-dags.html)

**AWS video**
+ [Konfigurasikan Pusat Identitas IAM dengan Grafana Terkelola Amazon untuk otentikasi, seperti yang ditunjukkan dalam video berikut.](https://www.youtube.com/watch?v=XX2Xcz-Ps9U)




[https://www.youtube-nocookie.com/embed/XX2Xcz-Ps9U? kontrol=0](https://www.youtube-nocookie.com/embed/XX2Xcz-Ps9U?controls=0)
+ [Jika Pusat Identitas IAM tidak tersedia, Anda juga dapat mengintegrasikan autentikasi Grafana Terkelola Amazon dengan menggunakan penyedia Identitas eksternal (iDP) seperti Okta, seperti yang ditunjukkan dalam video berikut.](https://www.youtube.com/watch?v=Z4JHxl2xpOg)




[https://www.youtube-nocookie.com/embed/Z4 JHxl2xp Og? kontrol=0](https://www.youtube-nocookie.com/embed/Z4JHxl2xpOg?controls=0)

## Informasi tambahan
<a name="automate-ingestion-and-visualization-of-amazon-mwaa-custom-metrics-additional"></a>

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 ketika metrik tertentu melebihi atau jatuh di bawah ambang batas yang ditentukan. Untuk informasi selengkapnya, lihat [Peringatan Grafana di dokumentasi Grafana](https://docs.aws.amazon.com/grafana/latest/userguide/alerts-overview.html) 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 pemberitahuan di platform ini berdasarkan peringatan yang dihasilkan di Amazon Managed Grafana. Selain itu, pola ini menyediakan [GitHub repositori](https://github.com/aws-samples/visualize-amazon-mwaa-custom-metrics-grafana) untuk membuat AWS sumber daya. Anda dapat mengintegrasikan kode ini lebih lanjut dengan alur kerja penerapan infrastruktur Anda.