

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

# Mengotomatiskan penilaian sumber daya AWS
<a name="automate-aws-resource-assessment"></a>

*Naveen Suthar, Arun Bagal, Manish Garg, dan Sandeep Gawande, Amazon Web Services*

## Ringkasan
<a name="automate-aws-resource-assessment-summary"></a>

Pola ini menjelaskan pendekatan otomatis untuk menyiapkan kemampuan penilaian sumber daya dengan menggunakan [AWS Cloud Development Kit (AWS CDK)](https://docs.aws.amazon.com/cdk/v2/guide/home.html). Dengan menggunakan pola ini, tim operasi mengumpulkan detail audit sumber daya secara otomatis dan melihat detail semua sumber daya yang digunakan di akun AWS pada satu dasbor. Ini sangat membantu dalam kasus penggunaan berikut:
+ Mengidentifikasi infrastruktur sebagai alat kode (IAc) dan mengisolasi sumber daya yang dibuat oleh berbagai solusi IAc seperti [HashiCorp Terraform](https://www.terraform.io/), AWS, AWS CDK CloudFormation, dan [AWS](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/Welcome.html) [Command Line Interface (AWS](https://docs.aws.amazon.com/cli/latest/userguide/cli-chap-welcome.html) CLI)
+ Mengambil informasi audit sumber daya

Solusi ini juga akan membantu tim kepemimpinan memperoleh wawasan tentang sumber daya dan aktivitas dalam akun AWS dari satu dasbor. 


| 
| 
| Catatan: [Amazon Quick Sight](https://docs.aws.amazon.com/quicksight/latest/user/welcome.html) adalah layanan berbayar. Sebelum menjalankannya untuk menganalisis data dan membuat dasbor, tinjau [harga Amazon Quick Sight](https://aws.amazon.com/quicksight/pricing/). | 
| --- |

## Prasyarat dan batasan
<a name="automate-aws-resource-assessment-prereqs"></a>

**Prasyarat**
+ Akun AWS yang aktif.
+ Peran dan izin AWS Identity and Access Management (IAM) dengan akses ke sumber daya penyediaan
+ [Akun Amazon Quick](https://docs.aws.amazon.com/quicksight/latest/user/signing-up.html) [yang dibuat dengan akses ke [Amazon Simple Storage Service (Amazon S3) dan Amazon](https://docs.aws.amazon.com/AmazonS3/latest/userguide/Welcome.html) Athena](https://docs.aws.amazon.com/athena/latest/ug/what-is.html)
+ AWS CDK versi 2.55.1 atau yang lebih baru diinstal 
+ [Python](https://www.python.org/downloads/release/python-390/) versi 3.9 atau yang lebih baru diinstal

**Batasan**
+ Solusi ini diterapkan ke satu akun AWS.
+ Solusinya tidak akan melacak peristiwa yang terjadi sebelum penerapannya kecuali AWS CloudTrail sudah menyiapkan dan menyimpan data dalam bucket S3.

**Versi produk**
+ AWS CDK versi 2.55.1 atau yang lebih baru
+ Python versi 3.9 atau yang lebih baru

## Arsitektur
<a name="automate-aws-resource-assessment-architecture"></a>

**Tumpukan teknologi target**
+ Amazon Athena
+ AWS CloudTrail
+ AWS Glue
+ AWS Lambda
+ Penglihatan Cepat Amazon
+ Amazon S3

**Arsitektur target**

Kode AWS CDK akan menerapkan semua sumber daya yang diperlukan untuk menyiapkan kemampuan penilaian sumber daya di akun AWS. Diagram berikut menunjukkan proses pengiriman CloudTrail log ke AWS Glue, Amazon Athena, dan Quick Sight.

![\[Penilaian sumber daya AWS dengan AWS Glue, Amazon Athena, dan Amazon QuickSight dalam proses enam langkah.\]](http://docs.aws.amazon.com/id_id/prescriptive-guidance/latest/patterns/images/pattern-img/a504774e-db7a-4c36-a22c-ce56d252fb58/images/8f2b549d-33a8-4cbf-86fd-33244716b668.png)


1. CloudTrail mengirim log ke ember S3 untuk penyimpanan.

1. Pemberitahuan peristiwa memanggil fungsi Lambda yang memproses log dan menghasilkan data yang difilter.

1. Data yang difilter disimpan di bucket S3 lain.

1. Crawler AWS Glue disiapkan pada data yang difilter yang ada di bucket S3 untuk membuat skema di tabel AWS Glue Data Catalog.

1. Data yang difilter siap untuk ditanyakan oleh Amazon Athena.

1. Data yang ditanyakan diakses oleh Quick Sight untuk visualisasi.

**Otomatisasi dan skala**
+ Solusi ini dapat diskalakan dari satu akun AWS ke beberapa akun AWS jika ada CloudTrail jejak di seluruh organisasi di AWS Organizations. Dengan menerapkan CloudTrail di tingkat organisasi, Anda juga dapat menggunakan solusi ini untuk mengambil detail audit sumber daya untuk semua sumber daya yang diperlukan.
+ Pola ini menggunakan sumber daya tanpa server AWS untuk menerapkan solusi.

## Alat
<a name="automate-aws-resource-assessment-tools"></a>

**Layanan AWS**
+ [Amazon Athena](https://docs.aws.amazon.com/athena/latest/ug/what-is.html) adalah layanan kueri interaktif yang membantu Anda menganalisis data secara langsung di Amazon S3 dengan menggunakan SQL standar.
+ [AWS Cloud Development Kit (AWS CDK)](https://docs.aws.amazon.com/cdk/latest/guide/home.html) adalah kerangka kerja pengembangan perangkat lunak yang membantu Anda menentukan dan menyediakan infrastruktur AWS Cloud dalam kode.
+ [AWS CloudFormation](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/Welcome.html) membantu Anda menyiapkan sumber daya AWS, menyediakannya dengan cepat dan konsisten, serta mengelolanya sepanjang siklus hidupnya di seluruh akun AWS dan Wilayah AWS.
+ [AWS CloudTrail](https://docs.aws.amazon.com/awscloudtrail/latest/userguide/cloudtrail-user-guide.html) membantu Anda mengaudit tata kelola, kepatuhan, dan risiko operasional akun AWS Anda.
+ [AWS Glue](https://docs.aws.amazon.com/glue/latest/dg/what-is-glue.html) adalah layanan ekstrak, transformasi, dan beban (ETL) yang dikelola sepenuhnya. Ini membantu Anda mengkategorikan, membersihkan, memperkaya, dan memindahkan data dengan andal antara penyimpanan data dan aliran data. Pola ini menggunakan crawler AWS Glue dan tabel AWS Glue Data Catalog.
+ [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.
+ [Amazon Quick](https://docs.aws.amazon.com/quicksight/latest/user/welcome.html) adalah layanan intelijen bisnis skala cloud (BI) yang membantu Anda memvisualisasikan, menganalisis, dan melaporkan data Anda dalam satu dasbor.
+ [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.

**Repositori kode**

Kode untuk pola ini tersedia di GitHub [infrastructure-assessment-iac-automation](https://github.com/aws-samples/infrastructure-assessment-iac-automation)repositori.

Repositori kode berisi file dan folder berikut:
+ `lib`folder — AWS CDK membangun file Python yang digunakan untuk membuat sumber daya AWS
+ `src/lambda_code`— Kode Python yang dijalankan dalam fungsi Lambda
+ `requirements.txt`— Daftar semua dependensi Python yang harus diinstal
+ `cdk.json`— File input untuk memberikan nilai yang diperlukan untuk memutar sumber daya

## Praktik terbaik
<a name="automate-aws-resource-assessment-best-practices"></a>

Siapkan pemantauan dan peringatan untuk fungsi Lambda. Untuk informasi selengkapnya, lihat [Memantau dan memecahkan masalah fungsi Lambda](https://docs.aws.amazon.com/lambda/latest/dg/lambda-monitoring.html). Untuk praktik terbaik umum saat bekerja dengan fungsi Lambda, lihat dokumentasi [AWS](https://docs.aws.amazon.com/lambda/latest/dg/best-practices.html).

## Epik
<a name="automate-aws-resource-assessment-epics"></a>

### Siapkan lingkungan Anda
<a name="set-up-your-environment"></a>


| Tugas | Deskripsi | Keterampilan yang dibutuhkan | 
| --- | --- | --- | 
| Kloning repo di mesin lokal Anda. | Untuk mengkloning repositori, jalankan perintah. `git clone https://github.com/aws-samples/infrastructure-assessment-iac-automation.git` | AWS DevOps, DevOps insinyur | 
| Siapkan lingkungan virtual Python dan instal dependensi yang diperlukan. | Untuk mengatur lingkungan virtual Python, jalankan perintah berikut.<pre>cd infrastructure-assessment-iac-automation<br />python3 -m venv .venv<br />source .venv/bin/activate</pre>Untuk mengatur dependensi yang diperlukan, jalankan perintah. `pip install -r requirements.txt` | AWS DevOps, DevOps insinyur | 
| Siapkan lingkungan AWS CDK dan sintesis kode AWS CDK. | [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/id_id/prescriptive-guidance/latest/patterns/automate-aws-resource-assessment.html) | AWS DevOps, DevOps insinyur | 

### Siapkan kredensi AWS di mesin lokal Anda
<a name="set-up-aws-credentials-on-your-local-machine"></a>


| Tugas | Deskripsi | Keterampilan yang dibutuhkan | 
| --- | --- | --- | 
| Ekspor variabel untuk akun dan Wilayah tempat tumpukan akan digunakan. | Untuk memberikan kredensi AWS untuk AWS CDK dengan menggunakan variabel lingkungan, jalankan perintah berikut.<pre>export CDK_DEFAULT_ACCOUNT=<12 Digit AWS Account Number><br />export CDK_DEFAULT_REGION=<region></pre> | AWS DevOps, DevOps insinyur | 
| Siapkan profil AWS CLI. | Untuk menyiapkan profil AWS CLI untuk akun, ikuti petunjuk dalam dokumentasi [AWS](https://docs.aws.amazon.com/toolkit-for-visual-studio/latest/user-guide/keys-profiles-credentials.html). | AWS DevOps, DevOps insinyur | 

### Konfigurasikan dan terapkan alat penilaian sumber daya
<a name="configure-and-deploy-the-resource-assessment-tool"></a>


| Tugas | Deskripsi | Keterampilan yang dibutuhkan | 
| --- | --- | --- | 
| Menyebarkan sumber daya di akun. | Untuk menerapkan sumber daya di akun AWS dengan menggunakan AWS CDK, lakukan hal berikut:[\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/id_id/prescriptive-guidance/latest/patterns/automate-aws-resource-assessment.html) | AWS DevOps | 
| Jalankan crawler AWS Glue dan buat tabel Katalog Data. | [Crawler AWS Glue](https://docs.aws.amazon.com/glue/latest/dg/add-crawler.html) digunakan untuk menjaga skema data tetap dinamis. Solusi ini membuat dan memperbarui partisi dalam [tabel AWS Glue Data Catalog](https://docs.aws.amazon.com/athena/latest/ug/querying-glue-catalog.html) dengan menjalankan crawler secara berkala seperti yang ditentukan oleh penjadwal crawler AWS Glue. Setelah data tersedia di bucket keluaran S3, gunakan langkah-langkah berikut untuk menjalankan crawler AWS Glue dan buat skema tabel Katalog Data untuk pengujian:[\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/id_id/prescriptive-guidance/latest/patterns/automate-aws-resource-assessment.html)Kode AWS CDK mengonfigurasi crawler AWS Glue untuk berjalan pada waktu tertentu, tetapi Anda juga dapat menjalankannya sesuai permintaan. | AWS DevOps, DevOps insinyur | 
| Menyebarkan konstruksi Quick Sight. | [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/id_id/prescriptive-guidance/latest/patterns/automate-aws-resource-assessment.html) | AWS DevOps, DevOps insinyur | 
| Buat dasbor Quick Sight. | Untuk membuat contoh dasbor dan analisis Quick Sight, lakukan hal berikut:[\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/id_id/prescriptive-guidance/latest/patterns/automate-aws-resource-assessment.html)Untuk informasi selengkapnya, lihat [Memulai analisis di Amazon Quick Sight](https://docs.aws.amazon.com/quicksight/latest/user/creating-an-analysis.html) dan [tipe Visual di Amazon Quick Sight](https://docs.aws.amazon.com/quicksight/latest/user/working-with-visual-types.html). | AWS DevOps, DevOps insinyur | 

### Bersihkan semua sumber daya AWS dalam solusinya
<a name="clean-up-all-aws-resources-in-the-solution"></a>


| Tugas | Deskripsi | Keterampilan yang dibutuhkan | 
| --- | --- | --- | 
| Hapus sumber daya AWS. | [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/id_id/prescriptive-guidance/latest/patterns/automate-aws-resource-assessment.html) | AWS DevOps, DevOps insinyur | 

### Siapkan fitur tambahan di atas otomatisasi alat penilaian sumber daya AWS
<a name="set-up-additional-features-on-top-of-the-aws-resource-assessment-tool-automation"></a>


| Tugas | Deskripsi | Keterampilan yang dibutuhkan | 
| --- | --- | --- | 
| Pantau dan bersihkan sumber daya yang dibuat secara manual. | (Opsional) Jika organisasi Anda memiliki persyaratan kepatuhan untuk membuat sumber daya menggunakan alat IAC, Anda dapat mencapai kepatuhan dengan menggunakan otomatisasi alat penilaian sumber daya AWS untuk mengambil sumber daya yang disediakan secara manual. Anda juga dapat menggunakan alat ini untuk mengimpor sumber daya ke alat IAc atau untuk membuatnya kembali. Untuk memantau sumber daya yang disediakan secara manual, lakukan tugas tingkat tinggi berikut:[\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/id_id/prescriptive-guidance/latest/patterns/automate-aws-resource-assessment.html) | AWS DevOps, DevOps insinyur | 

## Pemecahan masalah
<a name="automate-aws-resource-assessment-troubleshooting"></a>


| Isu | Solusi | 
| --- | --- | 
| AWS CDK mengembalikan kesalahan. | Untuk bantuan terkait masalah AWS CDK, lihat [Memecahkan masalah umum AWS](https://docs.aws.amazon.com/cdk/v2/guide/troubleshooting.html) CDK. | 

## Sumber daya terkait
<a name="automate-aws-resource-assessment-resources"></a>
+ [Membangun fungsi Lambda dengan Python](https://docs.aws.amazon.com/lambda/latest/dg/lambda-python.html)
+ [Memulai AWS CDK](https://docs.aws.amazon.com/cdk/v2/guide/getting_started.html)
+ [Bekerja dengan AWS CDK dengan Python](https://docs.aws.amazon.com/cdk/v2/guide/work-with-cdk-python.html)
+ [Membuat jejak CloudTrail log](https://docs.aws.amazon.com/awscloudtrail/latest/userguide/cloudtrail-create-and-update-a-trail.html)
+ [Memulai dengan Amazon Quick Sight](https://aws.amazon.com/quicksight/getting-started/)

## Informasi tambahan
<a name="automate-aws-resource-assessment-additional"></a>

**Beberapa akun**

Untuk menyiapkan kredensi AWS CLI untuk beberapa akun, gunakan profil AWS. Untuk informasi selengkapnya, lihat bagian *Mengonfigurasi beberapa profil* di [Mengatur AWS CLI](https://aws.amazon.com/getting-started/guides/setup-environment/module-three/).

**Perintah AWS CDK**

Saat bekerja dengan AWS CDK, ingatlah perintah berguna berikut:
+ Daftar semua tumpukan di aplikasi

  ```
  cdk ls
  ```
+ Memancarkan template AWS yang disintesis CloudFormation 

  ```
  cdk synth
  ```
+ Menerapkan tumpukan ke akun AWS default dan Wilayah

  ```
  cdk deploy
  ```
+ Membandingkan tumpukan yang diterapkan dengan status saat ini

  ```
  cdk diff
  ```
+ Membuka dokumentasi AWS CDK

  ```
  cdk docs
  ```