

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

# Infrastruktur
<a name="infrastructure-pattern-list"></a>

**Topics**
+ [Akses host bastion menggunakan Session Manager dan Amazon EC2 Instance Connect](access-a-bastion-host-by-using-session-manager-and-amazon-ec2-instance-connect.md)
+ [Memusatkan resolusi DNS dengan menggunakan Microsoft Active AWS Managed Microsoft AD Directory dan lokal](centralize-dns-resolution-by-using-aws-managed-microsoft-ad-and-on-premises-microsoft-active-directory.md)
+ [Memusatkan pemantauan dengan menggunakan Amazon CloudWatch Observability Access Manager](centralize-monitoring-by-using-amazon-cloudwatch-observability-access-manager.md)
+ [Periksa EC2 instance untuk tag wajib saat peluncuran](check-ec2-instances-for-mandatory-tags-at-launch.md)
+ [Bersihkan AWS Account Factory untuk sumber daya Terraform (AFT) dengan aman setelah kehilangan file status](clean-up-aft-resources-safely-after-state-file-loss.md)
+ [Buat pipeline di Wilayah AWS yang tidak mendukung AWS CodePipeline](create-a-pipeline-in-aws-regions-that-don-t-support-aws-codepipeline.md)
+ [Sesuaikan nama peran default dengan menggunakan AWS CDK aspek dan lubang keluar](customize-default-role-names-by-using-aws-cdk-aspects-and-escape-hatches.md)
+ [Terapkan cluster Cassandra di Amazon EC2 dengan statis IPs pribadi untuk menghindari penyeimbangan kembali](deploy-a-cassandra-cluster-on-amazon-ec2-with-private-static-ips-to-avoid-rebalancing.md)
+ [Memperluas VRFs ke AWS dengan menggunakan AWS Transit Gateway Connect](extend-vrfs-to-aws-by-using-aws-transit-gateway-connect.md)
+ [Dapatkan notifikasi Amazon SNS saat status kunci kunci AWS KMS berubah](get-amazon-sns-notifications-when-the-key-state-of-an-aws-kms-key-changes.md)
+ [Pertahankan ruang IP yang dapat dirutekan dalam desain VPC multi-akun untuk subnet non-beban kerja](preserve-routable-ip-space-in-multi-account-vpc-designs-for-non-workload-subnets.md)
+ [Menyediakan produk Terraform AWS Service Catalog dengan menggunakan repositori kode](provision-a-terraform-product-in-aws-service-catalog-by-using-a-code-repository.md)
+ [Daftarkan beberapa Akun AWS dengan satu alamat email dengan menggunakan Amazon SES](register-multiple-aws-accounts-with-a-single-email-address-by-using-amazon-ses.md)
+ [Menyiapkan resolusi DNS untuk jaringan hybrid di lingkungan AWS akun tunggal](set-up-dns-resolution-for-hybrid-networks-in-a-single-account-aws-environment.md)
+ [Siapkan bot UiPath RPA secara otomatis di Amazon EC2 dengan menggunakan AWS CloudFormation](set-up-uipath-rpa-bots-automatically-on-amazon-ec2-by-using-aws-cloudformation.md)
+ [Siapkan PeopleSoft arsitektur yang sangat tersedia di AWS](set-up-a-highly-available-peoplesoft-architecture-on-aws.md)
+ [Siapkan pemulihan bencana untuk Oracle JD Edwards dengan EnterpriseOne AWS Elastic Disaster Recovery](set-up-disaster-recovery-for-oracle-jd-edwards-enterpriseone-with-aws-elastic-disaster-recovery.md)
+ [Mengatur deteksi CloudFormation drift di organisasi multi-wilayah dan multi-akun](set-up-aws-cloudformation-drift-detection-in-a-multi-region-multi-account-organization.md)
+ [Berhasil mengimpor bucket S3 sebagai tumpukan AWS CloudFormation](successfully-import-an-s3-bucket-as-an-aws-cloudformation-stack.md)
+ [Sinkronisasi data antara sistem file Amazon EFS di Wilayah AWS yang berbeda dengan menggunakan AWS DataSync](synchronize-data-between-amazon-efs-file-systems-in-different-aws-regions-by-using-aws-datasync.md)
+ [Uji AWS infrastruktur dengan menggunakan LocalStack dan Tes Terraform](test-aws-infra-localstack-terraform.md)
+ [Tingkatkan cluster SAP Pacemaker dari ke ENSA1 ENSA2](upgrade-sap-pacemaker-clusters-from-ensa1-to-ensa2.md)
+ [Gunakan Availability Zone yang konsisten VPCs di berbagai akun AWS](use-consistent-availability-zones-in-vpcs-across-different-aws-accounts.md)
+ [Gunakan pengguna IDs dalam kebijakan IAM untuk kontrol akses dan otomatisasi](use-user-ids-iam-policies-access-control-automation.md)
+ [Validasi Account Factory untuk kode Terraform (AFT) secara lokal](validate-account-factory-for-terraform-aft-code-locally.md)
+ [Lebih banyak pola](infrastructure-more-patterns-pattern-list.md)

# Akses host bastion menggunakan Session Manager dan Amazon EC2 Instance Connect
<a name="access-a-bastion-host-by-using-session-manager-and-amazon-ec2-instance-connect"></a>

*Piotr Chotkowski dan Witold Kowalik, Amazon Web Services*

## Ringkasan
<a name="access-a-bastion-host-by-using-session-manager-and-amazon-ec2-instance-connect-summary"></a>

Sebuah *bastion host*, kadang-kadang disebut *jump box*, adalah server yang menyediakan satu titik akses dari jaringan eksternal ke sumber daya yang terletak di jaringan pribadi. Server yang terpapar ke jaringan publik eksternal, seperti internet, menimbulkan risiko keamanan potensial untuk akses yang tidak sah. Sangat penting untuk mengamankan dan mengontrol akses ke server ini.

Pola ini menjelaskan cara Anda dapat menggunakan [Session Manager](https://docs.aws.amazon.com/systems-manager/latest/userguide/session-manager.html) dan [Amazon EC2 Instance Connect untuk terhubung](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/Connect-using-EC2-Instance-Connect.html) dengan aman ke host bastion Amazon Elastic Compute Cloud EC2 (Amazon) yang digunakan di host Anda. Akun AWS Session Manager adalah kemampuan AWS Systems Manager. Manfaat dari pola ini meliputi:
+ Host benteng yang dikerahkan tidak memiliki port terbuka dan masuk yang terpapar ke internet publik. Ini mengurangi permukaan serangan potensial.
+ Anda tidak perlu menyimpan dan memelihara kunci Secure Shell (SSH) jangka panjang di dalam. Akun AWS Sebagai gantinya, setiap pengguna menghasilkan key pair SSH baru setiap kali mereka terhubung ke host bastion. AWS Identity and Access Management (IAM) kebijakan yang dilampirkan pada AWS kredensyal pengguna mengontrol akses ke host bastion.

**Audiens yang dituju**

Pola ini ditujukan untuk pembaca yang memiliki pengalaman dengan pemahaman dasar tentang Amazon EC2, Amazon Virtual Private Cloud (Amazon VPC), dan Hashicorp Terraform.

## Prasyarat dan batasan
<a name="access-a-bastion-host-by-using-session-manager-and-amazon-ec2-instance-connect-prereqs"></a>

**Prasyarat**
+ Aktif Akun AWS
+ AWS Command Line Interface (AWS CLI) versi 2, [diinstal](https://docs.aws.amazon.com/cli/latest/userguide/install-cliv2.html) dan [dikonfigurasi](https://docs.aws.amazon.com/cli/latest/userguide/cli-configure-files.html)
+ Plugin Session Manager untuk AWS CLI, [diinstal](https://docs.aws.amazon.com/systems-manager/latest/userguide/session-manager-working-with-install-plugin.html)
+ [Terraform CLI, diinstal](https://developer.hashicorp.com/terraform/cli)
+ Penyimpanan untuk [status](https://developer.hashicorp.com/terraform/language/state) Terraform, seperti bucket Amazon Simple Storage Service (Amazon S3) Simple Storage Service (Amazon S3) dan tabel Amazon DynamoDB yang berfungsi sebagai backend jarak jauh untuk menyimpan status Terraform. [Untuk informasi selengkapnya tentang penggunaan backend jarak jauh untuk status Terraform, lihat Backend Amazon S3 (dokumentasi Terraform).](https://www.terraform.io/language/settings/backends/s3) Untuk contoh kode yang menyiapkan manajemen status jarak jauh dengan backend Amazon S3, lihat [remote-state-s3-backend](https://registry.terraform.io/modules/nozaq/remote-state-s3-backend/aws/latest) (Terraform Registry). Perhatikan persyaratan berikut:
  + Bucket Amazon S3 dan tabel DynamoDB harus sama. Wilayah AWS
  + Saat membuat tabel DynamoDB, kunci partisi `LockID` harus (peka huruf besar/kecil), dan tipe kunci partisi harus. `String` Semua pengaturan tabel lainnya harus pada nilai default mereka. Untuk informasi selengkapnya, lihat [Tentang kunci utama](https://docs.aws.amazon.com/amazondynamodb/latest/developerguide/HowItWorks.CoreComponents.html#HowItWorks.CoreComponents.PrimaryKey) dan [Membuat tabel di dokumentasi](https://docs.aws.amazon.com/amazondynamodb/latest/developerguide/getting-started-step-1.html) DynamoDB.
+ Klien SSH, diinstal

**Batasan**
+ Pola ini dimaksudkan sebagai bukti konsep (PoC) atau sebagai dasar untuk pengembangan lebih lanjut. Seharusnya tidak digunakan dalam bentuknya saat ini di lingkungan produksi. Sebelum penerapan, sesuaikan kode sampel di repositori untuk memenuhi persyaratan dan kasus penggunaan Anda.
+ Pola ini mengasumsikan bahwa target bastion host menggunakan Amazon Linux 2 sebagai sistem operasinya. Meskipun dimungkinkan untuk menggunakan Amazon Machine Images (AMIs) lainnya, sistem operasi lain berada di luar cakupan untuk pola ini.
**catatan**  
Amazon Linux 2 mendekati akhir dukungan. Untuk informasi selengkapnya, lihat [Amazon Linux 2 FAQs](https://aws.amazon.com/amazon-linux-2/faqs/).
+ Dalam pola ini, host benteng terletak di subnet pribadi tanpa gateway NAT dan gateway internet. Desain ini mengisolasi EC2 instance Amazon dari internet publik. Anda dapat menambahkan konfigurasi jaringan tertentu yang memungkinkannya berkomunikasi dengan internet. Untuk informasi selengkapnya, lihat [Connect virtual private cloud (VPC) Anda ke jaringan lain](https://docs.aws.amazon.com/vpc/latest/userguide/extend-intro.html) dalam dokumentasi Amazon VPC. Demikian pula, mengikuti [prinsip hak istimewa terkecil](https://docs.aws.amazon.com/IAM/latest/UserGuide/best-practices.html#grant-least-privilege), host bastion tidak memiliki akses ke sumber daya lain di Anda Akun AWS kecuali Anda secara eksplisit memberikan izin. Untuk informasi selengkapnya, lihat [Kebijakan berbasis sumber daya](https://docs.aws.amazon.com/IAM/latest/UserGuide/access_policies.html#policies_resource-based) dalam dokumentasi IAM.

**Versi produk**
+ AWS CLI versi 2
+ Terraform versi 1.3.9

## Arsitektur
<a name="access-a-bastion-host-by-using-session-manager-and-amazon-ec2-instance-connect-architecture"></a>

**Tumpukan teknologi target**
+ VPC dengan subnet pribadi tunggal
+ [Antarmuka berikut titik akhir VPC](https://docs.aws.amazon.com/vpc/latest/privatelink/create-interface-endpoint.html):
  + `amazonaws.<region>.ssm`— Titik akhir untuk AWS Systems Manager layanan.
  + `amazonaws.<region>.ec2messages`— Systems Manager menggunakan endpoint ini untuk melakukan panggilan dari Agen SSM ke layanan Systems Manager.
  + `amazonaws.<region>.ssmmessages`— Session Manager menggunakan endpoint ini untuk terhubung ke EC2 instans Amazon Anda melalui saluran data yang aman.
+  EC2 Instans `t3.nano` Amazon yang menjalankan Amazon Linux 2
+ Peran IAM dan profil contoh
+ Grup keamanan Amazon VPC dan aturan grup keamanan untuk titik akhir dan instans Amazon EC2 

**Arsitektur target**

![\[Diagram arsitektur menggunakan Session Manager untuk mengakses host bastion.\]](http://docs.aws.amazon.com/id_id/prescriptive-guidance/latest/patterns/images/pattern-img/a02aed20-1852-4c91-902f-f553795006e2/images/819c503b-7eec-4a9c-862b-b87107d50dc1.png)


Diagram menunjukkan proses berikut:

1. Pengguna mengasumsikan peran IAM yang memiliki izin untuk melakukan hal berikut:
   + Mengautentikasi, mengotorisasi, dan menghubungkan ke instans Amazon EC2 
   + Memulai sesi dengan Manajer Sesi

1. Pengguna memulai sesi SSH melalui Session Manager.

1. Session Manager mengautentikasi pengguna, memverifikasi izin dalam kebijakan IAM terkait, memeriksa pengaturan konfigurasi, dan mengirim pesan ke Agen SSM untuk membuka koneksi dua arah.

1. Pengguna mendorong kunci publik SSH ke host benteng melalui metadata Amazon. EC2 Ini harus dilakukan sebelum setiap koneksi. Kunci publik SSH tetap tersedia selama 60 detik.

1. Host benteng berkomunikasi dengan titik akhir VPC antarmuka untuk Systems Manager dan Amazon. EC2

1. Pengguna mengakses host bastion melalui Session Manager dengan menggunakan saluran komunikasi dua arah terenkripsi TLS 1.2.

**Otomatisasi dan skala**

Opsi berikut tersedia untuk mengotomatiskan penerapan atau untuk menskalakan arsitektur ini:
+ Anda dapat menerapkan arsitektur melalui pipeline continuous integration dan continuous delivery (CI/CD).
+ Anda dapat memodifikasi kode untuk mengubah jenis instance dari host bastion.
+ Anda dapat memodifikasi kode untuk menyebarkan beberapa host bastion. Dalam `bastion-host/main.tf` file, di blok `aws_instance` sumber daya, tambahkan `count` meta-argumen. Untuk informasi selengkapnya, lihat dokumentasi [Terraform](https://developer.hashicorp.com/terraform/language/meta-arguments/count).

## Alat
<a name="access-a-bastion-host-by-using-session-manager-and-amazon-ec2-instance-connect-tools"></a>

**Layanan AWS**
+ [AWS Command Line Interface (AWS CLI)](https://docs.aws.amazon.com/cli/latest/userguide/cli-chap-welcome.html) adalah alat open source yang membantu Anda berinteraksi Layanan AWS melalui perintah di shell baris perintah Anda.
+ [Amazon Elastic Compute Cloud (Amazon EC2)](https://docs.aws.amazon.com/ec2/) menyediakan kapasitas komputasi yang dapat diskalakan di. AWS Cloud Anda dapat meluncurkan server virtual sebanyak yang Anda butuhkan dan dengan cepat meningkatkannya ke atas atau ke bawah.
+ [AWS Identity and Access Management (IAM)](https://docs.aws.amazon.com/IAM/latest/UserGuide/introduction.html) membantu Anda mengelola akses ke AWS sumber daya dengan aman dengan mengontrol siapa yang diautentikasi dan diberi wewenang untuk menggunakannya.
+ [AWS Systems Manager](https://docs.aws.amazon.com/systems-manager/latest/userguide/what-is-systems-manager.html)membantu Anda mengelola aplikasi dan infrastruktur yang berjalan di AWS Cloud. Ini menyederhanakan aplikasi dan manajemen sumber daya, mempersingkat waktu untuk mendeteksi dan menyelesaikan masalah operasional, dan membantu Anda mengelola AWS sumber daya Anda dengan aman dalam skala besar. Pola ini menggunakan [Session Manager](https://docs.aws.amazon.com/systems-manager/latest/userguide/session-manager.html), kemampuan Systems Manager.
+ [Amazon Virtual Private Cloud (Amazon VPC)](https://docs.aws.amazon.com/vpc/latest/userguide/what-is-amazon-vpc.html) membantu Anda meluncurkan AWS sumber daya ke jaringan virtual yang telah Anda tentukan. Jaringan virtual ini menyerupai jaringan tradisional yang akan Anda operasikan di pusat data Anda sendiri, dengan manfaat menggunakan infrastruktur yang dapat diskalakan. AWS

**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 [Terraform CLI](https://developer.hashicorp.com/terraform/cli).

**Repositori kode**

Kode untuk pola ini tersedia di [host GitHub Access a bastion dengan menggunakan Session Manager dan Amazon EC2 Instance Connect](https://github.com/aws-samples/secured-bastion-host-terraform) repositori.

## Praktik terbaik
<a name="access-a-bastion-host-by-using-session-manager-and-amazon-ec2-instance-connect-best-practices"></a>
+ Sebaiknya gunakan alat pemindaian kode otomatis untuk meningkatkan keamanan dan kualitas kode. Pola ini dipindai dengan menggunakan [Checkov](https://www.checkov.io/), alat analisis kode statis untuk IAc. Minimal, kami menyarankan Anda melakukan pemeriksaan validasi dan pemformatan dasar dengan menggunakan perintah `terraform validate` dan `terraform fmt -check -recursive` Terraform.
+ Ini adalah praktik yang baik untuk menambahkan tes otomatis untuk IAc. Untuk informasi lebih lanjut tentang berbagai pendekatan untuk menguji kode Terraform, lihat [Menguji HashiCorp Terraform (posting blog Terraform](https://www.hashicorp.com/blog/testing-hashicorp-terraform)).
+ Selama penerapan, Terraform menggunakan instans pengganti EC2 Amazon setiap kali versi baru [AMI Amazon Linux 2 terdeteksi](https://aws.amazon.com/marketplace/pp/prodview-zc4x2k7vt6rpu?sr=0-1&ref_=beagle&applicationId=AWSMPContessa). Ini menyebarkan versi baru dari sistem operasi, termasuk tambalan dan peningkatan. Jika jadwal penerapan jarang terjadi, ini dapat menimbulkan risiko keamanan karena instance tidak memiliki tambalan terbaru. Penting untuk sering memperbarui dan menerapkan tambalan keamanan ke instans Amazon EC2 yang diterapkan. Untuk informasi selengkapnya, lihat [Memperbarui manajemen di Amazon EC2](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/update-management.html).
+ Karena pola ini adalah bukti konsep, ia menggunakan kebijakan AWS terkelola, seperti`AmazonSSMManagedInstanceCore`. AWS kebijakan terkelola mencakup kasus penggunaan umum tetapi tidak memberikan izin hak istimewa paling sedikit. Jika diperlukan untuk kasus penggunaan Anda, sebaiknya Anda membuat kebijakan khusus yang memberikan izin hak istimewa paling sedikit untuk sumber daya yang digunakan dalam arsitektur ini. Untuk informasi selengkapnya, lihat [Memulai kebijakan AWS terkelola dan beralih ke izin hak istimewa paling sedikit.](https://docs.aws.amazon.com/IAM/latest/UserGuide/best-practices.html#bp-use-aws-defined-policies)
+ Gunakan kata sandi untuk melindungi akses ke kunci SSH dan menyimpan kunci di lokasi yang aman.
+ Siapkan logging dan monitoring untuk host bastion. Pencatatan dan pemantauan adalah bagian penting dari pemeliharaan sistem, baik dari perspektif operasional maupun keamanan. Ada beberapa cara untuk memantau koneksi dan aktivitas di host bastion Anda. Untuk informasi selengkapnya, lihat topik berikut dalam dokumentasi Systems Manager:
  + [Pemantauan AWS Systems Manager](https://docs.aws.amazon.com/systems-manager/latest/userguide/monitoring.html)
  + [Penebangan dan pemantauan di AWS Systems Manager](https://docs.aws.amazon.com/systems-manager/latest/userguide/logging-and-monitoring.html)
  + [Aktivitas sesi audit](https://docs.aws.amazon.com/systems-manager/latest/userguide/session-manager-auditing.html)
  + [Aktivitas sesi logging](https://docs.aws.amazon.com/systems-manager/latest/userguide/session-manager-logging.html)

## Epik
<a name="access-a-bastion-host-by-using-session-manager-and-amazon-ec2-instance-connect-epics"></a>

### Menyebarkan sumber daya
<a name="deploy-the-resources"></a>


| Tugas | Deskripsi | Keterampilan yang dibutuhkan | 
| --- | --- | --- | 
| Kloning repositori kode. | [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/id_id/prescriptive-guidance/latest/patterns/access-a-bastion-host-by-using-session-manager-and-amazon-ec2-instance-connect.html) | DevOps insinyur, Pengembang | 
| Inisialisasi direktori kerja Terraform. | Langkah ini diperlukan hanya untuk penerapan pertama. Jika Anda menerapkan kembali pola, lompat ke langkah berikutnya.Di direktori root repositori kloning, masukkan perintah berikut, di mana:[\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/id_id/prescriptive-guidance/latest/patterns/access-a-bastion-host-by-using-session-manager-and-amazon-ec2-instance-connect.html)<pre>terraform init \<br />    -backend-config="bucket=$S3_STATE_BUCKET" \<br />    -backend-config="key=$PATH_TO_STATE_FILE" \<br />    -backend-config="region=$AWS_REGION</pre>Atau, Anda dapat membuka file **config.tf** dan, di `terraform` bagian tersebut, memberikan nilai-nilai ini secara manual. | DevOps insinyur, Pengembang, Terraform | 
| Menyebarkan sumber daya. | [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/id_id/prescriptive-guidance/latest/patterns/access-a-bastion-host-by-using-session-manager-and-amazon-ec2-instance-connect.html) | DevOps insinyur, Pengembang, Terraform | 

### Mengatur lingkungan lokal
<a name="set-up-the-local-environment"></a>


| Tugas | Deskripsi | Keterampilan yang dibutuhkan | 
| --- | --- | --- | 
| Konfigurasikan koneksi SSH. | Perbarui file konfigurasi SSH untuk memungkinkan koneksi SSH melalui Session Manager. Untuk petunjuk, lihat [Mengizinkan koneksi SSH untuk Pengelola Sesi](https://docs.aws.amazon.com/systems-manager/latest/userguide/session-manager-getting-started-enable-ssh-connections.html#ssh-connections-enable). Hal ini memungkinkan pengguna yang berwenang untuk memasukkan perintah proxy yang memulai sesi Session Manager dan mentransfer semua data melalui koneksi dua arah. | DevOps insinyur | 
| Hasilkan kunci SSH. | Masukkan perintah berikut untuk menghasilkan private dan public SSH key pair lokal. Anda menggunakan key pair ini untuk terhubung ke host bastion.<pre>ssh-keygen -t rsa -f my_key</pre> | DevOps insinyur, Pengembang | 

### Connect ke host bastion dengan menggunakan Session Manager
<a name="connect-to-the-bastion-host-by-using-sesh"></a>


| Tugas | Deskripsi | Keterampilan yang dibutuhkan | 
| --- | --- | --- | 
| Dapatkan ID instance. | [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/id_id/prescriptive-guidance/latest/patterns/access-a-bastion-host-by-using-session-manager-and-amazon-ec2-instance-connect.html) | AWS Umum | 
| Kirim kunci publik SSH. | Di bagian ini, Anda mengunggah kunci publik ke [metadata instance dari host](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/ec2-instance-metadata.html) bastion. Setelah kunci diunggah, Anda memiliki 60 detik untuk memulai koneksi dengan host bastion. Setelah 60 detik, kunci publik dihapus. Untuk informasi selengkapnya, lihat bagian [Pemecahan Masalah](#access-a-bastion-host-by-using-session-manager-and-amazon-ec2-instance-connect-troubleshooting) dari pola ini. Selesaikan langkah selanjutnya dengan cepat untuk mencegah kunci dihapus sebelum Anda terhubung ke host bastion.[\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/id_id/prescriptive-guidance/latest/patterns/access-a-bastion-host-by-using-session-manager-and-amazon-ec2-instance-connect.html) | AWS Umum | 
| Connect ke host bastion. | [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/id_id/prescriptive-guidance/latest/patterns/access-a-bastion-host-by-using-session-manager-and-amazon-ec2-instance-connect.html)Ada opsi lain untuk membuka koneksi SSH dengan host bastion. Untuk informasi lebih lanjut, lihat *Pendekatan alternatif untuk membuat koneksi SSH dengan host bastion* di bagian [Informasi tambahan](#access-a-bastion-host-by-using-session-manager-and-amazon-ec2-instance-connect-additional) dari pola ini. | AWS Umum | 

### (Opsional) Bersihkan
<a name="optional-clean-up"></a>


| Tugas | Deskripsi | Keterampilan yang dibutuhkan | 
| --- | --- | --- | 
| Hapus sumber daya yang digunakan. | [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/id_id/prescriptive-guidance/latest/patterns/access-a-bastion-host-by-using-session-manager-and-amazon-ec2-instance-connect.html) | DevOps insinyur, Pengembang, Terraform | 

## Pemecahan masalah
<a name="access-a-bastion-host-by-using-session-manager-and-amazon-ec2-instance-connect-troubleshooting"></a>


| Isu | Solusi | 
| --- | --- | 
| `TargetNotConnected`kesalahan saat mencoba terhubung ke host bastion | [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/id_id/prescriptive-guidance/latest/patterns/access-a-bastion-host-by-using-session-manager-and-amazon-ec2-instance-connect.html) | 
| `Permission denied`kesalahan saat mencoba terhubung ke host bastion | Setelah kunci publik diunggah ke host bastion, Anda hanya memiliki 60 detik untuk memulai koneksi. Setelah 60 detik, kunci secara otomatis dihapus, dan Anda tidak dapat menggunakannya untuk terhubung ke instance. Jika ini terjadi, Anda dapat mengulangi langkah untuk mengirim ulang kunci ke instance. | 

## Sumber daya terkait
<a name="access-a-bastion-host-by-using-session-manager-and-amazon-ec2-instance-connect-resources"></a>

**AWS dokumentasi**
+ [AWS Systems Manager Session Manager](https://docs.aws.amazon.com/systems-manager/latest/userguide/session-manager.html)(Dokumentasi Systems Manager)
+ [Instal plugin Session Manager untuk](https://docs.aws.amazon.com/systems-manager/latest/userguide/session-manager-working-with-install-plugin.html) dokumentasi AWS CLI(Systems Manager)
+ [Mengizinkan koneksi SSH untuk Session Manager](https://docs.aws.amazon.com/systems-manager/latest/userguide/session-manager-getting-started-enable-ssh-connections.html#ssh-connections-enable) (dokumentasi Systems Manager)
+ [Tentang menggunakan EC2 Instance Connect](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/Connect-using-EC2-Instance-Connect.html) ( EC2 dokumentasi Amazon)
+ [Connect menggunakan EC2 Instance Connect](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/ec2-instance-connect-methods.html) ( EC2 dokumentasi Amazon)
+ [Manajemen identitas dan akses untuk Amazon EC2](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/security-iam.html) ( EC2 dokumentasi Amazon)
+ [Menggunakan peran IAM untuk memberikan izin ke aplikasi yang berjalan di EC2 instans Amazon](https://docs.aws.amazon.com/IAM/latest/UserGuide/id_roles_use_switch-role-ec2.html) (dokumentasi IAM)
+ [Praktik terbaik keamanan dalam IAM](https://docs.aws.amazon.com/IAM/latest/UserGuide/best-practices.html) (dokumentasi IAM)
+ [Kontrol lalu lintas ke sumber daya menggunakan grup keamanan](https://docs.aws.amazon.com/vpc/latest/userguide/vpc-security-groups.html) (dokumentasi Amazon VPC)

**Sumber daya lainnya**
+ [Halaman web Pengembang Terraform](https://developer.hashicorp.com/terraform)
+ [Perintah: memvalidasi](https://developer.hashicorp.com/terraform/cli/commands/validate) (dokumentasi Terraform)
+ [Perintah: fmt (dokumentasi](https://developer.hashicorp.com/terraform/cli/commands/fmt) Terraform)
+ [Menguji HashiCorp Terraform](https://www.hashicorp.com/blog/testing-hashicorp-terraform) (HashiCorp posting blog)
+ [Halaman web Checkov](https://www.checkov.io/)

## Informasi tambahan
<a name="access-a-bastion-host-by-using-session-manager-and-amazon-ec2-instance-connect-additional"></a>

**Pendekatan alternatif untuk membangun koneksi SSH dengan host bastion**

*Penerusan port*

Anda dapat menggunakan `-D 8888` opsi untuk membuka koneksi SSH dengan penerusan port dinamis. Untuk informasi lebih lanjut, lihat [petunjuk](https://explainshell.com/explain?cmd=ssh+-i+%24PRIVATE_KEY_FILE+-D+8888+ec2-user%40%24INSTANCE_ID) di explainshell.com. Berikut ini adalah contoh perintah untuk membuka koneksi SSH dengan menggunakan port forwarding.

```
ssh -i $PRIVATE_KEY_FILE -D 8888 ec2-user@$INSTANCE_ID
```

Ini adalah jenis koneksi membuka proxy SOCKS yang dapat meneruskan lalu lintas dari browser lokal Anda melalui host bastion. Jika Anda menggunakan Linux atau macOS, untuk melihat semua opsi, masukkan. `man ssh` Ini menampilkan manual referensi SSH.

*Menggunakan skrip yang disediakan*

Alih-alih menjalankan langkah-langkah yang dijelaskan di *Connect to the bastion host secara manual dengan menggunakan Session Manager* di bagian [Epics](#access-a-bastion-host-by-using-session-manager-and-amazon-ec2-instance-connect-epics), Anda dapat menggunakan skrip **connect.sh** yang disertakan dalam repositori kode. Skrip ini menghasilkan key pair SSH, mendorong kunci publik ke EC2 instance Amazon, dan memulai koneksi dengan host bastion. Saat Anda menjalankan skrip, Anda meneruskan tag dan nama kunci sebagai argumen. Berikut ini adalah contoh dari perintah untuk menjalankan script.

```
./connect.sh sandbox-dev-bastion-host my_key
```

# Memusatkan resolusi DNS dengan menggunakan Microsoft Active AWS Managed Microsoft AD Directory dan lokal
<a name="centralize-dns-resolution-by-using-aws-managed-microsoft-ad-and-on-premises-microsoft-active-directory"></a>

*Brian Westmoreland, Amazon Web Services*

## Ringkasan
<a name="centralize-dns-resolution-by-using-aws-managed-microsoft-ad-and-on-premises-microsoft-active-directory-summary"></a>

Pola ini memberikan panduan untuk memusatkan resolusi DNS dalam lingkungan AWS multi-akun dengan menggunakan AWS Directory Service for Microsoft Active Directory ()AWS Managed Microsoft AD dan Amazon Route 53. Dalam pola ini namespace AWS DNS adalah subdomain dari namespace DNS lokal. Pola ini juga memberikan panduan tentang cara mengonfigurasi server DNS lokal untuk meneruskan kueri AWS saat solusi DNS lokal menggunakan Microsoft Active Directory.  

## Prasyarat dan batasan
<a name="centralize-dns-resolution-by-using-aws-managed-microsoft-ad-and-on-premises-microsoft-active-directory-prereqs"></a>

**Prasyarat**
+ Lingkungan AWS multi-akun yang disiapkan dengan menggunakan AWS Organizations.
+ Konektivitas jaringan dibangun antara Akun AWS.
+ Konektivitas jaringan yang dibangun antara AWS dan lingkungan lokal (dengan menggunakan AWS Direct Connect atau jenis koneksi VPN apa pun).
+ AWS Command Line Interface (AWS CLI) dikonfigurasi pada workstation lokal.
+ AWS Resource Access Manager (AWS RAM) digunakan untuk membagikan aturan Route 53 antar akun. Oleh karena itu, berbagi harus diaktifkan di dalam AWS Organizations lingkungan, seperti yang dijelaskan di bagian [Epik](#centralize-dns-resolution-by-using-aws-managed-microsoft-ad-and-on-premises-microsoft-active-directory-epics).

**Batasan**
+ AWS Managed Microsoft AD Standard Edition memiliki batas 5 saham.
+ AWS Managed Microsoft AD Enterprise Edition memiliki batas 125 saham.
+ Solusi dalam pola ini terbatas pada berbagi dukungan Wilayah AWS itu AWS RAM.

**Versi produk**
+ Microsoft Active Directory berjalan pada Windows Server 2008, 2012, 2012 R2, atau 2016.

## Arsitektur
<a name="centralize-dns-resolution-by-using-aws-managed-microsoft-ad-and-on-premises-microsoft-active-directory-architecture"></a>

**Arsitektur target**

![\[Arsitektur untuk resolusi DNS terpusat di AWS.\]](http://docs.aws.amazon.com/id_id/prescriptive-guidance/latest/patterns/images/pattern-img/91430e2a-f7f6-4dbe-9fe7-8abed1f764a7/images/9b5fc51d-590b-468f-80f7-1949f3b3b258.png)


Dalam desain ini, AWS Managed Microsoft AD dipasang di layanan bersama Akun AWS. Meskipun ini bukan persyaratan, pola ini mengasumsikan konfigurasi ini. Jika Anda mengonfigurasi AWS Managed Microsoft AD yang berbeda Akun AWS, Anda mungkin harus memodifikasi langkah-langkah di bagian [Epik](#centralize-dns-resolution-by-using-aws-managed-microsoft-ad-and-on-premises-microsoft-active-directory-epics) yang sesuai.

Desain ini menggunakan Resolver Route 53 untuk mendukung resolusi nama melalui penggunaan aturan Route 53. Jika solusi DNS lokal menggunakan Microsoft DNS, membuat aturan penerusan bersyarat untuk AWS namespace (), yang merupakan subdomain dari namespace DNS perusahaan `aws.company.com` (), tidaklah mudah. `company.com` Jika Anda mencoba membuat forwarder bersyarat tradisional, itu akan menghasilkan kesalahan. Ini karena Microsoft Active Directory sudah dianggap otoritatif untuk setiap subdomain. `company.com` Untuk mengatasi kesalahan ini, Anda harus terlebih dahulu membuat delegasi untuk `aws.company.com` mendelegasikan otoritas namespace itu. Anda kemudian dapat membuat forwarder bersyarat.

Virtual private cloud (VPC) untuk setiap akun spoke dapat memiliki namespace DNS uniknya sendiri berdasarkan namespace root. AWS Dalam desain ini, setiap akun spoke menambahkan singkatan dari nama akun ke namespace AWS dasar. Setelah zona host pribadi di akun spoke telah dibuat, zona dikaitkan dengan VPC lokal di akun spoke serta dengan VPC di akun jaringan pusat. AWS Ini memungkinkan akun AWS jaringan pusat untuk menjawab pertanyaan DNS yang terkait dengan akun spoke. Dengan cara ini, baik Route 53 dan AWS Managed Microsoft AD bekerja sama untuk berbagi tanggung jawab mengelola AWS namespace ()`aws.company.com`.

**Otomatisasi dan skala**

Desain ini menggunakan titik akhir Route 53 Resolver untuk menskalakan kueri DNS antara AWS dan lingkungan lokal Anda. Setiap titik akhir Route 53 Resolver terdiri dari beberapa antarmuka jaringan elastis (tersebar di beberapa Availability Zone), dan setiap antarmuka jaringan dapat menangani hingga 10.000 kueri per detik. Route 53 Resolver mendukung hingga 6 alamat IP per titik akhir, jadi secara keseluruhan desain ini mendukung hingga 60.000 kueri DNS per detik yang tersebar di beberapa Availability Zone untuk ketersediaan tinggi.  

Selain itu, pola ini secara otomatis memperhitungkan pertumbuhan masa depan di dalamnya AWS. Aturan penerusan DNS yang dikonfigurasi di tempat tidak harus dimodifikasi untuk mendukung zona host pribadi baru VPCs dan terkait yang ditambahkan. AWS 

## Alat
<a name="centralize-dns-resolution-by-using-aws-managed-microsoft-ad-and-on-premises-microsoft-active-directory-tools"></a>

**Layanan AWS**
+ [AWS Directory Service for Microsoft Active Directory](https://docs.aws.amazon.com/directoryservice/latest/admin-guide/directory_microsoft_ad.html)memungkinkan beban kerja dan sumber daya yang sadar direktori Anda AWS untuk menggunakan Microsoft Active Directory di file. AWS Cloud
+ [AWS Organizations](https://docs.aws.amazon.com/organizations/latest/userguide/orgs_introduction.html)adalah layanan manajemen akun yang membantu Anda mengkonsolidasikan beberapa Akun AWS ke dalam organisasi yang Anda buat dan kelola secara terpusat.
+ [AWS Resource Access Manager (AWS RAM)](https://docs.aws.amazon.com/ram/latest/userguide/what-is.html) membantu Anda berbagi sumber daya dengan aman Akun AWS untuk mengurangi overhead operasional dan memberikan visibilitas dan auditabilitas.
+ [Amazon Route 53](https://docs.aws.amazon.com/Route53/latest/DeveloperGuide/Welcome.html) adalah layanan web DNS yang sangat tersedia dan dapat diskalakan.

**Alat**
+ [AWS Command Line Interface (AWS CLI)](https://docs.aws.amazon.com/cli/latest/userguide/cli-chap-welcome.html) adalah alat sumber terbuka yang membantu Anda berinteraksi Layanan AWS melalui perintah di shell baris perintah Anda. Dalam pola ini, AWS CLI digunakan untuk mengkonfigurasi otorisasi Route 53.

## Epik
<a name="centralize-dns-resolution-by-using-aws-managed-microsoft-ad-and-on-premises-microsoft-active-directory-epics"></a>

### Membuat dan berbagi AWS Managed Microsoft AD direktori
<a name="create-and-share-an-managed-ad-directory"></a>


| Tugas | Deskripsi | Keterampilan yang dibutuhkan | 
| --- | --- | --- | 
| Menyebarkan AWS Managed Microsoft AD. | [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/id_id/prescriptive-guidance/latest/patterns/centralize-dns-resolution-by-using-aws-managed-microsoft-ad-and-on-premises-microsoft-active-directory.html) | Administrator AWS | 
| Bagikan direktori. | Setelah direktori dibangun, bagikan dengan yang lain Akun AWS di AWS organisasi. Untuk petunjuk, lihat [Bagikan direktori Anda](https://docs.aws.amazon.com/directoryservice/latest/admin-guide/step2_share_directory.html) di *Panduan AWS Directory Service Administrasi*.  AWS Managed Microsoft AD Standard Edition memiliki batas 5 saham. Enterprise Edition memiliki batas 125 saham. | Administrator AWS | 

### Konfigurasikan Rute 53
<a name="configure-r53"></a>


| Tugas | Deskripsi | Keterampilan yang dibutuhkan | 
| --- | --- | --- | 
| Buat Resolver Rute 53. | Resolver Route 53 memfasilitasi resolusi kueri DNS antara AWS dan pusat data lokal.  [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/id_id/prescriptive-guidance/latest/patterns/centralize-dns-resolution-by-using-aws-managed-microsoft-ad-and-on-premises-microsoft-active-directory.html)Meskipun menggunakan VPC akun AWS jaringan pusat bukanlah persyaratan, langkah-langkah yang tersisa mengasumsikan konfigurasi ini. | Administrator AWS | 
| Buat aturan Route 53. | Kasus penggunaan spesifik Anda mungkin memerlukan sejumlah besar aturan Route 53, tetapi Anda harus mengonfigurasi aturan berikut sebagai dasar:[\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/id_id/prescriptive-guidance/latest/patterns/centralize-dns-resolution-by-using-aws-managed-microsoft-ad-and-on-premises-microsoft-active-directory.html)Untuk informasi selengkapnya, lihat [Mengelola aturan penerusan di Panduan](https://docs.aws.amazon.com/Route53/latest/DeveloperGuide/resolver-rules-managing.html) *Pengembang Route 53*. | Administrator AWS | 
| Konfigurasikan Profil Route 53. | Profil Route 53 digunakan untuk membagikan aturan dengan akun spoke.[\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/id_id/prescriptive-guidance/latest/patterns/centralize-dns-resolution-by-using-aws-managed-microsoft-ad-and-on-premises-microsoft-active-directory.html) | Administrator AWS | 

### Konfigurasikan DNS Direktori Aktif lokal
<a name="configure-on-premises-active-directory-dns"></a>


| Tugas | Deskripsi | Keterampilan yang dibutuhkan | 
| --- | --- | --- | 
| Buat delegasi. | Gunakan snap-in (`dnsmgmt.msc`) Microsoft DNS untuk membuat delegasi baru untuk `company.com` namespace dalam Active Directory. Nama domain yang didelegasikan harus`aws`. Ini membuat nama domain yang sepenuhnya memenuhi syarat (FQDN) dari delegasi. `aws.company.com` Gunakan alamat IP pengontrol AWS Managed Microsoft AD domain untuk nilai IP server nama, dan gunakan `server.aws.company.com` untuk nama tersebut. (Delegasi ini hanya untuk redundansi, karena forwarder bersyarat akan dibuat untuk namespace ini yang lebih diutamakan daripada delegasi.) | Active Directory | 
| Buat forwarder bersyarat. | Gunakan snap-in (`dnsmgmt.msc`) Microsoft DNS untuk membuat forwarder bersyarat baru untuk. `aws.company.com`  Gunakan alamat IP dari AWS Inbound Route 53 Resolvers di DNS pusat Akun AWS untuk target forwarder bersyarat.   | Active Directory | 

### Buat Route 53 zona host pribadi untuk spoke Akun AWS
<a name="create-r53-private-hosted-zones-for-spoke-aws-accounts"></a>


| Tugas | Deskripsi | Keterampilan yang dibutuhkan | 
| --- | --- | --- | 
| Buat zona host pribadi Route 53. | Buat zona host pribadi Route 53 di setiap akun spoke. Kaitkan zona host pribadi ini dengan VPC akun spoke. Untuk langkah-langkah mendetail, lihat [Membuat zona yang dihosting pribadi](https://docs.aws.amazon.com/Route53/latest/DeveloperGuide/hosted-zone-private-creating.html) di *Panduan Pengembang Route 53*. | Administrator AWS | 
| Buat otorisasi. | Gunakan AWS CLI untuk membuat otorisasi untuk akun AWS jaringan pusat VPC. Jalankan perintah ini dari konteks setiap pembicaraan Akun AWS:<pre>aws route53 create-vpc-association-authorization --hosted-zone-id <hosted-zone-id> \<br />   --vpc VPCRegion=<region>,VPCId=<vpc-id></pre>di mana:[\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/id_id/prescriptive-guidance/latest/patterns/centralize-dns-resolution-by-using-aws-managed-microsoft-ad-and-on-premises-microsoft-active-directory.html) | Administrator AWS | 
| Buat asosiasi. | Buat asosiasi zona host pribadi Route 53 untuk VPC akun AWS jaringan pusat dengan menggunakan. AWS CLI Jalankan perintah ini dari konteks akun AWS jaringan pusat:<pre>aws route53 associate-vpc-with-hosted-zone --hosted-zone-id <hosted-zone-id> \<br />   --vpc VPCRegion=<region>,VPCId=<vpc-id></pre>di mana:[\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/id_id/prescriptive-guidance/latest/patterns/centralize-dns-resolution-by-using-aws-managed-microsoft-ad-and-on-premises-microsoft-active-directory.html) | Administrator AWS | 

## Sumber daya terkait
<a name="centralize-dns-resolution-by-using-aws-managed-microsoft-ad-and-on-premises-microsoft-active-directory-resources"></a>
+ [Sederhanakan manajemen DNS di lingkungan multi-akun dengan Route 53 Resolver](https://aws.amazon.com/blogs/security/simplify-dns-management-in-a-multiaccount-environment-with-route-53-resolver/) (posting blog)AWS 
+ [Membuat AWS Managed Microsoft AD](https://docs.aws.amazon.com/directoryservice/latest/admin-guide/ms_ad_getting_started_create_directory.html) (AWS Directory Service dokumentasi) Anda
+ [Berbagi AWS Managed Microsoft AD direktori](https://docs.aws.amazon.com/directoryservice/latest/admin-guide/step2_share_directory.html) (AWS Directory Service dokumentasi)
+ [Apa itu Amazon Route 53 Resolver?](https://docs.aws.amazon.com/Route53/latest/DeveloperGuide/resolver.html) (Dokumentasi Amazon Route 53)
+ [Membuat zona host pribadi](https://docs.aws.amazon.com/Route53/latest/DeveloperGuide/hosted-zone-private-creating.html) (dokumentasi Amazon Route 53)
+ [Apa itu Profil Amazon Route 53?](https://docs.aws.amazon.com/Route53/latest/DeveloperGuide/profiles.html) (Dokumentasi Amazon Route 53)

# Memusatkan pemantauan dengan menggunakan Amazon CloudWatch Observability Access Manager
<a name="centralize-monitoring-by-using-amazon-cloudwatch-observability-access-manager"></a>

*Anand Krishna Varanasi, JAGDISH KOMAKALA, Ashish Kumar, Jimmy Morgan, Sarat Chandra Pothula, Vivek Thangamuthu, dan Balaji Vedagiri, Amazon Web Services*

## Ringkasan
<a name="centralize-monitoring-by-using-amazon-cloudwatch-observability-access-manager-summary"></a>

Observabilitas sangat penting untuk pemantauan, pemahaman, dan pemecahan masalah aplikasi. Aplikasi yang menjangkau beberapa akun, seperti implementasi dengan AWS Control Tower atau landing zone, menghasilkan sejumlah besar log dan data pelacakan. Untuk memecahkan masalah dengan cepat atau memahami analisis pengguna atau analitik bisnis, Anda memerlukan platform pengamatan umum di semua akun. Amazon CloudWatch Observability Access Manager memberi Anda akses ke, dan kontrol atas, beberapa log akun dari lokasi pusat.

Anda dapat menggunakan Pengelola Akses Observabilitas untuk melihat dan mengelola log data observabilitas yang dihasilkan oleh akun sumber. Akun sumber adalah individu Akun AWS yang menghasilkan data observabilitas untuk sumber daya mereka. Data observabilitas dibagi antara akun sumber dan akun pemantauan. Data observabilitas bersama dapat mencakup metrik di Amazon CloudWatch, log di Amazon CloudWatch Logs, dan trace in. AWS X-Ray Untuk informasi selengkapnya, lihat [dokumentasi Observability Access Manager](https://docs.aws.amazon.com/OAM/latest/APIReference/Welcome.html).

Pola ini untuk pengguna yang memiliki aplikasi atau infrastruktur yang berjalan di banyak Akun AWS dan membutuhkan tempat umum untuk melihat log. Ini menjelaskan bagaimana Anda dapat mengatur Observability Access Manager dengan menggunakan Terraform, untuk memantau status dan kesehatan aplikasi atau infrastruktur ini. Anda dapat menginstal solusi ini dengan berbagai cara:
+ Sebagai modul Terraform mandiri yang Anda atur secara manual
+ Dengan menggunakan pipeline continuous integration dan continuous delivery (CI/CD)
+ Dengan mengintegrasikan dengan solusi lain seperti [AWS Control Tower Account Factory for Terraform](https://docs.aws.amazon.com/controltower/latest/userguide/aft-overview.html) (AFT)

Instruksi di bagian [Epik](#centralize-monitoring-by-using-amazon-cloudwatch-observability-access-manager-epics) mencakup implementasi manual. Untuk langkah-langkah instalasi AFT, lihat file README untuk repositori GitHub [Observability Access Manager](https://github.com/aws-samples/cloudwatch-obervability-access-manager-terraform).

## Prasyarat dan batasan
<a name="centralize-monitoring-by-using-amazon-cloudwatch-observability-access-manager-prereqs"></a>

**Prasyarat**
+ [Terraform](https://www.terraform.io/) diinstal atau direferensikan di sistem Anda atau di saluran pipa otomatis. (Kami menyarankan Anda menggunakan [versi terbaru](https://releases.hashicorp.com/terraform/).)
+ Akun yang dapat Anda gunakan sebagai akun pemantauan pusat. Akun lain membuat tautan ke akun pemantauan pusat untuk melihat log.
+ (Opsional) Sebuah repositori kode sumber seperti GitHub,, Atlassian Bitbucket AWS CodeCommit, atau sistem serupa. Repositori kode sumber tidak diperlukan jika Anda menggunakan pipeline otomatis CI/CD .
+ (Opsional) Izin untuk membuat permintaan tarik (PRs) untuk peninjauan kode dan kolaborasi kode di GitHub.

**Batasan**

Observability Access Manager memiliki kuota layanan berikut, yang tidak dapat diubah. Pertimbangkan kuota ini sebelum Anda menerapkan fitur ini. Untuk informasi selengkapnya, lihat [kuota CloudWatch layanan](https://docs.aws.amazon.com/AmazonCloudWatch/latest/monitoring/cloudwatch_limits.html) dalam CloudWatch dokumentasi.
+ **Tautan akun sumber**: Anda dapat menautkan setiap akun sumber ke maksimal lima akun pemantauan.
+ **Tenggelam**: Anda dapat membuat beberapa sink untuk akun, tetapi hanya satu wastafel per yang Wilayah AWS diizinkan.

Selain itu:
+ Wastafel dan tautan harus dibuat dalam hal yang sama Wilayah AWS; mereka tidak bisa lintas wilayah.

**Pemantauan Lintas Wilayah dan lintas akun**

Untuk pemantauan lintas wilayah dan lintas akun, Anda dapat memilih salah satu opsi ini:
+ Buat [ CloudWatch dasbor lintas akun dan lintas wilayah](https://docs.aws.amazon.com/AmazonCloudWatch/latest/monitoring/Cross-Account-Cross-Region.html) untuk alarm dan metrik. Opsi ini tidak mendukung log dan jejak.
+ Menerapkan [logging terpusat](https://docs.aws.amazon.com/AmazonCloudWatch/latest/monitoring/Cross-Account-Cross-Region.html) dengan menggunakan Amazon OpenSearch Service.
+ Buat satu sink per Wilayah dari semua akun penyewa, dorong metrik ke akun pemantauan terpusat (seperti yang dijelaskan dalam pola ini), lalu gunakan [aliran CloudWatch metrik](https://docs.aws.amazon.com/AmazonCloudWatch/latest/monitoring/CloudWatch-Metric-Streams.html) untuk mengirim data ke tujuan eksternal umum atau ke produk pemantauan pihak ketiga seperti Datadog, Dynatrace, Sumo Logic, Splunk, atau New Relic.

## Arsitektur
<a name="centralize-monitoring-by-using-amazon-cloudwatch-observability-access-manager-architecture"></a>

**Komponen**

CloudWatch Observability Access Manager terdiri dari dua komponen utama yang memungkinkan observabilitas lintas akun:
+ *Wastafel* menyediakan kemampuan untuk akun sumber untuk mengirim data observabilitas ke akun pemantauan pusat. Wastafel pada dasarnya menyediakan persimpangan gateway untuk akun sumber untuk terhubung. Hanya ada satu gateway atau koneksi sink, dan beberapa akun dapat terhubung dengannya.
+ Setiap akun sumber memiliki *tautan* ke persimpangan gateway sink, dan data observabilitas dikirim melalui tautan ini. Anda harus membuat wastafel sebelum membuat tautan dari setiap akun sumber.

**Arsitektur **

Diagram berikut menggambarkan Observability Access Manager dan komponen-komponennya.

![\[Arsitektur untuk observabilitas lintas akun dengan sink dan tautan.\]](http://docs.aws.amazon.com/id_id/prescriptive-guidance/latest/patterns/images/pattern-img/00603763-4f99-456e-85e7-a80d803b087d/images/5188caf9-348b-4d91-b560-2b3d6ea81191.png)


## Alat
<a name="centralize-monitoring-by-using-amazon-cloudwatch-observability-access-manager-tools"></a>

**Layanan AWS**
+ [Amazon CloudWatch](https://docs.aws.amazon.com/AmazonCloudWatch/latest/monitoring/WhatIsCloudWatch.html) membantu Anda memantau metrik sumber AWS daya Anda dan aplikasi yang Anda jalankan AWS secara real time.
+ [AWS Organizations](https://docs.aws.amazon.com/organizations/latest/userguide/orgs_introduction.html)adalah layanan manajemen akun yang membantu Anda mengkonsolidasikan beberapa Akun AWS ke dalam organisasi yang Anda buat dan kelola secara terpusat.
+ [AWS Identity and Access Management (IAM)](https://docs.aws.amazon.com/IAM/latest/UserGuide/introduction.html) membantu Anda mengelola akses ke AWS sumber daya dengan aman dengan mengontrol siapa yang diautentikasi dan diberi wewenang untuk menggunakannya.

**Alat**
+ [Terraform](https://www.terraform.io/) adalah alat infrastruktur sebagai kode (IAc) HashiCorp yang membantu Anda membuat dan mengelola sumber daya cloud dan lokal.
+ [AWS Control Tower Account Factory for Terraform (AFT)](https://docs.aws.amazon.com/controltower/latest/userguide/aft-overview.html) menyiapkan pipeline Terraform untuk membantu Anda menyediakan dan menyesuaikan akun. AWS Control Tower Anda dapat menggunakan AFT secara opsional untuk menyiapkan Observability Access Manager dalam skala besar di beberapa akun.

**Repositori kode**

Kode untuk pola ini tersedia di repositori GitHub [Observability Access Manager](https://github.com/aws-samples/cloudwatch-obervability-access-manager-terraform).

## Praktik terbaik
<a name="centralize-monitoring-by-using-amazon-cloudwatch-observability-access-manager-best-practices"></a>
+ Di AWS Control Tower lingkungan, tandai akun logging sebagai akun pemantauan pusat (sink).
+ Jika Anda memiliki beberapa organisasi dengan beberapa akun AWS Organizations, sebaiknya sertakan organisasi, bukan akun individual dalam kebijakan konfigurasi. Jika Anda memiliki sejumlah kecil akun atau jika akun tersebut bukan bagian dari organisasi dalam kebijakan konfigurasi sink, Anda dapat memutuskan untuk menyertakan akun individual sebagai gantinya.

## Epik
<a name="centralize-monitoring-by-using-amazon-cloudwatch-observability-access-manager-epics"></a>

### Siapkan modul wastafel
<a name="set-up-the-sink-module"></a>


| Tugas | Deskripsi | Keterampilan yang dibutuhkan | 
| --- | --- | --- | 
| Kloning repositori. | Kloning repositori GitHub Observability Access Manager:<pre>git clone https://github.com/aws-samples/cloudwatch-obervability-access-manager-terraform</pre> | AWS DevOps, administrator Cloud, administrator AWS | 
| Tentukan nilai properti untuk modul wastafel. | Dalam `main.tf` file (dalam `deployments/aft-account-customizations/LOGGING/terraform/`**** folder repositori), tentukan nilai untuk properti berikut:[\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/id_id/prescriptive-guidance/latest/patterns/centralize-monitoring-by-using-amazon-cloudwatch-observability-access-manager.html)Untuk informasi lebih lanjut, lihat [AWS::Oam::Sink](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-oam-sink.html)di CloudFormation dokumentasi. | AWS DevOps, administrator Cloud, administrator AWS | 
| Pasang modul wastafel. | Ekspor kredensil Akun AWS yang telah Anda pilih sebagai akun pemantauan, dan instal modul sink Observability Access Manager:<pre>Terraform Init<br />Terrafom Plan<br />Terraform Apply</pre> | AWS DevOps, administrator Cloud, administrator AWS | 

### Siapkan modul tautan
<a name="set-up-the-link-module"></a>


| Tugas | Deskripsi | Keterampilan yang dibutuhkan | 
| --- | --- | --- | 
| Tentukan nilai properti untuk modul tautan. | Dalam `main.tf ` file (dalam `deployments/aft-account-customizations/LOGGING/terraform/`**** folder repositori), tentukan nilai untuk properti berikut:[\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/id_id/prescriptive-guidance/latest/patterns/centralize-monitoring-by-using-amazon-cloudwatch-observability-access-manager.html)Untuk informasi lebih lanjut, lihat [AWS::Oam::Link](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-oam-link.html)di CloudFormation dokumentasi. | AWS DevOps, Administrator cloud, arsitek Cloud | 
| Instal modul tautan untuk akun individual. | Ekspor kredensil akun individual dan instal modul tautan Observability Access Manager:<pre>Terraform Plan<br />Terraform Apply</pre>Anda dapat mengatur modul tautan satu per satu untuk setiap akun, atau menggunakan [AFT](https://docs.aws.amazon.com/controltower/latest/userguide/aft-overview.html) untuk menginstal modul ini secara otomatis di sejumlah besar akun. | AWS DevOps, Administrator cloud, arsitek Cloud | 

### Menyetujui koneksi sink-to-link
<a name="approve-sink-to-link-connections"></a>


| Tugas | Deskripsi | Keterampilan yang dibutuhkan | 
| --- | --- | --- | 
| Periksa pesan status. | [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/id_id/prescriptive-guidance/latest/patterns/centralize-monitoring-by-using-amazon-cloudwatch-observability-access-manager.html)Di sebelah kanan, Anda akan melihat pesan status **Akun pemantauan diaktifkan** dengan tanda centang hijau. Ini berarti bahwa akun pemantauan memiliki wastafel Manajer Akses Observabilitas yang akan terhubung ke tautan akun lain. |  | 
| Menyetujui link-to-sink koneksi. | [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/id_id/prescriptive-guidance/latest/patterns/centralize-monitoring-by-using-amazon-cloudwatch-observability-access-manager.html)Untuk informasi selengkapnya, lihat [Menautkan akun pemantauan dengan akun sumber](https://docs.aws.amazon.com/AmazonCloudWatch/latest/monitoring/CloudWatch-Unified-Cross-Account-Setup.html) dalam CloudWatch dokumentasi. | AWS DevOps, Administrator cloud, arsitek Cloud | 

### Verifikasi data observabilitas lintas akun
<a name="verify-cross-account-observability-data"></a>


| Tugas | Deskripsi | Keterampilan yang dibutuhkan | 
| --- | --- | --- | 
| Lihat data lintas akun. | [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/id_id/prescriptive-guidance/latest/patterns/centralize-monitoring-by-using-amazon-cloudwatch-observability-access-manager.html) | AWS DevOps, Administrator cloud, arsitek Cloud | 

### (Opsional) Aktifkan akun sumber untuk mempercayai akun pemantauan
<a name="optional-enable-source-accounts-to-trust-monitoring-account"></a>


| Tugas | Deskripsi | Keterampilan yang dibutuhkan | 
| --- | --- | --- | 
| Lihat metrik, dasbor, log, widget, dan alarm dari akun lain. | Sebagai fitur tambahan,**** Anda dapat berbagi CloudWatch metrik, dasbor, log, widget, dan alarm dengan akun lain. Setiap akun menggunakan peran IAM yang disebut **CloudWatch- CrossAccountSharingRole ** untuk mendapatkan akses ke data ini.Akun sumber yang memiliki hubungan kepercayaan dengan akun pemantauan pusat dapat mengambil peran ini dan melihat data dari akun pemantauan.CloudWatch menyediakan contoh CloudFormation skrip untuk membuat peran. Pilih **Kelola peran di IAM** dan jalankan skrip ini di akun tempat Anda ingin melihat data.<pre>{<br />    "Version": "2012-10-17",		 	 	 <br />    "Statement": [<br />        {<br />            "Effect": "Allow",<br />            "Principal": {<br />                "AWS": [<br />                    "arn:aws:iam::XXXXXXXXX:root",<br />                    "arn:aws:iam::XXXXXXXXX:root",<br />                    "arn:aws:iam::XXXXXXXXX:root",<br />                    "arn:aws:iam::XXXXXXXXX:root"<br />                ]<br />            },<br />            "Action": "sts:AssumeRole"<br />        }<br />    ]<br />}</pre>Untuk informasi selengkapnya, lihat [Mengaktifkan fungsionalitas lintas akun CloudWatch dalam](https://docs.aws.amazon.com/AmazonCloudWatch/latest/monitoring/Cross-Account-Cross-Region.html#enable-cross-account-cross-Region) dokumentasi. CloudWatch  | AWS DevOps, Administrator cloud, arsitek Cloud | 

### (Opsional) Lihat lintas akun Lintas wilayah dari akun pemantauan
<a name="optional-view-cross-account-cross-region-from-the-monitoring-account"></a>


| Tugas | Deskripsi | Keterampilan yang dibutuhkan | 
| --- | --- | --- | 
| Siapkan akses lintas akun, lintas wilayah. | Di akun pemantauan pusat, Anda dapat menambahkan pemilih akun untuk dengan mudah beralih antar akun dan melihat datanya tanpa harus mengautentikasi.[\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/id_id/prescriptive-guidance/latest/patterns/centralize-monitoring-by-using-amazon-cloudwatch-observability-access-manager.html)Untuk informasi selengkapnya, lihat [ CloudWatch Konsol lintas wilayah lintas akun](https://docs.aws.amazon.com/AmazonCloudWatch/latest/monitoring/Cross-Account-Cross-Region.html) di dokumentasi. CloudWatch  | AWS DevOps, Administrator cloud, arsitek Cloud | 

## Sumber daya terkait
<a name="centralize-monitoring-by-using-amazon-cloudwatch-observability-access-manager-resources"></a>
+ [CloudWatch observabilitas lintas akun (dokumentasi](https://docs.aws.amazon.com/AmazonCloudWatch/latest/monitoring/CloudWatch-Unified-Cross-Account.html) Amazon CloudWatch )
+ [Referensi API Manajer Akses CloudWatch Observabilitas](https://docs.aws.amazon.com/OAM/latest/APIReference/Welcome.html) Amazon ( CloudWatch dokumentasi Amazon)
+ [Sumber daya: aws\$1oam\$1sink](https://registry.terraform.io/providers/hashicorp/aws/latest/docs/resources/oam_sink) (dokumentasi Terraform)
+ [Sumber Data: aws\$1oam\$1link](https://registry.terraform.io/providers/hashicorp/aws/latest/docs/data-sources/oam_link) (Dokumentasi Terraform)
+ [CloudWatchObservabilityAccessManager](https://boto3.amazonaws.com/v1/documentation/api/latest/reference/services/oam.html)(AWS Dokumentasi Boto3)

# Periksa EC2 instance untuk tag wajib saat peluncuran
<a name="check-ec2-instances-for-mandatory-tags-at-launch"></a>

*Susanne Kangnoh dan Archit Mathur, Amazon Web Services*

## Ringkasan
<a name="check-ec2-instances-for-mandatory-tags-at-launch-summary"></a>

Amazon Elastic Compute Cloud (Amazon EC2) menyediakan kapasitas komputasi yang dapat diskalakan di Amazon Web Services (AWS) Cloud. Menggunakan Amazon EC2 menghilangkan kebutuhan Anda untuk berinvestasi dalam perangkat keras di muka, sehingga Anda dapat mengembangkan dan menerapkan aplikasi lebih cepat.

Anda dapat menggunakan penandaan untuk mengkategorikan sumber daya AWS Anda dengan berbagai cara. EC2 penandaan instance berguna ketika Anda memiliki banyak sumber daya di akun Anda dan Anda ingin mengidentifikasi sumber daya tertentu dengan cepat berdasarkan tag. Anda dapat menetapkan metadata kustom ke EC2 instance Anda dengan menggunakan tag. Tag terdiri dari kunci dan nilai yang ditentukan pengguna. Kami menyarankan Anda membuat kumpulan tag yang konsisten untuk memenuhi persyaratan organisasi Anda. 

Pola ini menyediakan CloudFormation template AWS untuk membantu Anda memantau EC2 instance untuk tag tertentu. Template membuat CloudWatch acara Amazon Events yang mengawasi AWS CloudTrail **TagResource**atau **UntagResource**peristiwa, untuk mendeteksi penandaan EC2 instans baru atau penghapusan tag. Jika tag yang telah ditentukan tidak ada, tag tersebut akan memanggil fungsi AWS Lambda, yang mengirimkan pesan pelanggaran ke alamat email yang Anda berikan, dengan menggunakan Amazon Simple Notification Service (Amazon SNS). 

## Prasyarat dan batasan
<a name="check-ec2-instances-for-mandatory-tags-at-launch-prerequisites-and-limitations"></a>

**Prasyarat**
+ Akun AWS yang aktif.
+ Bucket Amazon Simple Storage Service (Amazon S3) untuk mengunggah kode Lambda yang disediakan.
+ Alamat email tempat Anda ingin menerima pemberitahuan pelanggaran.

**Batasan**
+ Solusi ini mendukung CloudTrail **TagResource**atau **UntagResource**acara. Itu tidak membuat pemberitahuan untuk acara lainnya.
+ Solusi ini hanya memeriksa kunci tag. Itu tidak memantau nilai-nilai kunci.

## Arsitektur
<a name="check-ec2-instances-for-mandatory-tags-at-launch-architecture"></a>

****Arsitektur alur kerja****

![\[Workflow diagram showing Layanan AWS interaction for EC2 instance monitoring and notification.\]](http://docs.aws.amazon.com/id_id/prescriptive-guidance/latest/patterns/images/pattern-img/9cd74141-a87f-419e-94b3-0b28fd04a018/images/b48fd21b-a86b-4ec7-b9f6-4f1a64999437.png)


 

**Otomatisasi dan skala**
+ Anda dapat menggunakan CloudFormation template AWS beberapa kali untuk Wilayah dan akun AWS yang berbeda. Anda perlu menjalankan template hanya sekali di setiap Wilayah atau akun.

## Alat
<a name="check-ec2-instances-for-mandatory-tags-at-launch-tools"></a>

**Layanan AWS**
+ [Amazon EC2](https://aws.amazon.com/ec2/) — Amazon Elastic Compute Cloud (Amazon EC2) adalah layanan web yang menyediakan kapasitas komputasi yang aman dan dapat diubah ukurannya di cloud. Ini dirancang untuk membuat komputasi awan skala web lebih mudah bagi pengembang.
+ [AWS CloudTrail](https://docs.aws.amazon.com/awscloudtrail/latest/userguide/cloudtrail-user-guide.html) — CloudTrail adalah layanan AWS yang membantu Anda dalam tata kelola, kepatuhan, serta audit operasional dan risiko akun AWS Anda. Tindakan yang diambil oleh pengguna, peran, atau layanan AWS dicatat sebagai peristiwa di CloudTrail. 
+ [Amazon CloudWatch Events](https://docs.aws.amazon.com/AmazonCloudWatch/latest/events/WhatIsCloudWatchEvents.html) — Amazon CloudWatch Events menghadirkan aliran peristiwa sistem yang mendekati real-time yang menjelaskan perubahan dalam sumber daya AWS. CloudWatch Peristiwa menjadi sadar akan perubahan operasional saat terjadi dan mengambil tindakan korektif seperlunya, dengan mengirim pesan untuk merespons lingkungan, mengaktifkan fungsi, membuat perubahan, dan menangkap informasi negara. 
+ [AWS Lambda](https://docs.aws.amazon.com/lambda/latest/dg/welcome.html) — Lambda adalah layanan komputasi yang mendukung kode berjalan tanpa perlu menyediakan atau mengelola server. Lambda menjalankan kode Anda hanya saat diperlukan dan menskalakan secara otomatis, dari beberapa permintaan per hari hingga ribuan per detik. 
+ [Amazon S3](https://docs.aws.amazon.com/AmazonS3/latest/dev/Welcome.html) - Amazon Simple Storage Service (Amazon S3) Simple Storage Service (Amazon S3) adalah layanan penyimpanan objek yang sangat skalabel yang dapat digunakan untuk berbagai solusi penyimpanan, termasuk situs web, aplikasi seluler, cadangan, dan danau data.
+ [Amazon SNS](https://docs.aws.amazon.com/sns/latest/dg/welcome.html) — Amazon Simple Notification Service (Amazon SNS) adalah layanan web yang memungkinkan aplikasi, pengguna akhir, dan perangkat untuk langsung mengirim dan menerima pemberitahuan dari cloud.

**Kode**

Pola ini mencakup lampiran dengan dua file:
+ `index.zip`adalah file terkompresi yang menyertakan kode Lambda untuk pola ini.
+ `ec2-require-tags.yaml`adalah CloudFormation template yang menyebarkan kode Lambda.

Lihat bagian *Epics* untuk informasi tentang cara menggunakan file-file ini.

## Epik
<a name="check-ec2-instances-for-mandatory-tags-at-launch-epics"></a>

### Terapkan kode Lambda
<a name="deploy-the-lambda-code"></a>


| Tugas | Deskripsi | Keterampilan yang dibutuhkan | 
| --- | --- | --- | 
| Unggah kode ke bucket S3. | Buat bucket S3 baru atau gunakan bucket S3 yang sudah ada untuk mengunggah `index.zip` file terlampir (kode Lambda). Bucket ini harus berada di Wilayah AWS yang sama dengan sumber daya (EC2 instance) yang ingin Anda pantau. | Arsitek awan | 
| Menyebarkan CloudFormation template. | Buka konsol Cloudformation di Wilayah AWS yang sama dengan bucket S3, dan terapkan `ec2-require-tags.yaml` file yang disediakan di lampiran. Dalam epik berikutnya, berikan nilai untuk parameter template.   | Arsitek awan | 

### Lengkapi parameter dalam CloudFormation template
<a name="complete-the-parameters-in-the-cloudformation-template"></a>


| Tugas | Deskripsi | Keterampilan yang dibutuhkan | 
| --- | --- | --- | 
| Berikan nama bucket S3. | Masukkan nama bucket S3 yang Anda buat atau pilih di epik pertama. Bucket S3 ini berisi file.zip untuk kode Lambda dan harus berada di Wilayah AWS yang sama dengan CloudFormation template dan EC2 instance yang ingin Anda pantau. | Arsitek awan | 
| Berikan kunci S3. | Berikan lokasi file kode Lambda .zip di bucket S3 Anda, tanpa garis miring di depan (misalnya, atau). `index.zip` `controls/index.zip` | Arsitek awan | 
| Berikan alamat email. | Berikan alamat email aktif tempat Anda ingin menerima pemberitahuan pelanggaran. | Arsitek awan | 
| Tentukan tingkat logging. | Tentukan tingkat logging dan verbositas. `Info`menunjuk pesan informasi rinci tentang kemajuan aplikasi dan harus digunakan hanya untuk debugging. `Error`menunjuk peristiwa kesalahan yang masih memungkinkan aplikasi untuk terus berjalan. `Warning`menunjuk situasi yang berpotensi berbahaya. | Arsitek awan | 
| Masukkan kunci tag yang diperlukan. | Masukkan tombol tag yang ingin Anda periksa. Jika Anda ingin menentukan beberapa kunci, pisahkan dengan koma, tanpa spasi. (Misalnya, `ApplicationId,CreatedBy,Environment,Organization` mencari empat kunci.) CloudWatch Acara Acara mencari kunci tag ini dan mengirimkan pemberitahuan jika tidak ditemukan. | Arsitek awan | 

### Konfirmasi langganan.
<a name="confirm-the-subscription"></a>


| Tugas | Deskripsi | Keterampilan yang dibutuhkan | 
| --- | --- | --- | 
| Konfirmasikan langganan email. | Ketika CloudFormation template berhasil digunakan, ia mengirimkan pesan email berlangganan ke alamat email yang Anda berikan. Untuk menerima pemberitahuan, Anda harus mengonfirmasi langganan email ini.   | Arsitek awan | 

## Sumber daya terkait
<a name="check-ec2-instances-for-mandatory-tags-at-launch-related-resources"></a>
+ [Membuat ember](https://docs.aws.amazon.com/AmazonS3/latest/user-guide/create-bucket.html) (dokumentasi Amazon S3)
+ [Mengunggah objek](https://docs.aws.amazon.com/AmazonS3/latest/user-guide/upload-objects.html) (dokumentasi Amazon S3)
+ [Tandai EC2 sumber daya Amazon Anda](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/Using_Tags.html) ( EC2 dokumentasi Amazon)
+ [Membuat aturan CloudWatch Peristiwa yang dipicu pada panggilan AWS API menggunakan AWS CloudTrail](https://docs.aws.amazon.com/AmazonCloudWatch/latest/events/Create-CloudWatch-Events-CloudTrail-Rule.html) ( CloudWatch dokumentasi Amazon)

## Lampiran
<a name="attachments-9cd74141-a87f-419e-94b3-0b28fd04a018"></a>

[Untuk mengakses konten tambahan yang terkait dengan dokumen ini, unzip file berikut: attachment.zip](samples/p-attach/9cd74141-a87f-419e-94b3-0b28fd04a018/attachments/attachment.zip)

# Bersihkan AWS Account Factory untuk sumber daya Terraform (AFT) dengan aman setelah kehilangan file status
<a name="clean-up-aft-resources-safely-after-state-file-loss"></a>

*Gokendra Malviya, Amazon Web Services*

## Ringkasan
<a name="clean-up-aft-resources-safely-after-state-file-loss-summary"></a>

Saat Anda menggunakan AWS Account Factory for Terraform (AFT) untuk mengelola AWS Control Tower lingkungan Anda, AFT menghasilkan file status Terraform untuk melacak status dan konfigurasi sumber daya yang dibuat oleh Terraform. Kehilangan file status Terraform dapat menciptakan tantangan signifikan untuk manajemen dan pembersihan sumber daya. Pola ini memberikan pendekatan sistematis untuk mengidentifikasi dan menghapus sumber daya terkait AFT dengan aman sambil menjaga integritas lingkungan Anda AWS Control Tower .

Proses ini dirancang untuk memastikan penghapusan yang tepat dari semua komponen AFT, bahkan tanpa referensi file status asli. Proses ini memberikan jalur yang jelas untuk berhasil membangun kembali dan mengkonfigurasi ulang AFT di lingkungan Anda, untuk membantu memastikan gangguan minimal pada operasi Anda. AWS Control Tower 

Untuk informasi lebih lanjut tentang AFT, lihat [AWS Control Tower dokumentasi](https://docs.aws.amazon.com/controltower/latest/userguide/taf-account-provisioning.html).

## Prasyarat dan batasan
<a name="clean-up-aft-resources-safely-after-state-file-loss-prereqs"></a>

**Prasyarat**
+ Pemahaman menyeluruh tentang [arsitektur AFT](https://docs.aws.amazon.com/controltower/latest/userguide/aft-architecture.html).
+ Akses administrator ke akun berikut:
  + Akun Manajemen AFT
  + AWS Control Tower Akun manajemen
  + Akun Arsip Log
  + Akun audit
+ Verifikasi bahwa tidak ada kebijakan kontrol layanan (SCPs) yang mengandung batasan atau batasan yang akan memblokir penghapusan sumber daya terkait AFT.

**Batasan**
+ Proses ini dapat membersihkan sumber daya secara efektif, tetapi tidak dapat memulihkan file status yang hilang, dan beberapa sumber daya mungkin memerlukan identifikasi manual.
+ Durasi proses pembersihan tergantung pada kompleksitas lingkungan Anda dan mungkin memakan waktu beberapa jam.
+ Pola ini telah diuji dengan AFT versi 1.12.2 dan menghapus sumber daya berikut. Jika Anda menggunakan versi AFT yang berbeda, Anda mungkin harus menghapus sumber daya tambahan.    
[\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/id_id/prescriptive-guidance/latest/patterns/clean-up-aft-resources-safely-after-state-file-loss.html)

**penting**  
Sumber daya yang dihapus oleh langkah-langkah dalam pola ini tidak dapat dipulihkan. Sebelum Anda mengikuti langkah-langkah ini, verifikasi nama sumber daya dengan hati-hati dan pastikan nama tersebut dibuat oleh AFT.

## Arsitektur
<a name="clean-up-aft-resources-safely-after-state-file-loss-architecture"></a>

Diagram berikut menunjukkan komponen AFT dan alur kerja tingkat tinggi. AFT menyiapkan pipeline Terraform yang membantu Anda menyediakan dan menyesuaikan akun Anda. AWS Control Tower AFT mengikuti GitOps model untuk mengotomatiskan proses penyediaan akun di. AWS Control Tower Anda membuat file Terraform untuk permintaan akun dan mengkomitmenkannya ke repositori, yang menyediakan input yang memicu alur kerja AFT untuk penyediaan akun. Setelah penyediaan akun selesai, AFT dapat menjalankan langkah penyesuaian tambahan secara otomatis.

![\[Komponen AFT dan alur kerja tingkat tinggi.\]](http://docs.aws.amazon.com/id_id/prescriptive-guidance/latest/patterns/images/pattern-img/1342c0a6-4b07-46df-a063-ceab2e2f83c8/images/3e0cae87-20ef-4fcc-aacf-bb450844ac56.png)


Dalam arsitektur ini:
+ **AWS Control Tower Akun manajemen adalah akun** Akun AWS yang didedikasikan untuk AWS Control Tower layanan ini. Ini juga biasanya disebut sebagai akun *AWS pembayar atau akun AWS Organizations * *Manajemen*.
+ **Akun Manajemen AFT adalah akun** Akun AWS yang didedikasikan untuk operasi manajemen AFT. Ini berbeda dengan akun manajemen organisasi Anda.
+ **Vending account adalah akun** Akun AWS yang berisi semua komponen dasar dan kontrol yang Anda pilih. AFT menggunakan AWS Control Tower untuk menjual akun baru.

Untuk informasi tambahan tentang arsitektur ini, lihat [Pengantar AFT](https://catalog.workshops.aws/control-tower/en-US/customization/aft) di AWS Control Tower bengkel.

## Alat
<a name="clean-up-aft-resources-safely-after-state-file-loss-tools"></a>

**Layanan AWS**
+ [AWS Control Tower](https://docs.aws.amazon.com/controltower/latest/userguide/what-is-control-tower.html)membantu Anda mengatur dan mengatur lingkungan AWS multi-akun, mengikuti praktik terbaik preskriptif.
+ [AWS Account Factory for Terraform (AFT)](https://docs.aws.amazon.com/controltower/latest/userguide/taf-account-provisioning.html) menyiapkan pipeline Terraform untuk membantu Anda menyediakan dan menyesuaikan akun dan sumber daya. AWS Control Tower
+ [AWS Organizations](https://docs.aws.amazon.com/organizations/latest/userguide/orgs_introduction.html)membantu Anda mengelola dan mengatur lingkungan Anda secara terpusat saat Anda tumbuh dan meningkatkan sumber daya Anda AWS . Dengan menggunakan Organizations, Anda dapat membuat akun dan mengalokasikan sumber daya, mengelompokkan akun untuk mengatur alur kerja, menerapkan kebijakan tata kelola, dan menyederhanakan penagihan dengan menggunakan satu metode pembayaran untuk semua akun Anda.
+ [AWS Identity and Access Management (IAM)](https://docs.aws.amazon.com/IAM/latest/UserGuide/introduction.html) membantu Anda mengelola akses ke AWS sumber daya dengan aman dengan mengontrol siapa yang diautentikasi dan diberi wewenang untuk menggunakannya. Pola ini membutuhkan peran dan izin IAM.

**Alat lainnya**
+ [Terraform](https://www.terraform.io/) adalah alat infrastruktur sebagai kode (IAc) HashiCorp yang membantu Anda membuat dan mengelola sumber daya cloud dan lokal.

## Praktik terbaik
<a name="clean-up-aft-resources-safely-after-state-file-loss-best-practices"></a>
+ Untuk AWS Control Tower, lihat [Praktik terbaik untuk AWS Control Tower administrator](https://docs.aws.amazon.com/controltower/latest/userguide/best-practices.html) dalam AWS Control Tower dokumentasi.
+ Untuk IAM, lihat [Praktik terbaik keamanan](https://docs.aws.amazon.com/IAM/latest/UserGuide/best-practices.html) dalam dokumentasi IAM.

## Epik
<a name="clean-up-aft-resources-safely-after-state-file-loss-epics"></a>

### Hapus sumber daya AFT di akun Manajemen AFT
<a name="delete-aft-resources-in-the-aft-management-account"></a>


| Tugas | Deskripsi | Keterampilan yang dibutuhkan | 
| --- | --- | --- | 
| Hapus sumber daya yang diidentifikasi oleh tag AFT. | [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/id_id/prescriptive-guidance/latest/patterns/clean-up-aft-resources-safely-after-state-file-loss.html) | Administrator AWS, AWS DevOps, DevOps insinyur | 
| Hapus peran IAM. | [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/id_id/prescriptive-guidance/latest/patterns/clean-up-aft-resources-safely-after-state-file-loss.html) | Administrator AWS, AWS DevOps, DevOps insinyur | 
| Hapus brankas AWS Backup cadangan. | [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/id_id/prescriptive-guidance/latest/patterns/clean-up-aft-resources-safely-after-state-file-loss.html) | Administrator AWS, AWS DevOps, DevOps insinyur | 
| Hapus CloudWatch sumber daya Amazon. | [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/id_id/prescriptive-guidance/latest/patterns/clean-up-aft-resources-safely-after-state-file-loss.html) | Administrator AWS, AWS DevOps, DevOps insinyur | 
| Hapus AWS KMS sumber daya. | [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/id_id/prescriptive-guidance/latest/patterns/clean-up-aft-resources-safely-after-state-file-loss.html) | Administrator AWS, AWS DevOps, DevOps insinyur | 

### Hapus sumber daya AFT di akun Arsip Log
<a name="delete-aft-resources-in-the-log-archive-account"></a>


| Tugas | Deskripsi | Keterampilan yang dibutuhkan | 
| --- | --- | --- | 
| Hapus ember S3. | [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/id_id/prescriptive-guidance/latest/patterns/clean-up-aft-resources-safely-after-state-file-loss.html) | Administrator AWS, AWS DevOps, DevOps insinyur | 
| Hapus peran IAM. | [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/id_id/prescriptive-guidance/latest/patterns/clean-up-aft-resources-safely-after-state-file-loss.html) | Administrator AWS, AWS DevOps, DevOps insinyur | 

### Hapus sumber daya AFT di akun Audit
<a name="delete-aft-resources-in-the-audit-account"></a>


| Tugas | Deskripsi | Keterampilan yang dibutuhkan | 
| --- | --- | --- | 
| Hapus peran IAM. | [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/id_id/prescriptive-guidance/latest/patterns/clean-up-aft-resources-safely-after-state-file-loss.html) | Administrator AWS, AWS DevOps, DevOps insinyur | 

### Hapus sumber daya AFT di akun AWS Control Tower Manajemen
<a name="delete-aft-resources-in-the-ctower-management-account"></a>


| Tugas | Deskripsi | Keterampilan yang dibutuhkan | 
| --- | --- | --- | 
| Hapus peran IAM. | [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/id_id/prescriptive-guidance/latest/patterns/clean-up-aft-resources-safely-after-state-file-loss.html) | Administrator AWS, AWS DevOps, DevOps insinyur | 
| Hapus EventBridge aturan. | [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/id_id/prescriptive-guidance/latest/patterns/clean-up-aft-resources-safely-after-state-file-loss.html) | Administrator AWS, AWS DevOps, DevOps insinyur | 

## Pemecahan masalah
<a name="clean-up-aft-resources-safely-after-state-file-loss-troubleshooting"></a>


| Isu | Solusi | 
| --- | --- | 
| Melepaskan gateway internet tidak berhasil. | Saat menghapus sumber daya yang diidentifikasi oleh tag **AFT**, jika mengalami masalah ini saat melepaskan atau menghapus gateway internet, pertama-tama Anda harus menghapus titik akhir VPC:[\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/id_id/prescriptive-guidance/latest/patterns/clean-up-aft-resources-safely-after-state-file-loss.html) | 
| Anda tidak dapat menemukan CloudWatch kueri yang ditentukan. | Jika Anda tidak dapat menemukan CloudWatch kueri yang dibuat oleh AFT, ikuti langkah-langkah berikut:[\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/id_id/prescriptive-guidance/latest/patterns/clean-up-aft-resources-safely-after-state-file-loss.html) | 

## Sumber daya terkait
<a name="clean-up-aft-resources-safely-after-state-file-loss-resources"></a>
+ BELAKANG:
  + [GitHub Repositori](https://github.com/aws-ia/terraform-aws-control_tower_account_factory)
  + [Lokakarya](https://catalog.workshops.aws/control-tower/en-US/customization/aft)
  + [Dokumentasi](https://docs.aws.amazon.com/controltower/latest/userguide/aft-getting-started.html)
+ [AWS Control Tower dokumentasi](https://docs.aws.amazon.com/controltower/latest/userguide/getting-started-with-control-tower.html)

## Informasi tambahan
<a name="clean-up-aft-resources-safely-after-state-file-loss-additional"></a>

Untuk melihat kueri AFT di dasbor Wawasan CloudWatch Log, pilih ikon **Kueri tersimpan dan contoh** dari sudut kanan atas, seperti yang diilustrasikan pada tangkapan layar berikut:

![\[Mengakses kueri AFT di dasbor Wawasan CloudWatch Log.\]](http://docs.aws.amazon.com/id_id/prescriptive-guidance/latest/patterns/images/pattern-img/1342c0a6-4b07-46df-a063-ceab2e2f83c8/images/255d4032-738b-4600-9084-9684d2e9a328.png)


# Buat pipeline di Wilayah AWS yang tidak mendukung AWS CodePipeline
<a name="create-a-pipeline-in-aws-regions-that-don-t-support-aws-codepipeline"></a>

*Anand Krishna Varanasi, Amazon Web Services*

## Ringkasan
<a name="create-a-pipeline-in-aws-regions-that-don-t-support-aws-codepipeline-summary"></a>

**Pemberitahuan**: AWS CodeCommit tidak lagi tersedia untuk pelanggan baru. Pelanggan yang sudah ada AWS CodeCommit dapat terus menggunakan layanan seperti biasa. [Pelajari selengkapnya](https://aws.amazon.com/blogs/devops/how-to-migrate-your-aws-codecommit-repository-to-another-git-provider/)

AWS CodePipeline adalah layanan orkestrasi pengiriman berkelanjutan (CD) yang merupakan bagian dari seperangkat DevOps alat dari Amazon Web Services (AWS). Ini terintegrasi dengan berbagai macam sumber (seperti sistem kontrol versi dan solusi penyimpanan), produk dan layanan integrasi berkelanjutan (CI) dari AWS dan AWS Partners, dan produk sumber terbuka untuk menyediakan layanan end-to-end alur kerja untuk penerapan aplikasi dan infrastruktur yang cepat.

Namun, CodePipeline tidak didukung di semua Wilayah AWS, dan berguna untuk memiliki orkestrator tak terlihat yang menghubungkan layanan AWS. CI/CD Pola ini menjelaskan cara menerapkan end-to-end alur kerja di Wilayah AWS yang CodePipeline belum didukung dengan menggunakan CI/CD layanan AWS seperti AWS CodeCommit, AWS CodeBuild, dan AWS CodeDeploy.

## Prasyarat dan batasan
<a name="create-a-pipeline-in-aws-regions-that-don-t-support-aws-codepipeline-prereqs"></a>

**Prasyarat**
+ Akun AWS yang aktif
+ AWS Cloud Development Kit (AWS CDK) CLI versi 2.28 atau yang lebih baru

## Arsitektur
<a name="create-a-pipeline-in-aws-regions-that-don-t-support-aws-codepipeline-architecture"></a>

**Tumpukan teknologi target**

Diagram berikut menunjukkan pipa yang dibuat di Wilayah yang tidak mendukung CodePipeline, seperti Wilayah Afrika (Cape Town). Pengembang mendorong file CodeDeploy konfigurasi (juga disebut *skrip hook siklus hidup penerapan)* ke repositori Git yang di-host oleh. CodeCommit (Lihat [GitHub repositori](https://github.com/aws-samples/invisible-codepipeline-unsupported-regions) yang disediakan dengan pola ini.) EventBridge Aturan Amazon secara otomatis dimulai. CodeBuild

File CodeDeploy konfigurasi diambil dari CodeCommit sebagai bagian dari tahap sumber pipa dan ditransfer ke CodeBuild. 

Pada fase berikutnya, CodeBuild melakukan tugas-tugas ini: 

1. Mengunduh file TAR kode sumber aplikasi. Anda dapat mengonfigurasi nama file ini dengan menggunakan Parameter Store, kemampuan AWS Systems Manager.

1. Mengunduh file CodeDeploy konfigurasi.

1. Membuat arsip gabungan kode sumber aplikasi dan file CodeDeploy konfigurasi yang khusus untuk jenis aplikasi.

1. Memulai CodeDeploy penerapan ke instans Amazon Elastic Compute Cloud (Amazon EC2) dengan menggunakan arsip gabungan.

![\[Pembuatan saluran pipa di Wilayah AWS yang tidak didukung\]](http://docs.aws.amazon.com/id_id/prescriptive-guidance/latest/patterns/images/pattern-img/e27750de-b597-424e-b5bf-4d58dc9b60cc/images/95fc815e-a762-4142-b0fd-2a716823e498.png)


## Alat
<a name="create-a-pipeline-in-aws-regions-that-don-t-support-aws-codepipeline-tools"></a>

**Layanan AWS**
+ [AWS CodeBuild](https://docs.aws.amazon.com/codebuild/latest/userguide/welcome.html) adalah layanan build terkelola penuh yang membantu Anda mengompilasi kode sumber, menjalankan pengujian unit, dan menghasilkan artefak yang siap digunakan.
+ [AWS CodeCommit](https://docs.aws.amazon.com/codecommit/latest/userguide/welcome.html) adalah layanan kontrol versi yang membantu Anda menyimpan dan mengelola repositori Git secara pribadi, tanpa perlu mengelola sistem kontrol sumber Anda sendiri.
+ [AWS CodeDeploy](https://docs.aws.amazon.com/codedeploy/latest/userguide/welcome.html) mengotomatiskan penerapan ke Amazon EC2 atau instans lokal, fungsi AWS Lambda, atau layanan Amazon Elastic Container Service (Amazon ECS).
+ [AWS CodePipeline](https://docs.aws.amazon.com/codepipeline/latest/userguide/welcome.html) membantu Anda memodelkan dan mengonfigurasi berbagai tahapan rilis perangkat lunak dengan cepat dan mengotomatiskan langkah-langkah yang diperlukan untuk merilis perubahan perangkat lunak secara terus menerus.
+ [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.

**Kode**

Kode untuk pola ini tersedia di repositori [Wilayah GitHub CodePipeline Tidak Didukung](https://github.com/aws-samples/invisible-codepipeline-unsupported-regions).

## Epik
<a name="create-a-pipeline-in-aws-regions-that-don-t-support-aws-codepipeline-epics"></a>

### Siapkan workstation pengembang Anda
<a name="set-up-your-developer-workstation"></a>


| Tugas | Deskripsi | Keterampilan yang dibutuhkan | 
| --- | --- | --- | 
| Instal AWS CDK CLI. | Untuk petunjuk, lihat [dokumentasi AWS CDK](https://docs.aws.amazon.com/cdk/v2/guide/getting_started.html#getting_started_prerequisites). | AWS DevOps | 
| Instal klien Git. | Untuk membuat commit, Anda dapat menggunakan klien Git yang diinstal pada komputer lokal Anda, dan kemudian mendorong commit Anda ke repositori. CodeCommit Untuk mengatur CodeCommit dengan klien Git Anda, lihat [CodeCommit dokumentasinya](https://docs.aws.amazon.com/codecommit/latest/userguide/how-to-create-commit.html). | AWS DevOps | 
| Instal npm. | Instal manajer paket **npm**. Untuk informasi selengkapnya, lihat [dokumentasi npm](https://docs.npmjs.com/downloading-and-installing-node-js-and-npm). | AWS DevOps | 

### Siapkan pipa
<a name="set-up-the-pipeline"></a>


| Tugas | Deskripsi | Keterampilan yang dibutuhkan | 
| --- | --- | --- | 
| Kloning repositori kode. | Kloning repositori [Wilayah GitHub CodePipeline Tidak Didukung](https://github.com/aws-samples/invisible-codepipeline-unsupported-regions) ke mesin lokal Anda dengan menjalankan perintah berikut.<pre>git clone https://github.com/aws-samples/invisible-codepipeline-unsupported-regions</pre> | DevOps insinyur | 
| Tetapkan parameter di cdk.json. | Buka `cdk.json` file dan berikan nilai untuk parameter berikut:<pre>"pipeline_account":"XXXXXXXXXXXX",<br />"pipeline_region":"us-west-2",<br />"repo_name": "app-dev-repo",<br />"ec2_tag_key": "test-vm",<br />"configName" : "cbdeployconfig",<br />"deploymentGroupName": "cbdeploygroup",<br />"applicationName" : "cbdeployapplication",<br />"projectName" : "CodeBuildProject"</pre>di mana:[\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/id_id/prescriptive-guidance/latest/patterns/create-a-pipeline-in-aws-regions-that-don-t-support-aws-codepipeline.html) | AWS DevOps | 
| Siapkan pustaka konstruksi AWS CDK. | Di GitHub repositori kloning, gunakan perintah berikut untuk menginstal pustaka konstruksi AWS CDK, membangun aplikasi Anda, dan mensintesis untuk menghasilkan template AWS CloudFormation untuk aplikasi.<pre>npm i aws-cdk-lib<br />npm run build<br />cdk synth</pre> | AWS DevOps | 
| Terapkan contoh aplikasi AWS CDK. | Menyebarkan kode dengan menjalankan perintah berikut di Wilayah yang tidak didukung (seperti`af-south-1`).<pre>cdk deploy</pre> | AWS DevOps | 

### Siapkan CodeCommit repositori untuk CodeDeploy
<a name="set-up-the-codecommit-repository-for-codedeploy"></a>


| Tugas | Deskripsi | Keterampilan yang dibutuhkan | 
| --- | --- | --- | 
| Siapkan CI/CD untuk aplikasi. | Kloning CodeCommit repositori yang Anda tentukan dalam `cdk.json` file (ini disebut secara `app-dev-repo` default) untuk mengatur CI/CD pipeline untuk aplikasi.<pre>git clone https://git-codecommit.us-west-2.amazonaws.com/v1/repos/app-dev-repo</pre>di mana nama repositori dan Wilayah bergantung pada nilai yang Anda berikan dalam file. `cdk.json` | AWS DevOps | 

### Uji pipa
<a name="test-the-pipeline"></a>


| Tugas | Deskripsi | Keterampilan yang dibutuhkan | 
| --- | --- | --- | 
| Uji pipa dengan instruksi penerapan. | `CodeDeploy_Files`Folder repositori [Wilayah GitHub CodePipeline Tidak Didukung](https://github.com/aws-samples/invisible-codepipeline-unsupported-regions) menyertakan file sampel yang menginstruksikan CodeDeploy untuk menyebarkan aplikasi. `appspec.yml`File adalah file CodeDeploy konfigurasi yang berisi kait untuk mengontrol aliran penerapan aplikasi. Anda dapat menggunakan file sampel`index.html`,, `start_server.sh``stop_server.sh`, dan `install_dependencies.sh` untuk memperbarui situs web yang di-host di Apache. Ini adalah contoh—Anda dapat menggunakan kode di GitHub repositori untuk menyebarkan semua jenis aplikasi. Ketika file didorong ke CodeCommit repositori, pipeline tak terlihat dimulai secara otomatis. Untuk hasil penerapan, periksa hasil fase individu di CodeBuild dan CodeDeploy konsol. | AWS DevOps | 

## Sumber daya terkait
<a name="create-a-pipeline-in-aws-regions-that-don-t-support-aws-codepipeline-resources"></a>
+ [Memulai](https://docs.aws.amazon.com/cdk/v2/guide/getting_started.html#getting_started_prerequisites) (dokumentasi AWS CDK)
+ [Pengantar Cloud Development Kit (CDK)](https://catalog.us-east-1.prod.workshops.aws/workshops/5962a836-b214-4fbf-9462-fedba7edcc9b/en-US) (AWS Workshop Studio)
+ [Lokakarya AWS CDK](https://cdkworkshop.com/)

# Sesuaikan nama peran default dengan menggunakan AWS CDK aspek dan lubang keluar
<a name="customize-default-role-names-by-using-aws-cdk-aspects-and-escape-hatches"></a>

*SANDEEP SINGH dan James Jacob, Amazon Web Services*

## Ringkasan
<a name="customize-default-role-names-by-using-aws-cdk-aspects-and-escape-hatches-summary"></a>

Pola ini menunjukkan cara menyesuaikan nama default peran yang dibuat oleh AWS Cloud Development Kit (AWS CDK) konstruksi. Menyesuaikan nama peran seringkali diperlukan jika organisasi Anda memiliki batasan khusus berdasarkan konvensi penamaan. Misalnya, organisasi Anda mungkin menetapkan [batas izin AWS Identity and Access Management](https://docs.aws.amazon.com/IAM/latest/UserGuide/access_policies_boundaries.html) (IAM) atau [kebijakan kontrol layanan (SCPs)](https://docs.aws.amazon.com/organizations/latest/userguide/orgs_manage_policies_scps.html) yang memerlukan awalan tertentu dalam nama peran. Dalam kasus seperti itu, nama peran default yang dihasilkan oleh AWS CDK konstruksi mungkin tidak memenuhi konvensi ini dan mungkin harus diubah. Pola ini membahas persyaratan tersebut dengan menggunakan [lubang keluar](https://docs.aws.amazon.com/cdk/v2/guide/cfn-layer.html) dan [aspek](https://docs.aws.amazon.com/cdk/v2/guide/aspects.html) di. AWS CDK Anda menggunakan escape hatch untuk menentukan nama peran kustom, dan aspek untuk menerapkan nama kustom ke semua peran, untuk memastikan kepatuhan terhadap kebijakan dan batasan organisasi Anda.

## Prasyarat dan batasan
<a name="customize-default-role-names-by-using-aws-cdk-aspects-and-escape-hatches-prereqs"></a>

**Prasyarat**
+ Aktif Akun AWS
+ [Prasyarat yang ditentukan dalam dokumentasi AWS CDK](https://docs.aws.amazon.com/cdk/v2/guide/getting_started.html#getting_started_prerequisites)

**Batasan**
+ Aspek memfilter sumber daya berdasarkan jenis sumber daya, sehingga semua peran memiliki awalan yang sama. Jika Anda memerlukan awalan peran yang berbeda untuk peran yang berbeda, pemfilteran tambahan berdasarkan properti lain diperlukan. Misalnya, untuk menetapkan awalan berbeda ke peran yang terkait dengan AWS Lambda fungsi, Anda dapat memfilter berdasarkan atribut atau tag peran tertentu, dan menerapkan satu awalan untuk peran terkait Lambda dan awalan yang berbeda untuk peran lain.
+ Nama peran IAM memiliki panjang maksimum 64 karakter, jadi nama peran yang dimodifikasi harus dipangkas untuk memenuhi batasan ini.
+ 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 halaman [titik akhir dan kuota Layanan](https://docs.aws.amazon.com/general/latest/gr/aws-service-information.html), dan pilih tautan untuk layanan.

## Arsitektur
<a name="customize-default-role-names-by-using-aws-cdk-aspects-and-escape-hatches-architecture"></a>

**Tumpukan teknologi target**
+ AWS CDK
+ AWS CloudFormation

**Arsitektur target**

![\[Arsitektur untuk menggunakan lubang keluar dan aspek untuk menyesuaikan nama peran yang ditetapkan AWS CDK.\]](http://docs.aws.amazon.com/id_id/prescriptive-guidance/latest/patterns/images/pattern-img/c149d8d2-1da6-4680-ab0b-e5051b69688c/images/15e56ca5-f150-4522-b374-8ee2dcc655a9.png)

+  AWS CDK Aplikasi terdiri dari satu atau lebih CloudFormation tumpukan, yang disintesis dan digunakan untuk mengelola sumber daya. AWS 
+ Untuk memodifikasi properti sumber daya yang AWS CDK dikelola yang tidak diekspos oleh konstruksi layer 2 (L2), Anda menggunakan escape hatch untuk mengganti CloudFormation properti yang mendasarinya (dalam hal ini, nama peran), dan aspek untuk menerapkan peran ke semua sumber daya dalam AWS CDK aplikasi selama proses sintesis tumpukan. AWS CDK 

## Alat
<a name="customize-default-role-names-by-using-aws-cdk-aspects-and-escape-hatches-tools"></a>

**Layanan AWS**
+ [AWS Cloud Development Kit (AWS CDK)](https://docs.aws.amazon.com/cdk/latest/guide/home.html)adalah kerangka pengembangan perangkat lunak yang membantu Anda menentukan dan menyediakan AWS Cloud infrastruktur dalam kode.
+ [AWS CDK Command Line Interface (AWS CDK CLI)](https://docs.aws.amazon.com/cdk/latest/guide/cli.html) (juga disebut sebagai AWS CDK Toolkit) adalah kit pengembangan cloud baris perintah yang membantu Anda berinteraksi dengan aplikasi Anda. AWS CDK `cdk`Perintah CLI adalah alat utama untuk berinteraksi dengan aplikasi Anda. AWS CDK Ini menjalankan aplikasi Anda, menginterogasi model aplikasi yang Anda tentukan, dan menghasilkan serta menerapkan CloudFormation template yang dihasilkan oleh. AWS CDK
+ [CloudFormation](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/Welcome.html)membantu Anda menyiapkan AWS sumber daya, menyediakannya dengan cepat dan konsisten, dan mengelolanya sepanjang siklus hidupnya di seluruh Akun AWS dan Wilayah.

**Repositori kode**

Kode sumber dan template untuk pola ini tersedia di repositori GitHub [CDK Aspects Override](https://github.com/aws-samples/cdk-aspects-override).

## Praktik terbaik
<a name="customize-default-role-names-by-using-aws-cdk-aspects-and-escape-hatches-best-practices"></a>

Lihat [Praktik terbaik untuk menggunakan AWS CDK in TypeScript untuk membuat proyek IAc](https://docs.aws.amazon.com/prescriptive-guidance/latest/best-practices-cdk-typescript-iac/introduction.html) di situs web **AWS **Prescriptive Guidance.

## Epik
<a name="customize-default-role-names-by-using-aws-cdk-aspects-and-escape-hatches-epics"></a>

### Instal AWS CDK CLI
<a name="install-the-cdk-cli"></a>


| Tugas | Deskripsi | Keterampilan yang dibutuhkan | 
| --- | --- | --- | 
| Instal AWS CDK CLI. | Untuk menginstal AWS CDK CLI secara global, jalankan perintah:<pre>npm install -g aws-cdk</pre> | AWS DevOps | 
| Verifikasi versinya. | Jalankan perintah :<pre>cdk --version</pre>Konfirmasikan bahwa Anda menggunakan AWS CDK CLI versi 2. | AWS DevOps | 
| Bootstrap AWS CDK lingkungan. | Sebelum Anda menyebarkan CloudFormation template, siapkan akun dan Wilayah AWS yang ingin Anda gunakan. Jalankan perintah :<pre>cdk bootstrap <account>/<Region></pre>Untuk informasi selengkapnya, lihat [AWS CDK bootstrap di dokumentasi](https://docs.aws.amazon.com/cdk/v2/guide/bootstrapping.html). AWS  | AWS DevOps | 

### Terapkan AWS CDK aplikasi untuk mendemonstrasikan penggunaan aspek
<a name="deploy-the-cdk-app-to-demonstrate-the-use-of-aspects"></a>


| Tugas | Deskripsi | Keterampilan yang dibutuhkan | 
| --- | --- | --- | 
| Siapkan proyek. | [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/id_id/prescriptive-guidance/latest/patterns/customize-default-role-names-by-using-aws-cdk-aspects-and-escape-hatches.html) | AWS DevOps | 
| Terapkan tumpukan dengan nama peran default yang ditetapkan oleh. AWS CDK | Terapkan dua CloudFormation tumpukan (`ExampleStack1`dan`ExampleStack2`) yang berisi fungsi Lambda dan peran terkaitnya:<pre>npm run deploy:ExampleAppWithoutAspects</pre>Kode tidak secara eksplisit meneruskan properti peran, sehingga nama peran akan dibuat oleh. AWS CDKMisalnya output, lihat bagian [Informasi tambahan](#customize-default-role-names-by-using-aws-cdk-aspects-and-escape-hatches-additional). | AWS DevOps | 
| Menyebarkan tumpukan dengan aspek. | Pada langkah ini, Anda menerapkan aspek yang memberlakukan konvensi nama peran dengan menambahkan awalan ke semua peran IAM yang diterapkan dalam proyek. AWS CDK Aspek didefinisikan dalam `lib/aspects.ts` file. Aspek menggunakan escape hatch untuk mengganti nama peran dengan menambahkan awalan. Aspek ini diterapkan pada tumpukan dalam `bin/app-with-aspects.ts` file. Awalan nama peran yang digunakan dalam contoh ini adalah`dev-unicorn`.[\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/id_id/prescriptive-guidance/latest/patterns/customize-default-role-names-by-using-aws-cdk-aspects-and-escape-hatches.html)Misalnya output, lihat bagian [Informasi tambahan](#customize-default-role-names-by-using-aws-cdk-aspects-and-escape-hatches-additional). | AWS DevOps | 

### Pembersihan sumber daya
<a name="clean-up-resources"></a>


| Tugas | Deskripsi | Keterampilan yang dibutuhkan | 
| --- | --- | --- | 
| Hapus AWS CloudFormation tumpukan Anda. | Setelah Anda selesai menggunakan pola ini, jalankan perintah berikut untuk membersihkan sumber daya agar tidak menimbulkan biaya tambahan:<pre>cdk destroy --all -f && cdk --app npx ts-node bin/app-with-aspects.ts' destroy --all -f </pre> | AWS DevOps | 

## Pemecahan masalah
<a name="customize-default-role-names-by-using-aws-cdk-aspects-and-escape-hatches-troubleshooting"></a>


| Isu | Solusi | 
| --- | --- | 
| Anda mengalami masalah menggunakan AWS CDK. | Lihat [Memecahkan AWS CDK masalah umum](https://docs.aws.amazon.com/cdk/v2/guide/troubleshooting.html) dalam dokumentasi. AWS CDK  | 

## Sumber daya terkait
<a name="customize-default-role-names-by-using-aws-cdk-aspects-and-escape-hatches-resources"></a>
+ [AWS Cloud Development Kit (AWS CDK)](https://aws.amazon.com/cdk/)
+ [AWS CDK dokumentasi](https://docs.aws.amazon.com/cdk/)
+ [AWS CDK pada GitHub](https://github.com/aws/aws-cdk)
+ [Melarikan diri menetas](https://docs.aws.amazon.com/cdk/v2/guide/cfn-layer.html)
+ [Aspek dan AWS CDK](https://docs.aws.amazon.com/cdk/v2/guide/aspects.html)

## Informasi tambahan
<a name="customize-default-role-names-by-using-aws-cdk-aspects-and-escape-hatches-additional"></a>

**Nama peran yang dibuat oleh CloudFormation tanpa aspek**

```
Outputs:
ExampleStack1WithoutAspects.Function1RoleName = example-stack1-without-as-Function1LambdaFunctionSe-y7FYTY6FXJXA
ExampleStack1WithoutAspects.Function2RoleName = example-stack1-without-as-Function2LambdaFunctionSe-dDZV4rkWqWnI
...

Outputs:
ExampleStack2WithoutAspects.Function3RoleName = example-stack2-without-as-Function3LambdaFunctionSe-ygMv49iTyMq0
```

**Nama peran yang dibuat oleh CloudFormation dengan aspek**

```
Outputs:
ExampleStack1WithAspects.Function1RoleName = dev-unicorn-Function1LambdaFunctionServiceRole783660DC
ExampleStack1WithAspects.Function2RoleName = dev-unicorn-Function2LambdaFunctionServiceRole2C391181
...

Outputs:
ExampleStack2WithAspects.Function3RoleName = dev-unicorn-Function3LambdaFunctionServiceRole4CAA721C
```

# Terapkan cluster Cassandra di Amazon EC2 dengan statis IPs pribadi untuk menghindari penyeimbangan kembali
<a name="deploy-a-cassandra-cluster-on-amazon-ec2-with-private-static-ips-to-avoid-rebalancing"></a>

*Dipin Jain, Amazon Web Services*

## Ringkasan
<a name="deploy-a-cassandra-cluster-on-amazon-ec2-with-private-static-ips-to-avoid-rebalancing-summary"></a>

IP pribadi instans Amazon Elastic Compute Cloud (Amazon EC2) dipertahankan sepanjang siklus hidupnya. Namun, IP pribadi mungkin berubah selama kerusakan sistem yang direncanakan atau tidak direncanakan; misalnya, selama pemutakhiran Amazon Machine Image (AMI). Dalam beberapa skenario, mempertahankan IP statis pribadi dapat meningkatkan kinerja dan waktu pemulihan beban kerja. Misalnya, menggunakan IP statis untuk node benih Apache Cassandra mencegah cluster menimbulkan overhead penyeimbangan kembali. 

Pola ini menjelaskan cara melampirkan elastic network interface sekunder ke EC2 instance agar IP tetap statis selama rehosting. Pola ini berfokus pada cluster Cassandra, tetapi Anda dapat menggunakan implementasi ini untuk arsitektur apa pun yang mendapat manfaat dari statis pribadi. IPs

## Prasyarat dan batasan
<a name="deploy-a-cassandra-cluster-on-amazon-ec2-with-private-static-ips-to-avoid-rebalancing-prereqs"></a>

**Prasyarat**
+ Akun Amazon Web Service (AWS) yang aktif

**Versi produk**
+ DataStax versi 5.11.1
+ Sistem operasi: Ubuntu 16.04.6 LTS

## Arsitektur
<a name="deploy-a-cassandra-cluster-on-amazon-ec2-with-private-static-ips-to-avoid-rebalancing-architecture"></a>

**Arsitektur sumber**

Sumbernya bisa berupa cluster Cassandra di mesin virtual lokal (VM) atau pada EC2 instance di AWS Cloud. Diagram berikut menggambarkan skenario kedua. Contoh ini mencakup empat node cluster: tiga node benih dan satu node manajemen. Dalam arsitektur sumber, setiap node memiliki antarmuka jaringan tunggal yang terpasang.

![\[Empat node EC2 cluster Amazon yang masing-masing memiliki satu antarmuka jaringan terpasang.\]](http://docs.aws.amazon.com/id_id/prescriptive-guidance/latest/patterns/images/pattern-img/47ca4dbc-0922-4e65-b66c-4db5122fc4ac/images/5d80cfc9-4b72-4c72-aefd-b77cc0fb58e3.png)


**Arsitektur target**

Cluster tujuan di-host pada EC2 instance dengan elastic network interface sekunder yang melekat pada setiap node, seperti yang diilustrasikan dalam diagram berikut.

![\[Empat node EC2 cluster Amazon yang masing-masing memiliki antarmuka elastis network sekunder terpasang.\]](http://docs.aws.amazon.com/id_id/prescriptive-guidance/latest/patterns/images/pattern-img/47ca4dbc-0922-4e65-b66c-4db5122fc4ac/images/d1e22017-f041-426b-9204-31ac158a407d.png)


**Otomatisasi dan skala**

Anda juga dapat mengotomatiskan melampirkan antarmuka jaringan elastis kedua ke grup Auto EC2 Scaling, seperti yang dijelaskan dalam video [AWS](https://www.youtube.com/watch?v=RmwGYXchb4E) Knowledge Center.

## Epik
<a name="deploy-a-cassandra-cluster-on-amazon-ec2-with-private-static-ips-to-avoid-rebalancing-epics"></a>

### Konfigurasikan cluster Cassandra di Amazon EC2
<a name="configure-a-cassandra-cluster-on-amazon-ec2"></a>


| Tugas | Deskripsi | Keterampilan yang dibutuhkan | 
| --- | --- | --- | 
| Luncurkan EC2 node untuk meng-host cluster Cassandra. | Di [ EC2 konsol Amazon](https://console.aws.amazon.com/ec2/), luncurkan empat EC2 instance untuk node Ubuntu Anda di akun AWS Anda. Tiga node (seed) digunakan untuk cluster Cassandra, dan node keempat bertindak sebagai node manajemen cluster di mana Anda akan menginstal DataStax Enterprise (DSE). OpsCenter Untuk petunjuk, lihat [ EC2 dokumentasi Amazon](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/EC2_GetStarted.html#ec2-launch-instance). | Insinyur awan | 
| Konfirmasikan komunikasi simpul. | Pastikan bahwa keempat node dapat berkomunikasi satu sama lain melalui database dan port manajemen cluster. | Insinyur jaringan | 
| Instal DSE OpsCenter pada node manajemen. | Instal DSE OpsCenter 6.1 dari paket Debian pada node manajemen. Untuk instruksi, lihat [DataStax dokumentasi](https://docs.datastax.com/en/opscenter/6.1/opsc/install/opscInstallDeb_t.html). | DBA | 
| Buat antarmuka jaringan sekunder. | Cassandra menghasilkan pengidentifikasi unik universal (UUID) untuk setiap node berdasarkan alamat IP instance untuk node tersebut EC2 . UUID ini digunakan untuk mendistribusikan node virtual (vnodes) pada ring. Ketika Cassandra digunakan pada EC2 instance, alamat IP ditetapkan secara otomatis ke instance saat dibuat.  Jika terjadi pemadaman yang direncanakan atau tidak direncanakan, alamat IP untuk EC2 instance baru berubah, distribusi data berubah, dan seluruh cincin harus diseimbangkan kembali. Ini tidak diinginkan. Untuk mempertahankan alamat IP yang ditetapkan, gunakan [elastic network interface sekunder](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/using-eni.html#scenarios-enis) dengan alamat IP tetap.[\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/id_id/prescriptive-guidance/latest/patterns/deploy-a-cassandra-cluster-on-amazon-ec2-with-private-static-ips-to-avoid-rebalancing.html)Untuk informasi selengkapnya tentang membuat antarmuka jaringan, lihat [ EC2 dokumentasi Amazon](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/using-eni.html#create_eni). | Insinyur Awan | 
| Pasang antarmuka jaringan sekunder ke node cluster. | [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/id_id/prescriptive-guidance/latest/patterns/deploy-a-cassandra-cluster-on-amazon-ec2-with-private-static-ips-to-avoid-rebalancing.html)Untuk informasi selengkapnya tentang melampirkan antarmuka jaringan, lihat [ EC2 dokumentasi Amazon](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/using-eni.html#attach_eni). | Insinyur awan | 
| Tambahkan rute di Amazon EC2 untuk mengatasi perutean asimetris.  | Saat Anda memasang antarmuka jaringan kedua, jaringan kemungkinan besar akan melakukan routing asimetris. Untuk menghindari hal ini, Anda dapat menambahkan rute untuk antarmuka jaringan baru.Untuk penjelasan mendalam dan remediasi perutean asimetris, lihat [video AWS Knowledge Center](https://www.youtube.com/watch?v=RmwGYXchb4E) atau [Mengatasi Perutean Asimetris di Server Multi-Rumah (artikel di](http://www.linuxjournal.com/article/7291) *Jurnal Linux* oleh Patrick, 5 April 2004). McManus | Insinyur jaringan | 
| Perbarui entri DNS untuk menunjuk ke IP antarmuka jaringan sekunder. | Arahkan nama domain yang sepenuhnya memenuhi syarat (FQDN) dari node ke IP antarmuka jaringan sekunder. | Insinyur jaringan | 
| Instal dan konfigurasikan cluster Cassandra dengan menggunakan DSE. OpsCenter | Ketika node cluster siap dengan antarmuka jaringan sekunder, Anda dapat menginstal dan mengkonfigurasi cluster Cassandra. | DBA | 

### Pulihkan cluster dari kegagalan node
<a name="recover-cluster-from-node-failure"></a>


| Tugas | Deskripsi | Keterampilan yang dibutuhkan | 
| --- | --- | --- | 
| Buat AMI untuk node benih cluster. | Buat cadangan node sehingga Anda dapat mengembalikannya dengan binari database jika terjadi kegagalan node. Untuk petunjuknya, lihat [Membuat AMI](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/create-ami.html) di EC2 dokumentasi Amazon. | Administrator cadangan | 
| Pulihkan dari kegagalan node. | Ganti node yang gagal dengan EC2 instance baru yang diluncurkan dari AMI, dan lampirkan antarmuka jaringan sekunder dari node yang gagal. | Administrator cadangan | 
| Verifikasi bahwa cluster Cassandra sehat. | Saat node pengganti sudah habis, verifikasi kesehatan cluster di DSE OpsCenter. | DBA | 

## Sumber daya terkait
<a name="deploy-a-cassandra-cluster-on-amazon-ec2-with-private-static-ips-to-avoid-rebalancing-resources"></a>
+ [Menginstal DSE OpsCenter 6.1 dari paket Debian (dokumentasi](https://docs.datastax.com/en/opscenter/6.1/opsc/install/opscInstallDeb_t.html)) DataStax 
+ [Cara membuat antarmuka jaringan sekunder berfungsi dalam EC2 instance Ubuntu](https://www.youtube.com/watch?v=RmwGYXchb4E) (video AWS Knowledge Center)
+ [Praktik Terbaik untuk Menjalankan Apache Cassandra di Amazon (postingan blog EC2 AWS)](https://aws.amazon.com/blogs/big-data/best-practices-for-running-apache-cassandra-on-amazon-ec2/)

# Memperluas VRFs ke AWS dengan menggunakan AWS Transit Gateway Connect
<a name="extend-vrfs-to-aws-by-using-aws-transit-gateway-connect"></a>

*Adam Till, Yashar Araghi, Vikas Dewangan, dan Mohideen, Amazon Web Services HajaMohideen*

## Ringkasan
<a name="extend-vrfs-to-aws-by-using-aws-transit-gateway-connect-summary"></a>

Virtual routing and forwarding (VRF) adalah fitur jaringan tradisional. Ini menggunakan domain routing logis terisolasi, dalam bentuk tabel rute, untuk memisahkan lalu lintas jaringan dalam infrastruktur fisik yang sama. Anda dapat mengonfigurasi AWS Transit Gateway untuk mendukung isolasi VRF saat menghubungkan jaringan lokal ke AWS. Pola ini menggunakan arsitektur sampel untuk menghubungkan lokal VRFs ke tabel rute gateway transit yang berbeda.

Pola ini menggunakan transit virtual interface (VIFs) di AWS Direct Connect dan lampiran transit gateway Connect untuk memperluas. VRFs [VIF transit](https://docs.aws.amazon.com/directconnect/latest/UserGuide/WorkingWithVirtualInterfaces.html) digunakan untuk mengakses satu atau lebih gateway transit VPC Amazon yang terkait dengan gateway Direct Connect. [Lampiran Connect gateway transit](https://docs.aws.amazon.com/vpc/latest/tgw/tgw-connect.html) menghubungkan gateway transit dengan alat virtual pihak ketiga yang berjalan di VPC. Lampiran transit gateway Connect mendukung protokol terowongan Generic Routing Encapsulation (GRE) untuk kinerja tinggi, dan mendukung Border Gateway Protocol (BGP) untuk perutean dinamis.

Pendekatan yang dijelaskan dalam pola ini memiliki manfaat sebagai berikut:
+ Dengan menggunakan Transit Gateway Connect, Anda dapat mengiklankan hingga 1.000 rute ke peer Transit Gateway Connect dan menerima hingga 5.000 rute darinya. Menggunakan fitur VIF transit Direct Connect tanpa Transit Gateway Connect dibatasi hingga 20 awalan per gateway transit.
+ Anda dapat mempertahankan isolasi lalu lintas dan menggunakan Transit Gateway Connect untuk menyediakan layanan yang dihosting di AWS, terlepas dari skema alamat IP yang digunakan pelanggan Anda.
+ Lalu lintas VRF tidak perlu melintasi antarmuka virtual publik. Ini membuatnya lebih mudah untuk mematuhi persyaratan kepatuhan dan keamanan di banyak organisasi.
+ Setiap terowongan GRE mendukung hingga 5 Gbps, dan Anda dapat memiliki hingga empat terowongan GRE per lampiran Connect gateway transit. Ini lebih cepat daripada banyak jenis koneksi lainnya, seperti koneksi AWS Site-to-Site VPN yang mendukung hingga 1,25 Gbps.

## Prasyarat dan batasan
<a name="extend-vrfs-to-aws-by-using-aws-transit-gateway-connect-prereqs"></a>

**Prasyarat**
+ Akun AWS yang diperlukan telah dibuat (lihat arsitektur untuk detailnya)
+ Izin untuk mengambil peran AWS Identity and Access Management (IAM) di setiap akun.
+ Peran IAM di setiap akun harus memiliki izin untuk menyediakan sumber daya AWS Transit Gateway dan AWS Direct Connect. Untuk informasi selengkapnya, lihat [Otentikasi dan kontrol akses untuk gateway transit Anda](https://docs.aws.amazon.com/vpc/latest/tgw/transit-gateway-authentication-access-control.html) dan lihat [Manajemen identitas dan akses untuk Direct](https://docs.aws.amazon.com/directconnect/latest/UserGuide/security-iam.html) Connect.
+ Koneksi Direct Connect telah berhasil dibuat. Untuk informasi selengkapnya, lihat [Membuat sambungan menggunakan wizard Koneksi](https://docs.aws.amazon.com/directconnect/latest/UserGuide/dedicated_connection.html#create-connection).

**Batasan**
+ Ada batasan untuk lampiran gateway transit ke akun VPCs produksi, QA, dan pengembangan. Untuk informasi selengkapnya, lihat [Lampiran gateway transit ke VPC](https://docs.aws.amazon.com/vpc/latest/tgw/tgw-vpc-attachments.html).
+ Ada batasan untuk membuat dan menggunakan gateway Direct Connect. Untuk informasi selengkapnya, lihat [kuota AWS Direct Connect](https://docs.aws.amazon.com/directconnect/latest/UserGuide/limits.html).

## Arsitektur
<a name="extend-vrfs-to-aws-by-using-aws-transit-gateway-connect-architecture"></a>

**Arsitektur target**

Contoh arsitektur berikut menyediakan solusi yang dapat digunakan kembali untuk menerapkan transit VIFs dengan lampiran Connect gateway transit. Arsitektur ini memberikan ketahanan dengan menggunakan beberapa lokasi Direct Connect. Untuk informasi selengkapnya, lihat [Ketahanan maksimum dalam dokumentasi](https://docs.aws.amazon.com/directconnect/latest/UserGuide/maximum_resiliency.html) Direct Connect. Jaringan lokal memiliki produksi, QA, dan pengembangan VRFs yang diperluas ke AWS dan diisolasi dengan menggunakan tabel rute khusus.

![\[Diagram arsitektur menggunakan sumber daya AWS Direct Connect dan AWS Transit Gateway untuk memperluas VRFs\]](http://docs.aws.amazon.com/id_id/prescriptive-guidance/latest/patterns/images/pattern-img/db17e177-6c94-4d81-ab39-0923ecab2f1b/images/10be0625-8574-40eb-bc00-bb0a07d0dc26.png)


Di lingkungan AWS, dua akun didedikasikan untuk memperluas VRFs: akun *Direct Connect dan akun* *hub jaringan*. Akun Direct Connect berisi koneksi dan transit VIFs untuk setiap router. Anda membuat transit VIFs dari akun Direct Connect tetapi menyebarkannya ke akun hub jaringan sehingga Anda dapat mengaitkannya dengan gateway Direct Connect di akun hub jaringan. Akun hub jaringan berisi gateway Direct Connect dan gateway transit. Sumber daya AWS terhubung sebagai berikut:

1. Transit VIFs menghubungkan router di lokasi Direct Connect dengan AWS Direct Connect di akun Direct Connect.

1. VIF transit menghubungkan Direct Connect dengan gateway Direct Connect di akun hub jaringan.

1. [Asosiasi gateway transit](https://docs.aws.amazon.com/directconnect/latest/UserGuide/direct-connect-transit-gateways.html) menghubungkan gateway Direct Connect dengan gateway transit di akun hub jaringan.

1. [Lampiran transit gateway](https://docs.aws.amazon.com/vpc/latest/tgw/tgw-connect.html) Connect menghubungkan gateway transit dengan VPCs akun produksi, QA, dan pengembangan.

*Arsitektur Transit VIF*

Diagram berikut menunjukkan detail konfigurasi untuk transit VIFs. Contoh arsitektur ini menggunakan VLAN untuk sumber terowongan, tetapi Anda juga bisa menggunakan loopback.

![\[Detail konfigurasi untuk koneksi VIF transit antara router dan AWS Direct Connect\]](http://docs.aws.amazon.com/id_id/prescriptive-guidance/latest/patterns/images/pattern-img/db17e177-6c94-4d81-ab39-0923ecab2f1b/images/e88d2546-61ef-4531-972b-089cdf44ed67.png)


Berikut ini adalah detail konfigurasi, seperti nomor sistem otonom (ASNs), untuk transit VIFs.


| 
| 
| Sumber daya | Item | Detail | 
| --- |--- |--- |
| router-01 | ASN | 65534 | 
| router-02 | ASN | 65534 | 
| router-03 | ASN | 65534 | 
| router-04 | ASN | 65534 | 
| Gateway Direct Connect | ASN | 64601 | 
| Gateway transit | ASN | 64600 | 
| Blok CIDR | 10.100.254.0/24 | 

*Transit gateway Connect arsitektur*

Diagram dan tabel berikut menjelaskan cara mengkonfigurasi VRF tunggal melalui lampiran Connect gateway transit. Untuk tambahan VRFs, tetapkan terowongan unik IDs, alamat IP GRE gateway transit, dan BGP di dalam blok CIDR. Alamat IP GRE peer cocok dengan alamat IP peer router dari VIF transit.

![\[Detail konfigurasi untuk terowongan GRE antara router dan gateway transit\]](http://docs.aws.amazon.com/id_id/prescriptive-guidance/latest/patterns/images/pattern-img/db17e177-6c94-4d81-ab39-0923ecab2f1b/images/e58278e1-f3b4-442d-95d9-1dafab4aa5ac.png)


Tabel berikut berisi rincian konfigurasi router.


| 
| 
| Router | Terowongan | Alamat IP | Sumber | Destinasi | 
| --- |--- |--- |--- |--- |
| router-01 | Terowongan 1 | 169.254.101.17 | VLAN 60169.254.100.1 | 10.100.254.1 | 
| router-02 | Terowongan 11 | 169.254.101.81 | VLAN 61169.254.100.5 | 10.100.254.11 | 
| router-03 | Terowongan 21 | 169.254.101.145 | VLAN 62169.254.100.9 | 10.100.254.21 | 
| router-04 | Terowongan 31 | 169.254.101.209 | VLAN 63169.254.100.13 | 10.100.254.31 | 

Tabel berikut berisi rincian konfigurasi gateway transit.


| 
| 
| Terowongan | Alamat IP GRE gateway transit | Alamat IP Peer GRE | BGP di dalam blok CIDR | 
| --- |--- |--- |--- |
| Terowongan 1 | 10.100.254.1 | VLAN 60169.254.100.1 | 169.254.101.16/29 | 
| Terowongan 11 | 10.100.254.11 | VLAN 61169.254.100.5 | 169.254.101.80/29 | 
| Terowongan 21 | 10.100.254.21 | VLAN 62169.254.100.9 | 169.254.101.144/29 | 
| Terowongan 31 | 10.100.254.31 | VLAN 63169.254.100.13 | 169.254.101.208/29 | 

**Deployment**

Bagian [Epics](#extend-vrfs-to-aws-by-using-aws-transit-gateway-connect-epics) menjelaskan cara menerapkan konfigurasi sampel untuk**** satu VRF di beberapa router pelanggan. Setelah langkah 1—5 selesai, Anda dapat membuat lampiran Connect gateway transit baru dengan menggunakan langkah 6-7 untuk setiap VRF baru yang Anda perluas ke AWS:

1. Buat gateway transit.

1. Buat tabel rute Transit Gateway untuk setiap VRF.

1. Buat antarmuka virtual transit.

1. Buat gateway Direct Connect.

1. Buat antarmuka virtual gateway Direct Connect dan asosiasi gateway dengan awalan yang diizinkan.

1. Buat lampiran Connect gateway transit.

1. Buat peer Transit Gateway Connect.

1. Kaitkan lampiran Connect gateway transit dengan tabel rute.

1. Iklankan rute ke router.

## Alat
<a name="extend-vrfs-to-aws-by-using-aws-transit-gateway-connect-tools"></a>

**Layanan AWS**
+ [AWS Direct Connect](https://docs.aws.amazon.com/directconnect/latest/UserGuide/Welcome.html) menautkan jaringan internal Anda ke lokasi Direct Connect melalui kabel serat optik Ethernet standar. Dengan koneksi ini, Anda dapat membuat antarmuka virtual langsung ke layanan AWS publik sambil melewati penyedia layanan internet di jalur jaringan Anda.
+ [AWS Transit Gateway](https://docs.aws.amazon.com/vpc/latest/tgw/what-is-transit-gateway.html) adalah hub pusat yang menghubungkan cloud pribadi virtual (VPCs) dan jaringan lokal.
+ [Amazon Virtual Private Cloud (Amazon VPC)](https://docs.aws.amazon.com/vpc/latest/userguide/what-is-amazon-vpc.html) membantu Anda meluncurkan sumber daya AWS ke jaringan virtual yang telah Anda tentukan. Jaringan virtual ini menyerupai jaringan tradisional yang akan Anda operasikan di pusat data Anda sendiri, dengan manfaat menggunakan infrastruktur AWS yang dapat diskalakan.

## Epik
<a name="extend-vrfs-to-aws-by-using-aws-transit-gateway-connect-epics"></a>

### Rencanakan arsitekturnya
<a name="plan-the-architecture"></a>


| Tugas | Deskripsi | Keterampilan yang dibutuhkan | 
| --- | --- | --- | 
| Buat diagram arsitektur kustom. | [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/id_id/prescriptive-guidance/latest/patterns/extend-vrfs-to-aws-by-using-aws-transit-gateway-connect.html) | Arsitek cloud, Administrator jaringan | 

### Buat sumber daya Transit Gateway
<a name="create-the-transit-gateway-resources"></a>


| Tugas | Deskripsi | Keterampilan yang dibutuhkan | 
| --- | --- | --- | 
| Buat gateway transit. | [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/id_id/prescriptive-guidance/latest/patterns/extend-vrfs-to-aws-by-using-aws-transit-gateway-connect.html) | Administrator jaringan, arsitek Cloud | 
| Buat tabel rute gateway transit. | Ikuti petunjuk di [Buat tabel rute gateway transit](https://docs.aws.amazon.com/vpc/latest/tgw/tgw-route-tables.html#create-tgw-route-table). Perhatikan hal berikut untuk pola ini:[\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/id_id/prescriptive-guidance/latest/patterns/extend-vrfs-to-aws-by-using-aws-transit-gateway-connect.html) | Arsitek cloud, Administrator jaringan | 

### Buat antarmuka virtual transit
<a name="create-the-transit-virtual-interfaces"></a>


| Tugas | Deskripsi | Keterampilan yang dibutuhkan | 
| --- | --- | --- | 
| Buat antarmuka virtual transit. | [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/id_id/prescriptive-guidance/latest/patterns/extend-vrfs-to-aws-by-using-aws-transit-gateway-connect.html) | Arsitek cloud, Administrator jaringan | 

### Buat sumber daya Direct Connect
<a name="create-the-direct-connect-resources"></a>


| Tugas | Deskripsi | Keterampilan yang dibutuhkan | 
| --- | --- | --- | 
| Buat gateway Direct Connect. | [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/id_id/prescriptive-guidance/latest/patterns/extend-vrfs-to-aws-by-using-aws-transit-gateway-connect.html) | Arsitek cloud, Administrator jaringan | 
| Pasang gateway Direct Connect ke transit VIFs. | [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/id_id/prescriptive-guidance/latest/patterns/extend-vrfs-to-aws-by-using-aws-transit-gateway-connect.html) | Arsitek cloud, Administrator jaringan | 
| Buat asosiasi gateway Direct Connect dengan awalan yang diizinkan. | Di akun hub jaringan, ikuti petunjuk di [Untuk mengaitkan gateway transit](https://docs.aws.amazon.com/directconnect/latest/UserGuide/direct-connect-transit-gateways.html#associate-tgw-with-direct-connect-gateway). Perhatikan hal berikut untuk pola ini:[\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/id_id/prescriptive-guidance/latest/patterns/extend-vrfs-to-aws-by-using-aws-transit-gateway-connect.html)Membuat asosiasi ini secara otomatis membuat lampiran Transit Gateway yang memiliki tipe sumber daya Direct Connect Gateway. Lampiran ini tidak perlu dikaitkan dengan tabel rute gateway transit. | Arsitek cloud, Administrator jaringan | 
| Buat lampiran Connect gateway transit. | [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/id_id/prescriptive-guidance/latest/patterns/extend-vrfs-to-aws-by-using-aws-transit-gateway-connect.html) | Arsitek cloud, Administrator jaringan | 
| Buat peer Transit Gateway Connect. | [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/id_id/prescriptive-guidance/latest/patterns/extend-vrfs-to-aws-by-using-aws-transit-gateway-connect.html) |  | 

### Iklankan rute ke router
<a name="advertise-routes-to-the-routers"></a>


| Tugas | Deskripsi | Keterampilan yang dibutuhkan | 
| --- | --- | --- | 
| Iklankan rute. | Kaitkan lampiran Connect gateway transit baru dengan tabel rute yang Anda buat sebelumnya untuk VRF ini. Misalnya, kaitkan lampiran Connect gateway transit produksi dengan tabel `Production-VRF` rute.Buat rute statis untuk awalan yang diiklankan ke router.[\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/id_id/prescriptive-guidance/latest/patterns/extend-vrfs-to-aws-by-using-aws-transit-gateway-connect.html) | Administrator jaringan, arsitek Cloud | 

## Sumber daya terkait
<a name="extend-vrfs-to-aws-by-using-aws-transit-gateway-connect-resources"></a>

**Dokumentasi AWS**
+ Dokumentasi Direct Connect
  + [Bekerja dengan gateway Direct Connect](https://docs.aws.amazon.com/directconnect/latest/UserGuide/direct-connect-gateways.html)
  + [Asosiasi gerbang transit](https://docs.aws.amazon.com/directconnect/latest/UserGuide/direct-connect-transit-gateways.html)
  + [Antarmuka virtual AWS Direct Connect](https://docs.aws.amazon.com/directconnect/latest/UserGuide/WorkingWithVirtualInterfaces.html)
+ Dokumentasi Transit Gateway
  + [Bekerja dengan gateway transit](https://docs.aws.amazon.com/vpc/latest/tgw/working-with-transit-gateways.html)
  + [Lampiran gateway transit ke gateway Direct Connect](https://docs.aws.amazon.com/vpc/latest/tgw/tgw-dcg-attachments.html)
  + [Lampiran Transit gateway Connect dan rekan Transit Gateway Connect](https://docs.aws.amazon.com/vpc/latest/tgw/tgw-connect.html)
  + [Membuat lampiran Connect gateway transit](https://docs.aws.amazon.com/vpc/latest/tgw/tgw-connect.html#create-tgw-connect-attachment)

**Postingan blog AWS**
+ [Segmentasi jaringan hybrid dengan AWS Transit Gateway connect](https://aws.amazon.com/blogs/networking-and-content-delivery/segmenting-hybrid-networks-with-aws-transit-gateway-connect/)
+ [Menggunakan AWS Transit Gateway terhubung untuk memperluas VRFs dan meningkatkan iklan awalan IP](https://aws.amazon.com/blogs/networking-and-content-delivery/using-aws-transit-gateway-connect-to-extend-vrfs-and-increase-ip-prefix-advertisement/)

## Lampiran
<a name="attachments-db17e177-6c94-4d81-ab39-0923ecab2f1b"></a>

[Untuk mengakses konten tambahan yang terkait dengan dokumen ini, unzip file berikut: attachment.zip](samples/p-attach/db17e177-6c94-4d81-ab39-0923ecab2f1b/attachments/attachment.zip)

# Dapatkan notifikasi Amazon SNS saat status kunci kunci AWS KMS berubah
<a name="get-amazon-sns-notifications-when-the-key-state-of-an-aws-kms-key-changes"></a>

*Shubham Harsora, Aromal Raj Jayarajan, dan Navdeep Pareek, Amazon Web Services*

## Ringkasan
<a name="get-amazon-sns-notifications-when-the-key-state-of-an-aws-kms-key-changes-summary"></a>

Data dan metadata yang terkait dengan kunci AWS Key Management Service (AWS KMS) hilang saat kunci tersebut dihapus. Penghapusan tidak dapat diubah dan Anda tidak dapat memulihkan data yang hilang (termasuk data terenkripsi). Anda dapat mencegah kehilangan data dengan menyiapkan sistem notifikasi untuk memberi tahu Anda tentang perubahan status pada [status kunci](https://docs.aws.amazon.com/kms/latest/developerguide/key-state.html#key-state-cmk-type) AWS KMS Anda.

Pola ini menunjukkan kepada Anda cara memantau perubahan status ke kunci AWS KMS dengan menggunakan Amazon dan EventBridge Amazon Simple Notification Service (Amazon SNS) untuk mengeluarkan notifikasi otomatis setiap kali status kunci AWS KMS berubah menjadi atau. `Disabled` `PendingDeletion` Misalnya, jika pengguna mencoba menonaktifkan atau menghapus kunci AWS KMS, Anda akan menerima pemberitahuan email dengan detail tentang upaya perubahan status. Anda juga dapat menggunakan pola ini untuk menjadwalkan penghapusan kunci AWS KMS.

## Prasyarat dan batasan
<a name="get-amazon-sns-notifications-when-the-key-state-of-an-aws-kms-key-changes-prereqs"></a>

**Prasyarat**
+ Akun AWS aktif dengan pengguna AWS Identity and Access Management (IAM)
+ Kunci [AWS KMS](https://docs.aws.amazon.com/kms/latest/developerguide/getting-started.html)

## Arsitektur
<a name="get-amazon-sns-notifications-when-the-key-state-of-an-aws-kms-key-changes-architecture"></a>

**Tumpukan teknologi**
+ Amazon EventBridge
+ AWS Key Management Service (AWS KMS)
+ Amazon Simple Notification Service (Amazon SNS)

**Arsitektur target**

Diagram berikut menunjukkan arsitektur untuk membangun proses pemantauan dan pemberitahuan otomatis untuk mendeteksi perubahan apa pun pada status kunci AWS KMS.

![\[Arsitektur untuk membangun proses pemantauan dan pemberitahuan otomatis\]](http://docs.aws.amazon.com/id_id/prescriptive-guidance/latest/patterns/images/pattern-img/2534df87-a6fd-4360-9b5d-4a8b1f533de3/images/0cb6a6b0-405b-4d26-ad04-2067176aa086.png)


Diagram menunjukkan alur kerja berikut:

1. Pengguna menonaktifkan atau menjadwalkan penghapusan kunci AWS KMS.

1.  EventBridge Aturan mengevaluasi jadwal `Disabled` atau `PendingDeletion` acara.

1.  EventBridge Aturan tersebut memanggil topik Amazon SNS.

1. Amazon SNS mengirimkan pesan notifikasi email kepada pengguna.

**catatan**  
Anda dapat menyesuaikan pesan email untuk memenuhi kebutuhan organisasi Anda. Sebaiknya sertakan informasi tentang entitas tempat kunci AWS KMS digunakan. Ini dapat membantu pengguna memahami dampak penghapusan kunci AWS KMS. Anda juga dapat menjadwalkan pemberitahuan email pengingat yang dikirim satu atau dua hari sebelum kunci AWS KMS dihapus.

**Otomatisasi dan skala**

 CloudFormation Tumpukan AWS menyebarkan semua sumber daya dan layanan yang diperlukan agar pola ini berfungsi. Anda dapat menerapkan pola secara independen dalam satu akun, atau dengan menggunakan [AWS CloudFormation StackSets](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/what-is-cfnstacksets.html) untuk beberapa akun independen atau [unit organisasi](https://docs.aws.amazon.com/organizations/latest/userguide/orgs_manage_ous.html) di AWS Organizations.

## Alat
<a name="get-amazon-sns-notifications-when-the-key-state-of-an-aws-kms-key-changes-tools"></a>
+ [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. CloudFormation Template untuk pola ini menjelaskan semua sumber daya AWS yang Anda inginkan, serta menyediakan CloudFormation serta mengonfigurasi sumber daya tersebut untuk Anda.
+ [Amazon EventBridge](https://docs.aws.amazon.com/eventbridge/latest/userguide/eb-what-is.html) adalah layanan bus acara tanpa server yang membantu Anda menghubungkan aplikasi Anda dengan data waktu nyata dari berbagai sumber. EventBridge mengirimkan aliran data real-time dari aplikasi dan layanan AWS Anda sendiri, dan merutekan data tersebut ke target seperti AWS Lambda. EventBridge menyederhanakan proses membangun arsitektur berbasis peristiwa.
+ [AWS Key Management Service (AWS KMS)](https://docs.aws.amazon.com/kms/latest/developerguide/overview.html) membantu Anda membuat dan mengontrol kunci kriptografi untuk membantu melindungi data Anda.
+ [Amazon Simple Notification Service (Amazon SNS](https://docs.aws.amazon.com/sns/latest/dg/welcome.html)) membantu Anda mengoordinasikan dan mengelola pertukaran pesan antara penayang dan klien, termasuk server web dan alamat email.

**Kode**

Kode untuk pola ini tersedia di [kunci GitHub Monitor AWS KMS nonaktifkan dan repositori penghapusan terjadwal](https://github.com/aws-samples/aws-kms-deletion-notification).

## Epik
<a name="get-amazon-sns-notifications-when-the-key-state-of-an-aws-kms-key-changes-epics"></a>

### Menyebarkan template CloudFormation
<a name="deploy-the-cloudformation-template"></a>


| Tugas | Deskripsi | Keterampilan yang dibutuhkan | 
| --- | --- | --- | 
| Kloning repositori. | Kloning [kunci GitHub Monitor AWS KMS menonaktifkan dan menjadwalkan](https://github.com/aws-samples/aws-kms-deletion-notification) repositori penghapusan ke mesin lokal Anda dengan menjalankan perintah berikut:`git clone https://github.com/aws-samples/aws-kms-deletion-notification` | Administrator AWS, arsitek Cloud | 
| Perbarui parameter template. | Di editor kode, buka `Alerting-KMS-Events.yaml` CloudFormation template yang Anda kloning dari repositori, lalu perbarui parameter berikut:[\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/id_id/prescriptive-guidance/latest/patterns/get-amazon-sns-notifications-when-the-key-state-of-an-aws-kms-key-changes.html) | Administrator AWS, arsitek Cloud | 
| Menyebarkan CloudFormation template. | [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/id_id/prescriptive-guidance/latest/patterns/get-amazon-sns-notifications-when-the-key-state-of-an-aws-kms-key-changes.html) | Administrator AWS, arsitek Cloud | 

### Konfirmasi langganan.
<a name="confirm-the-subscription"></a>


| Tugas | Deskripsi | Keterampilan yang dibutuhkan | 
| --- | --- | --- | 
| Konfirmasikan email berlangganan. | Setelah CloudFormation template berhasil digunakan, Amazon SNS mengirimkan pesan konfirmasi berlangganan ke alamat email yang Anda berikan di CloudFormation template.Untuk menerima pemberitahuan, Anda harus mengonfirmasi langganan email ini. Untuk informasi selengkapnya, lihat [Konfirmasi langganan](https://docs.aws.amazon.com/sns/latest/dg/SendMessageToHttp.confirm.html) di Panduan Pengembang Amazon SNS. | Administrator AWS, arsitek Cloud | 

### Uji pemberitahuan berlangganan
<a name="test-the-subscription-notification"></a>


| Tugas | Deskripsi | Keterampilan yang dibutuhkan | 
| --- | --- | --- | 
| Nonaktifkan kunci AWS KMS. | [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/id_id/prescriptive-guidance/latest/patterns/get-amazon-sns-notifications-when-the-key-state-of-an-aws-kms-key-changes.html) | Administrator AWS | 
| Validasi langganan. | Konfirmasikan bahwa Anda menerima email notifikasi Amazon SNS. | Administrator AWS | 

### Pembersihan sumber daya
<a name="clean-up-resources"></a>


| Tugas | Deskripsi | Keterampilan yang dibutuhkan | 
| --- | --- | --- | 
| Hapus CloudFormation tumpukan. | [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/id_id/prescriptive-guidance/latest/patterns/get-amazon-sns-notifications-when-the-key-state-of-an-aws-kms-key-changes.html) | Administrator AWS | 

## Sumber daya terkait
<a name="get-amazon-sns-notifications-when-the-key-state-of-an-aws-kms-key-changes-resources"></a>
+ [AWS CloudFormation](https://aws.amazon.com/cloudformation/) (dokumentasi AWS)
+ [Membuat tumpukan di CloudFormation konsol AWS](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/cfn-console-create-stack.html) ( CloudFormation dokumentasi AWS)
+ [Membangun arsitektur berbasis peristiwa di AWS (dokumentasi AWS](https://catalog.us-east-1.prod.workshops.aws/workshops/63320e83-6abc-493d-83d8-f822584fb3cb/en-US) Workshop Studio)
+ [Praktik Terbaik AWS Key Management Service](https://d1.awsstatic.com/whitepapers/aws-kms-best-practices.pdf) (AWS Whitepaper)
+ [Praktik terbaik keamanan untuk AWS Key Management Service](https://docs.aws.amazon.com/kms/latest/developerguide/best-practices.html) (Panduan Pengembang AWS KMS)

## Informasi tambahan
<a name="get-amazon-sns-notifications-when-the-key-state-of-an-aws-kms-key-changes-additional"></a>

Amazon SNS menyediakan enkripsi dalam transit secara default. Untuk menyelaraskan dengan praktik terbaik keamanan, Anda juga dapat mengaktifkan enkripsi sisi server untuk Amazon SNS dengan menggunakan kunci terkelola pelanggan AWS KMS.

# Pertahankan ruang IP yang dapat dirutekan dalam desain VPC multi-akun untuk subnet non-beban kerja
<a name="preserve-routable-ip-space-in-multi-account-vpc-designs-for-non-workload-subnets"></a>

*Adam Spicer, Amazon Web Services*

## Ringkasan
<a name="preserve-routable-ip-space-in-multi-account-vpc-designs-for-non-workload-subnets-summary"></a>

Amazon Web Services (AWS) telah menerbitkan praktik terbaik yang merekomendasikan penggunaan subnet khusus di cloud pribadi virtual (VPC) untuk lampiran [gateway transit dan [titik akhir Load Balancer](https://docs.aws.amazon.com/elasticloadbalancing/latest/gateway/getting-started.html) Gateway](https://docs.aws.amazon.com/vpc/latest/tgw/tgw-best-design-practices.html) (untuk mendukung AWS [Network Firewall](https://docs.aws.amazon.com/network-firewall/latest/developerguide/firewall-high-level-steps.html) atau peralatan pihak ketiga). Subnet ini digunakan untuk memuat antarmuka jaringan elastis untuk layanan ini. Jika Anda menggunakan AWS Transit Gateway dan Load Balancer Gateway, dua subnet dibuat di setiap Availability Zone untuk VPC. Karena VPCs caranya dirancang, subnet tambahan ini [tidak boleh lebih kecil dari mask/28 dan dapat](https://docs.aws.amazon.com/vpc/latest/userguide/configure-subnets.html#subnet-sizing) mengkonsumsi ruang IP routable yang berharga yang dapat digunakan untuk beban kerja yang dapat dirutekan. Pola ini menunjukkan bagaimana Anda dapat menggunakan rentang Classless Inter-Domain Routing (CIDR) sekunder yang tidak dapat dirutekan untuk subnet khusus ini untuk membantu mempertahankan ruang IP yang dapat dirutekan.

## Prasyarat dan batasan
<a name="preserve-routable-ip-space-in-multi-account-vpc-designs-for-non-workload-subnets-prereqs"></a>

**Prasyarat**
+ [Strategi multi-VPC](https://docs.aws.amazon.com/whitepapers/latest/building-scalable-secure-multi-vpc-network-infrastructure/welcome.html) untuk ruang IP yang dapat dirutekan
+ [Rentang CIDR yang tidak dapat dirutekan untuk layanan yang Anda gunakan ([lampiran gateway transit dan Load Balancer Gateway](https://docs.aws.amazon.com/vpc/latest/tgw/tgw-best-design-practices.html)[atau](https://aws.amazon.com/blogs/apn/centralized-traffic-inspection-with-gateway-load-balancer-on-aws/) titik akhir Network Firewall)](https://aws.amazon.com/blogs/networking-and-content-delivery/deployment-models-for-aws-network-firewall/)

## Arsitektur
<a name="preserve-routable-ip-space-in-multi-account-vpc-designs-for-non-workload-subnets-architecture"></a>

**Arsitektur target**

Pola ini mencakup dua arsitektur referensi: satu arsitektur memiliki subnet untuk lampiran transit gateway (TGW) dan titik akhir Gateway Load Balancer (GWLBe), dan arsitektur kedua hanya memiliki subnet untuk lampiran TGW.

**Arsitektur 1 - VPC terpasang TGW dengan perutean masuk ke alat**

Diagram berikut mewakili arsitektur referensi untuk VPC yang mencakup dua Availability Zones. [Saat masuk, VPC menggunakan pola [perutean ingress](https://aws.amazon.com/blogs/aws/new-vpc-ingress-routing-simplifying-integration-of-third-party-appliances/) untuk mengarahkan lalu lintas yang ditujukan untuk subnet publik ke alat untuk inspeksi firewall. bump-in-the-wire ](https://aws.amazon.com/blogs/networking-and-content-delivery/introducing-aws-gateway-load-balancer-supported-architecture-patterns/) Lampiran TGW mendukung jalan keluar dari subnet pribadi ke VPC terpisah.

Pola ini menggunakan rentang CIDR yang tidak dapat dirutekan untuk subnet lampiran TGW dan subnet. GWLBe Dalam tabel routing TGW, CIDR yang tidak dapat dirutekan ini dikonfigurasi dengan rute blackhole (statis) dengan menggunakan serangkaian rute yang lebih spesifik. Jika rute disebarkan ke tabel perutean TGW, rute lubang hitam yang lebih spesifik ini akan berlaku.

Dalam contoh ini, /23 routable CIDR dibagi dan sepenuhnya dialokasikan ke subnet routable.

![\[VPC terpasang TGW dengan perutean masuk ke alat.\]](http://docs.aws.amazon.com/id_id/prescriptive-guidance/latest/patterns/images/pattern-img/0171d91d-ab1e-41ca-a425-1e6e610080e1/images/adad1c83-cdc2-4c5e-aa35-f47fc31af384.png)


**Arsitektur 2 — VPC terlampir TGW**

Diagram berikut mewakili arsitektur referensi lain untuk VPC yang mencakup dua Availability Zones. Lampiran TGW mendukung lalu lintas keluar (jalan keluar) dari subnet pribadi ke VPC terpisah. Ini menggunakan rentang CIDR yang tidak dapat dirutekan hanya untuk subnet lampiran TGW. Dalam tabel routing TGW, CIDR yang tidak dapat dirutekan ini dikonfigurasi dengan rute blackhole dengan menggunakan serangkaian rute yang lebih spesifik. Jika rute disebarkan ke tabel perutean TGW, rute lubang hitam yang lebih spesifik ini akan berlaku.

Dalam contoh ini, /23 routable CIDR dibagi dan sepenuhnya dialokasikan ke subnet routable. 

![\[VPC mencakup 2 zona ketersediaan dengan lampiran TGW untuk keluar dari subnet pribadi ke VPC terpisah.\]](http://docs.aws.amazon.com/id_id/prescriptive-guidance/latest/patterns/images/pattern-img/0171d91d-ab1e-41ca-a425-1e6e610080e1/images/31a2a241-5be6-425e-93e9-5ff7ffeca3a9.png)


## Alat
<a name="preserve-routable-ip-space-in-multi-account-vpc-designs-for-non-workload-subnets-tools"></a>

**Layanan dan sumber daya AWS**
+ [Amazon Virtual Private Cloud (Amazon VPC)](https://docs.aws.amazon.com/vpc/latest/userguide/what-is-amazon-vpc.html) membantu Anda meluncurkan sumber daya AWS ke jaringan virtual yang telah Anda tentukan. Jaringan virtual ini menyerupai jaringan tradisional yang akan Anda operasikan di pusat data Anda sendiri, dengan manfaat menggunakan infrastruktur AWS yang dapat diskalakan. Dalam pola ini, VPC sekunder digunakan untuk mempertahankan ruang IP CIDRs yang dapat dirutekan dalam beban kerja. CIDRs
+ [Perutean masuknya gateway Internet](https://aws.amazon.com/blogs/aws/new-vpc-ingress-routing-simplifying-integration-of-third-party-appliances/) (asosiasi tepi) dapat digunakan bersama dengan titik akhir Gateway Load Balancer untuk subnet khusus yang tidak dapat dirutekan.
+ [AWS Transit Gateway](https://docs.aws.amazon.com/vpc/latest/tgw/what-is-transit-gateway.html) adalah hub pusat yang menghubungkan VPCs dan jaringan lokal. Dalam pola ini, terpasang VPCs secara terpusat ke gateway transit, dan lampiran gateway transit berada dalam subnet khusus yang tidak dapat dirutekan.
+ [Gateway Load Balancers](https://docs.aws.amazon.com/elasticloadbalancing/latest/gateway/introduction.html) membantu Anda menerapkan, menskalakan, dan mengelola peralatan virtual, seperti firewall, sistem deteksi dan pencegahan intrusi, dan sistem inspeksi paket mendalam. Gateway berfungsi sebagai titik masuk dan keluar tunggal untuk semua lalu lintas. Dalam pola ini, titik akhir untuk Load Balancer Gateway dapat digunakan dalam subnet khusus yang tidak dapat dirutekan.
+ [AWS Network Firewall adalah firewall jaringan](https://docs.aws.amazon.com/network-firewall/latest/developerguide/what-is-aws-network-firewall.html) yang stateful, dikelola, dan layanan deteksi dan pencegahan intrusi untuk AWS Cloud VPCs . Dalam pola ini, titik akhir untuk firewall dapat digunakan dalam subnet non-routable khusus.

**Repositori kode**

Runbook dan CloudFormation templat AWS untuk pola ini tersedia di repositori Pola [CIDR Sekunder GitHub Non-Routable](https://github.com/aws-samples/non-routable-secondary-vpc-cidr-patterns/). Anda dapat menggunakan file sampel untuk menyiapkan lab kerja di lingkungan Anda.

## Praktik terbaik
<a name="preserve-routable-ip-space-in-multi-account-vpc-designs-for-non-workload-subnets-best-practices"></a>

**AWS Transit Gateway**
+ Gunakan subnet terpisah untuk setiap lampiran VPC gateway transit.
+ Alokasikan subnet /28 dari rentang CIDR non-routable sekunder untuk subnet lampiran gateway transit.
+ Di setiap tabel routing gateway transit, tambahkan rute statis yang lebih spesifik untuk rentang CIDR yang tidak dapat dirutekan sebagai lubang hitam.

**Load Balancer Gateway dan perutean ingress**
+ Gunakan perutean ingress untuk mengarahkan lalu lintas dari internet ke titik akhir Load Balancer Gateway.
+ Gunakan subnet terpisah untuk setiap titik akhir Load Balancer Gateway.
+ Alokasikan subnet /28 dari rentang CIDR sekunder yang tidak dapat dirutekan untuk subnet titik akhir Gateway Load Balancer.

## Epik
<a name="preserve-routable-ip-space-in-multi-account-vpc-designs-for-non-workload-subnets-epics"></a>

### Buat VPCs
<a name="create-vpcs"></a>


| Tugas | Deskripsi | Keterampilan yang dibutuhkan | 
| --- | --- | --- | 
| Tentukan rentang CIDR yang tidak dapat dirutekan. | Tentukan rentang CIDR yang tidak dapat dirutekan yang akan digunakan untuk subnet lampiran gateway transit dan (opsional) untuk setiap subnet titik akhir Gateway Load Balancer atau Network Firewall. Rentang CIDR ini akan digunakan sebagai CIDR sekunder untuk VPC. Itu **tidak boleh dirutekan** dari rentang CIDR utama VPC atau jaringan yang lebih besar. | Arsitek awan | 
| Tentukan rentang CIDR yang dapat dirutekan untuk. VPCs | Tentukan satu set rentang CIDR yang dapat dirutekan yang akan digunakan untuk Anda. VPCs Rentang CIDR ini akan digunakan sebagai CIDR utama untuk Anda. VPCs | Arsitek awan | 
| Buat VPCs. | Buat Anda VPCs dan lampirkan ke gateway transit. Setiap VPC harus memiliki rentang CIDR primer yang dapat dirutekan dan rentang CIDR sekunder yang tidak dapat dirutekan, berdasarkan rentang yang Anda tentukan dalam dua langkah sebelumnya. | Arsitek awan | 

### Konfigurasikan rute lubang hitam Transit Gateway
<a name="configure-transit-gateway-blackhole-routes"></a>


| Tugas | Deskripsi | Keterampilan yang dibutuhkan | 
| --- | --- | --- | 
| Buat non-routable yang lebih spesifik CIDRs sebagai lubang hitam. | Setiap tabel routing gateway transit harus memiliki satu set rute blackhole yang dibuat untuk non-routable. CIDRs Ini dikonfigurasi untuk memastikan bahwa setiap lalu lintas dari CIDR VPC sekunder tetap tidak dapat dirutekan dan tidak bocor ke jaringan yang lebih besar. Rute ini harus lebih spesifik daripada CIDR yang tidak dapat dirutekan yang ditetapkan sebagai CIDR sekunder pada VPC. Misalnya, jika CIDR non-routable sekunder adalah 100.64.0.0/26, rute blackhole di tabel routing gateway transit harus 100.64.0.0/27 dan 100.64.0.32/27. | Arsitek awan | 

## Sumber daya terkait
<a name="preserve-routable-ip-space-in-multi-account-vpc-designs-for-non-workload-subnets-resources"></a>
+ [Praktik terbaik untuk men-deploy Penyeimbang Beban Gateway](https://aws.amazon.com/blogs/networking-and-content-delivery/best-practices-for-deploying-gateway-load-balancer/)
+ [Arsitektur Inspeksi Terdistribusi dengan Load Balancer Gateway](https://d1.awsstatic.com/architecture-diagrams/ArchitectureDiagrams/distributed-inspection-architectures-gwlb-ra.pdf?did=wp_card&trk=wp_card)
+ [Hari Perendaman Jaringan](https://catalog.workshops.aws/networking/en-US/gwlb/lab2-internettovpc) - [Internet ke Lab Firewall VPC](https://catalog.workshops.aws/networking/en-US/gwlb/lab2-internettovpc)
+ [Praktik terbaik desain gateway transit](https://docs.aws.amazon.com/vpc/latest/tgw/tgw-best-design-practices.html)

## Informasi tambahan
<a name="preserve-routable-ip-space-in-multi-account-vpc-designs-for-non-workload-subnets-additional"></a>

Rentang CIDR sekunder yang tidak dapat dirutekan juga dapat berguna saat bekerja dengan penerapan kontainer berskala lebih besar yang memerlukan sekumpulan besar alamat IP. Anda dapat menggunakan pola ini dengan Gateway NAT pribadi untuk menggunakan subnet yang tidak dapat dirutekan untuk meng-host penerapan kontainer Anda. Untuk informasi lebih lanjut, lihat posting blog [Cara mengatasi kelelahan IP Pribadi dengan Solusi NAT Pribadi](https://aws.amazon.com/blogs/networking-and-content-delivery/how-to-solve-private-ip-exhaustion-with-private-nat-solution/).

# Menyediakan produk Terraform AWS Service Catalog dengan menggunakan repositori kode
<a name="provision-a-terraform-product-in-aws-service-catalog-by-using-a-code-repository"></a>

*Dr. Rahul Sharad Gaikwad dan Tamilselvan P, Amazon Web Services*

## Ringkasan
<a name="provision-a-terraform-product-in-aws-service-catalog-by-using-a-code-repository-summary"></a>

AWS Service Catalog [mendukung penyediaan layanan mandiri dengan tata kelola untuk konfigurasi Terraform Anda. HashiCorp ](https://developer.hashicorp.com/terraform/tutorials/aws-get-started) Jika Anda menggunakan Terraform, Anda dapat menggunakan Service Catalog sebagai alat tunggal untuk mengatur, mengatur, dan mendistribusikan konfigurasi Terraform Anda dalam skala besar. AWS Anda dapat mengakses fitur utama Service Catalog, termasuk membuat katalog templat infrastruktur standar dan pra-persetujuan sebagai kode (IAc), kontrol akses, penyediaan sumber daya cloud dengan akses hak istimewa paling sedikit, pembuatan versi, berbagi hingga ribuan, dan penandaan. Akun AWS Pengguna akhir, seperti insinyur, administrator database, dan ilmuwan data, melihat daftar produk dan versi yang dapat mereka akses, dan mereka dapat menerapkannya melalui satu tindakan.

Pola ini membantu Anda menerapkan AWS sumber daya dengan menggunakan kode Terraform. Kode Terraform di GitHub repositori diakses melalui Service Catalog. Dengan menggunakan pendekatan ini, Anda mengintegrasikan produk dengan alur kerja Terraform yang ada. Administrator dapat membuat portofolio Service Catalog dan menambahkan AWS Launch Wizard produk ke dalamnya dengan menggunakan Terraform.

Berikut ini adalah manfaat dari solusi ini:
+ Karena fitur rollback di Service Catalog, jika terjadi masalah selama penerapan, Anda dapat mengembalikan produk ke versi sebelumnya.
+ Anda dapat dengan mudah mengidentifikasi perbedaan antara versi produk. Ini membantu Anda menyelesaikan masalah selama penerapan.
+ Anda dapat mengonfigurasi koneksi repositori di Service Catalog, seperti ke GitHub atau. GitLab Anda dapat membuat perubahan produk secara langsung melalui repositori.

Untuk informasi tentang manfaat keseluruhan AWS Service Catalog, lihat [Apa itu Service Catalog](https://docs.aws.amazon.com/servicecatalog/latest/adminguide/introduction.html).

## Prasyarat dan batasan
<a name="provision-a-terraform-product-in-aws-service-catalog-by-using-a-code-repository-prereqs"></a>

**Prasyarat**
+ Aktif Akun AWS.
+ A GitHub, BitBucket, atau repositori lain yang berisi file konfigurasi Terraform dalam format ZIP.
+ AWS Serverless Application Model [Antarmuka Baris Perintah (AWS SAM CLI), diinstal.](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/install-sam-cli.html)
+ AWS Command Line Interface (AWS CLI), [diinstal](https://docs.aws.amazon.com/cli/latest/userguide/getting-started-install.html) dan [dikonfigurasi](https://docs.aws.amazon.com/cli/latest/userguide/cli-chap-configure.html).
+ Pergi, [diinstal](https://go.dev/doc/install).
+ [Python versi 3.9, diinstal.](https://www.python.org/downloads/release/python-3913/) AWS SAM CLI membutuhkan versi Python ini.
+ Izin untuk menulis dan menjalankan AWS Lambda fungsi dan izin untuk mengakses dan mengelola produk dan portofolio Service Catalog.

## Arsitektur
<a name="provision-a-terraform-product-in-aws-service-catalog-by-using-a-code-repository-architecture"></a>

![\[Diagram arsitektur penyediaan produk Terraform di Service Catalog dari repo kode\]](http://docs.aws.amazon.com/id_id/prescriptive-guidance/latest/patterns/images/pattern-img/7d0d76e8-9485-4b3f-915f-481b6a7cdcd9/images/e83fa44a-4ca6-4438-a0d1-99f09a3541bb.png)


Diagram menunjukkan alur kerja berikut:

1. Saat konfigurasi Terraform siap, pengembang membuat file.zip yang berisi semua kode Terraform. Pengembang mengunggah file.zip ke dalam repositori kode yang terhubung ke Service Catalog.

1. Administrator mengaitkan produk Terraform ke portofolio di Service Catalog. Administrator juga membuat batasan peluncuran yang memungkinkan pengguna akhir untuk menyediakan produk.

1. Di Service Catalog, pengguna akhir meluncurkan AWS resource dengan menggunakan konfigurasi Terraform. Mereka dapat memilih versi produk mana yang akan digunakan.

## Alat
<a name="provision-a-terraform-product-in-aws-service-catalog-by-using-a-code-repository-tools"></a>

**Layanan AWS**
+ [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.
+ [AWS Service Catalog](https://docs.aws.amazon.com/servicecatalog/latest/adminguide/introduction.html)membantu Anda mengelola katalog layanan TI secara terpusat yang disetujui. AWS Pengguna akhir dapat dengan cepat men-deploy hanya layanan IT yang disetujui yang mereka butuhkan, mengikuti batasan yang ditetapkan oleh organisasi Anda.

**Layanan lainnya**
+ [Go](https://go.dev/doc/install) adalah bahasa pemrograman open source yang didukung Google.
+ [Python adalah bahasa](https://www.python.org/) pemrograman komputer tujuan umum.

**Repositori kode**

[Jika Anda memerlukan contoh konfigurasi Terraform yang dapat Anda terapkan melalui Service Catalog, Anda dapat menggunakan konfigurasi di Amazon Macie GitHub Organization Setup Menggunakan repositori Terraform.](https://github.com/aws-samples/aws-macie-customization-terraform-samples) Penggunaan sampel kode dalam repositori ini tidak diperlukan.

## Praktik terbaik
<a name="provision-a-terraform-product-in-aws-service-catalog-by-using-a-code-repository-best-practices"></a>
+ Alih-alih memberikan nilai untuk variabel dalam file konfigurasi Terraform (`terraform.tfvars`), konfigurasikan nilai variabel saat meluncurkan produk melalui Service Catalog.
+ Berikan akses ke portofolio hanya untuk pengguna atau administrator tertentu.
+ Ikuti prinsip hak istimewa terkecil dan berikan izin minimum yang diperlukan untuk melakukan tugas. Untuk informasi selengkapnya, lihat [Memberikan hak istimewa terkecil](https://docs.aws.amazon.com/IAM/latest/UserGuide/access_policies.html#grant-least-priv) dan [praktik terbaik Keamanan](https://docs.aws.amazon.com/IAM/latest/UserGuide/IAMBestPracticesAndUseCases.html) dalam dokumentasi AWS Identity and Access Management (IAM).

## Epik
<a name="provision-a-terraform-product-in-aws-service-catalog-by-using-a-code-repository-epics"></a>

### Siapkan workstation lokal Anda
<a name="set-up-your-local-workstation"></a>


| Tugas | Deskripsi | Keterampilan yang dibutuhkan | 
| --- | --- | --- | 
| (Opsional) Instal Docker. | Jika Anda ingin menjalankan AWS Lambda fungsi di lingkungan pengembangan Anda, instal Docker. Untuk petunjuk, lihat [Menginstal Docker Engine](https://docs.docker.com/engine/install/) di dokumentasi Docker. | DevOps insinyur | 
| Instal AWS Service Catalog Mesin untuk Terraform. | [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/id_id/prescriptive-guidance/latest/patterns/provision-a-terraform-product-in-aws-service-catalog-by-using-a-code-repository.html) | DevOps insinyur, administrator AWS | 

### Connect GitHub repositori
<a name="connect-the-github-repository"></a>


| Tugas | Deskripsi | Keterampilan yang dibutuhkan | 
| --- | --- | --- | 
| Buat koneksi ke GitHub repositori. | [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/id_id/prescriptive-guidance/latest/patterns/provision-a-terraform-product-in-aws-service-catalog-by-using-a-code-repository.html) | Administrator AWS | 

### Buat produk Terraform di Service Catalog
<a name="create-a-terraform-product-in-service-catalog"></a>


| Tugas | Deskripsi | Keterampilan yang dibutuhkan | 
| --- | --- | --- | 
| Buat produk Service Catalog. | [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/id_id/prescriptive-guidance/latest/patterns/provision-a-terraform-product-in-aws-service-catalog-by-using-a-code-repository.html) | Administrator AWS | 
| Buat portofolio. | [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/id_id/prescriptive-guidance/latest/patterns/provision-a-terraform-product-in-aws-service-catalog-by-using-a-code-repository.html) | Administrator AWS | 
| Tambahkan produk Terraform ke portofolio. | [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/id_id/prescriptive-guidance/latest/patterns/provision-a-terraform-product-in-aws-service-catalog-by-using-a-code-repository.html) | Administrator AWS | 
| Buat kebijakan akses. | [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/id_id/prescriptive-guidance/latest/patterns/provision-a-terraform-product-in-aws-service-catalog-by-using-a-code-repository.html) | Administrator AWS | 
| Buat kebijakan kepercayaan khusus. | [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/id_id/prescriptive-guidance/latest/patterns/provision-a-terraform-product-in-aws-service-catalog-by-using-a-code-repository.html) | Administrator AWS | 
| Tambahkan batasan peluncuran ke produk Service Catalog. | [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/id_id/prescriptive-guidance/latest/patterns/provision-a-terraform-product-in-aws-service-catalog-by-using-a-code-repository.html) | Administrator AWS | 
| Berikan akses ke produk. | [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/id_id/prescriptive-guidance/latest/patterns/provision-a-terraform-product-in-aws-service-catalog-by-using-a-code-repository.html) | Administrator AWS | 
| Luncurkan produk. | [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/id_id/prescriptive-guidance/latest/patterns/provision-a-terraform-product-in-aws-service-catalog-by-using-a-code-repository.html) | DevOps insinyur | 

### Verifikasi penyebaran
<a name="verify-the-deployment"></a>


| Tugas | Deskripsi | Keterampilan yang dibutuhkan | 
| --- | --- | --- | 
| Validasi penerapan. | Ada dua mesin AWS Step Functions status untuk alur kerja penyediaan Service Catalog:[\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/id_id/prescriptive-guidance/latest/patterns/provision-a-terraform-product-in-aws-service-catalog-by-using-a-code-repository.html)Anda memeriksa log untuk mesin `ManageProvisionedProductStateMachine` status untuk mengonfirmasi bahwa produk telah disediakan.[\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/id_id/prescriptive-guidance/latest/patterns/provision-a-terraform-product-in-aws-service-catalog-by-using-a-code-repository.html) | DevOps insinyur | 

### Membersihkan infrastruktur
<a name="clean-up-infrastructure"></a>


| Tugas | Deskripsi | Keterampilan yang dibutuhkan | 
| --- | --- | --- | 
| Hapus produk yang disediakan. | [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/id_id/prescriptive-guidance/latest/patterns/provision-a-terraform-product-in-aws-service-catalog-by-using-a-code-repository.html) | DevOps insinyur | 
| Lepaskan AWS Service Catalog Mesin untuk Terraform. | [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/id_id/prescriptive-guidance/latest/patterns/provision-a-terraform-product-in-aws-service-catalog-by-using-a-code-repository.html) | Administrator AWS | 

## Sumber daya terkait
<a name="provision-a-terraform-product-in-aws-service-catalog-by-using-a-code-repository-resources"></a>

**AWS dokumentasi**
+ [Memulai dengan produk Terraform](https://docs.aws.amazon.com/servicecatalog/latest/adminguide/getstarted-Terraform.html)

**Dokumentasi Terraform**
+ [Instalasi Terraform](https://learn.hashicorp.com/tutorials/terraform/install-cli)
+ [Konfigurasi backend Terraform](https://developer.hashicorp.com/terraform/language/backend)
+ [Dokumentasi Penyedia Terraform AWS](https://registry.terraform.io/providers/hashicorp/aws/latest/docs)

## Informasi tambahan
<a name="provision-a-terraform-product-in-aws-service-catalog-by-using-a-code-repository-additional"></a>

**Kebijakan akses**

```
{
    "Version": "2012-10-17",		 	 	 
    "Statement": [
        {
            "Sid": "VisualEditor0",
            "Effect": "Allow",
            "Action": "s3:GetObject",
            "Resource": "*",
            "Condition": {
                "StringEquals": {
                    "s3:ExistingObjectTag/servicecatalog:provisioning": "true"
                }
            }
        },
        {
            "Action": [
                "s3:CreateBucket*",
                "s3:DeleteBucket*",
                "s3:Get*",
                "s3:List*",
                "s3:PutBucketTagging"
            ],
            "Resource": "arn:aws:s3:::*",
            "Effect": "Allow"
        },
        {
            "Action": [
                "resource-groups:CreateGroup",
                "resource-groups:ListGroupResources",
                "resource-groups:DeleteGroup",
                "resource-groups:Tag"
            ],
            "Resource": "*",
            "Effect": "Allow"
        },
        {
            "Action": [
                "tag:GetResources",
                "tag:GetTagKeys",
                "tag:GetTagValues",
                "tag:TagResources",
                "tag:UntagResources"
            ],
            "Resource": "*",
            "Effect": "Allow"
        }
    ]
}
```

**Kebijakan kepercayaan**

```
{
    "Version": "2012-10-17",		 	 	 
    "Statement": [
        {
            "Sid": "GivePermissionsToServiceCatalog",
            "Effect": "Allow",
            "Principal": {
                "Service": "servicecatalog.amazonaws.com"
            },
            "Action": "sts:AssumeRole"
        },
        {
            "Effect": "Allow",
            "Principal": {
                "AWS": "arn:aws:iam::account_id:root"
            },
            "Action": "sts:AssumeRole",
            "Condition": {
                "StringLike": {
                    "aws:PrincipalArn": [
                        "arn:aws:iam::accounti_id:role/TerraformEngine/TerraformExecutionRole*",
                        "arn:aws:iam::accounti_id:role/TerraformEngine/ServiceCatalogExternalParameterParserRole*",
                        "arn:aws:iam::accounti_id:role/TerraformEngine/ServiceCatalogTerraformOSParameterParserRole*"
                    ]
                }
            }
        }
    ]
}
```

# Daftarkan beberapa Akun AWS dengan satu alamat email dengan menggunakan Amazon SES
<a name="register-multiple-aws-accounts-with-a-single-email-address-by-using-amazon-ses"></a>

*Joe Wozniak dan Shubhangi Vishwakarma, Amazon Web Services*

## Ringkasan
<a name="register-multiple-aws-accounts-with-a-single-email-address-by-using-amazon-ses-summary"></a>

Pola ini menjelaskan bagaimana Anda dapat memisahkan alamat email asli dari alamat email yang terkait dengan alamat email. Akun AWS Akun AWS memerlukan alamat email unik yang akan diberikan pada saat pembuatan akun. Di beberapa organisasi, tim yang mengelola Akun AWS harus menanggung beban mengelola banyak alamat email unik dengan tim pesan mereka. Ini bisa sulit bagi organisasi besar yang mengelola banyak orang Akun AWS. Selain itu, jika sistem email Anda tidak mengizinkan *pengalamatan plus* atau *sub-alamat* seperti yang didefinisikan dalam [Penyaringan Email Saringan: Ekstensi Subaddress (RFC 5233)](https://datatracker.ietf.org/doc/html/rfc5233) —dengan menambahkan tanda plus (\$1) dan pengenal di akhir bagian lokal alamat email, seperti —pola ini dapat membantu mengatasi batasan ini. `admin+123456789123@example.com`

Pola ini memberikan solusi penjual alamat email unik yang memungkinkan Akun AWS pemilik untuk mengaitkan satu alamat email dengan beberapa Akun AWS alamat. Alamat email sebenarnya dari Akun AWS pemilik kemudian dikaitkan dengan alamat email yang dihasilkan ini dalam sebuah tabel. Solusi ini menangani semua email masuk untuk akun email unik, mencari pemilik setiap akun, dan kemudian meneruskan pesan yang diterima ke pemilik.  

## Prasyarat dan batasan
<a name="register-multiple-aws-accounts-with-a-single-email-address-by-using-amazon-ses-prereqs"></a>

**Prasyarat**
+ Akses administratif ke sebuah Akun AWS.
+ Akses ke lingkungan pengembangan. 
+ (Opsional) Keakraban dengan AWS Cloud Development Kit (AWS CDK) alur kerja dan bahasa pemrograman Python akan membantu Anda memecahkan masalah atau membuat modifikasi.

**Batasan**
+ Panjang alamat email yang dijual secara keseluruhan 64 karakter. Untuk detailnya, lihat [CreateAccount](https://docs.aws.amazon.com/organizations/latest/APIReference/API_CreateAccount.html)di *referensi AWS Organizations API*.

**Versi produk**
+ Node.js versi 22.x atau yang lebih baru
+ Python 3.13 atau yang lebih baru
+ **Paket Python **pip** dan virtualenv**
+ AWS CDK CLI versi 2.1019.2 atau yang lebih baru
+ Docker 20.10.x atau yang lebih baru

## Arsitektur
<a name="register-multiple-aws-accounts-with-a-single-email-address-by-using-amazon-ses-architecture"></a>

**Tumpukan teknologi target**
+ CloudFormation tumpukan
+ AWS Lambda fungsi
+ Aturan dan aturan Amazon Simple Email Service (Amazon SES) dan aturan
+ AWS Identity and Access Management (IAM) peran dan kebijakan
+ Kebijakan bucket dan bucket Amazon Simple Storage Service (Amazon S3)
+ AWS Key Management Service (AWS KMS) kebijakan kunci dan kunci
+ Kebijakan topik dan topik Amazon Simple Notification Service (Amazon SNS)
+ Tabel Amazon DynamoDB 

**Arsitektur target**

![\[Arsitektur target untuk mendaftarkan beberapa akun AWS dengan satu alamat email\]](http://docs.aws.amazon.com/id_id/prescriptive-guidance/latest/patterns/images/pattern-img/1be85b92-69e5-43b2-aeed-27b9509e145e/images/c7ae9d7a-d4e0-412e-97cb-0f3073e012e7.png)


Diagram ini menunjukkan dua aliran:
+ **Alur penjual alamat email:** Dalam diagram, alur penjual alamat email (bagian bawah) biasanya dimulai dengan solusi penjual akun atau otomatisasi luar, atau dipanggil secara manual. Dalam permintaan, fungsi Lambda dipanggil dengan payload yang berisi metadata yang dibutuhkan. Fungsi ini menggunakan informasi ini untuk menghasilkan nama akun dan alamat email yang unik, menyimpannya dalam database DynamoDB, dan mengembalikan nilai ke pemanggil. Nilai-nilai ini kemudian dapat digunakan untuk membuat baru Akun AWS (biasanya dengan menggunakan AWS Organizations).
+ **Alur penerusan email:** Alur ini diilustrasikan di bagian atas diagram sebelumnya. Ketika Akun AWS dibuat dengan menggunakan email akun yang dihasilkan dari alur penjual alamat email, AWS mengirim berbagai email, seperti konfirmasi pendaftaran akun dan pemberitahuan berkala, ke alamat email tersebut. Dengan mengikuti langkah-langkah dalam pola ini, Anda mengonfigurasi Anda Akun AWS dengan Amazon SES untuk menerima email untuk seluruh domain. Solusi ini mengonfigurasi aturan penerusan yang memungkinkan Lambda memproses semua email yang masuk, periksa untuk melihat apakah alamatnya `TO` ada di tabel DynamoDB, dan meneruskan pesan ke alamat email pemilik akun sebagai gantinya. Menggunakan proses ini memberi pemilik akun kemampuan untuk mengaitkan beberapa akun dengan satu alamat email.

**Otomatisasi dan skala**

Pola ini menggunakan AWS CDK untuk sepenuhnya mengotomatiskan penerapan. Solusinya menggunakan layanan AWS terkelola yang akan (atau dapat dikonfigurasi untuk) menskalakan secara otomatis untuk memenuhi kebutuhan Anda. Fungsi Lambda mungkin memerlukan konfigurasi tambahan untuk memenuhi kebutuhan penskalaan Anda. Untuk informasi selengkapnya, lihat [Memahami penskalaan fungsi Lambda](https://docs.aws.amazon.com/lambda/latest/dg/invocation-scaling.html) dalam dokumentasi Lambda.

## Alat
<a name="register-multiple-aws-accounts-with-a-single-email-address-by-using-amazon-ses-tools"></a>

**Layanan AWS**
+ [CloudFormation](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/Welcome.html)membantu Anda menyiapkan AWS sumber daya, menyediakannya dengan cepat dan konsisten, dan mengelolanya sepanjang siklus hidupnya di seluruh Akun AWS dan Wilayah.
+ [AWS Command Line Interface (AWS CLI)](https://docs.aws.amazon.com/cli/latest/userguide/cli-chap-welcome.html) adalah alat sumber terbuka yang membantu Anda berinteraksi dengan layanan AWS melalui perintah di shell baris perintah Anda.
+ [Amazon DynamoDB](https://docs.aws.amazon.com/amazondynamodb/latest/developerguide/Introduction.html) adalah layanan database NoSQL yang dikelola sepenuhnya yang menyediakan kinerja yang cepat, dapat diprediksi, dan terukur.
+ [AWS Identity and Access Management (IAM)](https://docs.aws.amazon.com/IAM/latest/UserGuide/introduction.html) membantu Anda mengelola akses ke AWS sumber daya dengan aman dengan mengontrol siapa yang diautentikasi dan diberi wewenang untuk menggunakannya.
+ [AWS Key Management Service (AWS KMS)](https://docs.aws.amazon.com/kms/latest/developerguide/overview.html) membantu Anda membuat dan mengontrol kunci kriptografi untuk membantu melindungi data Anda.
+ [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 Simple Email Service (Amazon SES)](https://docs.aws.amazon.com/ses/latest/dg/Welcome.html) membantu Anda mengirim dan menerima email dengan menggunakan alamat email dan domain Anda sendiri.
+ [Amazon Simple Notification Service (Amazon SNS](https://docs.aws.amazon.com/sns/latest/dg/welcome.html)) membantu Anda mengoordinasikan dan mengelola pertukaran pesan antara penayang dan klien, termasuk server web dan alamat email.
+ [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.

**Alat yang dibutuhkan untuk penyebaran**
+ Lingkungan pengembangan dengan AWS CLI dan akses IAM ke Anda Akun AWS. Untuk detailnya, lihat tautan di bagian [Sumber daya terkait](#register-multiple-aws-accounts-with-a-single-email-address-by-using-amazon-ses-resources).  
+ Pada sistem pengembangan Anda, instal yang berikut ini:
  + Alat baris perintah Git, tersedia dari [situs unduhan Git](https://git-scm.com/downloads).
  +  AWS CLI Untuk mengkonfigurasi kredenal akses untuk file. AWS CDK Lihat informasi yang lebih lengkap dalam [dokumentasi AWS CLI](https://docs.aws.amazon.com/cli/latest/userguide/cli-chap-getting-started.html).
  + [Python versi 3.13 atau yang lebih baru, tersedia dari situs web unduhan Python.](https://www.python.org/downloads/)
  + UV untuk manajemen paket Python. Untuk petunjuk pemasangan, lihat [panduan pemasangan UV](https://docs.astral.sh/uv/getting-started/installation/).
  + Node.js versi 22.x atau yang lebih baru. Untuk petunjuk penginstalan, lihat [dokumentasi Node.js](https://nodejs.org/en/learn/getting-started/how-to-install-nodejs).
  + AWS CDK CLI versi 2.1019.2 atau yang lebih baru. Untuk petunjuk instalasi, lihat [AWS CDK dokumentasi](https://docs.aws.amazon.com/cdk/v2/guide/getting-started.html#getting-started-install).
  + Docker versi 20.10.x atau yang lebih baru. Untuk petunjuk penginstalan, lihat [dokumentasi Docker](https://docs.docker.com/engine/install/).

**Kode**

Kode untuk pola ini tersedia di repositori [email GitHub Akun AWS pabrik](https://github.com/aws-samples/aws-account-factory-email).

## Epik
<a name="register-multiple-aws-accounts-with-a-single-email-address-by-using-amazon-ses-epics"></a>

### Mengalokasikan lingkungan penyebaran target
<a name="allocate-a-target-deployment-environment"></a>


| Tugas | Deskripsi | Keterampilan yang dibutuhkan | 
| --- | --- | --- | 
| Identifikasi atau buat Akun AWS. | Identifikasi yang sudah ada atau baru Akun AWS di mana Anda memiliki akses administratif penuh, untuk menyebarkan solusi email. | Administrator AWS, Administrator cloud | 
| Siapkan lingkungan penerapan. | Konfigurasikan lingkungan penerapan yang mudah digunakan dan atur dependensi dengan mengikuti langkah-langkah berikut:[\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/id_id/prescriptive-guidance/latest/patterns/register-multiple-aws-accounts-with-a-single-email-address-by-using-amazon-ses.html) | AWS DevOps, Pengembang aplikasi | 

### Siapkan domain terverifikasi
<a name="set-up-a-verified-domain"></a>


| Tugas | Deskripsi | Keterampilan yang dibutuhkan | 
| --- | --- | --- | 
| Mengidentifikasi dan mengalokasikan domain. | Fungsionalitas penerusan email membutuhkan domain khusus. Identifikasi dan alokasikan domain atau subdomain yang dapat Anda verifikasi dengan Amazon SES. Domain ini harus tersedia untuk menerima email masuk di Akun AWS tempat solusi penerusan email digunakan.Persyaratan domain:[\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/id_id/prescriptive-guidance/latest/patterns/register-multiple-aws-accounts-with-a-single-email-address-by-using-amazon-ses.html) | Administrator cloud, Administrator jaringan, administrator DNS | 
| Verifikasi domain. | Verifikasi bahwa domain yang diidentifikasi dapat digunakan untuk menerima email masuk.Lengkapi petunjuk di [Memverifikasi domain Anda untuk penerimaan email Amazon SES](https://docs.aws.amazon.com/ses/latest/dg/receiving-email-verification.html) di dokumentasi Amazon SES. Ini akan membutuhkan koordinasi dengan orang atau tim yang bertanggung jawab atas catatan DNS domain. | Pengembang aplikasi, AWS DevOps | 
| Siapkan catatan MX. | Siapkan domain Anda dengan data MX yang mengarah ke titik akhir Amazon SES di Wilayah Akun AWS dan Anda. Untuk informasi selengkapnya, lihat [Menerbitkan data MX untuk penerimaan email Amazon SES](https://docs.aws.amazon.com/ses/latest/dg/receiving-email-mx-record.html) di dokumentasi Amazon SES. | Administrator cloud, Administrator jaringan, administrator DNS | 

### Menyebarkan solusi penjual otomatis dan penerusan email
<a name="deploy-the-email-vending-and-forwarding-solution"></a>


| Tugas | Deskripsi | Keterampilan yang dibutuhkan | 
| --- | --- | --- | 
| Ubah nilai default di`cdk.json`. | Edit beberapa nilai default dalam `cdk.json` file (di root repositori) sehingga solusi akan beroperasi dengan benar setelah digunakan.[\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/id_id/prescriptive-guidance/latest/patterns/register-multiple-aws-accounts-with-a-single-email-address-by-using-amazon-ses.html) | Pengembang aplikasi, AWS DevOps | 
| Menyebarkan solusi penjual dan penerusan email. | [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/id_id/prescriptive-guidance/latest/patterns/register-multiple-aws-accounts-with-a-single-email-address-by-using-amazon-ses.html) | Pengembang aplikasi, AWS DevOps | 
| Verifikasi bahwa solusi telah diterapkan. | Verifikasi bahwa solusi berhasil diterapkan sebelum Anda mulai menguji:[\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/id_id/prescriptive-guidance/latest/patterns/register-multiple-aws-accounts-with-a-single-email-address-by-using-amazon-ses.html) | Pengembang aplikasi, AWS DevOps | 

### Verifikasi bahwa penjual dan penerusan email beroperasi seperti yang diharapkan
<a name="verify-that-email-vending-and-forwarding-operate-as-expected"></a>


| Tugas | Deskripsi | Keterampilan yang dibutuhkan | 
| --- | --- | --- | 
| Verifikasi bahwa API berfungsi. | Pada langkah ini, Anda mengirimkan data pengujian ke API solusi dan mengonfirmasi bahwa solusi menghasilkan output yang diharapkan dan operasi backend telah dilakukan seperti yang diharapkan.Jalankan fungsi **Vend Email** Lambda secara manual dengan menggunakan input pengujian. (Sebagai contoh, lihat file [sample\$1vend\$1request.json](https://github.com/aws-samples/aws-account-factory-email/blob/main/src/events/sample_vend_request.json).) Untuk`OwnerAddress`, gunakan alamat email yang valid. API harus mengembalikan nama akun dan email akun dengan nilai seperti yang diharapkan. | Pengembang aplikasi, AWS DevOps | 
| Verifikasi bahwa email sedang diteruskan. | Pada langkah ini, Anda mengirim email pengujian melalui sistem dan memverifikasi bahwa email diteruskan ke penerima yang diharapkan.[\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/id_id/prescriptive-guidance/latest/patterns/register-multiple-aws-accounts-with-a-single-email-address-by-using-amazon-ses.html) | Pengembang aplikasi, AWS DevOps | 

## Pemecahan masalah
<a name="register-multiple-aws-accounts-with-a-single-email-address-by-using-amazon-ses-troubleshooting"></a>


| Isu | Solusi | 
| --- | --- | 
| Sistem tidak meneruskan email seperti yang diharapkan. | Verifikasi bahwa pengaturan Anda sudah benar:[\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/id_id/prescriptive-guidance/latest/patterns/register-multiple-aws-accounts-with-a-single-email-address-by-using-amazon-ses.html)Setelah memverifikasi pengaturan domain, ikuti langkah-langkah berikut:[\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/id_id/prescriptive-guidance/latest/patterns/register-multiple-aws-accounts-with-a-single-email-address-by-using-amazon-ses.html) | 
| Saat Anda mencoba menerapkan AWS CDK tumpukan, Anda menerima kesalahan yang mirip dengan:“Kesalahan format templat: Jenis sumber daya yang tidak dikenal”  | Dalam kebanyakan kasus, pesan kesalahan ini berarti bahwa Wilayah yang Anda targetkan tidak memiliki semua layanan AWS yang tersedia. Jika Anda menggunakan EC2 instans Amazon untuk menerapkan solusi, Anda mungkin menargetkan Wilayah yang berbeda dari Wilayah tempat instance berjalan.Secara default, AWS CDK penyebaran ke Wilayah dan akun yang Anda konfigurasikan di. AWS CLISolusi yang mungkin:[\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/id_id/prescriptive-guidance/latest/patterns/register-multiple-aws-accounts-with-a-single-email-address-by-using-amazon-ses.html) | 
| Saat Anda menerapkan solusi, Anda menerima pesan galat:“Penerapan gagal: Kesalahan:: Parameter SSM bootstrap/hnb659fds/version /cdk- tidak ditemukan. AwsMailFwdStack Apakah lingkungan telah di-bootstrap? Silakan jalankan 'cdk bootstrap'” | Jika Anda belum pernah menerapkan AWS CDK sumber daya apa pun ke Akun AWS dan Wilayah yang Anda targetkan, Anda harus terlebih dahulu menjalankan `cdk bootstrap` perintah seperti yang ditunjukkan oleh kesalahan. Jika Anda terus menerima kesalahan ini setelah menjalankan perintah bootstrap, Anda mungkin mencoba menerapkan solusi ke Wilayah yang berbeda dari Wilayah tempat lingkungan pengembangan Anda berjalan.Untuk mengatasi masalah ini, atur variabel `AWS_DEFAULT_REGION` lingkungan atau atur Region dengan AWS CLI sebelum Anda menerapkan solusi. [Atau, Anda dapat memodifikasi `app.py` file di root repositori untuk menyertakan ID akun dan Wilayah dengan kode keras dengan mengikuti instruksi dalam dokumentasi untuk lingkungan.AWS CDK](https://docs.aws.amazon.com/cdk/v2/guide/environments.html) | 

## Sumber daya terkait
<a name="register-multiple-aws-accounts-with-a-single-email-address-by-using-amazon-ses-resources"></a>
+ Untuk bantuan menginstal AWS CLI, lihat [Menginstal atau memperbarui ke versi terbaru AWS CLI](https://docs.aws.amazon.com/cli/latest/userguide/install-cliv2.html).
+ Untuk bantuan menyiapkan kredensil akses IAM AWS CLI dengan IAM, lihat [Mengonfigurasi](https://docs.aws.amazon.com/cli/latest/userguide/cli-chap-configure.html) setelan untuk. AWS CLI
+ Untuk bantuan dengan AWS CDK, lihat [Memulai dengan AWS CDK](https://docs.aws.amazon.com/cdk/latest/guide/getting_started.html#getting_started_install). 

## Informasi tambahan
<a name="register-multiple-aws-accounts-with-a-single-email-address-by-using-amazon-ses-additional"></a>

**Biaya**

Ketika Anda menerapkan solusi ini, Akun AWS pemegang mungkin dikenakan biaya yang terkait dengan penggunaan layanan berikut.  Penting bagi Anda untuk memahami bagaimana layanan ini ditagih sehingga Anda mengetahui adanya potensi biaya. Untuk informasi harga, lihat halaman berikut:
+ [Harga Amazon SES](https://aws.amazon.com/ses/pricing/)
+ [Harga Amazon S3](https://aws.amazon.com/s3/pricing/)
+ [AWS KMS harga](https://aws.amazon.com/kms/pricing/)
+ [AWS Lambda harga](https://aws.amazon.com/lambda/pricing/)
+ [Harga Amazon DynamoDB](https://aws.amazon.com/dynamodb/pricing/)

# Menyiapkan resolusi DNS untuk jaringan hybrid di lingkungan AWS akun tunggal
<a name="set-up-dns-resolution-for-hybrid-networks-in-a-single-account-aws-environment"></a>

*Abdullahi Olaoye, Amazon Web Services*

## Ringkasan
<a name="set-up-dns-resolution-for-hybrid-networks-in-a-single-account-aws-environment-summary"></a>

Pola ini menjelaskan cara menyiapkan arsitektur Sistem Nama Domain (DNS) hybrid sepenuhnya yang memungkinkan resolusi end-to-end DNS dari sumber daya lokal, sumber daya AWS, dan kueri DNS internet, tanpa overhead administratif. Pola ini menjelaskan cara mengatur aturan penerusan Amazon Route 53 Resolver yang menentukan di mana kueri DNS yang berasal dari AWS harus dikirim, berdasarkan nama domain. Kueri DNS untuk sumber daya lokal diteruskan ke resolver DNS lokal. Kueri DNS untuk sumber daya AWS dan kueri DNS internet diselesaikan oleh Route 53 Resolver.

Pola ini mencakup resolusi DNS hybrid dalam lingkungan akun tunggal AWS. Untuk informasi tentang menyiapkan kueri DNS keluar di lingkungan multi-akun AWS, lihat pola [Menyiapkan resolusi DNS untuk jaringan hybrid di](https://docs.aws.amazon.com/prescriptive-guidance/latest/patterns/set-up-dns-resolution-for-hybrid-networks-in-a-multi-account-aws-environment.html) lingkungan AWS multi-akun.

## Prasyarat dan batasan
<a name="set-up-dns-resolution-for-hybrid-networks-in-a-single-account-aws-environment-prereqs"></a>

**Prasyarat**
+ Akun AWS
+ Virtual Private Cloud (VPC) di akun AWS
+ Koneksi jaringan antara lingkungan lokal dan VPC Anda, melalui AWS Virtual Private Network (AWS VPN) atau AWS Direct Connect
+ Alamat IP resolver DNS lokal Anda (dapat dijangkau dari VPC Anda)
+ Nama domain/subdomain untuk diteruskan ke resolver lokal (misalnya, onprem.mydc.com)
+ Nama domain/subdomain untuk zona host pribadi AWS (misalnya, myvpc.cloud.com)

## Arsitektur
<a name="set-up-dns-resolution-for-hybrid-networks-in-a-single-account-aws-environment-architecture"></a>

**Tumpukan teknologi target**
+ Amazon Route 53 zona yang dihosting pribadi
+ Amazon Route 53 Resolver
+ Amazon VPC
+ AWS VPN atau Direct Connect

**Arsitektur target**

![\[Alur kerja resolusi DNS Hybrid dalam lingkungan akun tunggal AWS menggunakan Route 53 Resolver.\]](http://docs.aws.amazon.com/id_id/prescriptive-guidance/latest/patterns/images/pattern-img/120dedc8-cc6c-4aa7-be11-c70a7ee80642/images/7b75f534-1adc-4a39-86d6-5c4596ff7b6a.png)


 

## Alat
<a name="set-up-dns-resolution-for-hybrid-networks-in-a-single-account-aws-environment-tools"></a>
+ [Amazon Route 53 Resolver](https://docs.aws.amazon.com/Route53/latest/DeveloperGuide/resolver-getting-started.html) membuat cloud hybrid lebih mudah bagi pelanggan perusahaan dengan memungkinkan resolusi kueri DNS yang mulus di seluruh cloud hybrid Anda. Anda dapat membuat titik akhir DNS dan aturan penerusan bersyarat untuk menyelesaikan ruang nama DNS antara pusat data lokal dan pusat data Anda. VPCs
+ [Amazon Route 53 private hosted zone](https://docs.aws.amazon.com/Route53/latest/DeveloperGuide/hosted-zones-private.html) adalah wadah yang menyimpan informasi tentang bagaimana Anda ingin Route 53 menanggapi kueri DNS untuk domain dan subdomainnya dalam satu atau lebih VPCs yang Anda buat dengan layanan Amazon VPC.

## Epik
<a name="set-up-dns-resolution-for-hybrid-networks-in-a-single-account-aws-environment-epics"></a>

### Konfigurasikan zona yang dihosting pribadi
<a name="configure-a-private-hosted-zone"></a>


| Tugas | Deskripsi | Keterampilan yang dibutuhkan | 
| --- | --- | --- | 
| Buat zona host pribadi Route 53 untuk nama domain yang dicadangkan AWS seperti myvpc.cloud.com. | Zona ini menyimpan catatan DNS untuk sumber daya AWS yang harus diselesaikan dari lingkungan lokal. Untuk petunjuknya, lihat [Membuat zona host pribadi](https://docs.aws.amazon.com/Route53/latest/DeveloperGuide/hosted-zone-private-creating.html) di dokumentasi Route 53. | Admin jaringan, Admin sistem | 
| Kaitkan zona host pribadi dengan VPC Anda. | Untuk mengaktifkan sumber daya di VPC Anda untuk menyelesaikan catatan DNS di zona host pribadi ini, Anda harus mengaitkan VPC Anda dengan zona yang dihosting. Untuk petunjuknya, lihat [Membuat zona host pribadi](https://docs.aws.amazon.com/Route53/latest/DeveloperGuide/hosted-zone-private-creating.html) di dokumentasi Route 53. | Admin jaringan, Admin sistem | 

### Siapkan titik akhir Route 53 Resolver
<a name="set-up-route-53-resolver-endpoints"></a>


| Tugas | Deskripsi | Keterampilan yang dibutuhkan | 
| --- | --- | --- | 
| Buat titik akhir masuk. | Route 53 Resolver menggunakan titik akhir masuk untuk menerima kueri DNS dari resolver DNS lokal. Untuk petunjuk, lihat [Meneruskan kueri DNS masuk ke](https://docs.aws.amazon.com/Route53/latest/DeveloperGuide/resolver-forwarding-inbound-queries.html) dokumentasi VPCs Route 53 Anda. Catat alamat IP titik akhir masuk. | Admin jaringan, Admin sistem | 
| Buat titik akhir keluar. | Route 53 Resolver menggunakan titik akhir keluar untuk mengirim kueri DNS ke resolver DNS lokal. Untuk petunjuk, lihat [Meneruskan kueri DNS keluar ke jaringan Anda di dokumentasi Route 53](https://docs.aws.amazon.com/Route53/latest/DeveloperGuide/resolver-forwarding-outbound-queries.html). Catat ID titik akhir keluaran. | Admin jaringan, Admin sistem | 

### Siapkan aturan penerusan dan kaitkan dengan VPC Anda
<a name="set-up-a-forwarding-rule-and-associate-it-with-your-vpc"></a>


| Tugas | Deskripsi | Keterampilan yang dibutuhkan | 
| --- | --- | --- | 
| Buat aturan penerusan untuk domain lokal. | Aturan ini akan menginstruksikan Route 53 Resolver untuk meneruskan kueri DNS apa pun untuk domain lokal (seperti onprem.mydc.com) ke resolver DNS lokal. Untuk membuat aturan ini, Anda memerlukan alamat IP dari resolver DNS lokal dan ID titik akhir keluar untuk Route 53 Resolver. Untuk petunjuk, lihat [Mengelola aturan penerusan dalam dokumentasi](https://docs.aws.amazon.com/Route53/latest/DeveloperGuide/resolver-rules-managing.html) Route 53. | Admin jaringan, Admin sistem | 
| Kaitkan aturan penerusan dengan VPC Anda. | Agar aturan penerusan berlaku, Anda harus mengaitkan aturan tersebut dengan VPC Anda. Route 53 Resolver kemudian mempertimbangkan aturan saat menyelesaikan domain. Untuk petunjuk, lihat [Mengelola aturan penerusan dalam dokumentasi](https://docs.aws.amazon.com/Route53/latest/DeveloperGuide/resolver-rules-managing.html) Route 53. | Admin jaringan, Admin sistem | 

### Konfigurasikan resolver DNS lokal
<a name="configure-on-premises-dns-resolvers"></a>


| Tugas | Deskripsi | Keterampilan yang dibutuhkan | 
| --- | --- | --- | 
| Konfigurasikan penerusan bersyarat di resolver DNS on-premise.  | Agar kueri DNS dikirim ke zona host pribadi Route 53 dari lingkungan lokal, Anda harus mengonfigurasi penerusan bersyarat di resolver DNS lokal. Ini menginstruksikan resolver DNS untuk meneruskan semua kueri DNS untuk domain AWS (misalnya, untuk myvpc.cloud.com) ke alamat IP titik akhir masuk untuk Route 53 Resolver. | Admin jaringan, Admin sistem | 

### Uji end-to-end resolusi DNS
<a name="test-end-to-end-dns-resolution"></a>


| Tugas | Deskripsi | Keterampilan yang dibutuhkan | 
| --- | --- | --- | 
| Uji resolusi DNS dari AWS ke lingkungan lokal. | Dari server di VPC, lakukan kueri DNS untuk domain lokal (seperti server1.onprem.mydc.com). | Admin jaringan, Admin sistem | 
| Uji resolusi DNS dari lingkungan lokal ke AWS. | Dari server lokal, lakukan resolusi DNS untuk domain AWS (seperti server1.myvpc.cloud.com). | Admin jaringan, Admin sistem | 

## Sumber daya terkait
<a name="set-up-dns-resolution-for-hybrid-networks-in-a-single-account-aws-environment-resources"></a>
+ [Manajemen DNS terpusat dari cloud hybrid dengan Amazon Route 53 dan AWS Transit Gateway (AWS](https://aws.amazon.com/blogs/networking-and-content-delivery/centralized-dns-management-of-hybrid-cloud-with-amazon-route-53-and-aws-transit-gateway/) Networking & Content Delivery blog)
+ [Sederhanakan manajemen DNS di lingkungan multi-akun dengan Route 53 Resolver](https://aws.amazon.com/blogs/security/simplify-dns-management-in-a-multiaccount-environment-with-route-53-resolver/) (blog AWS Security)
+ [Bekerja dengan zona host pribadi](https://docs.aws.amazon.com/Route53/latest/DeveloperGuide/hosted-zones-private.html) (dokumentasi Route 53)
+ [Memulai dengan Route 53 Resolver (dokumentasi](https://docs.aws.amazon.com/Route53/latest/DeveloperGuide/resolver-getting-started.html) Route 53)

# Siapkan bot UiPath RPA secara otomatis di Amazon EC2 dengan menggunakan AWS CloudFormation
<a name="set-up-uipath-rpa-bots-automatically-on-amazon-ec2-by-using-aws-cloudformation"></a>

*Dr. Rahul Sharad Gaikwad dan Tamilselvan P, Amazon Web Services*

## Ringkasan
<a name="set-up-uipath-rpa-bots-automatically-on-amazon-ec2-by-using-aws-cloudformation-summary"></a>

Pola ini menjelaskan bagaimana Anda dapat menerapkan robot robot otomatisasi proses (RPA) di instans Amazon Elastic Compute Cloud ( EC2Amazon). Ini menggunakan pipeline [EC2 Image Builder](https://docs.aws.amazon.com/imagebuilder/latest/userguide/what-is-image-builder.html) untuk membuat Amazon Machine Image (AMI) kustom. AMI adalah gambar mesin virtual (VM) yang telah dikonfigurasi sebelumnya yang berisi sistem operasi (OS) dan perangkat lunak yang sudah diinstal sebelumnya untuk menyebarkan instance. EC2 Pola ini menggunakan CloudFormation templat AWS untuk menginstal [edisi UiPath Studio Community](https://www.uipath.com/product/studio) pada AMI kustom. UiPath adalah alat RPA yang membantu Anda mengatur robot untuk mengotomatiskan tugas Anda.

Sebagai bagian dari solusi ini, instance EC2 Windows diluncurkan dengan menggunakan AMI dasar, dan aplikasi UiPath Studio diinstal pada instance. Pola ini menggunakan alat Microsoft System Preparation (Sysprep) untuk menduplikasi instalasi Windows yang disesuaikan. Setelah itu, ia menghapus informasi host dan membuat AMI akhir dari instance. Anda kemudian dapat meluncurkan instans sesuai permintaan dengan menggunakan AMI akhir dengan konvensi penamaan dan pengaturan pemantauan Anda sendiri.


| 
| 
| Catatan: Pola ini tidak memberikan informasi apa pun tentang penggunaan bot RPA. Untuk informasi tersebut, lihat [UiPath dokumentasinya](https://docs.uipath.com/). Anda juga dapat menggunakan pola ini untuk mengatur aplikasi bot RPA lainnya dengan menyesuaikan langkah-langkah instalasi berdasarkan kebutuhan Anda. | 
| --- |

Pola ini memberikan otomatisasi dan manfaat berikut:
+ Penerapan dan berbagi aplikasi: Anda dapat membangun Amazon EC2 AMIs untuk penerapan aplikasi dan membagikannya di beberapa akun melalui pipeline EC2 Image Builder, yang menggunakan CloudFormation templat AWS sebagai infrastruktur sebagai skrip kode (IAc).
+  EC2 Penyediaan dan penskalaan Amazon: Templat CloudFormation IAc menyediakan urutan nama komputer khusus dan otomatisasi gabungan Active Directory.
+ Observabilitas dan pemantauan: Pola mengatur CloudWatch dasbor Amazon untuk membantu Anda memantau EC2 metrik Amazon (seperti penggunaan CPU dan disk).
+ Manfaat RPA untuk bisnis Anda: RPA meningkatkan akurasi karena robot dapat melakukan tugas yang diberikan secara otomatis dan konsisten. RPA juga meningkatkan kecepatan dan produktivitas karena menghilangkan operasi yang tidak menambah nilai dan menangani aktivitas berulang.

## Prasyarat dan batasan
<a name="set-up-uipath-rpa-bots-automatically-on-amazon-ec2-by-using-aws-cloudformation-prereqs"></a>

**Prasyarat**
+ [Akun AWS](https://aws.amazon.com/free/) yang aktif
+ [Izin AWS Identity and Access Management (IAM) untuk menerapkan](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-iam-template.html) template CloudFormation 
+ [Kebijakan IAM](https://docs.aws.amazon.com/imagebuilder/latest/userguide/cross-account-dist.html) untuk menyiapkan distribusi AMI lintas akun dengan EC2 Image Builder

## Arsitektur
<a name="set-up-uipath-rpa-bots-automatically-on-amazon-ec2-by-using-aws-cloudformation-architecture"></a>

![\[Arsitektur target untuk menyiapkan bot RPA di Amazon EC2\]](http://docs.aws.amazon.com/id_id/prescriptive-guidance/latest/patterns/images/pattern-img/5555a62d-91d4-4e81-9961-ff89faedd6ad/images/1893d2d3-8912-4473-adf1-6633b5badcd9.png)


1. Administrator menyediakan basis Windows AMI dalam `ec2-image-builder.yaml` file dan menyebarkan tumpukan di CloudFormation konsol.

1.  CloudFormation Tumpukan menyebarkan pipeline EC2 Image Builder, yang mencakup sumber daya berikut:
   + `Ec2ImageInfraConfiguration`
   + `Ec2ImageComponent`
   + `Ec2ImageRecipe`
   + `Ec2AMI`

1. Pipeline EC2 Image Builder meluncurkan EC2 instance Windows sementara dengan menggunakan AMI dasar dan menginstal komponen yang diperlukan (dalam hal ini, UiPath Studio).

1.  EC2 Image Builder menghapus semua informasi host dan membuat AMI dari Windows Server.

1. Anda memperbarui `ec2-provisioning yaml` file dengan AMI kustom dan meluncurkan sejumlah EC2 instance berdasarkan kebutuhan Anda.

1. Anda menerapkan makro Count dengan menggunakan template. CloudFormation Makro ini menyediakan properti **Count** untuk CloudFormation sumber daya sehingga Anda dapat menentukan beberapa sumber daya dari jenis yang sama dengan mudah.

1. Anda memperbarui nama makro dalam CloudFormation `ec2-provisioning.yaml` file dan menyebarkan tumpukan.

1. Administrator memperbarui `ec2-provisioning.yaml` file berdasarkan persyaratan dan meluncurkan tumpukan.

1. Template menyebarkan EC2 instance dengan aplikasi UiPath Studio.

## Alat
<a name="set-up-uipath-rpa-bots-automatically-on-amazon-ec2-by-using-aws-cloudformation-tools"></a>

**Layanan AWS**
+ [AWS CloudFormation](https://aws.amazon.com/cloudformation/) membantu Anda memodelkan dan mengelola sumber daya infrastruktur secara otomatis dan aman.
+ [Amazon CloudWatch](https://aws.amazon.com/cloudwatch/) membantu Anda mengamati dan memantau sumber daya dan aplikasi di AWS, di tempat, dan di cloud lainnya.
+ [Amazon Elastic Compute Cloud (Amazon EC2](https://aws.amazon.com/ec2/)) menyediakan kapasitas komputasi yang aman dan dapat diubah ukurannya di AWS Cloud. Anda dapat meluncurkan server virtual sebanyak yang Anda butuhkan dan dengan cepat meningkatkannya ke atas atau ke bawah.
+ [EC2 Image Builder](https://aws.amazon.com/image-builder/) menyederhanakan pembuatan, pengujian, dan penerapan mesin virtual dan image kontainer untuk digunakan di AWS atau di lokasi.
+ [Amazon EventBridge](https://aws.amazon.com/eventbridge/) membantu Anda membangun aplikasi berbasis peristiwa dalam skala besar di seluruh AWS, sistem yang ada, atau aplikasi perangkat lunak sebagai layanan (SaaS).
+ [AWS Identity and Access Management (IAM)](https://docs.aws.amazon.com/IAM/latest/UserGuide/introduction.html) membantu Anda mengontrol akses ke sumber daya AWS dengan aman. Dengan IAM, Anda dapat mengelola izin secara terpusat yang mengontrol sumber daya AWS mana yang dapat diakses pengguna. Anda menggunakan IAM untuk mengontrol siapa yang dapat terautentikasi (masuk) dan berwenang (memiliki izin) untuk menggunakan sumber daya.
+ [AWS Lambda](https://aws.amazon.com/lambda/) adalah layanan komputasi tanpa server dan berbasis peristiwa yang memungkinkan Anda menjalankan kode untuk hampir semua jenis aplikasi atau layanan backend tanpa menyediakan atau mengelola server. Anda dapat memanggil fungsi Lambda dari lebih dari 200 layanan AWS dan aplikasi SaaS, dan hanya membayar untuk apa yang Anda gunakan.
+ [Amazon Simple Storage Service (Amazon S3](https://aws.amazon.com/s3/)) adalah layanan penyimpanan objek berbasis cloud yang membantu Anda menyimpan, melindungi, dan mengambil sejumlah data.
+ [AWS Systems Manager Agent (Agen SSM)](https://docs.aws.amazon.com/systems-manager/latest/userguide/ssm-agent.html) membantu Systems Manager memperbarui, mengelola, dan mengonfigurasi EC2 instans, perangkat edge, server lokal, dan mesin virtual (). VMs

**Repositori kode**

Kode untuk pola ini tersedia dalam [pengaturan bot GitHub UiPath RPA menggunakan CloudFormation](https://github.com/aws-samples/uipath-rpa-setup-ec2-windows-ami-cloudformation) repositori. Pola ini juga menggunakan makro yang tersedia dari repositori [AWS CloudFormation Macros.](https://github.com/aws-cloudformation/aws-cloudformation-macros/tree/master/Count)

## Praktik terbaik
<a name="set-up-uipath-rpa-bots-automatically-on-amazon-ec2-by-using-aws-cloudformation-best-practices"></a>
+ AWS merilis [Windows](https://docs.aws.amazon.com/AWSEC2/latest/WindowsGuide/windows-ami-version-history.html) baru AMIs setiap bulan. Ini berisi patch OS terbaru, driver, dan agen peluncuran. Kami menyarankan Anda menggunakan AMI terbaru saat meluncurkan instans baru atau saat Anda membuat gambar kustom Anda sendiri.
+ Terapkan semua patch keamanan Windows atau Linux yang tersedia selama pembuatan gambar.

## Epik
<a name="set-up-uipath-rpa-bots-automatically-on-amazon-ec2-by-using-aws-cloudformation-epics"></a>

### Menyebarkan pipeline gambar untuk gambar dasar
<a name="deploy-an-image-pipeline-for-the-base-image"></a>


| Tugas | Deskripsi | Keterampilan yang dibutuhkan | 
| --- | --- | --- | 
| Siapkan pipeline EC2 Image Builder. | [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/id_id/prescriptive-guidance/latest/patterns/set-up-uipath-rpa-bots-automatically-on-amazon-ec2-by-using-aws-cloudformation.html) | AWS DevOps | 
| Lihat pengaturan EC2 Image Builder. | Pengaturan EC2 Image Builder mencakup konfigurasi infrastruktur, pengaturan distribusi, dan pengaturan pemindaian keamanan. Untuk melihat pengaturan:[\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/id_id/prescriptive-guidance/latest/patterns/set-up-uipath-rpa-bots-automatically-on-amazon-ec2-by-using-aws-cloudformation.html)Sebagai praktik terbaik, Anda harus membuat pembaruan apa pun ke EC2 Image Builder hanya melalui CloudFormation template. | AWS DevOps | 
| Lihat pipa gambar. | Untuk melihat pipeline gambar yang digunakan:[\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/id_id/prescriptive-guidance/latest/patterns/set-up-uipath-rpa-bots-automatically-on-amazon-ec2-by-using-aws-cloudformation.html) | AWS DevOps | 
| Lihat log Image Builder. | EC2 Log Image Builder digabungkan dalam grup CloudWatch log. Untuk melihat log di CloudWatch:[\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/id_id/prescriptive-guidance/latest/patterns/set-up-uipath-rpa-bots-automatically-on-amazon-ec2-by-using-aws-cloudformation.html)EC2 Log Image Builder juga disimpan dalam bucket S3. Untuk melihat log di ember:[\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/id_id/prescriptive-guidance/latest/patterns/set-up-uipath-rpa-bots-automatically-on-amazon-ec2-by-using-aws-cloudformation.html) | AWS DevOps | 
| Unggah UiPath file ke bucket S3. | [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/id_id/prescriptive-guidance/latest/patterns/set-up-uipath-rpa-bots-automatically-on-amazon-ec2-by-using-aws-cloudformation.html) | AWS DevOps | 

### Menyebarkan dan menguji makro Count
<a name="deploy-and-test-the-count-macro"></a>


| Tugas | Deskripsi | Keterampilan yang dibutuhkan | 
| --- | --- | --- | 
| Menyebarkan makro Count. | [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/id_id/prescriptive-guidance/latest/patterns/set-up-uipath-rpa-bots-automatically-on-amazon-ec2-by-using-aws-cloudformation.html)Jika Anda ingin menggunakan konsol, ikuti instruksi di epik sebelumnya atau dalam [CloudFormation dokumentasi](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/cfn-console-create-stack.html).  | DevOps insinyur | 
| Uji makro Count. | Untuk menguji kemampuan makro, coba luncurkan contoh template yang disediakan dengan makro. <pre>aws cloudformation deploy \<br />    --stack-name Count-test \<br />    --template-file test.yaml \<br />    --capabilities CAPABILITY_IAM</pre> | DevOps insinyur | 

### Terapkan CloudFormation tumpukan untuk menyediakan instance dengan gambar khusus
<a name="deploy-the-cloudformation-stack-to-provision-instances-with-the-custom-image"></a>


| Tugas | Deskripsi | Keterampilan yang dibutuhkan | 
| --- | --- | --- | 
| Menerapkan template EC2 penyediaan Amazon. | Untuk menerapkan EC2 Image Pipeline dengan menggunakan CloudFormation:[\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/id_id/prescriptive-guidance/latest/patterns/set-up-uipath-rpa-bots-automatically-on-amazon-ec2-by-using-aws-cloudformation.html) | AWS DevOps | 
| Lihat EC2 pengaturan Amazon. |  EC2 Pengaturan Amazon mencakup keamanan, jaringan, penyimpanan, pemeriksaan status, pemantauan, dan konfigurasi tag. Untuk melihat konfigurasi ini:[\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/id_id/prescriptive-guidance/latest/patterns/set-up-uipath-rpa-bots-automatically-on-amazon-ec2-by-using-aws-cloudformation.html) | AWS DevOps | 
| Lihat CloudWatch dasbor. | [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/id_id/prescriptive-guidance/latest/patterns/set-up-uipath-rpa-bots-automatically-on-amazon-ec2-by-using-aws-cloudformation.html)Setelah Anda menyediakan tumpukan, dibutuhkan waktu untuk mengisi dasbor dengan metrik.Dasbor menyediakan metrik berikut:`CPUUtilization`,,`DiskUtilization`,`MemoryUtilization`, `NetworkIn``NetworkOut`,`StatusCheckFailed`. | AWS DevOps | 
| Lihat metrik khusus untuk penggunaan memori dan disk.  | [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/id_id/prescriptive-guidance/latest/patterns/set-up-uipath-rpa-bots-automatically-on-amazon-ec2-by-using-aws-cloudformation.html) | AWS DevOps | 
| Lihat alarm untuk penggunaan memori dan disk.  | [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/id_id/prescriptive-guidance/latest/patterns/set-up-uipath-rpa-bots-automatically-on-amazon-ec2-by-using-aws-cloudformation.html) | AWS DevOps | 
| Verifikasi aturan lifecyle snapshot. | [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/id_id/prescriptive-guidance/latest/patterns/set-up-uipath-rpa-bots-automatically-on-amazon-ec2-by-using-aws-cloudformation.html) | AWS DevOps | 

### Hapus lingkungan (opsional)
<a name="delete-the-environment-optional"></a>


| Tugas | Deskripsi | Keterampilan yang dibutuhkan | 
| --- | --- | --- | 
| Hapus tumpukan. | Ketika PoC atau proyek percontohan Anda selesai, kami sarankan Anda menghapus tumpukan yang Anda buat untuk memastikan bahwa Anda tidak dikenakan biaya untuk sumber daya ini.[\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/id_id/prescriptive-guidance/latest/patterns/set-up-uipath-rpa-bots-automatically-on-amazon-ec2-by-using-aws-cloudformation.html)Operasi penghapusan tumpukan tidak dapat dihentikan setelah dimulai. Tumpukan diproses ke `DELETE_IN_PROGRESS` status.Jika penghapusan gagal, tumpukan akan berada dalam status. `DELETE_FAILED` Untuk solusinya, lihat [Hapus tumpukan gagal](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/troubleshooting.html#troubleshooting-errors-delete-stack-fails) dalam dokumentasi CloudFormation pemecahan masalah AWS.Untuk informasi tentang melindungi tumpukan agar tidak terhapus secara tidak sengaja, lihat [Melindungi tumpukan agar tidak dihapus](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-protect-stacks.html) dalam CloudFormation dokumentasi AWS. | AWS DevOps | 

## Pemecahan masalah
<a name="set-up-uipath-rpa-bots-automatically-on-amazon-ec2-by-using-aws-cloudformation-troubleshooting"></a>


| Isu | Solusi | 
| --- | --- | 
| Saat Anda menerapkan template EC2 penyediaan Amazon, Anda mendapatkan kesalahan: *Menerima respons cacat dari transform* 123xxxx: :Count. | Ini adalah masalah yang diketahui. (Lihat solusi khusus dan PR di [repositori CloudFormation makro AWS](https://github.com/aws-cloudformation/aws-cloudformation-macros/pull/20).)[Untuk memperbaiki masalah ini, buka konsol AWS Lambda dan perbarui `index.py` dengan konten dari repositori. GitHub ](https://raw.githubusercontent.com/aws-cloudformation/aws-cloudformation-macros/f1629c96477dcd87278814d4063c37877602c0c8/Count/src/index.py)  | 

## Sumber daya terkait
<a name="set-up-uipath-rpa-bots-automatically-on-amazon-ec2-by-using-aws-cloudformation-resources"></a>

**GitHub repositori**
+ [UiPath Pengaturan bot RPA menggunakan CloudFormation](https://github.com/aws-samples/uipath-rpa-setup-ec2-windows-ami-cloudformation)
+ [Hitung CloudFormation Makro](https://github.com/aws-cloudformation/aws-cloudformation-macros/tree/master/Count)

**Referensi AWS**
+ [Membuat tumpukan di CloudFormation konsol AWS](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/cfn-console-create-stack.html) (CloudFormation dokumentasi)
+ [Pemecahan masalah CloudFormation (dokumentasi](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/troubleshooting.html)) CloudFormation 
+ [Memantau memori dan metrik disk untuk EC2 instans Amazon (dokumentasi Amazon)](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/mon-scripts.html) EC2 
+ [Bagaimana saya bisa menggunakan CloudWatch agen untuk melihat metrik untuk Monitor Kinerja di server Windows?](https://repost.aws/knowledge-center/cloudwatch-performance-monitor-windows) (AWS re:Artikel posting)

**Referensi tambahan**
+ [UiPath dokumentasi](https://docs.uipath.com/)
+ [Mengatur Nama Host di SysPreped AMI](https://blog.brianbeach.com/2014/07/setting-hostname-in-syspreped-ami.html) (posting blog oleh Brian Beach)
+ [Bagaimana cara membuat Cloudformation memproses ulang template menggunakan makro saat parameter berubah?](https://stackoverflow.com/questions/59828989/how-do-i-make-cloudformation-reprocess-a-template-using-a-macro-when-parameters) (Tumpukan Luapan)

# Siapkan PeopleSoft arsitektur yang sangat tersedia di AWS
<a name="set-up-a-highly-available-peoplesoft-architecture-on-aws"></a>

*Ramanathan Muralidhar, Amazon Web Services*

## Ringkasan
<a name="set-up-a-highly-available-peoplesoft-architecture-on-aws-summary"></a>

Saat Anda memigrasikan PeopleSoft beban kerja Anda ke AWS, ketahanan adalah tujuan penting. Ini memastikan bahwa PeopleSoft aplikasi Anda selalu sangat tersedia dan dapat pulih dari kegagalan dengan cepat.

Pola ini menyediakan arsitektur untuk PeopleSoft aplikasi Anda di AWS untuk memastikan ketersediaan tinggi (HA) di tingkat jaringan, aplikasi, dan basis data. Ini menggunakan [Amazon Relational Database Service (Amazon RDS) untuk Oracle atau Amazon RDS](https://aws.amazon.com/rds/) untuk database Amazon RDS for SQL Server untuk tingkat database. Arsitektur ini juga mencakup layanan AWS seperti [Amazon Route 53](https://aws.amazon.com/route53/), [Amazon Elastic Compute Cloud (Amazon EC2) Instans Linux, Amazon](https://aws.amazon.com/ec2/) Elastic [Block Storage (Amazon EBS), Amazon Elastic File System (Amazon](https://aws.amazon.com/ebs/) [EFS](https://aws.amazon.com/efs/)), dan [Application Load Balancer](https://aws.amazon.com/elasticloadbalancing/application-load-balancer), dan dapat diskalakan.

[Oracle PeopleSoft](https://www.oracle.com/applications/peoplesoft/) menyediakan seperangkat alat dan aplikasi untuk manajemen tenaga kerja dan operasi bisnis lainnya.

## Prasyarat dan batasan
<a name="set-up-a-highly-available-peoplesoft-architecture-on-aws-prereqs"></a>

**Prasyarat**
+ Akun AWS yang aktif
+  PeopleSoft Lingkungan dengan lisensi yang diperlukan untuk mengaturnya di AWS
+ Virtual private cloud (VPC) disiapkan di akun AWS Anda dengan sumber daya berikut:
  + Setidaknya dua Availability Zone
  + Satu subnet publik dan tiga subnet pribadi di setiap Availability Zone
  + Gateway NAT dan gateway internet
  + Rute tabel untuk setiap subnet untuk merutekan lalu lintas
  + Daftar kontrol akses jaringan (jaringan ACLs) dan grup keamanan yang ditetapkan untuk membantu memastikan keamanan PeopleSoft aplikasi sesuai dengan standar organisasi Anda

**Batasan**
+ Pola ini memberikan solusi ketersediaan tinggi (HA). Itu tidak mendukung skenario pemulihan bencana (DR). Dalam kejadian langka bahwa seluruh Wilayah AWS untuk implementasi HA turun, aplikasi akan menjadi tidak tersedia.

**Versi produk**
+ PeopleSoft aplikasi yang berjalan PeopleTools 8.52 dan yang lebih baru

## Arsitektur
<a name="set-up-a-highly-available-peoplesoft-architecture-on-aws-architecture"></a>

**Arsitektur target**

Downtime atau pemadaman aplikasi PeopleSoft produksi Anda berdampak pada ketersediaan aplikasi dan menyebabkan gangguan besar pada bisnis Anda.

Kami menyarankan Anda merancang aplikasi PeopleSoft produksi Anda sehingga selalu sangat tersedia. Anda dapat mencapai ini dengan menghilangkan satu titik kegagalan, menambahkan titik crossover atau failover yang andal, dan mendeteksi kegagalan. Diagram berikut menggambarkan arsitektur HA untuk PeopleSoft AWS.

![\[Arsitektur yang sangat tersedia untuk PeopleSoft AWS\]](http://docs.aws.amazon.com/id_id/prescriptive-guidance/latest/patterns/images/pattern-img/0db96376-dadb-4545-b130-ebbe64acd4e9/images/5d585a8e-320a-495d-a049-97171633e90f.png)


Penerapan arsitektur ini menggunakan Amazon RDS for Oracle sebagai database, dan instans EC2 PeopleSoft yang berjalan di Red Hat Enterprise Linux (RHEL). Anda juga dapat menggunakan Amazon RDS for SQL Server sebagai database Peoplesoft.

Arsitektur ini berisi komponen-komponen berikut: 
+ [Amazon Route 53](https://docs.aws.amazon.com/Route53/latest/DeveloperGuide/Welcome.html) digunakan sebagai Domain Name Server (DNS) untuk routing request dari internet ke aplikasi. PeopleSoft 
+ [AWS WAF](https://docs.aws.amazon.com/waf/latest/developerguide/waf-chapter.html) membantu Anda melindungi Anda dari eksploitasi web umum dan bot yang dapat memengaruhi ketersediaan, membahayakan keamanan, atau mengkonsumsi sumber daya yang berlebihan. [AWS Shield Advanced](https://docs.aws.amazon.com/waf/latest/developerguide/shield-chapter.html) (tidak diilustrasikan) memberikan perlindungan yang jauh lebih luas.
+ [Application Load Balancer menyeimbangkan](https://docs.aws.amazon.com/elasticloadbalancing/latest/application/introduction.html) lalu lintas HTTP dan HTTPS dengan routing permintaan lanjutan yang ditargetkan pada server web.
+ Server web, server aplikasi, server penjadwal proses, dan server Elasticsearch yang mendukung PeopleSoft aplikasi berjalan di beberapa Availability Zone dan menggunakan [Amazon EC2 Auto Scaling](https://docs.aws.amazon.com/autoscaling/ec2/userguide/what-is-amazon-ec2-auto-scaling.html).
+ Basis data yang digunakan oleh PeopleSoft aplikasi berjalan di [Amazon RDS dalam konfigurasi](https://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/Welcome.html) Multi-AZ.
+ Berbagi file yang digunakan oleh PeopleSoft aplikasi dikonfigurasi di [Amazon EFS](https://docs.aws.amazon.com/efs/latest/ug/whatisefs.html) dan digunakan untuk mengakses file di seluruh instance.
+ [Amazon Machine Images (AMI](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/AMIs.html) s) digunakan oleh Amazon EC2 Auto Scaling untuk PeopleSoft memastikan bahwa komponen dikloning dengan cepat saat diperlukan.
+ [Gateway NAT](https://docs.aws.amazon.com/vpc/latest/userguide/vpc-nat-gateway.html) menghubungkan instance di subnet pribadi ke layanan di luar VPC Anda, dan memastikan bahwa layanan eksternal tidak dapat memulai koneksi dengan instans tersebut.
+ [Gateway internet](https://docs.aws.amazon.com/vpc/latest/userguide/VPC_Internet_Gateway.html) adalah komponen VPC berskala horizontal, redundan, dan sangat tersedia yang memungkinkan komunikasi antara VPC Anda dan internet.
+ Host benteng di subnet publik menyediakan akses ke server di subnet pribadi dari jaringan eksternal, seperti internet atau jaringan lokal. Host benteng menyediakan akses terkontrol dan aman ke server di subnet pribadi.

**Detail arsitektur**

 PeopleSoft Basis data disimpan di database Amazon RDS for Oracle (atau Amazon RDS for SQL Server) dalam konfigurasi Multi-AZ. [Fitur Amazon RDS Multi-AZ](https://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/Concepts.MultiAZ.html) mereplikasi pembaruan basis data di dua Availability Zone untuk meningkatkan daya tahan dan ketersediaan. Amazon RDS secara otomatis gagal ke database siaga untuk pemeliharaan terencana dan gangguan yang tidak direncanakan.

 PeopleSoft Web dan tingkat menengah diinstal pada instans EC2. Instans ini tersebar di beberapa Availability Zone dan diikat oleh grup [Auto Scaling](https://docs.aws.amazon.com/autoscaling/ec2/userguide/what-is-amazon-ec2-auto-scaling.html). Ini memastikan bahwa komponen-komponen ini selalu sangat tersedia. Jumlah minimum instans yang diperlukan dipertahankan untuk memastikan bahwa aplikasi selalu tersedia dan dapat diskalakan saat diperlukan.

Kami menyarankan Anda menggunakan tipe instans EC2 generasi saat ini untuk instans OEM EC2. Jenis instans generasi saat ini, seperti [instance yang dibangun di AWS Nitro System](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/instance-types.html#ec2-nitro-instances), mendukung perangkat keras mesin virtual ()HVMs. HVM AMIs diperlukan untuk memanfaatkan [jaringan yang ditingkatkan](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/enhanced-networking.html), dan mereka juga menawarkan peningkatan keamanan. Instans EC2 yang merupakan bagian dari setiap grup Auto Scaling menggunakan AMI mereka sendiri saat mengganti atau meningkatkan instans. Sebaiknya pilih jenis instans EC2 berdasarkan beban yang ingin ditangani PeopleSoft aplikasi dan nilai minimum yang direkomendasikan oleh Oracle untuk PeopleSoft aplikasi dan PeopleTools rilis Anda. Untuk informasi selengkapnya tentang persyaratan perangkat keras dan perangkat lunak, lihat [situs web dukungan Oracle](https://support.oracle.com).

 PeopleSoft Web dan tingkat menengah berbagi mount Amazon EFS untuk berbagi laporan, file data, dan (jika diperlukan) `PS_HOME` direktori. Amazon EFS dikonfigurasi dengan target pemasangan di setiap Availability Zone untuk alasan kinerja dan biaya.

Application Load Balancer disediakan untuk mendukung lalu lintas yang mengakses PeopleSoft aplikasi dan menyeimbangkan lalu lintas di antara server web di berbagai Availability Zone. Application Load Balancer adalah perangkat jaringan yang menyediakan HA di setidaknya dua Availability Zone. Server web mendistribusikan lalu lintas ke server aplikasi yang berbeda dengan menggunakan konfigurasi load balancing. Load balancing antara server web dan server aplikasi memastikan bahwa beban didistribusikan secara merata di seluruh instance, dan membantu menghindari kemacetan dan gangguan layanan karena instance yang kelebihan beban.

Amazon Route 53 digunakan sebagai layanan DNS untuk merutekan lalu lintas ke Application Load Balancer dari internet. Route 53 adalah layanan web DNS yang sangat tersedia dan terukur.

**Rincian HA**
+ Database: Fitur Multi-AZ Amazon RDS mengoperasikan dua database di beberapa Availability Zone dengan replikasi sinkron. Ini menciptakan lingkungan yang sangat tersedia dengan failover otomatis. Amazon RDS memiliki deteksi peristiwa failover dan memulai failover otomatis saat peristiwa ini terjadi. Anda juga dapat memulai failover manual melalui Amazon RDS API. Untuk penjelasan rinci, lihat posting blog [Amazon RDS Under The Hood: Multi-AZ](https://aws.amazon.com/blogs/database/amazon-rds-under-the-hood-multi-az/). Failover mulus dan aplikasi secara otomatis terhubung kembali ke database ketika itu terjadi. Namun, setiap pekerjaan penjadwal proses selama failover menghasilkan kesalahan dan harus dikirim ulang.
+ PeopleSoft server aplikasi: Server aplikasi tersebar di beberapa Availability Zone dan memiliki grup Auto Scaling yang ditentukan untuknya. Jika instance gagal, grup Auto Scaling segera menggantinya dengan instance sehat yang dikloning dari AMI template server aplikasi. Secara khusus, *penyatuan sentakan* diaktifkan, jadi ketika instance server aplikasi turun, sesi secara otomatis gagal ke server aplikasi lain, dan grup Auto Scaling secara otomatis memutar instance lain, memunculkan server aplikasi, dan mendaftarkannya di mount Amazon EFS. Server aplikasi yang baru dibuat secara otomatis ditambahkan ke server web dengan menggunakan `PSSTRSETUP.SH` skrip di server web. Ini memastikan bahwa server aplikasi selalu sangat tersedia dan pulih dari kegagalan dengan cepat.
+ Penjadwal proses: Server penjadwal proses tersebar di beberapa Availability Zone dan memiliki grup Auto Scaling yang ditentukan untuknya. Jika instans gagal, grup Auto Scaling segera menggantinya dengan instance sehat yang dikloning dari AMI templat server penjadwal proses. Khususnya, ketika instance penjadwal proses turun, grup Auto Scaling secara otomatis memutar instance lain dan memunculkan penjadwal proses. Pekerjaan apa pun yang berjalan saat instance gagal harus dikirimkan ulang. Ini memastikan bahwa penjadwal proses selalu tersedia dan pulih dari kegagalan dengan cepat.
+ Server Elasticsearch: Server Elasticsearch memiliki grup Auto Scaling yang ditentukan untuk mereka. Jika instance gagal, grup Auto Scaling segera menggantinya dengan instance sehat yang dikloning dari AMI template server Elasticsearch. Secara khusus, ketika instance Elasticsearch turun, Application Load Balancer yang melayani permintaan untuk mendeteksi kegagalan dan berhenti mengirim lalu lintas ke sana. Grup Auto Scaling secara otomatis memutar instance lain dan memunculkan instance Elasticsearch. Ketika instance Elasticsearch di-back up, Application Load Balancer mendeteksi bahwa itu sehat dan mulai mengirim permintaan ke sana lagi. Ini memastikan bahwa server Elasticsearch selalu sangat tersedia dan pulih dari kegagalan dengan cepat.
+ Server web: Server web memiliki grup Auto Scaling yang ditentukan untuk mereka. Jika instance gagal, grup Auto Scaling segera menggantinya dengan instance sehat yang dikloning dari AMI template server web. Secara khusus, ketika instance server web turun, Application Load Balancer yang melayani permintaan untuk mendeteksi kegagalan dan berhenti mengirim lalu lintas ke sana. Grup Auto Scaling secara otomatis memutar instance lain dan memunculkan instance server web. Ketika instance server web di-back up, Application Load Balancer mendeteksi bahwa itu sehat dan mulai mengirim permintaan ke sana lagi. Ini memastikan bahwa server web selalu sangat tersedia dan pulih dari kegagalan dengan cepat.

## Alat
<a name="set-up-a-highly-available-peoplesoft-architecture-on-aws-tools"></a>

**Layanan AWS**
+ [Application Load Balancer](https://docs.aws.amazon.com/elasticloadbalancing/latest/application/) mendistribusikan lalu lintas aplikasi yang masuk ke beberapa target, seperti instans EC2, di beberapa Availability Zone.
+ [Amazon Elastic Block Store (Amazon EBS](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/AmazonEBS.html)) menyediakan volume penyimpanan tingkat blok untuk digunakan dengan instans Amazon Elastic Compute Cloud (Amazon EC2).
+ [Amazon Elastic Compute Cloud (Amazon EC2) menyediakan kapasitas](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/concepts.html) komputasi yang dapat diskalakan di AWS Cloud. Anda dapat meluncurkan server virtual sebanyak yang Anda butuhkan dan dengan cepat meningkatkannya ke atas atau ke bawah.
+ [Amazon Elastic File System (Amazon EFS)](https://docs.aws.amazon.com/efs/latest/ug/whatisefs.html) membantu Anda membuat dan mengonfigurasi sistem file bersama di AWS Cloud.
+ [Amazon Relational Database Service (Amazon RDS](https://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/Welcome.html)) membantu Anda menyiapkan, mengoperasikan, dan menskalakan database relasional di AWS Cloud.
+ [Amazon Route 53](https://docs.aws.amazon.com/Route53/latest/DeveloperGuide/Welcome.html) adalah layanan web DNS yang sangat tersedia dan dapat diskalakan.

## Praktik terbaik
<a name="set-up-a-highly-available-peoplesoft-architecture-on-aws-best-practices"></a>

**Praktik terbaik operasional**
+ Saat Anda menjalankan PeopleSoft AWS, gunakan Route 53 untuk merutekan lalu lintas dari internet dan lokal. Gunakan [opsi failover](https://docs.aws.amazon.com/Route53/latest/DeveloperGuide/dns-failover-configuring.html) untuk mengalihkan lalu lintas ke situs pemulihan bencana (DR) jika instans DB utama tidak tersedia.
+ Selalu gunakan Application Load Balancer di depan lingkungan. PeopleSoft Ini memastikan bahwa lalu lintas seimbang beban ke server web dengan cara yang aman.
+ Dalam pengaturan grup target Application Load Balancer, pastikan [lengket dihidupkan](https://docs.aws.amazon.com/elasticloadbalancing/latest/application/sticky-sessions.html) dengan cookie yang dihasilkan load balancer.
**catatan**  
Anda mungkin perlu menggunakan cookie berbasis aplikasi jika Anda menggunakan sistem masuk tunggal eksternal (SSO). Ini memastikan bahwa koneksi konsisten di seluruh server web dan server aplikasi.
+ Untuk aplikasi PeopleSoft produksi, batas waktu idle Application Load Balancer harus sesuai dengan apa yang diatur dalam profil web yang Anda gunakan. Ini mencegah sesi pengguna kedaluwarsa di lapisan penyeimbang beban.
+ Untuk aplikasi PeopleSoft produksi, atur [jumlah daur ulang](https://docs.oracle.com/cd/F28299_01/pt857pbr3/eng/pt/tsvt/concept_PSAPPSRVOptions-c07f06.html?pli=ul_d96e90_tsvt) server aplikasi ke nilai yang meminimalkan kebocoran memori.
+ Jika Anda menggunakan database Amazon RDS untuk aplikasi PeopleSoft produksi Anda, seperti yang dijelaskan dalam pola ini, jalankan dalam [format Multi-AZ untuk ketersediaan tinggi](https://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/Concepts.MultiAZ.html).
+ Jika database Anda berjalan pada instans EC2 untuk aplikasi PeopleSoft produksi Anda, pastikan [database siaga berjalan di Availability Zone lain untuk ketersediaan](https://docs.aws.amazon.com/prescriptive-guidance/latest/migration-oracle-database/ec2-oracle.html#ec2-oracle-ha) tinggi.
+ Untuk DR, pastikan database Amazon RDS atau instans EC2 Anda memiliki siaga yang dikonfigurasi di Wilayah AWS terpisah dari database produksi. Ini memastikan bahwa jika terjadi bencana di Wilayah, Anda dapat mengalihkan aplikasi ke Wilayah lain.
+ Untuk DR, gunakan [Amazon Elastic Disaster Recovery](https://aws.amazon.com/disaster-recovery/) untuk menyiapkan komponen tingkat aplikasi di Wilayah terpisah dari komponen produksi. Ini memastikan bahwa jika terjadi bencana di Wilayah, Anda dapat mengalihkan aplikasi ke Wilayah lain.
+ Gunakan Amazon EFS (untuk I/O persyaratan moderat) atau [Amazon FSx](https://aws.amazon.com/fsx/) (untuk I/O persyaratan tinggi) untuk menyimpan PeopleSoft laporan, lampiran, dan file data Anda. Ini memastikan bahwa konten disimpan di satu lokasi pusat dan dapat diakses dari mana saja di dalam infrastruktur.
+ Gunakan [Amazon CloudWatch](https://docs.aws.amazon.com/AmazonCloudWatch/latest/monitoring/WhatIsCloudWatch.html) (dasar dan terperinci) untuk memantau sumber daya AWS Cloud yang digunakan PeopleSoft aplikasi Anda dalam waktu dekat. Ini memastikan bahwa Anda diberitahu tentang masalah secara instan dan dapat mengatasinya dengan cepat sebelum memengaruhi ketersediaan lingkungan.
+ Jika Anda menggunakan database Amazon RDS sebagai PeopleSoft database, gunakan [Enhanced Monitoring](https://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/USER_Monitoring.OS.overview.html). Fitur ini menyediakan akses ke lebih dari 50 metrik, termasuk CPU, memori, sistem I/O, and disk I/O file.
+ Gunakan [AWS CloudTrail](https://docs.aws.amazon.com/awscloudtrail/latest/userguide/cloudtrail-user-guide.html) untuk memantau panggilan API pada sumber daya AWS yang digunakan PeopleSoft aplikasi Anda. Ini membantu Anda melakukan analisis keamanan, pelacakan perubahan sumber daya, dan audit kepatuhan.

**Praktik terbaik keamanan**
+ [Untuk melindungi PeopleSoft aplikasi Anda dari eksploitasi umum seperti injeksi SQL atau cross-site scripting (XSS), gunakan AWS WAF.](https://docs.aws.amazon.com/waf/latest/developerguide/waf-chapter.html) Pertimbangkan untuk menggunakan [AWS Shield Advanced](https://docs.aws.amazon.com/waf/latest/developerguide/shield-chapter.html) untuk layanan deteksi dan mitigasi yang disesuaikan.
+ Tambahkan aturan ke Application Load Balancer untuk mengarahkan lalu lintas dari HTTP ke HTTPS secara otomatis untuk membantu mengamankan aplikasi Anda. PeopleSoft 
+ Siapkan grup keamanan terpisah untuk Application Load Balancer. Grup keamanan ini seharusnya hanya mengizinkan lalu lintas HTTPS/HTTP masuk dan tidak ada lalu lintas keluar. Ini memastikan bahwa hanya lalu lintas yang dimaksudkan yang diizinkan dan membantu mengamankan aplikasi Anda.
+ Gunakan subnet pribadi untuk server aplikasi, server web, dan database, dan gunakan [gateway NAT](https://docs.aws.amazon.com/vpc/latest/userguide/vpc-nat-gateway.html) untuk lalu lintas internet keluar. Ini memastikan bahwa server yang mendukung aplikasi tidak dapat dijangkau oleh publik, sementara menyediakan akses publik hanya ke server yang membutuhkannya.
+ Gunakan berbeda VPCs untuk menjalankan lingkungan PeopleSoft produksi dan non-produksi Anda. Gunakan [AWS Transit Gateway](https://aws.amazon.com/transit-gateway/), [peering VPC](https://docs.aws.amazon.com/vpc/latest/peering/what-is-vpc-peering.html), [jaringan ACLs](https://docs.aws.amazon.com/vpc/latest/userguide/vpc-network-acls.html), dan [grup keamanan](https://docs.aws.amazon.com/vpc/latest/userguide/VPC_SecurityGroups.html) untuk mengontrol arus lalu lintas antara [VPC](https://aws.amazon.com/vpc/) dan, jika perlu, pusat data lokal Anda.
+ Ikuti prinsip hak istimewa paling sedikit. Berikan akses ke sumber daya AWS yang digunakan oleh PeopleSoft aplikasi hanya untuk pengguna yang benar-benar membutuhkannya. Berikan hanya hak istimewa minimum yang diperlukan untuk melakukan tugas. Untuk informasi selengkapnya, lihat [pilar keamanan](https://docs.aws.amazon.com/wellarchitected/latest/security-pillar/sec_permissions_least_privileges.html) AWS Well-Architected Framework.
+ Jika memungkinkan, gunakan [AWS Systems Manager](https://docs.aws.amazon.com/systems-manager/latest/userguide/what-is-systems-manager.html) untuk mengakses instans EC2 yang digunakan PeopleSoft aplikasi.

**Praktik terbaik keandalan**
+ Saat Anda menggunakan Application Load Balancer, daftarkan satu target untuk setiap Availability Zone yang diaktifkan. Ini membuat penyeimbang beban paling efektif.
+ Kami menyarankan Anda memiliki tiga yang berbeda URLs untuk setiap lingkungan PeopleSoft produksi: satu URL untuk mengakses aplikasi, satu untuk melayani broker integrasi, dan satu untuk melihat laporan. Jika memungkinkan, setiap URL harus memiliki server web dan server aplikasi khusus sendiri. Desain ini membantu membuat PeopleSoft aplikasi Anda lebih aman, karena setiap URL memiliki fungsi yang berbeda dan akses terkontrol. Ini juga meminimalkan ruang lingkup dampak jika layanan yang mendasarinya gagal.
+ Kami menyarankan Anda mengonfigurasi [pemeriksaan kesehatan pada grup target penyeimbang beban](https://docs.aws.amazon.com/elasticloadbalancing/latest/application/target-group-health-checks.html) untuk PeopleSoft aplikasi Anda. Pemeriksaan kesehatan harus dilakukan di server web alih-alih instans EC2 yang menjalankan server tersebut. Ini memastikan bahwa jika server web mogok atau instans EC2 yang menghosting server web turun, Application Load Balancer mencerminkan informasi tersebut secara akurat.
+ Untuk aplikasi PeopleSoft produksi, kami menyarankan Anda menyebarkan server web di setidaknya tiga Availability Zone. Ini memastikan bahwa PeopleSoft aplikasi selalu sangat tersedia bahkan jika salah satu Availability Zone turun.
+ Untuk aplikasi PeopleSoft produksi, aktifkan jolt pooling (). `joltPooling=true` Ini memastikan bahwa aplikasi Anda gagal ke server aplikasi lain jika server down untuk tujuan patching atau karena kegagalan VM.
+ Untuk aplikasi PeopleSoft produksi, atur `DynamicConfigReload ` ke 1. Pengaturan ini didukung di PeopleTools versi 8.52 dan yang lebih baru. Ini menambahkan server aplikasi baru ke server web secara dinamis, tanpa me-restart server.
+ Untuk meminimalkan waktu henti saat menerapkan PeopleTools tambalan, gunakan metode blue/green penerapan untuk konfigurasi peluncuran grup Auto Scaling untuk server web dan aplikasi. Untuk informasi selengkapnya, lihat [Ikhtisar opsi penerapan di whitepaper AWS](https://docs.aws.amazon.com/whitepapers/latest/overview-deployment-options/bluegreen-deployments.html).
+ Gunakan [AWS Backup untuk mencadangkan](https://docs.aws.amazon.com/aws-backup/latest/devguide/whatisbackup.html) PeopleSoft aplikasi Anda di AWS. AWS Backup adalah layanan berbasis kebijakan yang hemat biaya, dikelola sepenuhnya, yang menyederhanakan perlindungan data dalam skala besar.

**Praktik terbaik kinerja**
+ Hentikan SSL di Application Load Balancer untuk kinerja lingkungan yang optimal, kecuali bisnis Anda memerlukan lalu lintas terenkripsi di seluruh lingkungan. PeopleSoft 
+ Buat [titik akhir VPC antarmuka untuk](https://docs.aws.amazon.com/vpc/latest/privatelink/create-interface-endpoint.html) layanan AWS seperti Amazon [Simple Notification Service (Amazon](https://docs.aws.amazon.com/sns/latest/dg/welcome.html) SNS) [CloudWatch](https://docs.aws.amazon.com/AmazonCloudWatch/latest/monitoring/WhatIsCloudWatch.html)dan agar lalu lintas selalu internal. Ini hemat biaya dan membantu menjaga keamanan aplikasi Anda.

**Praktik terbaik pengoptimalan biaya**
+ Tandai semua sumber daya yang digunakan oleh PeopleSoft lingkungan Anda, dan aktifkan [tag alokasi biaya](https://docs.aws.amazon.com/awsaccountbilling/latest/aboutv2/cost-alloc-tags.html). Tag ini membantu Anda melihat dan mengelola biaya sumber daya Anda.
+ Untuk aplikasi PeopleSoft produksi, siapkan grup Auto Scaling untuk server web dan server aplikasi. Ini mempertahankan jumlah minimal server web dan aplikasi untuk mendukung aplikasi Anda. Anda dapat menggunakan [kebijakan grup Auto Scaling](https://docs.aws.amazon.com/autoscaling/ec2/userguide/as-scaling-simple-step.html) untuk meningkatkan skala server ke atas dan ke bawah sesuai kebutuhan.
+ Gunakan [alarm penagihan](https://docs.aws.amazon.com/AmazonCloudWatch/latest/monitoring/monitor_estimated_charges_with_cloudwatch.html) untuk mendapatkan peringatan ketika biaya melebihi ambang anggaran yang Anda tentukan.

**Praktik terbaik keberlanjutan**
+ Gunakan [infrastruktur sebagai kode](https://docs.aws.amazon.com/whitepapers/latest/introduction-devops-aws/infrastructure-as-code.html) (IAc) untuk menjaga PeopleSoft lingkungan Anda. Ini membantu Anda membangun lingkungan yang konsisten dan mempertahankan kontrol perubahan.

## Epik
<a name="set-up-a-highly-available-peoplesoft-architecture-on-aws-epics"></a>

### Migrasi PeopleSoft database Anda ke Amazon RDS
<a name="migrate-your-peoplesoft-database-to-amazon-rds"></a>


| Tugas | Deskripsi | Keterampilan yang dibutuhkan | 
| --- | --- | --- | 
| Buat grup subnet DB. | Di [konsol Amazon RDS](https://console.aws.amazon.com/rds/), di panel navigasi, pilih grup Subnet, lalu buat **grup subnet** Amazon RDS DB dengan subnet di beberapa Availability Zone. Ini diperlukan agar database Amazon RDS berjalan dalam konfigurasi Multi-AZ. | Administrator awan | 
| Buat database Amazon RDS. | Buat database Amazon RDS di Availability Zone Wilayah AWS yang Anda pilih untuk lingkungan PeopleSoft HA. Saat Anda membuat database Amazon RDS, pastikan untuk memilih opsi Multi-AZ (**Buat instance siaga**) dan grup subnet database yang Anda buat pada langkah sebelumnya. Untuk informasi selengkapnya, lihat [dokumentasi Amazon RDS](https://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/USER_CreateDBInstance.html). | Administrator cloud, administrator basis data Oracle | 
| Migrasikan PeopleSoft database Anda ke Amazon RDS. | Migrasikan PeopleSoft database yang ada ke database Amazon RDS dengan menggunakan AWS Database Migration Service (AWS DMS). Untuk informasi selengkapnya, lihat [dokumentasi AWS DMS](https://docs.aws.amazon.com/dms/latest/userguide/CHAP_Source.Oracle.html) dan postingan blog AWS [Migrating Oracle database dengan downtime mendekati nol](https://aws.amazon.com/blogs/database/migrating-oracle-databases-with-near-zero-downtime-using-aws-dms/) menggunakan AWS DMS. | Administrator awan, PeopleSoft DBA | 

### Siapkan sistem file Amazon EFS Anda
<a name="set-up-your-amazon-efs-file-system"></a>


| Tugas | Deskripsi | Keterampilan yang dibutuhkan | 
| --- | --- | --- | 
| Buat sistem file. | Di [konsol Amazon EFS](https://console.aws.amazon.com/efs/), buat sistem file dan pasang target untuk setiap Availability Zone. Untuk petunjuk, lihat [dokumentasi Amazon EFS](https://docs.aws.amazon.com/efs/latest/ug/creating-using-create-fs.html#creating-using-fs-part1-console). Ketika sistem file telah dibuat, perhatikan nama DNS-nya. Anda akan menggunakan informasi ini ketika Anda me-mount sistem file. | Administrator awan | 

### Siapkan PeopleSoft aplikasi dan sistem file Anda
<a name="set-up-your-peoplesoft-application-and-file-system"></a>


| Tugas | Deskripsi | Keterampilan yang dibutuhkan | 
| --- | --- | --- | 
| Luncurkan instans EC2. | Luncurkan instans EC2 untuk PeopleSoft aplikasi Anda. Untuk petunjuk, lihat dokumentasi [Amazon EC2](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/ec2-launch-instance-wizard.html#liw-quickly-launch-instance).[\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/id_id/prescriptive-guidance/latest/patterns/set-up-a-highly-available-peoplesoft-architecture-on-aws.html) | Administrator cloud, PeopleSoft administrator | 
| Instal PeopleSoft pada instance. | Instal PeopleSoft aplikasi Anda dan PeopleTools pada instans EC2 yang Anda buat. Untuk instruksi, lihat [dokumentasi Oracle](https://docs.oracle.com). | Administrator cloud, PeopleSoft administrator | 
| Buat server aplikasi. | Buat server aplikasi untuk template AMI dan pastikan itu berhasil terhubung ke database Amazon RDS. | Administrator cloud, PeopleSoft administrator | 
| Pasang sistem file Amazon EFS. | Masuk ke instans EC2 sebagai pengguna root dan jalankan perintah berikut untuk memasang sistem file Amazon EFS ke folder yang dipanggil `PSFTMNT` di server.<pre>sudo su –<br />mkdir /psftmnt<br />cat /etc/fstab</pre>Tambahkan baris berikut ke `/etc/fstab` file. Gunakan nama DNS yang Anda catat saat membuat sistem file.<pre>fs-09e064308f1145388.efs.us-east-1.amazonaws.com:/ /psftmnt nfs4 nfsvers=4.1,rsize=1048576,wsize=1048576,hard,timeo=600,retrans=2,noresvport,_netdev 0 0<br />mount -a</pre> | Administrator cloud, PeopleSoft administrator | 
| Periksa izin. | Pastikan `PSFTMNT` folder memiliki izin yang tepat sehingga PeopleSoft pengguna dapat mengaksesnya dengan benar. | Administrator cloud, PeopleSoft administrator | 
| Buat instance tambahan. | Ulangi langkah sebelumnya dalam epik ini untuk membuat instance template untuk penjadwal proses, server web, dan server Elasticsearch. Sebutkan contoh ini`PRCS_TEMPLATE`,`WEB_TEMPLATE`, dan`SRCH_TEMPLATE`. Untuk server web, atur `joltPooling=true`**** dan`DynamicConfigReload=1`. | Administrator cloud, PeopleSoft administrator | 

### Buat skrip untuk mengatur server
<a name="create-scripts-to-set-up-servers"></a>


| Tugas | Deskripsi | Keterampilan yang dibutuhkan | 
| --- | --- | --- | 
| Buat skrip untuk menginstal server aplikasi. | Dalam `APP_TEMPLATE` instans Amazon EC2, sebagai PeopleSoft pengguna, buat skrip berikut. Beri nama `appstart.sh` dan letakkan di `PS_HOME` direktori. Anda akan menggunakan skrip ini untuk membuka server aplikasi dan juga merekam nama server di mount Amazon EFS.<pre>#!/bin/ksh<br />. /usr/homes/hcmdemo/.profile.<br />psadmin -c configure -d HCMDEMO<br />psadmin -c parallelboot -d HCMDEMO<br />touch /psftmnt/`echo $HOSTNAME`</pre> | PeopleSoft administrator | 
| Buat skrip untuk menginstal server penjadwal proses. | Dalam `PRCS_TEMPLATE` instans Amazon EC2, sebagai PeopleSoft pengguna, buat skrip berikut. Beri nama `prcsstart.sh` dan letakkan di `PS_HOME` direktori. Anda akan menggunakan skrip ini untuk memunculkan server penjadwal proses.<pre>#!/bin/ksh<br />. /usr/homes/hcmdemo/. profile<br />/* The following line ensures that the process scheduler always has a unique name during replacement or scaling activity. */ <br />sed -i "s/.*PrcsServerName.*/`hostname -I | awk -F. '{print "PrcsServerName=PSUNX"$3$4}'`/" $HOME/appserv/prcs/*/psprcs.cfg<br />psadmin -p configure -d HCMDEMO<br />psadmin -p start -d HCMDEMO</pre> | PeopleSoft administrator | 
| Buat skrip untuk menginstal server Elasticsearch. | Dalam `SRCH_TEMPLATE` instans Amazon EC2, sebagai pengguna Elasticsearch, buat skrip berikut. Beri nama `srchstart.sh` dan letakkan di `HOME` direktori.<pre>#!/bin/ksh<br />/* The following line ensures that the correct IP is indicated in the elasticsearch.yaml file. */<br />sed -i "s/.*network.host.*/`hostname  -I | awk '{print "host:"$0}'`/" $ES_HOME_DIR/config/elasticsearch.yaml<br />nohup $ES_HOME_DIR/bin/elasticsearch &</pre> | PeopleSoft administrator | 
| Buat skrip untuk menginstal server web. | Dalam `WEB_TEMPLATE` contoh Amazon EC2, sebagai pengguna server web, buat skrip berikut di direktori. `HOME``renip.sh`: Skrip ini memastikan bahwa server web memiliki IP yang benar ketika dikloning dari AMI.<pre>#!/bin/ksh<br />hn=`hostname`<br />/* On the following line, change the IP with the hostname with the hostname of the web template. */<br />for text_file in `find  *  -type f -exec grep -l '<hostname-of-the-web-template>' {} \;`<br />do<br />sed -e 's/<hostname-of-the-web-template>/'$hn'/g' $text_file > temp<br />mv -f temp $text_file<br />done</pre>`psstrsetup.sh`: Skrip ini memastikan bahwa server web menggunakan server aplikasi IPs yang benar yang sedang berjalan. Ia mencoba untuk terhubung ke setiap server aplikasi pada port sentakan dan menambahkannya ke file konfigurasi.<pre>#!/bin/ksh<br />c2=""<br />for ctr in `ls -1 /psftmnt/*.internal`<br />do<br />c1=`echo $ctr | awk -F "/" '{print $3}'`<br />/* In the following lines, 9000 is the jolt port. Change it if necessary. */<br />if nc -z $c1 9000 2> /dev/null; then<br />if [[ $c2 = "" ]]; then<br />c2="psserver="`echo $c1`":9000"<br />else<br />c2=`echo $c2`","`echo $c1`":9000"<br />fi<br />fi<br />done</pre>`webstart.sh`: Skrip ini menjalankan dua skrip sebelumnya dan memulai server web.<pre>#!/bin/ksh<br />/* Change the path in the following if necessary. */<br />cd  /usr/homes/hcmdemo <br />./renip.sh<br />./psstrsetup.sh<br />webserv/peoplesoft/bin/startPIA.sh</pre> | PeopleSoft administrator | 
| Tambahkan entri crontab. | **Dalam `WEB_TEMPLATE` contoh Amazon EC2, sebagai pengguna server web, tambahkan baris berikut ke crontab.** Ubah waktu dan jalur untuk mencerminkan nilai yang Anda butuhkan. Entri ini memastikan bahwa server web Anda selalu memiliki entri server aplikasi yang benar dalam `configuration.properties` file.<pre>* * * * * /usr/homes/hcmdemo/psstrsetup.sh</pre> | PeopleSoft administrator | 

### Buat AMIs dan templat grup Auto Scaling
<a name="create-amis-and-auto-scaling-group-templates"></a>


| Tugas | Deskripsi | Keterampilan yang dibutuhkan | 
| --- | --- | --- | 
| Buat AMI untuk template server aplikasi. | Di konsol Amazon EC2, buat gambar AMI dari instans Amazon `APP_TEMPLATE` EC2. Nama AMI`PSAPPSRV-SCG-VER1`. Untuk petunjuk, lihat dokumentasi [Amazon EC2](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/creating-an-ami-ebs.html). | Administrator cloud, PeopleSoft administrator | 
| Buat AMIs untuk server lain. | Ulangi langkah sebelumnya AMIs untuk membuat penjadwal proses, server Elasticsearch, dan server web. | Administrator cloud, PeopleSoft administrator | 
| Buat template peluncuran untuk grup Auto Scaling server aplikasi. | Buat template peluncuran untuk grup Auto Scaling server aplikasi. Beri nama template `PSAPPSRV_TEMPLATE.` Dalam template, pilih AMI yang Anda buat untuk `APP_TEMPLATE` instance. Untuk petunjuk, lihat dokumentasi [Amazon EC2](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/create-launch-template.html#create-launch-template-from-instance).[\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/id_id/prescriptive-guidance/latest/patterns/set-up-a-highly-available-peoplesoft-architecture-on-aws.html) | Administrator cloud, PeopleSoft administrator | 
| Buat template peluncuran untuk grup Auto Scaling server penjadwal proses. | Ulangi langkah sebelumnya untuk membuat template peluncuran untuk grup Auto Scaling server penjadwal proses. Beri nama template`PSPRCS_TEMPLATE`. Dalam template, pilih AMI yang Anda buat untuk penjadwal proses.[\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/id_id/prescriptive-guidance/latest/patterns/set-up-a-highly-available-peoplesoft-architecture-on-aws.html) | Administrator cloud, PeopleSoft administrator | 
| Buat template peluncuran untuk grup Auto Scaling server Elasticsearch. | Ulangi langkah sebelumnya untuk membuat template peluncuran untuk grup Auto Scaling server Elasticsearch. Beri nama template`SRCH_TEMPLATE`. Dalam template, pilih AMI yang Anda buat untuk server pencarian.[\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/id_id/prescriptive-guidance/latest/patterns/set-up-a-highly-available-peoplesoft-architecture-on-aws.html) | Administrator cloud, PeopleSoft administrator | 
| Buat template peluncuran untuk grup Auto Scaling server web. | Ulangi langkah sebelumnya untuk membuat template peluncuran untuk grup Auto Scaling server web. Beri nama template`WEB_TEMPLATE`. Dalam template, pilih AMI yang Anda buat untuk server web.[\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/id_id/prescriptive-guidance/latest/patterns/set-up-a-highly-available-peoplesoft-architecture-on-aws.html) | Administrator cloud, PeopleSoft administrator | 

### Buat grup Auto Scaling
<a name="create-auto-scaling-groups"></a>


| Tugas | Deskripsi | Keterampilan yang dibutuhkan | 
| --- | --- | --- | 
| Buat grup Auto Scaling untuk server aplikasi. | Di konsol Amazon EC2, buat grup Auto Scaling yang `PSAPPSRV_ASG` dipanggil untuk server aplikasi dengan menggunakan template. `PSAPPSRV_TEMPLATE` Untuk petunjuk, lihat dokumentasi [Amazon EC2](https://docs.aws.amazon.com/autoscaling/ec2/userguide/create-asg-launch-template.html).[\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/id_id/prescriptive-guidance/latest/patterns/set-up-a-highly-available-peoplesoft-architecture-on-aws.html) | Administrator cloud, PeopleSoft administrator | 
| Buat grup Auto Scaling untuk server lain. | Ulangi langkah sebelumnya untuk membuat grup Auto Scaling untuk penjadwal proses, server Elasticsearch, dan server web. | Administrator cloud, PeopleSoft administrator | 

### Buat dan konfigurasikan grup target
<a name="create-and-configure-target-groups"></a>


| Tugas | Deskripsi | Keterampilan yang dibutuhkan | 
| --- | --- | --- | 
| Buat grup target untuk server web. | Di konsol Amazon EC2, buat grup target untuk server web. Untuk petunjuk, lihat dokumentasi [Elastic Load Balancing](https://docs.aws.amazon.com/elasticloadbalancing/latest/application/create-target-group.html). Atur port ke port tempat server web mendengarkan. | Administrator awan | 
| Konfigurasikan pemeriksaan kesehatan. | Konfirmasikan bahwa pemeriksaan kesehatan memiliki nilai yang benar untuk mencerminkan kebutuhan bisnis Anda. Untuk informasi lebih lanjut, lihat [Dokumentasi Penyeimbangan Beban Elastis](https://docs.aws.amazon.com/elasticloadbalancing/latest/application/target-group-health-checks.html). | Administrator awan | 
| Buat grup target untuk server Elasticsearch. | Ulangi langkah sebelumnya untuk membuat grup target yang dipanggil `PSFTSRCH` untuk server Elasticsearch, dan atur port Elasticsearch yang benar. | Administrator awan | 
| Tambahkan grup target ke grup Auto Scaling. | Buka grup Auto Scaling server web yang disebut `PSPIA_ASG` yang Anda buat sebelumnya. Pada tab **Load balancing**, pilih **Edit** dan kemudian tambahkan grup `PSFTWEB` target ke grup Auto Scaling.Ulangi langkah ini untuk grup Auto Scaling Elasticsearch untuk menambahkan `PSSRCH_ASG` `PSFTSRCH` grup target yang Anda buat sebelumnya. | Administrator awan | 
| Atur kelengketan sesi. | Di grup target`PSFTWEB`, pilih tab **Atribut**, pilih **Edit**, dan atur kelengketan sesi. Untuk jenis lengket, pilih **Cookie yang dihasilkan penyeimbang beban**, dan atur durasinya ke 1. Untuk informasi lebih lanjut, lihat [Dokumentasi Penyeimbangan Beban Elastis](https://docs.aws.amazon.com/elasticloadbalancing/latest/application/sticky-sessions.html).Ulangi langkah ini untuk kelompok sasaran`PSFTSRCH`. | Administrator awan | 

### Buat dan konfigurasikan penyeimbang beban aplikasi
<a name="create-and-configure-application-load-balancers"></a>


| Tugas | Deskripsi | Keterampilan yang dibutuhkan | 
| --- | --- | --- | 
| Buat penyeimbang beban untuk server web. | Buat Application Load Balancer bernama `PSFTLB` untuk memuat keseimbangan lalu lintas ke server web. Untuk petunjuk, lihat dokumentasi [Elastic Load Balancing](https://docs.aws.amazon.com/elasticloadbalancing/latest/application/create-application-load-balancer.html#configure-load-balancer).[\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/id_id/prescriptive-guidance/latest/patterns/set-up-a-highly-available-peoplesoft-architecture-on-aws.html) | Administrator awan | 
| Buat penyeimbang beban untuk server Elasticsearch. | Buat Application Load Balancer bernama `PSFTSCH` untuk menyeimbangkan lalu lintas beban ke server Elasticsearch.[\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/id_id/prescriptive-guidance/latest/patterns/set-up-a-highly-available-peoplesoft-architecture-on-aws.html) | Administrator awan | 
| Konfigurasikan Route 53. | Di [konsol Amazon Route 53](https://console.aws.amazon.com/route53/), buat catatan di zona yang dihosting yang akan melayani PeopleSoft aplikasi. Untuk petunjuk, lihat [dokumentasi Amazon Route 53](https://docs.aws.amazon.com/Route53/latest/DeveloperGuide/resource-record-sets-creating.html). Ini memastikan bahwa semua lalu lintas melewati penyeimbang `PSFTLB` beban. | Administrator awan | 

## Sumber daya terkait
<a name="set-up-a-highly-available-peoplesoft-architecture-on-aws-resources"></a>
+ [Situs Oracle PeopleSoft ](https://www.oracle.com/applications/peoplesoft/)
+ [Dokumentasi AWS](https://docs.aws.amazon.com/)

# Siapkan pemulihan bencana untuk Oracle JD Edwards dengan EnterpriseOne AWS Elastic Disaster Recovery
<a name="set-up-disaster-recovery-for-oracle-jd-edwards-enterpriseone-with-aws-elastic-disaster-recovery"></a>

*Thanigaivel Thirumalai, Amazon Web Services*

## Ringkasan
<a name="set-up-disaster-recovery-for-oracle-jd-edwards-enterpriseone-with-aws-elastic-disaster-recovery-summary"></a>

Bencana yang dipicu oleh bencana alam, kegagalan aplikasi, atau gangguan layanan merugikan pendapatan dan menyebabkan downtime untuk aplikasi perusahaan. Untuk mengurangi dampak dari peristiwa tersebut, perencanaan pemulihan bencana (DR) sangat penting bagi perusahaan yang mengadopsi sistem perencanaan sumber daya EnterpriseOne perusahaan (ERP) JD Edwards dan perangkat lunak mission-critical dan business critical lainnya. 

Pola ini menjelaskan bagaimana bisnis dapat menggunakan AWS Elastic Disaster Recovery sebagai opsi DR untuk aplikasi JD Edwards EnterpriseOne mereka. Ini juga menguraikan langkah-langkah untuk menggunakan failover dan failback Elastic Disaster Recovery untuk membangun strategi DR Lintas wilayah untuk database yang dihosting di instans Amazon Elastic Compute Cloud (Amazon EC2) di AWS Cloud.

**catatan**  
Pola ini mengharuskan Wilayah primer dan sekunder untuk implementasi DR Lintas wilayah dihosting di AWS.

[Oracle JD Edwards EnterpriseOne](https://www.oracle.com/applications/jd-edwards-enterpriseone/) adalah solusi perangkat lunak ERP terintegrasi untuk perusahaan menengah hingga besar di berbagai industri.

AWS Elastic Disaster Recovery meminimalkan waktu henti dan kehilangan data dengan pemulihan aplikasi berbasis cloud dan lokal yang cepat dan andal dengan menggunakan penyimpanan yang terjangkau, komputasi minimal, dan pemulihan. point-in-time

AWS menyediakan [empat pola arsitektur DR inti](https://docs.aws.amazon.com/whitepapers/latest/disaster-recovery-workloads-on-aws/disaster-recovery-options-in-the-cloud.html). Dokumen ini berfokus pada pengaturan, konfigurasi, dan pengoptimalan dengan menggunakan [strategi pilot light](https://docs.aws.amazon.com/whitepapers/latest/disaster-recovery-workloads-on-aws/disaster-recovery-options-in-the-cloud.html). Strategi ini membantu Anda membuat lingkungan DR berbiaya lebih rendah di mana Anda awalnya menyediakan server replikasi untuk mereplikasi data dari database sumber, dan Anda menyediakan server database yang sebenarnya hanya ketika Anda memulai latihan dan pemulihan DR. Strategi ini menghilangkan biaya pemeliharaan server database di Wilayah DR. Sebagai gantinya, Anda membayar instans EC2 yang lebih kecil yang berfungsi sebagai server replikasi.

## Prasyarat dan batasan
<a name="set-up-disaster-recovery-for-oracle-jd-edwards-enterpriseone-with-aws-elastic-disaster-recovery-prereqs"></a>

**Prasyarat**
+ Akun AWS yang aktif.
+  EnterpriseOne Aplikasi JD Edwards yang berjalan di Oracle Database atau Microsoft SQL Server dengan database yang didukung dalam keadaan berjalan pada instans EC2 yang dikelola. Aplikasi ini harus mencakup semua komponen EnterpriseOne dasar JD Edwards (Server Perusahaan, Server HTML, dan Server Database) yang diinstal dalam satu Wilayah AWS.
+ Peran AWS Identity and Access Management (IAM) untuk menyiapkan layanan Elastic Disaster Recovery.
+ Jaringan untuk menjalankan Elastic Disaster Recovery dikonfigurasi sesuai dengan [pengaturan konektivitas](https://docs.aws.amazon.com/drs/latest/userguide/Network-Requirements.html) yang diperlukan.

**Batasan**
+ Anda dapat menggunakan pola ini untuk mereplikasi semua tingkatan, kecuali database di-host di Amazon Relational Database Service (Amazon RDS), dalam hal ini kami menyarankan Anda menggunakan fungsionalitas [salinan lintas wilayah](https://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/USER_CopySnapshot.html) Amazon RDS.
+ Elastic Disaster Recovery tidak kompatibel dengan CloudEndure Disaster Recovery, tetapi Anda dapat meningkatkan dari CloudEndure Disaster Recovery. Untuk informasi selengkapnya, lihat [FAQ](https://docs.aws.amazon.com/drs/latest/userguide/cedr-to-drs.html) di dokumentasi Elastic Disaster Recovery.
+ Amazon Elastic Block Store (Amazon EBS) membatasi tingkat di mana Anda dapat mengambil foto. Anda dapat mereplikasi jumlah maksimum 300 server dalam satu akun AWS dengan menggunakan Elastic Disaster Recovery. Untuk mereplikasi lebih banyak server, Anda dapat menggunakan beberapa akun AWS atau beberapa Wilayah AWS target. (Anda harus mengatur Elastic Disaster Recovery secara terpisah untuk setiap akun dan Wilayah.) Untuk informasi selengkapnya, lihat [Praktik terbaik](https://docs.aws.amazon.com/drs/latest/userguide/best_practices_drs.html) dalam dokumentasi Pemulihan Bencana Elastis.
+ Beban kerja sumber ( EnterpriseOne aplikasi dan database JD Edwards) harus di-host pada instans EC2. Pola ini tidak mendukung beban kerja yang ada di tempat atau di lingkungan cloud lainnya.
+ Pola ini berfokus pada komponen JD Edwards EnterpriseOne . DR lengkap dan rencana kelangsungan bisnis (BCP) harus mencakup layanan inti lainnya, termasuk:
  + Jaringan (cloud pribadi virtual, subnet, dan grup keamanan)
  + Active Directory
  + Amazon WorkSpaces
  + Elastic Load Balancing
  + Layanan database terkelola seperti Amazon Relational Database Service (Amazon RDS)

[Untuk informasi tambahan tentang prasyarat, konfigurasi, dan batasan, lihat dokumentasi Pemulihan Bencana Elastis.](https://docs.aws.amazon.com/drs/latest/userguide/what-is-drs.html)

**Versi produk**
+ Oracle JD Edwards EnterpriseOne (versi yang didukung Oracle dan SQL Server berdasarkan Persyaratan Teknis Minimum Oracle)

## Arsitektur
<a name="set-up-disaster-recovery-for-oracle-jd-edwards-enterpriseone-with-aws-elastic-disaster-recovery-architecture"></a>

**Tumpukan teknologi target**
+ Wilayah tunggal dan cloud pribadi virtual tunggal (VPC) untuk produksi dan non-produksi, dan Wilayah kedua untuk DR
+ Zona Ketersediaan Tunggal untuk memastikan latensi rendah antar server
+ Application Load Balancer yang mendistribusikan lalu lintas jaringan untuk meningkatkan skalabilitas dan ketersediaan aplikasi Anda di beberapa Availability Zone
+ Amazon Route 53 untuk menyediakan konfigurasi Sistem Nama Domain (DNS)
+ Amazon WorkSpaces untuk menyediakan pengguna dengan pengalaman desktop di cloud
+ Amazon Simple Storage Service (Amazon S3) untuk menyimpan backup, file, dan objek
+ Amazon CloudWatch untuk pencatatan aplikasi, pemantauan, dan alarm
+ Amazon Elastic Disaster Recovery untuk pemulihan bencana

**Arsitektur target**

Diagram berikut menunjukkan arsitektur pemulihan bencana lintas wilayah untuk JD Edwards EnterpriseOne menggunakan Elastic Disaster Recovery.

![\[Arsitektur untuk JD Edwards EnterpriseOne Lintas wilayah DR di AWS\]](http://docs.aws.amazon.com/id_id/prescriptive-guidance/latest/patterns/images/pattern-img/9b0de5f0-f211-4086-a044-321d081604f9/images/978b7219-e54e-4e31-b3ff-4885784e2971.png)


**Prosedur**

Berikut adalah tinjauan tingkat tinggi dari proses tersebut. Untuk detailnya, lihat bagian *Epik*.
+ Replikasi Elastic Disaster Recovery dimulai dengan sinkronisasi awal. Selama sinkronisasi awal, AWS Replication Agent mereplikasi semua data dari disk sumber ke sumber daya yang sesuai di subnet area pementasan.
+ Replikasi berkelanjutan berlanjut tanpa batas waktu setelah sinkronisasi awal selesai.
+ Anda meninjau parameter peluncuran, yang mencakup konfigurasi khusus layanan dan templat peluncuran Amazon EC2, setelah agen diinstal dan replikasi dimulai. Ketika server sumber ditunjukkan sebagai siap untuk pemulihan, Anda dapat memulai instance.
+ Saat Elastic Disaster Recovery mengeluarkan serangkaian panggilan API untuk memulai operasi peluncuran, instans pemulihan segera diluncurkan di AWS sesuai dengan pengaturan peluncuran Anda. Layanan ini secara otomatis memutar server konversi selama startup.
+ Instans baru diputar di AWS setelah konversi selesai dan siap digunakan. Status server sumber pada saat peluncuran diwakili oleh volume yang terkait dengan instance yang diluncurkan. Proses konversi melibatkan perubahan pada driver, jaringan, dan lisensi sistem operasi untuk memastikan bahwa instans melakukan booting secara native di AWS.
+ Setelah peluncuran, volume yang baru dibuat tidak lagi disinkronkan dengan server sumber. AWS Replication Agent terus secara rutin mereplikasi perubahan yang dilakukan pada server sumber Anda ke volume area pementasan, tetapi instance yang diluncurkan tidak mencerminkan perubahan tersebut.
+ Ketika Anda memulai contoh latihan atau pemulihan baru, data selalu tercermin dalam keadaan terbaru yang telah direplikasi dari server sumber ke subnet area pementasan.
+ Ketika server sumber ditandai sebagai sedang dipersiapkan untuk pemulihan, Anda dapat memulai instance.

**catatan**  
Prosesnya bekerja dua arah: untuk failover dari Wilayah AWS utama ke Wilayah DR, dan gagal kembali ke situs utama, ketika telah dipulihkan. Anda dapat mempersiapkan failback dengan membalikkan arah replikasi data dari mesin target kembali ke mesin sumber dengan cara yang diatur sepenuhnya.

Manfaat dari proses ini yang dijelaskan dalam pola ini meliputi:
+ Fleksibilitas: Server replikasi skala dan skala berdasarkan dataset dan waktu replikasi, sehingga Anda dapat melakukan tes DR tanpa mengganggu beban kerja sumber atau replikasi.
+ Keandalan: Replikasi kuat, tidak mengganggu, dan berkelanjutan.
+ Otomatisasi: Solusi ini menyediakan proses terpadu dan otomatis untuk pengujian, pemulihan, dan kegagalan kembali.
+ Optimalisasi biaya: Anda hanya dapat mereplikasi volume yang dibutuhkan dan membayarnya, dan membayar sumber daya komputasi di situs DR hanya ketika sumber daya tersebut diaktifkan. Anda dapat menggunakan instance replikasi yang dioptimalkan biaya (sebaiknya gunakan jenis instans yang dioptimalkan komputasi) untuk beberapa sumber atau satu sumber dengan volume EBS yang besar.

**Otomatisasi dan skala**

Ketika Anda melakukan pemulihan bencana dalam skala besar, EnterpriseOne server JD Edwards akan memiliki dependensi pada server lain di lingkungan. Contoh:
+ Server EnterpriseOne aplikasi JD Edwards yang terhubung ke database yang EnterpriseOne didukung JD Edwards saat boot memiliki dependensi pada database itu.
+  EnterpriseOne Server JD Edwards yang memerlukan otentikasi dan perlu terhubung ke pengontrol domain saat boot untuk memulai layanan memiliki ketergantungan pada pengontrol domain.

Untuk alasan ini, kami menyarankan Anda mengotomatiskan tugas failover. Misalnya, Anda dapat menggunakan AWS Lambda atau AWS Step Functions untuk mengotomatiskan skrip EnterpriseOne startup JD Edwards dan perubahan penyeimbang beban untuk mengotomatiskan proses failover. end-to-end Untuk informasi selengkapnya, lihat posting blog [Membuat rencana pemulihan bencana yang dapat diskalakan dengan AWS Elastic Disaster Recovery](https://aws.amazon.com/blogs/storage/creating-a-scalable-disaster-recovery-plan-with-aws-elastic-disaster-recovery/).

## Alat
<a name="set-up-disaster-recovery-for-oracle-jd-edwards-enterpriseone-with-aws-elastic-disaster-recovery-tools"></a>

**Layanan AWS**
+ [Amazon Elastic Block Store (Amazon EBS](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/AmazonEBS.html)) menyediakan volume penyimpanan tingkat blok untuk digunakan dengan instans EC2.
+ [Amazon Elastic Compute Cloud (Amazon EC2) menyediakan kapasitas](https://aws.amazon.com/products/compute/) komputasi yang dapat diskalakan di AWS Cloud. Anda dapat meluncurkan server virtual sebanyak yang Anda butuhkan dan dengan cepat meningkatkannya ke atas atau ke bawah.
+ [AWS Elastic Disaster Recovery](https://aws.amazon.com/disaster-recovery/) meminimalkan waktu henti dan kehilangan data dengan pemulihan aplikasi berbasis cloud dan lokal yang cepat dan andal menggunakan penyimpanan yang terjangkau, komputasi minimal, dan pemulihan. point-in-time
+ [Amazon Virtual Private Cloud (Amazon VPC)](https://aws.amazon.com/vpc/) memberi Anda kontrol penuh atas lingkungan jaringan virtual Anda, termasuk penempatan sumber daya, konektivitas, dan keamanan.

## Praktik terbaik
<a name="set-up-disaster-recovery-for-oracle-jd-edwards-enterpriseone-with-aws-elastic-disaster-recovery-best-practices"></a>

**Praktik terbaik umum**
+ Miliki rencana tertulis tentang apa yang harus dilakukan jika terjadi peristiwa pemulihan yang nyata.
+ Setelah Anda mengatur Elastic Disaster Recovery dengan benar, buat CloudFormation template AWS yang dapat membuat konfigurasi sesuai permintaan, jika diperlukan. Tentukan urutan di mana server dan aplikasi harus diluncurkan, dan catat ini dalam rencana pemulihan.
+ Lakukan latihan reguler (tarif Amazon EC2 standar berlaku).
+ Pantau kesehatan replikasi yang sedang berlangsung dengan menggunakan konsol Elastic Disaster Recovery atau secara terprogram.
+ Lindungi point-in-time snapshot dan konfirmasikan sebelum menghentikan instance.
+ Buat peran IAM untuk instalasi AWS Replication Agent.
+ Aktifkan perlindungan terminasi untuk instance pemulihan dalam skenario DR nyata.
+ Jangan gunakan tindakan **Putuskan sambungan dari AWS** di konsol Elastic Disaster Recovery untuk server tempat Anda meluncurkan instans pemulihan, bahkan dalam kasus peristiwa pemulihan nyata. Melakukan pemutusan akan menghentikan semua sumber daya replikasi yang terkait dengan server sumber ini, termasuk titik pemulihan point-in-time (PIT) Anda.
+ Ubah kebijakan PIT untuk mengubah jumlah hari penyimpanan snapshot.
+ Edit template peluncuran di pengaturan peluncuran Elastic Disaster Recovery untuk mengatur subnet, grup keamanan, dan jenis instans yang benar untuk server target Anda.
+ Otomatiskan proses end-to-end failover dengan menggunakan Lambda atau Step Functions untuk mengotomatiskan skrip startup JD Edwards EnterpriseOne dan perubahan penyeimbang beban.

** EnterpriseOne Optimalisasi dan pertimbangan JD Edwards**
+ Pindah **PrintQueue**ke database.
+ Pindah **MediaObjects**ke database.
+ Kecualikan log dan folder temp dari server batch dan logika.
+ Kecualikan folder temp dari WebLogic Oracle.
+ Buat skrip untuk startup setelah failover.
+ Kecualikan tempdb untuk SQL Server.
+ Kecualikan file temp untuk Oracle.

## Epik
<a name="set-up-disaster-recovery-for-oracle-jd-edwards-enterpriseone-with-aws-elastic-disaster-recovery-epics"></a>

### Lakukan tugas dan konfigurasi awal
<a name="perform-initial-tasks-and-configuration"></a>


| Tugas | Deskripsi | Keterampilan yang dibutuhkan | 
| --- | --- | --- | 
| Siapkan jaringan replikasi.  | Terapkan EnterpriseOne sistem JD Edwards Anda di Wilayah AWS utama dan identifikasi Wilayah AWS untuk DR. Ikuti langkah-langkah di bagian [persyaratan jaringan Replikasi](https://docs.aws.amazon.com/drs/latest/userguide/preparing-environments.html) pada dokumentasi Pemulihan Bencana Elastis untuk merencanakan dan menyiapkan replikasi dan jaringan DR Anda. | Administrator AWS | 
| Tentukan RPO dan RTO. | Identifikasi tujuan waktu pemulihan (RTO) dan tujuan titik pemulihan (RPO) untuk server aplikasi dan database Anda. | Arsitek awan, arsitek DR | 
| Aktifkan replikasi untuk Amazon EFS. | Jika berlaku, aktifkan replikasi dari AWS primer ke Wilayah DR untuk sistem file bersama seperti Amazon Elastic File System (Amazon EFS) dengan menggunakan AWS DataSync, **rsync**, atau alat lain yang sesuai. | Administrator awan | 
| Kelola DNS dalam kasus DR. | Identifikasi proses untuk memperbarui Sistem Nama Domain (DNS) selama latihan DR atau DR. | Administrator awan | 
| Buat peran IAM untuk penyiapan. | Ikuti petunjuk di bagian [inisialisasi dan izin Pemulihan Bencana Elastis](https://docs.aws.amazon.com/drs/latest/userguide/getting-started-initializing.html) pada dokumentasi Pemulihan Bencana Elastis untuk membuat peran IAM guna menginisialisasi dan mengelola layanan AWS. | Administrator awan | 
| Siapkan pengintip VPC. | Pastikan bahwa sumber dan target VPCs diintip dan dapat diakses satu sama lain. Untuk petunjuk konfigurasi, lihat dokumentasi [Amazon VPC](https://docs.aws.amazon.com/vpc/latest/peering/what-is-vpc-peering.html). | Administrator AWS | 

### Konfigurasikan pengaturan replikasi Pemulihan Bencana Elastis
<a name="configure-elastic-disaster-recovery-replication-settings"></a>


| Tugas | Deskripsi | Keterampilan yang dibutuhkan | 
| --- | --- | --- | 
| Inisialisasi Pemulihan Bencana Elastis. | Buka [konsol Elastic Disaster Recovery](https://console.aws.amazon.com/drs/home), pilih Wilayah AWS target (tempat Anda akan mereplikasi data dan meluncurkan instans pemulihan), lalu pilih **Setel pengaturan replikasi default**. | Administrator AWS | 
| Siapkan server replikasi. | [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/id_id/prescriptive-guidance/latest/patterns/set-up-disaster-recovery-for-oracle-jd-edwards-enterpriseone-with-aws-elastic-disaster-recovery.html) | Administrator AWS | 
| Konfigurasikan volume dan grup keamanan. | [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/id_id/prescriptive-guidance/latest/patterns/set-up-disaster-recovery-for-oracle-jd-edwards-enterpriseone-with-aws-elastic-disaster-recovery.html) | Administrator AWS | 
| Konfigurasikan pengaturan tambahan. | [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/id_id/prescriptive-guidance/latest/patterns/set-up-disaster-recovery-for-oracle-jd-edwards-enterpriseone-with-aws-elastic-disaster-recovery.html) | Administrator AWS | 

### Instal Agen Replikasi AWS
<a name="install-the-aws-replication-agent"></a>


| Tugas | Deskripsi | Keterampilan yang dibutuhkan | 
| --- | --- | --- | 
| Buat peran IAM. | Buat peran IAM yang berisi `AWSElasticDisasterRecoveryAgentInstallationPolicy` kebijakan. Di bagian **Select AWS Access Type**, aktifkan akses terprogram. Perhatikan ID kunci akses dan kunci akses rahasia. Anda akan memerlukan informasi ini selama penginstalan AWS Replication Agent. | Administrator AWS | 
| Periksa persyaratan. | Periksa dan lengkapi [prasyarat](https://docs.aws.amazon.com/drs/latest/userguide/installation-requiremets.html) dalam dokumentasi Elastic Disaster Recovery untuk menginstal AWS Replication Agent. | Administrator AWS | 
| Instal AWS Replication Agent. | Ikuti [instruksi penginstalan](https://docs.aws.amazon.com/drs/latest/userguide/agent-installation-instructions.html) untuk sistem operasi Anda dan instal AWS Replication Agent.[\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/id_id/prescriptive-guidance/latest/patterns/set-up-disaster-recovery-for-oracle-jd-edwards-enterpriseone-with-aws-elastic-disaster-recovery.html)Ulangi langkah-langkah ini untuk server yang tersisa. | Administrator AWS | 
| Pantau replikasi. | Kembali ke panel **server Elastic Disaster Recovery Source** untuk memantau status replikasi. Sinkronisasi awal akan memakan waktu tergantung pada ukuran transfer data.Ketika server sumber sepenuhnya disinkronkan, status server akan diperbarui ke **Siap**. Ini berarti bahwa server replikasi telah dibuat di area pementasan, dan volume EBS telah direplikasi dari server sumber ke area pementasan. | Administrator AWS | 

### Mengonfigurasi pengaturan peluncuran
<a name="configure-launch-settings"></a>


| Tugas | Deskripsi | Keterampilan yang dibutuhkan | 
| --- | --- | --- | 
| Edit pengaturan peluncuran. | Untuk memperbarui pengaturan peluncuran untuk instance drill dan recovery, pada [konsol Elastic Disaster Recovery](https://console.aws.amazon.com/drs/home), pilih server sumber, lalu pilih **Actions**, **Edit launch settings**. Atau Anda dapat memilih mesin sumber replikasi Anda dari halaman **server Sumber**, lalu pilih tab **Launch Settings**. Tab ini memiliki dua bagian: **Pengaturan peluncuran umum** dan **templat peluncuran EC2**. | Administrator AWS | 
| Konfigurasikan pengaturan peluncuran umum. | Merevisi pengaturan peluncuran umum sesuai dengan kebutuhan Anda.[\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/id_id/prescriptive-guidance/latest/patterns/set-up-disaster-recovery-for-oracle-jd-edwards-enterpriseone-with-aws-elastic-disaster-recovery.html)Untuk informasi selengkapnya, lihat [Pengaturan peluncuran umum](https://docs.aws.amazon.com/drs/latest/userguide/launch-general-settings.html) di dokumentasi Elastic Disaster Recovery. | Administrator AWS | 
| Konfigurasikan template peluncuran Amazon EC2. | Elastic Disaster Recovery menggunakan template peluncuran Amazon EC2 untuk meluncurkan instans bor dan pemulihan untuk setiap server sumber. Template peluncuran dibuat secara otomatis untuk setiap server sumber yang Anda tambahkan ke Elastic Disaster Recovery setelah Anda menginstal AWS Replication Agent.Anda harus mengatur template peluncuran Amazon EC2 sebagai templat peluncuran default jika Anda ingin menggunakannya dengan Elastic Disaster Recovery.Untuk informasi selengkapnya, lihat [EC2 Launch Template](https://docs.aws.amazon.com/drs/latest/userguide/ec2-launch.html) di dokumentasi Elastic Disaster Recovery. | Administrator AWS | 

### Memulai bor DR dan failover
<a name="initiate-dr-drill-and-failover"></a>


| Tugas | Deskripsi | Keterampilan yang dibutuhkan | 
| --- | --- | --- | 
| Memulai Bor | [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/id_id/prescriptive-guidance/latest/patterns/set-up-disaster-recovery-for-oracle-jd-edwards-enterpriseone-with-aws-elastic-disaster-recovery.html)Untuk informasi selengkapnya, lihat [Mempersiapkan failover](https://docs.aws.amazon.com/drs/latest/userguide/failback-preparing.html) dalam dokumentasi Elastic Disaster Recovery. | Administrator AWS | 
| Validasi bor. | Pada langkah sebelumnya, Anda meluncurkan instance target baru di Wilayah DR. Instance target adalah replika server sumber berdasarkan snapshot yang diambil saat Anda memulai peluncuran.Dalam prosedur ini, Anda terhubung ke mesin target Amazon EC2 untuk mengonfirmasi bahwa mesin tersebut berjalan seperti yang diharapkan.[\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/id_id/prescriptive-guidance/latest/patterns/set-up-disaster-recovery-for-oracle-jd-edwards-enterpriseone-with-aws-elastic-disaster-recovery.html) |  | 
| Memulai failover. | Failover adalah pengalihan lalu lintas dari sistem primer ke sistem sekunder. Elastic Disaster Recovery membantu Anda melakukan failover dengan meluncurkan instans pemulihan di AWS. Ketika instans pemulihan telah diluncurkan, Anda mengarahkan lalu lintas dari sistem utama Anda ke instans ini.[\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/id_id/prescriptive-guidance/latest/patterns/set-up-disaster-recovery-for-oracle-jd-edwards-enterpriseone-with-aws-elastic-disaster-recovery.html)Untuk informasi selengkapnya, lihat [Melakukan failover](https://docs.aws.amazon.com/drs/latest/userguide/failback-preparing-failover.html) dalam dokumentasi Elastic Disaster Recovery. | Administrator AWS | 
| Memulai kegagalan kembali. | Proses untuk memulai failback mirip dengan proses untuk memulai failover.[\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/id_id/prescriptive-guidance/latest/patterns/set-up-disaster-recovery-for-oracle-jd-edwards-enterpriseone-with-aws-elastic-disaster-recovery.html)Untuk informasi selengkapnya, lihat [Melakukan failback](https://docs.aws.amazon.com/drs/latest/userguide/failback-performing-main.html) dalam dokumentasi Elastic Disaster Recovery. | Administrator AWS | 
| Mulai komponen JD Edwards EnterpriseOne . | [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/id_id/prescriptive-guidance/latest/patterns/set-up-disaster-recovery-for-oracle-jd-edwards-enterpriseone-with-aws-elastic-disaster-recovery.html)Anda harus memasukkan perubahan di Route 53 dan Application Load Balancer agar tautan JD Edwards berfungsi EnterpriseOne .Anda dapat mengotomatiskan langkah-langkah ini dengan menggunakan Lambda, Step Functions, dan Systems Manager (Run Command).Elastic Disaster Recovery melakukan replikasi tingkat blok dari volume EBS instans EC2 sumber yang menampung sistem operasi dan sistem file. Sistem file bersama yang dibuat dengan menggunakan Amazon EFS bukan bagian dari replikasi ini. Anda dapat mereplikasi sistem file bersama ke Wilayah DR dengan menggunakan AWS DataSync, seperti yang dicatat dalam epik pertama, dan kemudian memasang sistem file yang direplikasi ini di sistem DR. | JD Edwards CNC EnterpriseOne  | 

## Pemecahan masalah
<a name="set-up-disaster-recovery-for-oracle-jd-edwards-enterpriseone-with-aws-elastic-disaster-recovery-troubleshooting"></a>


| Isu | Solusi | 
| --- | --- | 
| Status replikasi data server sumber **terhenti dan replikasi tertinggal**. Jika Anda memeriksa detail, status replikasi data menampilkan **Agen tidak terlihat**. | Periksa untuk mengonfirmasi bahwa server sumber yang macet sedang berjalan.Jika server sumber turun, server replikasi secara otomatis dihentikan.Untuk informasi selengkapnya tentang masalah lag, lihat [Masalah lag replikasi](https://docs.aws.amazon.com/drs/latest/userguide/Other-Troubleshooting-Topics.html#Replication-Lag-Issues) dalam dokumentasi Elastic Disaster Recovery. | 
| Instalasi AWS Replication Agent di instans EC2 sumber gagal di RHEL 8.2 setelah memindai disk. `aws_replication_agent_installer.log`mengungkapkan bahwa header kernel hilang. | Sebelum Anda menginstal AWS Replication Agent di RHEL 8, CentOS 8, atau Oracle Linux 8, jalankan:<pre>sudo yum install elfutils-libelf-devel</pre>Untuk informasi selengkapnya, lihat [persyaratan instalasi Linux](https://docs.aws.amazon.com/mgn/latest/ug/installation-requirements.html#linux-requirements) dalam dokumentasi Elastic Disaster Recovery. | 
| Pada konsol Elastic Disaster Recovery, Anda melihat server sumber sebagai **Siap** dengan lag dan status replikasi data sebagai **Stalled**.Bergantung pada berapa lama Agen Replikasi AWS tidak tersedia, statusnya mungkin menunjukkan kelambatan yang tinggi, tetapi masalahnya tetap sama. | Gunakan perintah sistem operasi untuk mengonfirmasi bahwa AWS Replication Agent berjalan di instans EC2 sumber, atau konfirmasikan bahwa instans sedang berjalan.Setelah Anda memperbaiki masalah apa pun, Elastic Disaster Recovery akan memulai kembali pemindaian. Tunggu hingga semua data telah disinkronkan dan status replikasi **Sehat** sebelum Anda memulai latihan DR. | 
| Replikasi awal dengan lag tinggi. Pada konsol Elastic Disaster Recovery, Anda dapat melihat bahwa status sinkronisasi awal sangat lambat untuk server sumber. | Periksa masalah kelambatan replikasi yang didokumentasikan di bagian [Masalah lag replikasi](https://docs.aws.amazon.com/drs/latest/userguide/Other-Troubleshooting-Topics.html#Replication-Lag-Issues) pada dokumentasi Elastic Disaster Recovery.Server replikasi mungkin tidak dapat menangani beban karena operasi komputasi intrinsik. Jika demikian, coba tingkatkan jenis instans setelah berkonsultasi dengan [tim AWS Technical Support](https://support.console.aws.amazon.com/support/). | 

## Sumber daya terkait
<a name="set-up-disaster-recovery-for-oracle-jd-edwards-enterpriseone-with-aws-elastic-disaster-recovery-resources"></a>
+ [Panduan Pengguna AWS Elastic Disaster Recovery](https://docs.aws.amazon.com/drs/latest/userguide/what-is-drs.html)
+ [Membuat rencana pemulihan bencana yang dapat diskalakan dengan AWS Elastic Disaster Recovery](https://aws.amazon.com/blogs/storage/creating-a-scalable-disaster-recovery-plan-with-aws-elastic-disaster-recovery/) (postingan blog AWS)
+ [AWS Elastic Disaster Recovery - Pengantar Teknis](https://explore.skillbuilder.aws/learn/course/internal/view/elearning/11123/aws-elastic-disaster-recovery-a-technical-introduction) (kursus AWS Skill Builder; memerlukan login)
+ [Panduan memulai cepat AWS Elastic Disaster Recovery](https://docs.aws.amazon.com/drs/latest/userguide/quick-start-guide-gs.html)

# Mengatur deteksi CloudFormation drift di organisasi multi-wilayah dan multi-akun
<a name="set-up-aws-cloudformation-drift-detection-in-a-multi-region-multi-account-organization"></a>

*Ram Kandaswamy, Amazon Web Services*

## Ringkasan
<a name="set-up-aws-cloudformation-drift-detection-in-a-multi-region-multi-account-organization-summary"></a>

Pengguna Amazon Web Services (AWS) sering mencari cara yang efisien untuk mendeteksi ketidakcocokan konfigurasi sumber daya, termasuk drift dalam AWS CloudFormation tumpukan, dan memperbaikinya sesegera mungkin. Ini terutama terjadi ketika AWS Control Tower digunakan.

Pola ini memberikan solusi preskriptif yang secara efisien memecahkan masalah dengan menggunakan perubahan konfigurasi sumber daya terkonsolidasi dan bertindak atas perubahan tersebut untuk menghasilkan hasil. Solusi ini dirancang untuk skenario di mana ada beberapa CloudFormation tumpukan yang dibuat di lebih dari satu Wilayah AWS, atau di lebih dari satu akun, atau kombinasi keduanya. Tujuan solusinya adalah sebagai berikut:
+ Sederhanakan proses deteksi drift
+ Siapkan notifikasi dan peringatan
+ Menyiapkan pelaporan konsolidasi

## Prasyarat dan batasan
<a name="set-up-aws-cloudformation-drift-detection-in-a-multi-region-multi-account-organization-prereqs"></a>

**Prasyarat**
+ AWS Config diaktifkan di semua Wilayah dan akun yang harus dipantau

**Batasan**
+ Laporan yang dihasilkan hanya mendukung format output nilai yang dipisahkan koma (CSV) dan JSON.

## Arsitektur
<a name="set-up-aws-cloudformation-drift-detection-in-a-multi-region-multi-account-organization-architecture"></a>

Diagram berikut menunjukkan AWS Organizations pengaturan dengan beberapa akun. AWS Config aturan berkomunikasi antar akun.  

![\[Proses lima langkah untuk memantau tumpukan di dua akun AWS Organizations.\]](http://docs.aws.amazon.com/id_id/prescriptive-guidance/latest/patterns/images/pattern-img/735d0987-b953-47f8-a9bc-b02a88957ee5/images/340cee9a-5a4e-49ea-bd73-d37dcea5e098.png)


 Alur kerja mencakup langkah-langkah berikut:

1.  AWS Config Aturan mendeteksi penyimpangan.

1. Hasil deteksi drift yang ditemukan di akun lain dikirim ke akun manajemen.

1.  CloudWatch Aturan Amazon memanggil AWS Lambda fungsi.

1. Fungsi Lambda menanyakan AWS Config aturan untuk hasil agregat.

1. Fungsi Lambda memberi tahu Amazon Simple Notification Service (Amazon SNS), yang mengirimkan pemberitahuan email tentang drift.

**Otomatisasi dan skala**

Solusi yang disajikan di sini dapat menskalakan untuk Wilayah dan akun tambahan.

## Alat
<a name="set-up-aws-cloudformation-drift-detection-in-a-multi-region-multi-account-organization-tools"></a>

**Layanan AWS**
+ [AWS Config](https://docs.aws.amazon.com/config/latest/developerguide/WhatIsConfig.html)memberikan tampilan rinci tentang konfigurasi AWS sumber daya di Anda Akun AWS. Ini mencakup bagaimana sumber daya terkait satu sama lain dan bagaimana sumber daya tersebut dikonfigurasi di masa lalu sehingga Anda dapat melihat bagaimana konfigurasi dan hubungan berubah dari waktu ke waktu.
+ [Amazon CloudWatch](https://docs.aws.amazon.com/AmazonCloudWatch/latest/monitoring/WhatIsCloudWatch.html) membantu Anda memantau metrik sumber AWS daya Anda dan aplikasi yang Anda jalankan AWS secara real time.
+ [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 Simple Notification Service (Amazon SNS](https://docs.aws.amazon.com/sns/latest/dg/welcome.html)) membantu Anda mengoordinasikan dan mengelola pertukaran pesan antara penayang dan klien, termasuk server web dan alamat email.

## Epik
<a name="set-up-aws-cloudformation-drift-detection-in-a-multi-region-multi-account-organization-epics"></a>

### Mengotomatiskan deteksi drift untuk CloudFormation
<a name="automate-drift-detection-for-cfn"></a>


| Tugas | Deskripsi | Keterampilan yang dibutuhkan | 
| --- | --- | --- | 
| Buat agregator. | [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/id_id/prescriptive-guidance/latest/patterns/set-up-aws-cloudformation-drift-detection-in-a-multi-region-multi-account-organization.html) | Arsitek awan | 
| Buat aturan AWS terkelola. | Tambahkan aturan `cloudformation-stack-drift-detection-check` AWS**** terkelola. Aturan membutuhkan satu nilai parameter:`cloudformationArn`. Masukkan peran IAM Amazon Resource Name (ARN) yang memiliki izin untuk mendeteksi stack drift. Peran harus memiliki kebijakan kepercayaan yang memungkinkan AWS Config untuk mengambil peran. | Arsitek awan | 
| Buat bagian kueri lanjutan dari agregator. | Untuk mengambil tumpukan hanyut dari berbagai sumber, buat kueri berikut:<pre>SELECT resourceId, configuration.driftInformation.stackDriftStatus WHERE resourceType = 'AWS::CloudFormation::Stack'  AND configuration.driftInformation.stackDriftStatus IN ('DRIFTED')</pre> | Arsitek awan, Pengembang | 
| Mengotomatiskan menjalankan kueri dan mempublikasikan. | [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/id_id/prescriptive-guidance/latest/patterns/set-up-aws-cloudformation-drift-detection-in-a-multi-region-multi-account-organization.html) | Arsitek awan, Pengembang | 
| Buat CloudWatch aturan. | Buat CloudWatch aturan berbasis jadwal untuk memanggil fungsi Lambda, yang bertanggung jawab untuk memperingatkan. | Arsitek awan | 

## Sumber daya terkait
<a name="set-up-aws-cloudformation-drift-detection-in-a-multi-region-multi-account-organization-resources"></a>

**Sumber**
+ [Apa itu AWS Config?](https://docs.aws.amazon.com/config/latest/developerguide/WhatIsConfig.html)
+ [Agregasi data multi-wilayah multi-akun](https://docs.aws.amazon.com/config/latest/developerguide/aggregate-data.html)
+ [Mendeteksi perubahan konfigurasi yang tidak terkelola pada tumpukan dan sumber daya](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-stack-drift.html)
+ [IAM: Lulus peran IAM ke peran tertentu Layanan AWS](https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_policies_examples_iam-passrole-service.html)
+ [Apa itu Amazon SNS?](https://docs.aws.amazon.com/sns/latest/dg/welcome.html)

## Informasi tambahan
<a name="set-up-aws-cloudformation-drift-detection-in-a-multi-region-multi-account-organization-additional"></a>

**Pertimbangan-pertimbangan**

Sebaiknya gunakan solusi yang disajikan dalam pola ini daripada menggunakan solusi khusus yang melibatkan panggilan API pada interval tertentu untuk memulai deteksi drift pada setiap kumpulan CloudFormation tumpukan atau tumpukan. Solusi khusus yang menggunakan panggilan API pada interval tertentu dapat menyebabkan sejumlah besar panggilan API dan memengaruhi kinerja. Karena jumlah panggilan API, pelambatan dapat terjadi. Masalah potensial lainnya adalah keterlambatan deteksi jika perubahan sumber daya diidentifikasi hanya berdasarkan jadwal.

Karena set tumpukan terbuat dari tumpukan, Anda dapat menggunakan solusi ini. Detail instance stack juga tersedia sebagai bagian dari solusi.

## Lampiran
<a name="attachments-735d0987-b953-47f8-a9bc-b02a88957ee5"></a>

[Untuk mengakses konten tambahan yang terkait dengan dokumen ini, unzip file berikut: attachment.zip](samples/p-attach/735d0987-b953-47f8-a9bc-b02a88957ee5/attachments/attachment.zip)

# Berhasil mengimpor bucket S3 sebagai tumpukan AWS CloudFormation
<a name="successfully-import-an-s3-bucket-as-an-aws-cloudformation-stack"></a>

*Ram Kandaswamy, Amazon Web Services*

## Ringkasan
<a name="successfully-import-an-s3-bucket-as-an-aws-cloudformation-stack-summary"></a>

Jika Anda menggunakan sumber daya Amazon Web Services (AWS), seperti bucket Amazon Simple Storage Service (Amazon S3) Simple Storage Service (Amazon S3), dan ingin menggunakan pendekatan infrastruktur sebagai kode (IAc), Anda dapat mengimpor sumber daya ke CloudFormation AWS dan mengelolanya sebagai tumpukan.

Pola ini memberikan langkah-langkah untuk berhasil mengimpor bucket S3 sebagai CloudFormation tumpukan AWS. Dengan menggunakan pendekatan pola ini, Anda dapat menghindari kemungkinan kesalahan yang mungkin terjadi jika Anda mengimpor bucket S3 dalam satu tindakan.

## Prasyarat dan batasan
<a name="successfully-import-an-s3-bucket-as-an-aws-cloudformation-stack-prereqs"></a>

**Prasyarat**
+ Akun AWS yang aktif.
+ Bucket S3 dan kebijakan bucket S3 yang ada. Untuk informasi selengkapnya tentang ini, lihat [Kebijakan bucket S3 apa yang harus saya gunakan untuk mematuhi aturan AWS Config s3- bucket-ssl-requests-only di Pusat Pengetahuan](https://aws.amazon.com/premiumsupport/knowledge-center/s3-bucket-policy-for-config-rule/) AWS.
+ Kunci AWS Key Management Service (AWS KMS) yang ada dan aliasnya. Untuk informasi selengkapnya tentang ini, lihat [Bekerja dengan alias](https://docs.aws.amazon.com/kms/latest/developerguide/programming-aliases.html) dalam dokumentasi AWS KMS.
+ Contoh CloudFormation template `CloudFormation-template-S3-bucket` AWS (terlampir), diunduh ke komputer lokal Anda.

## Arsitektur
<a name="successfully-import-an-s3-bucket-as-an-aws-cloudformation-stack-architecture"></a>

![\[Alur kerja untuk menggunakan CloudFormation template untuk membuat CloudFormation tumpukan untuk mengimpor bucket S3.\]](http://docs.aws.amazon.com/id_id/prescriptive-guidance/latest/patterns/images/pattern-img/aea7f6fe-8e67-46c4-8b90-1ab06b879111/images/ee143374-a0a4-42d9-b7ca-16593a597a84.png)


 

Diagram menunjukkan alur kerja berikut:

1. Pengguna membuat template AWS berformat JSON atau YAML. CloudFormation 

1. Template membuat CloudFormation tumpukan AWS untuk mengimpor bucket S3.

1.  CloudFormation Tumpukan AWS mengelola bucket S3 yang Anda tentukan dalam template.

**Tumpukan teknologi**
+ AWS CloudFormation
+ AWS Identity and Access Management (IAM)
+ AWS KMS
+ Amazon S3

 

**Alat**
+ [AWS CloudFormation](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/Welcome.html) — AWS CloudFormation membantu Anda membuat dan menyediakan penerapan infrastruktur AWS secara dapat diprediksi dan berulang kali.
+ [AWS Identity and Access Management (IAM)](https://docs.aws.amazon.com/IAM/latest/UserGuide/introduction.html) — IAM adalah layanan web untuk mengontrol akses ke layanan AWS secara aman.
+ [AWS KMS](https://docs.aws.amazon.com/kms/latest/developerguide/overview.html) — AWS Key Management Service (AWS KMS) adalah layanan enkripsi dan manajemen kunci yang diskalakan untuk cloud.
+ [Amazon S3](https://docs.aws.amazon.com/AmazonS3/latest/userguide/Welcome.html) - Amazon Simple Storage Service (Amazon S3) Simple Storage Service adalah penyimpanan untuk Internet.

## Epik
<a name="successfully-import-an-s3-bucket-as-an-aws-cloudformation-stack-epics"></a>

### Impor bucket S3 dengan enkripsi AWS KMS key berbasis sebagai tumpukan AWS CloudFormation
<a name="import-an-s3-bucket-with-kms-key-long--based-encryption-as-an-aws-cloudformation-stack"></a>


| Tugas | Deskripsi | Keterampilan yang dibutuhkan | 
| --- | --- | --- | 
| Buat template untuk mengimpor bucket S3 dan kunci KMS. | Di komputer lokal Anda, buat template untuk mengimpor bucket S3 dan kunci KMS Anda dengan menggunakan contoh template berikut:<pre>AWSTemplateFormatVersion: 2010-09-09<br /><br />Parameters:<br /><br />  bucketName:<br /><br />    Type: String<br /><br />Resources:<br /><br />  S3Bucket:<br /><br />    Type: 'AWS::S3::Bucket'<br /><br />    DeletionPolicy: Retain<br /><br />    Properties:<br /><br />      BucketName: !Ref bucketName<br /><br />      BucketEncryption:<br /><br />        ServerSideEncryptionConfiguration:<br /><br />          - ServerSideEncryptionByDefault:<br /><br />              SSEAlgorithm: 'aws:kms'<br /><br />              KMSMasterKeyID: !GetAtt <br /><br />                - KMSS3Encryption<br /><br />                - Arn<br /><br />  KMSS3Encryption:<br /><br />    Type: 'AWS::KMS::Key'<br /><br />    DeletionPolicy: Retain<br /><br />    Properties:<br /><br />      Enabled: true<br /><br />      KeyPolicy: !Sub |-<br /><br />        {<br /><br />            "Id": "key-consolepolicy-3",<br /><br />            "Version": "2012-10-17",		 	 	 <br /><br />            "Statement": [<br /><br />                {<br /><br />                    "Sid": "Enable IAM User Permissions",<br /><br />                    "Effect": "Allow",<br /><br />                    "Principal": {<br /><br />                        "AWS": ["arn:aws:iam::${AWS::AccountId}:root"]<br /><br />                    },<br /><br />                    "Action": "kms:*",<br /><br />                    "Resource": "*"<br /><br />                }<br /><br />                }<br /><br />            ]<br /><br />        }<br /><br />      EnableKeyRotation: true</pre> | AWS DevOps | 
| Buat tumpukan. | [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/id_id/prescriptive-guidance/latest/patterns/successfully-import-an-s3-bucket-as-an-aws-cloudformation-stack.html) | AWS DevOps | 
| Buat alias kunci KMS. | [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/id_id/prescriptive-guidance/latest/patterns/successfully-import-an-s3-bucket-as-an-aws-cloudformation-stack.html)<pre>KMSS3EncryptionAlias:<br /><br />    Type: 'AWS::KMS::Alias'<br /><br />    DeletionPolicy: Retain<br /><br />    Properties: <br /><br />    AliasName: alias/S3BucketKey<br /><br />    TargetKeyId: !Ref KMSS3Encryption</pre>Untuk informasi selengkapnya tentang ini, lihat [pembaruan AWS CloudFormation stack](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks.html) di CloudFormation dokumentasi AWS.  | AWS DevOps | 
| Perbarui tumpukan untuk menyertakan kebijakan bucket S3. | [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/id_id/prescriptive-guidance/latest/patterns/successfully-import-an-s3-bucket-as-an-aws-cloudformation-stack.html)<pre>S3BucketPolicy:<br /><br />  Type: 'AWS::S3::BucketPolicy'<br /><br />  Properties:<br /><br />    Bucket: !Ref S3Bucket<br /><br />    PolicyDocument: !Sub |-<br /><br />      {<br /><br />                  "Version": "2008-10-17",		 	 	 <br /><br />                  "Id": "restricthttp",<br /><br />                  "Statement": [<br /><br />                      {<br /><br />                          "Sid": "denyhttp",<br /><br />                          "Effect": "Deny",<br /><br />                          "Principal": {<br /><br />                              "AWS": "*"<br /><br />                          },<br /><br />                          "Action": "s3:*",<br /><br />                          "Resource": ["arn:aws:s3:::${S3Bucket}","arn:aws:s3:::${S3Bucket}/*"],<br /><br />                          "Condition": {<br /><br />                              "Bool": {<br /><br />                                  "aws:SecureTransport": "false"<br /><br />                              }<br /><br />                          }<br /><br />                      }<br /><br />                  ]<br /><br />              }</pre>Kebijakan bucket S3 ini memiliki pernyataan penolakan yang membatasi panggilan API yang tidak aman.  | AWS DevOps | 
| Perbarui kebijakan utama. | [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/id_id/prescriptive-guidance/latest/patterns/successfully-import-an-s3-bucket-as-an-aws-cloudformation-stack.html)Untuk informasi selengkapnya, lihat [Kebijakan utama AWS KMS dalam](https://docs.aws.amazon.com/kms/latest/developerguide/key-policies.html) dokumentasi AWS KMS. | Administrator AWS | 
| Tambahkan tag tingkat sumber daya. | [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/id_id/prescriptive-guidance/latest/patterns/successfully-import-an-s3-bucket-as-an-aws-cloudformation-stack.html)<pre>Tags:<br /><br />  - Key: createdBy<br /><br />    Value: Cloudformation</pre> | AWS DevOps | 

## Sumber daya terkait
<a name="successfully-import-an-s3-bucket-as-an-aws-cloudformation-stack-resources"></a>
+ [Membawa sumber daya yang ada ke dalam CloudFormation manajemen AWS](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/resource-import.html)
+ [AWS re:Invent 2017: Menyelam jauh di CloudFormation AWS](https://www.youtube.com/watch?v=01hy48R9Kr8) (video)

## Lampiran
<a name="attachments-aea7f6fe-8e67-46c4-8b90-1ab06b879111"></a>

[Untuk mengakses konten tambahan yang terkait dengan dokumen ini, unzip file berikut: attachment.zip](samples/p-attach/aea7f6fe-8e67-46c4-8b90-1ab06b879111/attachments/attachment.zip)

# Sinkronisasi data antara sistem file Amazon EFS di Wilayah AWS yang berbeda dengan menggunakan AWS DataSync
<a name="synchronize-data-between-amazon-efs-file-systems-in-different-aws-regions-by-using-aws-datasync"></a>

*Sarat Chandra Pothula dan Aditya Ambati, Amazon Web Services*

## Ringkasan
<a name="synchronize-data-between-amazon-efs-file-systems-in-different-aws-regions-by-using-aws-datasync-summary"></a>

Solusi ini menyediakan kerangka kerja yang kuat untuk sinkronisasi data yang efisien dan aman antara instans Amazon Elastic File System (Amazon EFS) di Wilayah AWS yang berbeda. Pendekatan ini dapat diskalakan dan menyediakan replikasi data lintas wilayah yang terkontrol. Solusi ini dapat meningkatkan pemulihan bencana dan strategi redundansi data Anda.

Dengan menggunakan AWS Cloud Development Kit (AWS CDK), pola ini digunakan sebagai pendekatan infrastruktur sebagai kode (IAc) untuk menerapkan sumber daya solusi. Aplikasi AWS CDK menerapkan sumber daya AWS, DataSync Amazon EFS, Amazon Virtual Private Cloud (Amazon VPC), dan Amazon Elastic Compute Cloud (Amazon) yang penting. EC2 IAc ini menyediakan proses penerapan yang dapat diulang dan dikontrol versi yang sepenuhnya selaras dengan praktik terbaik AWS.

## Prasyarat dan batasan
<a name="synchronize-data-between-amazon-efs-file-systems-in-different-aws-regions-by-using-aws-datasync-prereqs"></a>

**Prasyarat**
+ Akun AWS yang aktif
+ [https://docs.aws.amazon.com/cli/latest/userguide/cli-chap-getting-started.html](https://docs.aws.amazon.com/cli/latest/userguide/cli-chap-getting-started.html)
+ [https://docs.aws.amazon.com/cdk/v2/guide/getting_started.html#getting_started_install](https://docs.aws.amazon.com/cdk/v2/guide/getting_started.html#getting_started_install)
+ [NodeJS versi 20.8.0 atau yang lebih baru, diinstal](https://nodejs.org/en/download)

**Batasan**
+ Solusi ini mewarisi batasan dari DataSync dan Amazon EFS, seperti kecepatan transfer data, batasan ukuran, dan ketersediaan regional. Untuk informasi selengkapnya, lihat [ DataSync kuota AWS](https://docs.aws.amazon.com/datasync/latest/userguide/datasync-limits.html) dan [kuota Amazon EFS](https://docs.aws.amazon.com/efs/latest/ug/limits.html).
+ Solusi ini hanya mendukung Amazon EFS. DataSync mendukung [layanan AWS lainnya](https://docs.aws.amazon.com/datasync/latest/userguide/working-with-locations.html), seperti Amazon Simple Storage Service (Amazon S3) dan FSx Amazon for Lustre. Namun, solusi ini memerlukan modifikasi untuk menyinkronkan data dengan layanan lain ini.

## Arsitektur
<a name="synchronize-data-between-amazon-efs-file-systems-in-different-aws-regions-by-using-aws-datasync-architecture"></a>

![\[Diagram arsitektur untuk mereplikasi data ke sistem file EFS di Wilayah yang berbeda\]](http://docs.aws.amazon.com/id_id/prescriptive-guidance/latest/patterns/images/pattern-img/e28ba6c2-ab8b-4812-932e-f038106d5496/images/18b35ae9-a22e-43e7-b7a3-30e40321c44e.png)


Solusi ini menerapkan tumpukan AWS CDK berikut:
+ Tumpukan **VPC Amazon — Tumpukan** ini menyiapkan sumber daya virtual private cloud (VPC), termasuk subnet, gateway internet, dan gateway NAT di Wilayah AWS primer dan sekunder.
+ **Tumpukan Amazon EFS** — Tumpukan ini menyebarkan sistem file Amazon EFS ke Wilayah primer dan sekunder dan menghubungkannya ke masing-masing VPCs.
+ ** EC2 Tumpukan Amazon** — Tumpukan ini meluncurkan EC2 instance di Wilayah primer dan sekunder. Instans ini dikonfigurasi untuk memasang sistem file Amazon EFS, yang memungkinkan mereka mengakses penyimpanan bersama.
+ **DataSync tumpukan lokasi** — Tumpukan ini menggunakan konstruksi khusus yang dipanggil `DataSyncLocationConstruct` untuk membuat sumber daya DataSync lokasi di Wilayah primer dan sekunder. Sumber daya ini menentukan titik akhir untuk sinkronisasi data.
+ **DataSync tumpukan tugas** - Tumpukan ini menggunakan konstruksi khusus yang dipanggil `DataSyncTaskConstruct` untuk membuat DataSync tugas di Wilayah utama. Tugas ini dikonfigurasi untuk menyinkronkan data antara Wilayah primer dan sekunder dengan menggunakan lokasi DataSync sumber dan tujuan.

## Alat
<a name="synchronize-data-between-amazon-efs-file-systems-in-different-aws-regions-by-using-aws-datasync-tools"></a>

**Layanan AWS**
+ [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 DataSync](https://docs.aws.amazon.com/datasync/latest/userguide/what-is-datasync.html) adalah layanan transfer dan penemuan data online yang membantu Anda memindahkan file atau data objek ke, dari, dan di antara layanan penyimpanan AWS.
+ [Amazon Elastic Compute Cloud (Amazon EC2)](https://docs.aws.amazon.com/ec2/) menyediakan kapasitas komputasi yang dapat diskalakan di AWS Cloud. Anda dapat meluncurkan server virtual sebanyak yang Anda butuhkan dan dengan cepat meningkatkannya ke atas atau ke bawah.
+ [Amazon Elastic File System (Amazon EFS)](https://docs.aws.amazon.com/efs/latest/ug/whatisefs.html) membantu Anda membuat dan mengonfigurasi sistem file bersama di AWS Cloud.
+ [Amazon Virtual Private Cloud (Amazon VPC)](https://docs.aws.amazon.com/vpc/latest/userguide/what-is-amazon-vpc.html) membantu Anda meluncurkan sumber daya AWS ke jaringan virtual yang telah Anda tentukan. Jaringan virtual ini menyerupai jaringan tradisional yang akan Anda operasikan di pusat data Anda sendiri, dengan manfaat menggunakan infrastruktur AWS yang dapat diskalakan.

**Repositori kode**

Kode untuk pola ini tersedia di repositori [ DataSync Proyek Lintas Wilayah GitHub Amazon EFS](https://github.com/aws-samples/aws-efs-crossregion-datasync/tree/main).

## Praktik terbaik
<a name="synchronize-data-between-amazon-efs-file-systems-in-different-aws-regions-by-using-aws-datasync-best-practices"></a>

Ikuti praktik terbaik yang dijelaskan dalam [Praktik terbaik untuk menggunakan AWS CDK TypeScript untuk membuat proyek IAc](https://docs.aws.amazon.com/prescriptive-guidance/latest/best-practices-cdk-typescript-iac/introduction.html).

## Epik
<a name="synchronize-data-between-amazon-efs-file-systems-in-different-aws-regions-by-using-aws-datasync-epics"></a>

### Menerapkan aplikasi AWS CDK
<a name="deploy-the-aws-cdk-app"></a>


| Tugas | Deskripsi | Keterampilan yang dibutuhkan | 
| --- | --- | --- | 
| Kloning repositori proyek. | Masukkan perintah berikut untuk mengkloning repositori [ DataSync Proyek Lintas Wilayah Amazon EFS](https://github.com/aws-samples/aws-efs-crossregion-datasync/tree/main).<pre>git clone https://github.com/aws-samples/aws-efs-crossregion-datasync.git</pre> | AWS DevOps | 
| Instal dependensi npm. | Masukkan perintah berikut.<pre>npm ci</pre> | AWS DevOps | 
| Pilih Wilayah primer dan sekunder. | Di repositori kloning, arahkan ke direktori. `src/infa` Dalam `Launcher.ts` file, perbarui `PRIMARY_AWS_REGION` dan `SECONDARY_AWS_REGION` nilai. Gunakan [kode Wilayah](https://docs.aws.amazon.com/general/latest/gr/datasync.html#datasync-region) yang sesuai.<pre>const primaryRegion = { account: account, region: '<PRIMARY_AWS_REGION>' };<br />const secondaryRegion = { account: account, region: '<SECONDARY_AWS_REGION>' };</pre> | AWS DevOps | 
| Bootstrap lingkungan. | Masukkan perintah berikut untuk mem-bootstrap akun AWS dan Wilayah AWS yang ingin Anda gunakan.<pre>cdk bootstrap <aws_account>/<aws_region></pre>Untuk informasi selengkapnya, lihat [Bootstrapping di dokumentasi](https://docs.aws.amazon.com/cdk/v2/guide/bootstrapping.html) AWS CDK. | AWS DevOps | 
| Buat daftar tumpukan AWS CDK. | Masukkan perintah berikut untuk melihat daftar tumpukan AWS CDK di aplikasi.<pre>cdk ls</pre> | AWS DevOps | 
| Sintesis tumpukan AWS CDK. | Masukkan perintah berikut untuk menghasilkan CloudFormation template AWS untuk setiap tumpukan yang ditentukan dalam aplikasi AWS CDK.<pre>cdk synth</pre> | AWS DevOps | 
| Menerapkan aplikasi AWS CDK. | Masukkan perintah berikut untuk menerapkan semua tumpukan ke akun AWS Anda, tanpa memerlukan persetujuan manual untuk perubahan apa pun.<pre>cdk deploy --all --require-approval never</pre> | AWS DevOps | 

### Validasi penerapan
<a name="validate-the-deployment"></a>


| Tugas | Deskripsi | Keterampilan yang dibutuhkan | 
| --- | --- | --- | 
| Masuk ke EC2 instance di Wilayah utama. | [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/id_id/prescriptive-guidance/latest/patterns/synchronize-data-between-amazon-efs-file-systems-in-different-aws-regions-by-using-aws-datasync.html) | AWS DevOps | 
| Buat file sementara. | Masukkan perintah berikut untuk membuat file sementara di jalur pemasangan Amazon EFS.<pre>sudo dd if=/dev/zero \<br />of=tmptst.dat \<br />bs=1G \<br />seek=5 \<br />count=0<br /><br />ls -lrt tmptst.dat</pre> | AWS DevOps | 
| Mulai DataSync tugas. | Masukkan perintah berikut untuk mereplikasi file sementara dari Wilayah utama ke Wilayah sekunder, di mana `<ARN-task>` adalah Nama Sumber Daya Amazon (ARN) tugas Anda. DataSync <pre>aws datasync start-task-execution \<br />    --task-arn <ARN-task></pre>Perintah mengembalikan ARN dari eksekusi tugas dalam format berikut.`arn:aws:datasync:<region>:<account-ID>:task/task-execution/<exec-ID>` | AWS DevOps | 
| Periksa status transfer data. | Masukkan perintah berikut untuk menggambarkan tugas DataSync eksekusi, di `<ARN-task-execution>` mana ARN dari eksekusi tugas.<pre>aws datasync describe-task-execution \<br />    --task-execution-arn <ARN-task-execution></pre> DataSync Tugas selesai ketika`PrepareStatus`,`TransferStatus`, dan `VerifyStatus` semua memiliki nilai`SUCCESS`. | AWS DevOps | 
| Masuk ke EC2 instance di Wilayah sekunder. | [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/id_id/prescriptive-guidance/latest/patterns/synchronize-data-between-amazon-efs-file-systems-in-different-aws-regions-by-using-aws-datasync.html) | AWS DevOps | 
| Validasi replikasi. | Masukkan perintah berikut untuk memverifikasi bahwa file sementara ada di sistem file Amazon EFS.<pre>ls -lrt<br />tmptst.dat</pre> | AWS DevOps | 

## Sumber daya terkait
<a name="synchronize-data-between-amazon-efs-file-systems-in-different-aws-regions-by-using-aws-datasync-resources"></a>

**Dokumentasi AWS**
+ [AWS CDK API Referensi](https://docs.aws.amazon.com/cdk/api/v2/python/modules.html)
+ [Mengkonfigurasi DataSync transfer AWS dengan Amazon EFS](https://docs.aws.amazon.com/datasync/latest/userguide/create-efs-location.html)
+ [Memecahkan masalah dengan transfer AWS DataSync ](https://docs.aws.amazon.com/datasync/latest/userguide/troubleshooting-datasync-locations-tasks.html)

**Sumber daya AWS lainnya**
+ [AWS DataSync FAQs](https://aws.amazon.com/datasync/faqs/)

# Uji AWS infrastruktur dengan menggunakan LocalStack dan Tes Terraform
<a name="test-aws-infra-localstack-terraform"></a>

*Ivan Girardi dan Ioannis Kalyvas, Amazon Web Services*

## Ringkasan
<a name="test-aws-infra-localstack-terraform-summary"></a>

Pola ini membantu Anda menguji infrastruktur sebagai kode (IAc) secara lokal AWS di Terraform tanpa perlu menyediakan infrastruktur di lingkungan Anda. AWS Ini mengintegrasikan kerangka [Terraform Tests](https://developer.hashicorp.com/terraform/language/tests) dengan. [LocalStack](https://github.com/localstack/localstack) Kontainer LocalStack Docker menyediakan lingkungan pengembangan lokal yang mengemulasi berbagai. Layanan AWS Ini membantu Anda menguji dan mengulangi penerapan infrastruktur tanpa menimbulkan biaya di. AWS Cloud

Solusi ini memberikan manfaat sebagai berikut:
+ **Optimalisasi biaya** — Menjalankan tes terhadap LocalStack menghilangkan kebutuhan untuk menggunakan Layanan AWS. Ini mencegah Anda mengeluarkan biaya yang terkait dengan pembuatan, pengoperasian, dan modifikasi sumber daya tersebut. AWS 
+ **Kecepatan dan efisiensi** — Pengujian secara lokal juga biasanya lebih cepat daripada menyebarkan sumber daya. AWS Loop umpan balik yang cepat ini mempercepat pengembangan dan debugging. Karena LocalStack berjalan secara lokal, Anda dapat mengembangkan dan menguji file konfigurasi Terraform Anda tanpa koneksi internet. Anda dapat men-debug file konfigurasi Terraform secara lokal dan menerima umpan balik langsung, yang merampingkan proses pengembangan.
+ **Konsistensi dan reproduktifitas** — LocalStack menyediakan lingkungan yang konsisten untuk pengujian. Konsistensi ini membantu memastikan bahwa pengujian menghasilkan hasil yang sama, terlepas dari AWS perubahan eksternal atau masalah jaringan.
+ **Isolasi** — Pengujian dengan LocalStack mencegah Anda memengaruhi AWS sumber daya hidup atau lingkungan produksi secara tidak sengaja. Isolasi ini membuatnya aman untuk bereksperimen dan menguji berbagai konfigurasi.
+ **Otomasi** [- Integrasi dengan pipeline integrasi berkelanjutan dan pengiriman berkelanjutan (CI/CD) membantu Anda menguji file konfigurasi Terraform secara otomatis.](https://developer.hashicorp.com/terraform/language/files) Pipeline menguji IAc secara menyeluruh sebelum penerapan.
+ **Fleksibilitas** — Anda dapat mensimulasikan berbagai konfigurasi Wilayah AWS Akun AWS, dan layanan agar sesuai dengan lingkungan produksi Anda lebih dekat.

## Prasyarat dan batasan
<a name="test-aws-infra-localstack-terraform-prereqs"></a>

**Prasyarat**
+ [Instal](https://docs.docker.com/get-started/get-docker/) Docker
+ [Aktifkan akses](https://docs.docker.com/reference/cli/dockerd/#daemon-socket-option) ke soket Docker default (`/var/run/docker.sock`). Lihat informasi yang lebih lengkap dalam [dokumentasi LocalStack ](https://docs.localstack.cloud/user-guide/aws/lambda/#migrating-to-lambda-v2).
+ [Instal](https://docs.docker.com/compose/install/) Docker Compose
+ [Instal](https://developer.hashicorp.com/terraform/tutorials/aws-get-started/install-cli) Terraform versi 1.6.0 atau yang lebih baru
+ [Instal](https://developer.hashicorp.com/terraform/cli) Terraform CLI
+ [Konfigurasikan](https://hashicorp.github.io/terraform-provider-aws/) Penyedia Terraform AWS 
+ (Opsional) [Instal](https://docs.aws.amazon.com/cli/latest/userguide/getting-started-install.html) dan [konfigurasikan](https://docs.aws.amazon.com/cli/latest/userguide/cli-configure-files.html) AWS Command Line Interface (AWS CLI). Untuk contoh cara menggunakan AWS CLI with LocalStack, lihat [AWS Infrastruktur GitHub pengujian menggunakan LocalStack dan repositori Terraform Tests](https://github.com/aws-samples/localstack-terraform-test).

**Batasan**
+ Pola ini memberikan contoh eksplisit untuk menguji sumber daya Amazon Simple Storage Service (Amazon S3),,, AWS Lambda dan AWS Step Functions Amazon DynamoDB. Namun, Anda dapat memperluas solusi ini untuk memasukkan AWS sumber daya tambahan.
+ Pola ini memberikan instruksi untuk menjalankan Terraform Tests secara lokal, tetapi dapatkah Anda dapat mengintegrasikan pengujian ke dalam pipeline apa pun. CI/CD 
+ Pola ini memberikan instruksi untuk menggunakan gambar LocalStack Komunitas. Jika Anda menggunakan gambar LocalStack Pro, lihat [dokumentasi LocalStack Pro](https://hub.docker.com/r/localstack/localstack-pro).
+ LocalStack menyediakan layanan emulasi untuk yang berbeda AWS APIs. Untuk daftar lengkapnya, lihat [Cakupan Fitur AWS Layanan](https://docs.localstack.cloud/user-guide/aws/feature-coverage/). Beberapa fitur canggih mungkin memerlukan langganan untuk LocalStack Pro.

## Arsitektur
<a name="test-aws-infra-localstack-terraform-architecture"></a>

Diagram berikut menunjukkan arsitektur untuk solusi ini. Komponen utamanya adalah repositori kode sumber, CI/CD pipeline, dan wadah LocalStack Docker. LocalStack Docker Container meng-host yang berikut ini Layanan AWS secara lokal:
+ Bucket Amazon S3 untuk menyimpan file
+ Amazon CloudWatch untuk pemantauan dan pencatatan
+  AWS Lambda Fungsi untuk menjalankan kode tanpa server
+ Mesin AWS Step Functions negara untuk mengatur alur kerja multi-langkah
+ Tabel Amazon DynamoDB untuk menyimpan data NoSQL

![\[CI/CD Pipeline membangun dan menguji container LocalStack Docker dan sumber daya AWS.\]](http://docs.aws.amazon.com/id_id/prescriptive-guidance/latest/patterns/images/pattern-img/34bfbdbf-14e7-42a0-9022-c85a9c30cdcd/images/dc61fac9-b92c-4841-9132-ff8bb865eed9.png)


Diagram menunjukkan alur kerja berikut:

1. Anda menambahkan dan mengkomit file konfigurasi Terraform ke repositori kode sumber.

1.  CI/CD Pipeline mendeteksi perubahan dan memulai proses pembuatan untuk analisis kode Terraform statis. Pipeline membangun dan menjalankan wadah LocalStack Docker. Kemudian pipa memulai proses pengujian.

1. Pipeline mengunggah objek ke bucket Amazon S3 yang di-host di container Docker LocalStack .

1. Mengunggah objek memanggil fungsi. AWS Lambda 

1. Fungsi Lambda menyimpan pemberitahuan peristiwa Amazon S3 dalam log. CloudWatch 

1. Fungsi Lambda memulai mesin AWS Step Functions status.

1. Mesin status menulis nama objek Amazon S3 ke dalam tabel DynamoDB.

1. Proses pengujian dalam CI/CD pipeline memverifikasi bahwa nama objek yang diunggah cocok dengan entri dalam tabel DynamoDB. Ini juga memverifikasi bahwa bucket S3 diterapkan dengan nama yang ditentukan dan bahwa AWS Lambda fungsi tersebut telah berhasil diterapkan.

## Alat
<a name="test-aws-infra-localstack-terraform-tools"></a>

**Layanan AWS**
+ [Amazon CloudWatch](https://docs.aws.amazon.com/AmazonCloudWatch/latest/monitoring/WhatIsCloudWatch.html) membantu Anda memantau metrik sumber AWS daya Anda dan aplikasi yang Anda jalankan AWS secara real time.
+ [Amazon DynamoDB](https://docs.aws.amazon.com/amazondynamodb/latest/developerguide/Introduction.html) adalah layanan database NoSQL yang dikelola sepenuhnya yang menyediakan kinerja yang cepat, dapat diprediksi, dan terukur.
+ [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 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.
+ [AWS Step Functions](https://docs.aws.amazon.com/step-functions/latest/dg/welcome.html)adalah layanan orkestrasi tanpa server yang membantu Anda menggabungkan AWS Lambda fungsi dan lainnya Layanan AWS untuk membangun aplikasi bisnis yang penting.

**Alat-alat lainnya**
+ [Docker](https://www.docker.com/) adalah seperangkat produk platform as a service (PaaS) yang menggunakan virtualisasi pada tingkat sistem operasi untuk mengirimkan perangkat lunak dalam wadah.
+ [Docker Compose](https://docs.docker.com/compose/) adalah alat untuk mendefinisikan dan menjalankan aplikasi multi-container.
+ [LocalStack](https://localstack.cloud)adalah emulator layanan cloud yang berjalan dalam satu wadah. Dengan menggunakan LocalStack, Anda dapat menjalankan beban kerja pada mesin lokal Anda yang menggunakan Layanan AWS, tanpa menghubungkan ke AWS Cloud.
+ [Terraform](https://www.terraform.io/) adalah alat IAc HashiCorp yang membantu Anda membuat dan mengelola sumber daya cloud dan lokal.
+ [Tes Terraform](https://developer.hashicorp.com/terraform/language/tests) membantu Anda memvalidasi pembaruan konfigurasi modul Terraform melalui pengujian yang analog dengan integrasi atau pengujian unit.

**Repositori kode**

Kode untuk pola ini tersedia di [AWS infrastruktur GitHub Uji menggunakan LocalStack dan repositori Terraform Tests](https://github.com/aws-samples/localstack-terraform-test).

## Praktik terbaik
<a name="test-aws-infra-localstack-terraform-best-practices"></a>
+ Solusi ini menguji AWS infrastruktur yang ditentukan dalam file konfigurasi Terraform, dan tidak menyebarkan sumber daya tersebut di file. AWS Cloud Jika Anda ingin menerapkan sumber daya, ikuti [prinsip hak istimewa paling sedikit (dokumentasi IAM) dan konfigurasikan backend](https://docs.aws.amazon.com/IAM/latest/UserGuide/best-practices.html#grant-least-privilege) [Terraform (dokumentasi Terraform](https://developer.hashicorp.com/terraform/language/backend)) dengan benar.
+ Saat mengintegrasikan LocalStack dalam CI/CD pipeline, kami menyarankan Anda untuk tidak menjalankan wadah LocalStack Docker dalam mode hak istimewa. Untuk informasi selengkapnya, lihat [hak istimewa Runtime dan kemampuan Linux](https://docs.docker.com/engine/containers/run/#runtime-privilege-and-linux-capabilities) (dokumentasi Docker) dan [Keamanan untuk pelari yang dikelola sendiri](https://docs.gitlab.com/runner/security/) (dokumentasi). GitLab 

## Epik
<a name="test-aws-infra-localstack-terraform-epics"></a>

### Terapkan solusinya
<a name="deploy-the-solution"></a>


| Tugas | Deskripsi | Keterampilan yang dibutuhkan | 
| --- | --- | --- | 
| Kloning repositori. | Dalam shell bash, masukkan perintah berikut. Ini mengkloning [AWS infrastruktur Test menggunakan LocalStack dan repositori Terraform Tests](https://github.com/aws-samples/localstack-terraform-test) dari: GitHub<pre>git clone https://github.com/aws-samples/localstack-terraform-test.git</pre> | DevOps insinyur | 
| Jalankan LocalStack wadah. | [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/id_id/prescriptive-guidance/latest/patterns/test-aws-infra-localstack-terraform.html) | DevOps insinyur | 
| Inisialisasi Terraform. | Masukkan perintah berikut untuk menginisialisasi Terraform:<pre>terraform init</pre> | DevOps insinyur | 
| Jalankan Tes Terraform. | [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/id_id/prescriptive-guidance/latest/patterns/test-aws-infra-localstack-terraform.html) | DevOps insinyur | 
| Pembersihan sumber daya  | Masukkan perintah berikut untuk menghancurkan LocalStack wadah:<pre>docker-compose down</pre> | DevOps insinyur | 

## Pemecahan masalah
<a name="test-aws-infra-localstack-terraform-troubleshooting"></a>


| Isu | Solusi | 
| --- | --- | 
| `Error: reading DynamoDB Table Item (Files\|README.md): empty`hasil saat menjalankan `terraform test` perintah. | [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/id_id/prescriptive-guidance/latest/patterns/test-aws-infra-localstack-terraform.html) | 

## Sumber daya terkait
<a name="test-aws-infra-localstack-terraform-resources"></a>
+ [Memulai dengan Terraform: Panduan untuk AWS CDK dan para AWS CloudFormation ahli (Panduan](https://docs.aws.amazon.com/prescriptive-guidance/latest/getting-started-terraform/introduction.html)AWS Preskriptif)
+ [Praktik terbaik untuk menggunakan AWS Penyedia Terraform](https://docs.aws.amazon.com/prescriptive-guidance/latest/terraform-aws-provider-best-practices/introduction.html) (Panduan AWS Preskriptif)
+ [Terraform CI/CD dan pengujian AWS dengan Terraform Test Framework baru](https://aws.amazon.com/blogs/devops/terraform-ci-cd-and-testing-on-aws-with-the-new-terraform-test-framework/) (posting blog)AWS 
+ [Mempercepat pengiriman perangkat lunak menggunakan LocalStack Cloud Emulator dari AWS Marketplace](https://aws.amazon.com/blogs/awsmarketplace/accelerating-software-delivery-localstack-cloud-emulator-aws-marketplace/) (posting AWS blog)

## Informasi tambahan
<a name="test-aws-infra-localstack-terraform-additional"></a>

**Integrasi dengan GitHub Tindakan**

Anda dapat mengintegrasikan LocalStack dan Pengujian Terraform dalam CI/CD pipeline dengan menggunakan GitHub Tindakan. Untuk informasi selengkapnya, lihat [dokumentasi GitHub Tindakan](https://docs.github.com/en/actions). Berikut ini adalah contoh file konfigurasi GitHub Tindakan:

```
name: LocalStack Terraform Test

on:
  push:
    branches:
      - '**'

  workflow_dispatch: {}

jobs:
  localstack-terraform-test:
    runs-on: ubuntu-latest

    steps:
    - uses: actions/checkout@v4

    - name: Build and Start LocalStack Container
      run: |
        docker compose up -d

    - name: Setup Terraform
      uses: hashicorp/setup-terraform@v3
      with:
        terraform_version: latest

    - name: Run Terraform Init and Validation
      run: |
        terraform init
        terraform validate
        terraform fmt --recursive --check
        terraform plan
        terraform show

    - name: Run Terraform Test
      run: |
        terraform test

    - name: Stop and Delete LocalStack Container
      if: always()
      run: docker compose down
```

# Tingkatkan cluster SAP Pacemaker dari ke ENSA1 ENSA2
<a name="upgrade-sap-pacemaker-clusters-from-ensa1-to-ensa2"></a>

*Gergely Cserdi dan Balazs Sandor Skublics, Amazon Web Services*

## Ringkasan
<a name="upgrade-sap-pacemaker-clusters-from-ensa1-to-ensa2-summary"></a>

Pola ini menjelaskan langkah-langkah dan pertimbangan untuk memutakhirkan cluster SAP Pacemaker yang didasarkan pada Standalone Enqueue Server () ke. ENSA1 ENSA2 Informasi dalam pola ini berlaku untuk sistem operasi SUSE Linux Enterprise Server (SLES) dan Red Hat Enterprise Linux (RHEL).

Cluster alat pacu jantung pada SAP NetWeaver 7.52 atau S/4HANA 1709 dan versi sebelumnya berjalan pada arsitektur dan dikonfigurasi khusus untuk. ENSA1 ENSA1 Jika Anda menjalankan beban kerja SAP Anda di Amazon Web Services (AWS) dan Anda tertarik untuk pindah ke ENSA2, Anda mungkin menemukan bahwa dokumentasi SAP, SUSE, dan RHEL tidak memberikan informasi yang komprehensif. Pola ini menjelaskan langkah-langkah teknis yang diperlukan untuk mengkonfigurasi ulang parameter SAP dan cluster Pacemaker untuk meningkatkan dari ke. ENSA1 ENSA2 Ini memberikan contoh sistem SUSE, tetapi konsepnya sama untuk cluster RHEL.

**catatan**  
ENSA1 dan ENSA2 merupakan konsep yang hanya berkaitan dengan aplikasi SAP, sehingga informasi dalam pola ini tidak berlaku untuk SAP HANA atau jenis cluster lainnya.

**catatan**  
Secara teknis, ENSA2 dapat digunakan dengan atau tanpa Enqueue Replicator 2. Namun, ketersediaan tinggi (HA) dan otomatisasi failover (melalui solusi cluster) memerlukan Enqueue Replicator 2. Pola ini menggunakan istilah *ENSA2 cluster untuk merujuk ke cluster* dengan Standalone Enqueue Server 2 dan Enqueue Replicator 2.

## Prasyarat dan batasan
<a name="upgrade-sap-pacemaker-clusters-from-ensa1-to-ensa2-prereqs"></a>

**Prasyarat**
+ Cluster ENSA1 berbasis kerja yang menggunakan Pacemaker dan Corosync pada SLES atau RHEL.
+ Setidaknya dua instans Amazon Elastic Compute Cloud (Amazon EC2) di mana instans (ABAP) SAP Central Services (ASCS/SCS) dan Enqueue Replication Server (ERS) berjalan.
+ Pengetahuan tentang mengelola aplikasi dan cluster SAP.
+ Akses ke lingkungan Linux sebagai pengguna root.

**Keterbatasan**
+ ENSA1cluster berbasis hanya mendukung arsitektur dua simpul.
+ ENSA2cluster berbasis tidak dapat digunakan ke NetWeaver versi SAP sebelum 7.52.
+ EC2 instance dalam cluster harus berada di AWS Availability Zones yang berbeda.

**Versi produk**
+ SAP NetWeaver versi 7.52 atau yang lebih baru
+ Dimulai dengan S/4HANA 2020, hanya ENSA2 cluster yang didukung
+ Kernel 7.53 atau yang lebih baru, yang mendukung ENSA2 dan Enqueue Replicator 2
+ SLES untuk Aplikasi SAP versi 12 atau yang lebih baru
+ RHEL untuk SAP dengan High Availability (HA) versi 7.9 atau yang lebih baru

## Arsitektur
<a name="upgrade-sap-pacemaker-clusters-from-ensa1-to-ensa2-architecture"></a>

**Tumpukan teknologi sumber**
+ SAP NetWeaver 7.52 dengan SAP Kernel 7.53 atau yang lebih baru
+ Sistem operasi SLES atau RHEL

**Tumpukan teknologi target**
+ SAP NetWeaver 7.52 dengan SAP Kernel 7.53 atau lebih baru, termasuk S/4HANA 2020 dengan platform ABAP
+ Sistem operasi SLES atau RHEL

**Arsitektur target**

Diagram berikut menunjukkan konfigurasi HA ASCS/SCS dan instans ERS berdasarkan ENSA2 cluster.

![\[Arsitektur HA untuk ASCS/SCS dan instans ERS pada cluster ENSA2\]](http://docs.aws.amazon.com/id_id/prescriptive-guidance/latest/patterns/images/pattern-img/c32560de-901f-4796-a6b3-c08c109b22c8/images/19501713-0ddf-4242-9ea3-90478200a19e.png)


**Perbandingan ENSA1 dan ENSA2 cluster**

SAP diperkenalkan ENSA2 sebagai penerus. ENSA1 Cluster ENSA1 berbasis mendukung arsitektur dua simpul di mana ASCS/SCS instance gagal ke ERS ketika terjadi kesalahan. Keterbatasan ini berasal dari bagaimana ASCS/SCS instance mendapatkan kembali informasi tabel kunci dari memori bersama node ERS setelah failover. ENSA2cluster berbasis dengan Enqueue Replicator 2 menghilangkan batasan ini, karena ASCS/SCS instance dapat mengumpulkan informasi kunci dari instance ERS melalui jaringan. ENSA2cluster berbasis dapat memiliki lebih dari dua node, karena ASCS/SCS instance tidak lagi diperlukan untuk gagal ke node ERS. (Namun, dalam lingkungan ENSA2 cluster dua simpul, ASCS/SCS instance masih akan gagal ke node ERS karena tidak ada node lain di cluster yang gagal.) ENSA2 didukung dimulai dengan SAP Kernel 7.50 dengan beberapa batasan. Untuk pengaturan HA yang mendukung Enqueue Replicator 2, persyaratan minimum adalah NetWeaver 7.52 (lihat [SAP](https://launchpad.support.sap.com/#/notes/2630416) OSS Note 2630416). S/4HANA 1809 hadir dengan ENSA2 arsitektur yang direkomendasikan secara default, sedangkan S/4HANA hanya ENSA2 mendukung dimulai dengan versi 2020.

**Otomatisasi dan skala**

Cluster HA dalam arsitektur target membuat ASCS gagal ke node lain secara otomatis.

**Skenario untuk pindah ke cluster ENSA2 berbasis**

Ada dua skenario utama untuk meningkatkan ke cluster ENSA2 berbasis: 
+ Skenario 1: Anda memilih untuk meningkatkan ke ENSA2 tanpa upgrade SAP atau konversi S/4HANA yang menyertainya, dengan asumsi bahwa rilis SAP dan versi Kernel Anda mendukung. ENSA2
+ Skenario 2: Anda pindah ke ENSA2 sebagai bagian dari upgrade atau konversi (misalnya, ke S/4HANA 1809 atau lebih baru) dengan menggunakan SUM.

Bagian [Epik](#upgrade-sap-pacemaker-clusters-from-ensa1-to-ensa2-epics) mencakup langkah-langkah untuk dua skenario ini. Skenario pertama mengharuskan Anda untuk mengatur parameter terkait SAP secara manual sebelum Anda mengubah konfigurasi cluster untuk. ENSA2 Dalam skenario kedua, binari dan parameter terkait SAP diterapkan oleh SUM, dan satu-satunya tugas Anda yang tersisa adalah memperbarui konfigurasi cluster untuk HA. Kami masih menyarankan Anda memvalidasi parameter SAP setelah Anda menggunakan SUM. Dalam kebanyakan kasus, konversi S/4HANA adalah alasan utama untuk upgrade cluster.

## Alat
<a name="upgrade-sap-pacemaker-clusters-from-ensa1-to-ensa2-tools"></a>
+ Untuk manajer paket OS, kami merekomendasikan alat Zypper (untuk SLES) atau YUM (untuk RHEL).
+ Untuk manajemen cluster, kami merekomendasikan shell **crm** (untuk SLES) atau **pcs** (untuk RHEL).
+ Alat manajemen instans SAP seperti SAPControl.
+ (Opsional) Alat SUM untuk peningkatan konversi S/4HANA.

## Praktik terbaik
<a name="upgrade-sap-pacemaker-clusters-from-ensa1-to-ensa2-best-practices"></a>
+ Untuk praktik terbaik dalam menggunakan beban kerja SAP di AWS, lihat [Lensa SAP untuk AWS Well-Architected Framework](https://docs.aws.amazon.com/wellarchitected/latest/sap-lens/sap-lens.html).
+ Pertimbangkan jumlah node cluster (ganjil atau genap) dalam arsitektur ENSA2 multi-node Anda.
+ Siapkan ENSA2 cluster untuk SLES 15 selaras dengan standar sertifikasi SAP S/4-HA-CLU 1.0.
+ Selalu simpan atau buat cadangan klaster dan status aplikasi yang ada sebelum memutakhirkan ke ENSA2.

## Epik
<a name="upgrade-sap-pacemaker-clusters-from-ensa1-to-ensa2-epics"></a>

### Konfigurasikan parameter SAP secara manual untuk ENSA2 (skenario 1 saja)
<a name="configure-sap-parameters-manually-for-ensa2-scenario-1-only"></a>


| Tugas | Deskripsi | Keterampilan yang dibutuhkan | 
| --- | --- | --- | 
| Konfigurasikan parameter di profil default. | Jika Anda ingin meningkatkan ke ENSA2 sambil tetap pada rilis SAP yang sama atau jika rilis target Anda default ENSA1, atur parameter di profil default (file DEFAULT.PFL) ke nilai berikut.<pre>enq/enable=TRUE<br />enq/serverhost=sapascsvirt<br />enq/serverinst=10        (instance number of ASCS/SCS instance)<br />enque/process_location=REMOTESA<br />enq/replicatorhost=sapersvirt<br />enq/replicatorinst=11    (instance number of ERS instance)<br />  </pre>di mana `sapascsvirt` adalah nama host virtual untuk instance ASCS, dan `sapersvirt` merupakan nama host virtual untuk instance ERS. Anda dapat mengubah ini agar sesuai dengan lingkungan target Anda.Untuk menggunakan opsi upgrade ini, rilis SAP dan versi Kernel Anda harus mendukung ENSA2 dan Enqueue Replicator 2. | SAP | 
| Konfigurasikan profil ASCS/SCS instance. | Jika Anda ingin memutakhirkan ke ENSA2 sambil tetap menggunakan rilis SAP yang sama atau jika rilis target Anda default ENSA1, atur parameter berikut di profil instance. ASCS/SCS  Bagian profil di mana ENSA1 didefinisikan terlihat seperti berikut ini.<pre>#--------------------------------------------------------------<br />Start SAP enqueue server<br />#-------------------------------------------------------------- <br />_EN = en.sap$(SAPSYSTEMNAME)$(INSTANCE_NAME) <br />Execute_04 = local rm -f $(_EN) <br />Execute_05 = local ln -s -f $(DIR_EXECUTABLE)/enserver$(FT_EXE) $(_EN) <br />Start_Program_01 = local $(_EN) pf=$(_PF)<br />  </pre>Untuk mengkonfigurasi ulang bagian ini untuk ENSA2:[\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/id_id/prescriptive-guidance/latest/patterns/upgrade-sap-pacemaker-clusters-from-ensa1-to-ensa2.html)Bagian profil ini akan terlihat seperti berikut setelah perubahan Anda.<pre>#--------------------------------------------------------------<br />Start SAP enqueue server<br />#-------------------------------------------------------------- <br />_ENQ = enq.sap$(SAPSYSTEMNAME)$(INSTANCE_NAME) <br />Execute_04 = local rm -f $(_ENQ) <br />Execute_05 = local ln -s -f $(DIR_EXECUTABLE)/enq_server$(FT_EXE) $(_ENQ) <br />Start_Program_01 = local $(_ENQ) pf=$(_PF) <br />... <br />enq/server/replication/enable = TRUE <br />Autostart = 0</pre>`_ENQ`tidak boleh mengaktifkan opsi restart. Jika `RestartProgram_01` diatur untuk`_ENQ`, ubah menjadi`StartProgram_01`. Ini mencegah SAP memulai ulang layanan atau mengganggu sumber daya yang dikelola cluster. | SAP | 
| Konfigurasikan profil ERS. | Jika Anda ingin meningkatkan ke ENSA2 sementara tetap pada rilis SAP yang sama atau jika rilis target Anda default ENSA1, atur parameter berikut di profil instans ERS.Temukan bagian di mana replikator enqueue didefinisikan. Ini akan mirip dengan yang berikut ini.<pre>#------------------------------------------------------<br />Start enqueue replication server<br />#------------------------------------------------------ <br />_ER = er.sap$(SAPSYSTEMNAME)$(INSTANCE_NAME) <br />Execute_03 = local rm -f $(_ER) <br />Execute_04 = local ln -s -f $(DIR_EXECUTABLE)/enrepserver$(FT_EXE) $(_ER) <br />Start_Program_00 = local $(_ER) pf=$(_PF) NR=$(SCSID)<br />  </pre>Untuk mengkonfigurasi ulang bagian ini untuk Enqueue Replicator 2:[\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/id_id/prescriptive-guidance/latest/patterns/upgrade-sap-pacemaker-clusters-from-ensa1-to-ensa2.html)Bagian profil ini akan terlihat seperti berikut setelah perubahan Anda.<pre>#------------------------------------------------------<br />Start enqueue replication server<br />#------------------------------------------------------ <br />_ENQR = enqr.sap$(SAPSYSTEMNAME)$(INSTANCE_NAME) <br />Execute_01 = local rm -f $(_ENQR) <br />Execute_02 = local ln -s -f $(DIR_EXECUTABLE)/enq_replicator$(FT_EXE) $(_ENQR) <br />Start_Program_00 = local $(_ENQR) pf=$(_PF) NR=$(SCSID) <br />… <br />Autostart = 0</pre>`_ENQR`tidak boleh mengaktifkan opsi restart. Jika `RestartProgram_01` diatur untuk`_ENQR`, ubah menjadi`StartProgram_01`. Ini mencegah SAP memulai ulang layanan atau mengganggu layanan yang dikelola cluster. | SAP | 
| Mulai ulang Layanan Mulai SAP. | Setelah Anda mengubah profil yang dijelaskan sebelumnya dalam epik ini, restart SAP Start Services untuk keduanya ASCS/SCS dan ERS.`sapcontrol -nr 10 -function RestartService SCT``sapcontrol -nr 11 -function RestartService SCT`di mana `SCT` mengacu pada ID sistem SAP, dan dengan asumsi bahwa 10 dan 11 adalah nomor instance untuk ASCS/SCS dan instans ERS, masing-masing. | SAP | 

### Konfigurasi ulang cluster untuk ENSA2 (diperlukan untuk kedua skenario)
<a name="reconfigure-the-cluster-for-ensa2-required-for-both-scenarios"></a>


| Tugas | Deskripsi | Keterampilan yang dibutuhkan | 
| --- | --- | --- | 
| Verifikasi nomor versi di agen sumber daya SAP. | Ketika Anda menggunakan SUM untuk meng-upgrade SAP ke S/4HANA 1809 atau yang lebih baru, SUM menangani perubahan parameter dalam profil SAP. Hanya cluster yang membutuhkan penyesuaian manual. Namun, kami menyarankan Anda memverifikasi pengaturan parameter sebelum Anda membuat perubahan apa pun pada cluster.Contoh dalam epik ini mengasumsikan bahwa Anda menggunakan sistem operasi SUSE. **Jika Anda menggunakan RHEL, Anda harus menggunakan alat seperti YUM dan shell **pcs** alih-alih Zypper dan crm.**Periksa kedua node dalam arsitektur untuk mengonfirmasi bahwa `resource-agents` paket tersebut cocok dengan versi minimum yang direkomendasikan oleh SAP. Untuk SLES, periksa SAP OSS Note 2641019. Untuk RHEL, periksa SAP OSS Note 2641322. (SAP Notes memerlukan akun pengguna [SAP ONE Support Launchpad](https://support.sap.com/en/my-support/knowledge-base.html).)<pre>sapers:sctadm 23> zypper search -s -i resource-agents<br />Loading repository data...<br />Reading installed packages...<br />S | Name | Type | Version | Arch | Repository<br />--+-----------------+---------+------------------------------------+--------+-----------------------------<br />i | resource-agents | package | 4.8.0+git30.d0077df0-150300.8.28.1 | x86_64 | SLE-Product-HA15-SP3-Updates</pre>Perbarui `resource-agents` versi jika perlu. | Administrator sistem AWS | 
| Cadangkan konfigurasi cluster. | Cadangkan konfigurasi cluster CRM sebagai berikut.`crm configure show > /tmp/cluster_config_backup.txt` | Administrator sistem AWS | 
| Atur mode pemeliharaan. | Atur cluster ke mode pemeliharaan.`crm configure property maintenance-mode="true"` | Administrator sistem AWS | 
| Periksa konfigurasi cluster. | Periksa konfigurasi cluster saat ini.`crm configure show`Berikut adalah kutipan dari output penuh:<pre>node 1: sapascs<br />node 2: sapers<br />...<br />primitive rsc_sap_SCT_ASCS10 SAPInstance \<br />operations $id=rsc_sap_SCT_ASCS10-operations \<br />op monitor interval=120 timeout=60 on-fail=restart \<br />params InstanceName=SCT_ASCS10_sapascsvirt START_PROFILE="/sapmnt/SCT/profile/SCT_ASCS10_sapascsvirt" \ <br />   AUTOMATIC_RECOVER=false \<br />meta resource-stickiness=5000 failure-timeout=60 migration-threshold=1 priority=10<br />primitive rsc_sap_SCT_ERS11 SAPInstance \<br />operations $id=rsc_sap_SCT_ERS11-operations \<br />op monitor interval=120 timeout=60 on-fail=restart \<br />params InstanceName=SCT_ERS11_sapersvirt START_PROFILE="/sapmnt/SCT/profile/SCT_ERS11_sapersvirt" \<br />   AUTOMATIC_RECOVER=false IS_ERS=true \<br />meta priority=1000<br />...<br />colocation col_sap_SCT_no_both -5000: grp_SCT_ERS11 grp_SCT_ASCS10<br />location loc_sap_SCT_failover_to_ers rsc_sap_SCT_ASCS10 \<br />rule 2000: runs_ers_SCT eq 1<br />order ord_sap_SCT_first_start_ascs Optional: rsc_sap_SCT_ASCS10:start rsc_sap_SCT_ERS11:stop symmetrical=false<br />...</pre>di mana `sapascsvirt` mengacu pada nama host virtual untuk instance ASCS, `sapersvirt` mengacu pada nama host virtual untuk instans ERS, dan `SCT` mengacu pada ID sistem SAP. | Administrator sistem AWS | 
| Hapus kendala kolokasi failover. | Dalam contoh sebelumnya, batasan lokasi `loc_sap_SCT_failover_to_ers` menentukan bahwa ENSA1 fitur ASCS harus selalu mengikuti instance ERS pada failover. Dengan ENSA2, ASCS harus dapat gagal secara bebas ke node yang berpartisipasi, sehingga Anda dapat menghapus kendala ini.`crm configure delete loc_sap_SCT_failover_to_ers` | Administrator sistem AWS | 
| Sesuaikan primitif. | Anda juga perlu membuat perubahan kecil pada SAPInstance primitif ASCS dan ERS.Berikut adalah contoh SAPInstance primitif ASCS yang dikonfigurasi untuk. ENSA1<pre>primitive rsc_sap_SCT_ASCS10 SAPInstance \<br />operations $id=rsc_sap_SCT_ASCS10-operations \<br />op monitor interval=120 timeout=60 on-fail=restart \<br />params InstanceName=SCT_ASCS10_sapascsvirt START_PROFILE="/sapmnt/SCT/profile/SCT_ASCS10_sapascsvirt" \<br />   AUTOMATIC_RECOVER=false \<br />meta resource-stickiness=5000 failure-timeout=60 migration-threshold=1 priority=10</pre>Untuk memutakhirkan ke ENSA2, ubah konfigurasi ini menjadi yang berikut.<pre>primitive rsc_sap_SCT_ASCS10 SAPInstance \<br />operations $id=rsc_sap_SCT_ASCS10-operations \<br />op monitor interval=120 timeout=60 on-fail=restart \<br />params InstanceName=SCT_ASCS10_sapascsvirt START_PROFILE="/sapmnt/SCT/profile/SCT_ASCS10_sapascsvirt" \<br />   AUTOMATIC_RECOVER=false \<br />meta resource-stickiness=3000 </pre>Ini adalah contoh SAPInstance primitif ERS yang dikonfigurasi untuk ENSA1.<pre>primitive rsc_sap_SCT_ERS11 SAPInstance \<br />operations $id=rsc_sap_SCT_ERS11-operations \<br />op monitor interval=120 timeout=60 on-fail=restart \<br />params InstanceName=SCT_ERS11_sapersvirt START_PROFILE="/sapmnt/SCT/profile/SCT_ERS11_sapersvirt" \<br />   AUTOMATIC_RECOVER=false IS_ERS=true \<br />meta priority=1000</pre>Untuk memutakhirkan ke ENSA2, ubah konfigurasi ini menjadi yang berikut.<pre>primitive rsc_sap_SCT_ERS11 SAPInstance \<br />operations $id=rsc_sap_SCT_ERS11-operations \<br />op monitor interval=120 timeout=60 on-fail=restart \<br />params InstanceName=SCT_ERS11_sapersvirt START_PROFILE="/sapmnt/SCT/profile/SCT_ERS11_sapersvirt" \<br />   AUTOMATIC_RECOVER=false IS_ERS=true</pre>Anda dapat mengubah primitif dengan berbagai cara. Misalnya, Anda dapat merevisinya di editor seperti vi, seperti pada contoh berikut.`crm configure edit rsc_sap_SCT_ERS11` | Administrator sistem AWS | 
| Nonaktifkan mode pemeliharaan. | Nonaktifkan mode pemeliharaan pada cluster.`crm configure property maintenance-mode="false"`Ketika cluster keluar dari mode pemeliharaan, ia mencoba untuk membawa instans ASCS dan ERS online dengan pengaturan baru ENSA2 . | Administrator sistem AWS | 

### (Opsional) Tambahkan node cluster
<a name="optional-add-cluster-nodes"></a>


| Tugas | Deskripsi | Keterampilan yang dibutuhkan | 
| --- | --- | --- | 
| Tinjau praktik terbaik. | Sebelum Anda menambahkan lebih banyak node, pastikan untuk memahami praktik terbaik seperti apakah akan menggunakan jumlah node ganjil atau genap. | Administrator sistem AWS | 
| Tambahkan node. | Menambahkan lebih banyak node melibatkan serangkaian tugas, seperti memperbarui sistem operasi, menginstal paket perangkat lunak yang cocok dengan node yang ada, dan membuat mount tersedia. Anda dapat menggunakan opsi **Siapkan Host Tambahan** di SAP Software Provisioning Manager (SWPM) untuk membuat baseline khusus SAP dari host. Untuk informasi selengkapnya, lihat panduan SAP yang tercantum di bagian selanjutnya. | Administrator sistem AWS | 

## Sumber daya terkait
<a name="upgrade-sap-pacemaker-clusters-from-ensa1-to-ensa2-resources"></a>

**Referensi SAP dan SUSE**

Untuk mengakses SAP Notes, Anda harus memiliki akun pengguna SAP ONE Support Launchpad. Untuk informasi selengkapnya, lihat situs [web SAP Support](https://support.sap.com/en/my-support/knowledge-base.html).
+ [SAP Note 2501860 - Dokumentasi untuk Server NetWeaver Aplikasi SAP untuk ABAP 7.52](https://launchpad.support.sap.com/#/notes/2501860)
+ [SAP Note 2641019 - Instalasi ENSA2 dan pembaruan dari ENSA1 ke ENSA2 dalam lingkungan SUSE HA](https://launchpad.support.sap.com/#/notes/2641019)
+ [SAP Note 2641322 - Instalasi ENSA2 dan perbarui dari ENSA1 hingga ENSA2 saat menggunakan solusi Red Hat HA untuk SAP](https://launchpad.support.sap.com/#/notes/2641322)
+ [SAP Note 2711036 - Penggunaan Standalone Enqueue Server 2 di Lingkungan HA](https://launchpad.support.sap.com/#/notes/2711036)
+ [Server Enqueue Mandiri 2 (dokumentasi SAP](https://help.sap.com/docs/ABAP_PLATFORM/cff8531bc1d9416d91bb6781e628d4e0/902412f09e134f5bb875adb6db585c92.html))
+ [SAP S/4 HANA - Enqueue Replication 2 High Availability Cluster - Panduan Pengaturan](https://documentation.suse.com/sbp/all/html/SAP_S4HA10_SetupGuide-SLE12/index.html) (dokumentasi SUSE)

**Referensi AWS**
+ [SAP HANA on AWS: Panduan Konfigurasi Ketersediaan Tinggi untuk SLES dan RHEL](https://docs.aws.amazon.com/sap/latest/sap-hana/sap-hana-on-aws-ha-configuration.html)
+ [SAP Lens - AWS Well-Architected Framework](https://docs.aws.amazon.com/wellarchitected/latest/sap-lens/sap-lens.html)

# Gunakan Availability Zone yang konsisten VPCs di berbagai akun AWS
<a name="use-consistent-availability-zones-in-vpcs-across-different-aws-accounts"></a>

*Adam Spicer, Amazon Web Services*

## Ringkasan
<a name="use-consistent-availability-zones-in-vpcs-across-different-aws-accounts-summary"></a>

Di Amazon Web Services (AWS) Cloud, Availability Zone memiliki nama yang dapat bervariasi antara akun AWS Anda dan ID [Availability Zone (ID AZ)](https://docs.aws.amazon.com/ram/latest/userguide/working-with-az-ids.html) yang mengidentifikasi lokasinya. Jika Anda menggunakan AWS CloudFormation untuk membuat virtual private cloud (VPCs), Anda harus menentukan nama atau ID Availability Zone saat membuat subnet. Jika Anda membuat VPCs di beberapa akun, nama Availability Zone diacak, yang berarti subnet menggunakan Availability Zone yang berbeda di setiap akun. 

Untuk menggunakan Availability Zone yang sama di seluruh akun Anda, Anda harus memetakan nama Availability Zone di setiap akun ke ID AZ yang sama. Misalnya, diagram berikut menunjukkan bahwa ID `use1-az6` AZ diberi nama `us-east-1a` di akun AWS A dan `us-east-1c` di akun AWS Z.

![\[ID AZ use1-az6 diberi nama us-east-1a di akun AWS A dan us-east-1c di akun AWS Z.\]](http://docs.aws.amazon.com/id_id/prescriptive-guidance/latest/patterns/images/pattern-img/9954e7f9-d6ce-44bd-af99-0c6bb7cd3cb0/images/23c8a37b-2408-4534-a1e0-bccfa4d7fbe3.png)


 

Pola ini membantu memastikan konsistensi zona dengan menyediakan solusi lintas akun yang dapat diskalakan untuk menggunakan Availability Zone yang sama di subnet Anda. Konsistensi zona memastikan bahwa lalu lintas jaringan lintas akun Anda menghindari jalur jaringan Zona Ketersediaan Lintas, yang membantu mengurangi biaya transfer data dan menurunkan latensi jaringan di antara beban kerja Anda.

Pola ini merupakan pendekatan alternatif untuk CloudFormation [AvailabilityZoneId properti](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-subnet.html#cfn-ec2-subnet-availabilityzoneid) AWS.

## Prasyarat dan batasan
<a name="use-consistent-availability-zones-in-vpcs-across-different-aws-accounts-prereqs"></a>

**Prasyarat**
+ Setidaknya dua akun AWS aktif di Wilayah AWS yang sama.
+ Evaluasi berapa banyak Availability Zone yang diperlukan untuk mendukung persyaratan VPC Anda di Region.
+ Identifikasi dan catat ID AZ untuk setiap Availability Zone yang perlu Anda dukung. Untuk informasi selengkapnya tentang hal ini, lihat [Availability Zone IDs untuk sumber daya AWS Anda](https://docs.aws.amazon.com/ram/latest/userguide/working-with-az-ids.html) di dokumentasi AWS Resource Access Manager.  
+ Daftar AZ Anda yang dipesan dan dipisahkan koma. IDs Misalnya, Availability Zone pertama pada daftar Anda dipetakan sebagai`az1`, Availbility Zone kedua dipetakan sebagai`az2`, dan struktur pemetaan ini berlanjut hingga daftar yang dipisahkan koma Anda sepenuhnya dipetakan. Tidak ada jumlah maksimum AZ IDs yang dapat dipetakan. 
+ `az-mapping.yaml`File dari repositori [pemetaan Zona Ketersediaan GitHub Multi-akun](https://github.com/aws-samples/multi-account-az-mapping/), disalin ke mesin lokal Anda

## Arsitektur
<a name="use-consistent-availability-zones-in-vpcs-across-different-aws-accounts-architecture"></a>

Diagram berikut menunjukkan arsitektur yang diterapkan di akun dan yang menciptakan nilai AWS Systems Manager Parameter Store. Nilai Parameter Store ini dikonsumsi saat Anda membuat VPC di akun.

![\[Alur kerja untuk membuat nilai Systems Manager Parameter Store untuk setiap ID AZ dan menyimpan nama AZ.\]](http://docs.aws.amazon.com/id_id/prescriptive-guidance/latest/patterns/images/pattern-img/9954e7f9-d6ce-44bd-af99-0c6bb7cd3cb0/images/f1168464-55f8-4efc-9b28-6a0cda668b9e.png)


Diagram menunjukkan alur kerja berikut:

1. Solusi pola ini diterapkan ke semua akun yang memerlukan konsistensi zona untuk VPC. 

1. Solusi ini membuat nilai Parameter Store untuk setiap ID AZ dan menyimpan nama Availability Zone yang baru. 

1.  CloudFormation Template AWS menggunakan nama Availability Zone yang disimpan di setiap nilai Parameter Store dan ini memastikan konsistensi zona.

Diagram berikut menunjukkan alur kerja untuk membuat VPC dengan solusi pola ini.

 

![\[Alur kerja mengirimkan CloudFormation template untuk membuat VPC dengan AZ yang benar. IDs\]](http://docs.aws.amazon.com/id_id/prescriptive-guidance/latest/patterns/images/pattern-img/9954e7f9-d6ce-44bd-af99-0c6bb7cd3cb0/images/cd859430-ac25-479f-b56a-21da24cddf21.png)


 

Diagram menunjukkan alur kerja berikut:

1. Kirim template untuk membuat VPC ke AWS. CloudFormation

1. AWS CloudFormation menyelesaikan nilai Parameter Store untuk setiap Availability Zone dan mengembalikan nama Availability Zone untuk setiap ID AZ.

1. VPC dibuat dengan AZ yang benar yang IDs diperlukan untuk konsistensi zona.

Setelah menerapkan solusi pola ini, Anda dapat membuat subnet yang mereferensikan nilai Parameter Store. Jika Anda menggunakan AWS CloudFormation, Anda dapat mereferensikan nilai parameter pemetaan Availability Zone dari kode sampel berformat YAML berikut:

```
Resources:
    PrivateSubnet1AZ1: 
        Type: AWS::EC2::Subnet 
        Properties: 
            VpcId: !Ref VPC
            CidrBlock: !Ref PrivateSubnetAZ1CIDR
            AvailabilityZone: 
                !Join 
                    - ''
                    - - '{{resolve:ssm:/az-mapping/az1:1}}'
```

Kode contoh ini terdapat dalam `vpc-example.yaml ` file dari repositori [pemetaan Zona Ketersediaan GitHub Multi-akun](https://github.com/aws-samples/multi-account-az-mapping/). Ini menunjukkan cara membuat VPC dan subnet yang sejajar dengan nilai Parameter Store untuk konsistensi zona.

**Tumpukan teknologi**
+ AWS CloudFormation
+ AWS Lambda
+ AWS Systems Manager Parameter Store

**Otomatisasi dan skala**

Anda dapat menerapkan pola ini ke semua akun AWS Anda dengan menggunakan AWS CloudFormation StackSets atau solusi Kustomisasi untuk AWS Control Tower. Untuk informasi selengkapnya, lihat [Bekerja dengan AWS CloudFormation StackSets dalam dokumentasi AWS](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/what-is-cfnstacksets.html) Cloudformation dan [Kustomisasi untuk AWS Control Tower di AWS Solutions](https://aws.amazon.com/solutions/implementations/customizations-for-aws-control-tower/) Library. 

Setelah menerapkan CloudFormation template AWS, Anda dapat memperbaruinya untuk menggunakan nilai Parameter Store dan menerapkan VPCs di pipeline atau sesuai dengan kebutuhan Anda. 

## Alat
<a name="use-consistent-availability-zones-in-vpcs-across-different-aws-accounts-tools"></a>

**Layanan AWS**
+ [AWS CloudFormation](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/Welcome.html) membantu Anda memodelkan dan menyiapkan sumber daya AWS Anda, menyediakannya dengan cepat dan konsisten, serta mengelolanya sepanjang siklus hidupnya. Anda dapat menggunakan template untuk mendeskripsikan sumber daya Anda dan dependensinya, dan meluncurkan dan mengonfigurasinya bersama-sama sebagai tumpukan, alih-alih mengelola sumber daya secara individual. Anda dapat mengelola dan menyediakan tumpukan di beberapa akun AWS dan Wilayah AWS.
+ [AWS Lambda](https://docs.aws.amazon.com/lambda/latest/dg/welcome.html) adalah layanan komputasi yang mendukung menjalankan kode tanpa menyediakan atau mengelola server. Lambda menjalankan kode Anda hanya saat diperlukan dan menskalakan secara otomatis, dari beberapa permintaan per hari hingga ribuan per detik. Anda hanya membayar untuk waktu komputasi yang Anda gunakan—tidak ada biaya saat kode Anda tidak berjalan.
+ [AWS Systems Manager Parameter Store](https://docs.aws.amazon.com/systems-manager/latest/userguide/systems-manager-parameter-store.html) adalah kemampuan AWS Systems Manager. Ini menyediakan penyimpanan hierarkis yang aman untuk manajemen data konfigurasi dan manajemen rahasia.

**Kode**

Kode untuk pola ini disediakan di repositori [pemetaan Zona Ketersediaan GitHub Multi-akun](https://github.com/aws-samples/multi-account-az-mapping/).

## Epik
<a name="use-consistent-availability-zones-in-vpcs-across-different-aws-accounts-epics"></a>

### Terapkan file az-mapping.yaml
<a name="deploy-the-az-mapping-yaml-file"></a>


| Tugas | Deskripsi | Keterampilan yang dibutuhkan | 
| --- | --- | --- | 
| Tentukan Availability Zone yang diperlukan untuk Wilayah tersebut. | [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/id_id/prescriptive-guidance/latest/patterns/use-consistent-availability-zones-in-vpcs-across-different-aws-accounts.html) | Arsitek awan | 
| Terapkan file az-mapping.yaml. | Gunakan `az-mapping.yaml` file untuk membuat CloudFormation tumpukan AWS di semua akun AWS yang diperlukan. Dalam `AZIds` parameter, gunakan daftar dipisahkan koma yang Anda buat sebelumnya. Kami menyarankan Anda menggunakan [AWS CloudFormation StackSets](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/what-is-cfnstacksets.html) atau [Kustomisasi untuk AWS Control Tower](https://aws.amazon.com/solutions/implementations/customizations-for-aws-control-tower/) Solution. | Arsitek awan | 

### Terapkan VPCs di akun Anda
<a name="deploy-the-vpcs-in-your-accounts"></a>


| Tugas | Deskripsi | Keterampilan yang dibutuhkan | 
| --- | --- | --- | 
| Kustomisasi CloudFormation templat AWS. | Saat Anda membuat subnet menggunakan AWS CloudFormation, sesuaikan templat untuk menggunakan nilai Parameter Store yang Anda buat sebelumnya.Untuk contoh templat, lihat `vpc-example.yaml` file di repositori [pemetaan Zona Ketersediaan GitHub Multi-akun](https://github.com/aws-samples/multi-account-az-mapping/). | Arsitek awan | 
| Menyebarkan. VPCs | Terapkan CloudFormation templat AWS yang disesuaikan ke akun Anda. Setiap VPC di Wilayah kemudian memiliki konsistensi zona di Availability Zone yang digunakan untuk subnet | Arsitek awan | 

## Sumber daya terkait
<a name="use-consistent-availability-zones-in-vpcs-across-different-aws-accounts-resources"></a>
+ [Availability Zone IDs untuk sumber daya AWS Anda](https://docs.aws.amazon.com/ram/latest/userguide/working-with-az-ids.html) (dokumentasi AWS Resource Access Manager)
+ [AWS::EC2::Subnet](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-subnet.html)( CloudFormation Dokumentasi AWS)

# Gunakan pengguna IDs dalam kebijakan IAM untuk kontrol akses dan otomatisasi
<a name="use-user-ids-iam-policies-access-control-automation"></a>

*Srinivas Ananda Babu dan Ram Kandaswamy, Amazon Web Services*

## Ringkasan
<a name="use-user-ids-iam-policies-access-control-automation-summary"></a>

Pola ini menjelaskan potensi jebakan menggunakan kebijakan berbasis nama pengguna di AWS Identity and Access Management (IAM), manfaat menggunakan pengguna IDs, dan bagaimana mengintegrasikan pendekatan ini dengan otomatisasi. AWS CloudFormation 

Di dalamnya AWS Cloud, layanan IAM membantu Anda mengelola identitas pengguna dan kontrol akses dengan presisi. Namun, ketergantungan pada nama pengguna dalam pembuatan kebijakan IAM dapat menyebabkan risiko keamanan yang tidak terduga dan masalah kontrol akses. Misalnya, pertimbangkan skenario ini: Karyawan baru, John Doe, bergabung dengan tim Anda, dan Anda membuat akun pengguna IAM dengan nama pengguna`j.doe`, yang memberi mereka izin melalui kebijakan IAM yang mereferensikan nama pengguna. Ketika John meninggalkan perusahaan, akun tersebut dihapus. Masalahnya dimulai ketika karyawan baru, Jane Doe, bergabung dengan tim Anda, dan `j.doe` nama pengguna dibuat ulang. Kebijakan yang ada sekarang memberi Jane Doe izin yang sama dengan John Doe. Ini menciptakan mimpi buruk keamanan dan kepatuhan potensial.

Memperbarui setiap kebijakan secara manual untuk mencerminkan detail pengguna baru adalah proses yang memakan waktu dan rawan kesalahan, terutama seiring pertumbuhan organisasi Anda. Solusinya adalah dengan menggunakan ID pengguna yang unik dan tidak dapat diubah. Saat Anda membuat akun pengguna IAM, AWS berikan ID pengguna unik (atau ID utama) kepada pengguna IAM. Anda dapat menggunakan pengguna ini IDs dalam kebijakan IAM Anda untuk memastikan kontrol akses yang konsisten dan andal yang tidak terpengaruh oleh perubahan nama pengguna atau penggunaan kembali.

Misalnya, kebijakan IAM yang menggunakan ID pengguna mungkin terlihat seperti ini:

```
{ 
    "Version": "2012-10-17",		 	 	  
    "Statement": [ 
        { 
            "Effect": "Allow", 
            "Action": "s3:ListBucket", 
            "Resource": "arn:aws:s3:::example-bucket", 
            "Principal": { "AWS": "arn:aws:iam::123456789012:user/abcdef01234567890" } 
        } 
      ] 
}
```

Manfaat menggunakan pengguna IDs dalam kebijakan IAM meliputi:
+ **Keunikan.** Pengguna IDs unik di semua Akun AWS, sehingga mereka memberikan aplikasi izin yang benar dan konsisten.
+ **Kekekalan.** Pengguna IDs tidak dapat diubah, sehingga mereka menyediakan pengenal yang stabil untuk merujuk pengguna dalam kebijakan.
+ **Audit dan kepatuhan.** Layanan AWS sering menyertakan pengguna IDs dalam log dan jejak audit, yang membuatnya mudah untuk melacak tindakan kembali ke pengguna tertentu.
+ **Otomasi dan integrasi.** Menggunakan pengguna IDs dalam AWS APIs, SDKs, atau skrip otomatisasi memastikan bahwa proses tetap tidak terpengaruh oleh perubahan nama pengguna.
+ **Pemeriksaan masa depan.** Menggunakan kebijakan pengguna IDs sejak awal dapat mencegah potensi masalah kontrol akses atau pembaruan kebijakan yang ekstensif.

**Otomatisasi**

Saat Anda menggunakan alat infrastruktur sebagai kode (IAc) seperti AWS CloudFormation, jebakan kebijakan IAM berbasis nama pengguna masih dapat menyebabkan masalah. Sumber daya pengguna IAM mengembalikan nama pengguna saat Anda memanggil fungsi `Ref` intrinsik. Seiring perkembangan infrastruktur organisasi Anda, siklus pembuatan dan penghapusan sumber daya, termasuk akun pengguna IAM, dapat menyebabkan masalah kontrol akses yang tidak diinginkan jika Anda menggunakan kembali nama pengguna.

Untuk mengatasi masalah ini, kami sarankan Anda memasukkan pengguna IDs ke dalam CloudFormation template Anda. Namun, mendapatkan pengguna IDs untuk tujuan ini bisa menjadi tantangan. Di sinilah sumber daya khusus dapat membantu. Anda dapat menggunakan sumber daya CloudFormation khusus untuk memperluas fungsionalitas layanan dengan mengintegrasikan dengan AWS APIs atau layanan eksternal. Dengan membuat sumber daya kustom yang mengambil ID pengguna untuk pengguna IAM tertentu, Anda dapat membuat ID pengguna tersedia dalam template Anda CloudFormation . Pendekatan ini merampingkan proses referensi pengguna IDs dan memastikan bahwa alur kerja otomatisasi Anda tetap kuat dan tahan masa depan.

## Prasyarat dan batasan
<a name="use-user-ids-iam-policies-access-control-automation-prereqs"></a>

**Prasyarat**
+ Aktif Akun AWS
+ Peran IAM untuk administrator cloud untuk menjalankan template CloudFormation 

**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 halaman [titik akhir dan kuota Layanan](https://docs.aws.amazon.com/general/latest/gr/aws-service-information.html), dan pilih tautan untuk layanan.

## Arsitektur
<a name="use-user-ids-iam-policies-access-control-automation-architecture"></a>

**Arsitektur target**

Diagram berikut menunjukkan bagaimana CloudFormation menggunakan sumber daya kustom yang didukung oleh AWS Lambda untuk mengambil ID pengguna IAM.

![\[Mendapatkan ID pengguna IAM dengan menggunakan sumber daya CloudFormation khusus.\]](http://docs.aws.amazon.com/id_id/prescriptive-guidance/latest/patterns/images/pattern-img/71698647-274e-4911-92f0-549e444b53f6/images/7e507df4-f597-499e-bd5b-6d7a55e64146.png)


**Otomatisasi dan skala**

Anda dapat menggunakan CloudFormation template beberapa kali untuk berbagai Wilayah AWS dan akun. Anda hanya perlu menjalankannya sekali di setiap Wilayah atau akun.

## Alat
<a name="use-user-ids-iam-policies-access-control-automation-tools"></a>

**Layanan AWS**
+ [IAM](https://docs.aws.amazon.com/IAM/latest/UserGuide/introduction.html) — AWS Identity and Access Management (IAM) adalah layanan web yang membantu Anda mengontrol akses ke sumber daya dengan aman. AWS Anda menggunakan IAM untuk mengontrol siapa yang dapat terautentikasi (masuk) dan berwenang (memiliki izin) untuk menggunakan sumber daya.
+ [AWS CloudFormation](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/Welcome.html)— AWS CloudFormation membantu Anda memodelkan dan mengatur AWS sumber daya Anda sehingga Anda dapat menghabiskan lebih sedikit waktu mengelola sumber daya tersebut dan lebih banyak waktu untuk berfokus pada aplikasi Anda yang berjalan AWS. Anda membuat template yang menjelaskan AWS sumber daya yang Anda inginkan, dan CloudFormation mengurus penyediaan dan konfigurasi sumber daya tersebut untuk Anda.
+ [AWS Lambda](https://docs.aws.amazon.com/lambda/latest/dg/welcome.html)— AWS Lambda adalah layanan komputasi yang mendukung menjalankan kode tanpa menyediakan atau mengelola server. Lambda menjalankan kode Anda hanya saat diperlukan dan menskalakan secara otomatis, dari beberapa permintaan per hari hingga ribuan per detik. 

## Praktik terbaik
<a name="use-user-ids-iam-policies-access-control-automation-best-practices"></a>

Jika Anda memulai dari awal atau merencanakan penerapan greenfield, kami sangat menyarankan Anda menggunakannya [AWS IAM Identity Center](https://docs.aws.amazon.com/singlesignon/latest/userguide/what-is.html)untuk manajemen pengguna terpusat. IAM Identity Center terintegrasi dengan penyedia identitas Anda yang ada (seperti Active Directory atau Okta) untuk menyatukan identitas pengguna AWS, yang menghilangkan kebutuhan untuk membuat dan mengelola pengguna IAM secara langsung. Pendekatan ini tidak hanya memastikan kontrol akses yang konsisten tetapi juga menyederhanakan manajemen siklus hidup pengguna dan membantu meningkatkan keamanan dan kepatuhan di seluruh lingkungan Anda. AWS 

## Epik
<a name="use-user-ids-iam-policies-access-control-automation-epics"></a>

### Validasi izin
<a name="validate-permissions"></a>


| Tugas | Deskripsi | Keterampilan yang dibutuhkan | 
| --- | --- | --- | 
| Validasi peran Anda Akun AWS dan IAM. | Konfirmasikan bahwa Anda memiliki peran IAM dengan izin untuk menerapkan CloudFormation templat di situs Anda. Akun AWSJika Anda berencana menggunakan AWS CLI alih-alih CloudFormation konsol untuk menerapkan template pada langkah terakhir prosedur ini, Anda juga harus menyiapkan kredensyal sementara untuk menjalankan perintah. AWS CLI Untuk petunjuk, lihat [dokumentasi IAM](https://docs.aws.amazon.com/IAM/latest/UserGuide/id_credentials_temp_use-resources.html#using-temp-creds-sdk-cli). | Arsitek awan | 

### Membangun CloudFormation template
<a name="build-a-cfnshort-template"></a>


| Tugas | Deskripsi | Keterampilan yang dibutuhkan | 
| --- | --- | --- | 
| Buat CloudFormation template. | [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/id_id/prescriptive-guidance/latest/patterns/use-user-ids-iam-policies-access-control-automation.html) | AWS DevOps, arsitek Cloud | 
| Tambahkan parameter input untuk nama pengguna. | Tambahkan kode berikut ke `Parameters` bagian CloudFormation template:<pre>Parameters:<br />  NewIamUserName:<br />    Type: String<br />    Description: Unique username for the new IAM user<br /></pre>Parameter ini meminta pengguna untuk nama pengguna. | AWS DevOps, arsitek Cloud | 
| Tambahkan sumber daya khusus untuk membuat pengguna IAM. | Tambahkan kode berikut ke `Resources` bagian CloudFormation template:<pre>Resources:<br />  rNewIamUser:<br />    Type: 'AWS::IAM::User'<br />    Properties:<br />      UserName: !Ref NewIamUserName<br /></pre>Kode ini menambahkan CloudFormation sumber daya yang menciptakan pengguna IAM dengan nama yang disediakan oleh `NewIamUserName` parameter. | AWS DevOps, arsitek Cloud | 
| Tambahkan peran eksekusi untuk fungsi Lambda. | Pada langkah ini, Anda membuat peran IAM yang memberikan izin AWS Lambda fungsi untuk mendapatkan IAM. `UserId` Tentukan izin minimum yang diperlukan berikut untuk dijalankan Lambda:[\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/id_id/prescriptive-guidance/latest/patterns/use-user-ids-iam-policies-access-control-automation.html)Untuk petunjuk tentang cara membuat peran eksekusi, lihat dokumentasi [Lambda](https://docs.aws.amazon.com/lambda/latest/dg/lambda-intro-execution-role.html). Anda akan mereferensikan peran ini di langkah berikutnya, saat Anda membuat fungsi Lambda. | Administrator AWS, arsitek Cloud | 
| Tambahkan fungsi Lambda untuk mendapatkan IAM yang unik. `UserId` | Pada langkah ini, Anda mendefinisikan fungsi Lambda dengan runtime Python untuk mendapatkan IAM yang unik. `UserId` Untuk melakukan ini, tambahkan kode berikut ke `Resources` bagian CloudFormation templat. Ganti `<<ROLENAME>>` dengan nama peran eksekusi yang Anda buat di langkah terakhir.<pre>  GetUserLambdaFunction:<br />    Type: 'AWS::Lambda::Function'<br />    Properties:<br />      Handler: index.handler<br />      Role: <<ROLENAME>><br />      Timeout: 30<br />      Runtime: python3.11<br />      Code:<br />        ZipFile: |<br />          import cfnresponse, boto3<br />          def handler(event, context):<br />            try:<br />              print(event)<br />              user = boto3.client('iam').get_user(UserName=event['ResourceProperties']['NewIamUserName'])['User']<br />              cfnresponse.send(event, context, cfnresponse.SUCCESS, {'NewIamUserId': user['UserId'], 'NewIamUserPath': user['Path'], 'NewIamUserArn': user['Arn']})<br />            except Exception as e:<br />              cfnresponse.send(event, context, cfnresponse.FAILED, {'NewIamUser': str(e)})<br /></pre> | AWS DevOps, arsitek Cloud | 
| Tambahkan sumber daya khusus. | Tambahkan kode berikut ke `Resources` bagian CloudFormation template:<pre>  rCustomGetUniqueUserId:<br />    Type: 'Custom::rCustomGetUniqueUserIdWithLambda'<br />    Properties:<br />      ServiceToken: !GetAtt GetUserLambdaFunction.Arn<br />      NewIamUserName: !Ref NewIamUserName<br /></pre>Sumber daya khusus ini memanggil fungsi Lambda untuk mendapatkan IAM. `UserID` | AWS DevOps, arsitek Cloud | 
| Tentukan CloudFormation output. | Tambahkan kode berikut ke `Outputs` bagian CloudFormation template:<pre>Outputs:<br />  NewIamUserId:<br />    Value: !GetAtt rCustomGetUniqueUserId.NewIamUserId<br /></pre>Ini menampilkan IAM `UserID` untuk pengguna IAM baru. | AWS DevOps, arsitek Cloud | 
| Simpan template. | Simpan perubahan Anda ke CloudFormation template. | AWS DevOps, arsitek Cloud | 

### Menyebarkan template CloudFormation
<a name="deploy-the-cfnshort-template"></a>


| Tugas | Deskripsi | Keterampilan yang dibutuhkan | 
| --- | --- | --- | 
| Menyebarkan CloudFormation template. | Untuk menerapkan `get_unique_user_id.yaml` template dengan menggunakan CloudFormation konsol, ikuti instruksi dalam [CloudFormation dokumentasi](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/cfn-console-create-stack.html).Atau, Anda dapat menjalankan AWS CLI perintah berikut untuk menyebarkan template:<pre>aws cloudformation create-stack \<br />--stack-name DemoNewUser \<br />--template-body file://get_unique_user_id.yaml \<br />--parameters ParameterKey=NewIamUserName,ParameterValue=demouser \<br />--capabilities CAPABILITY_NAMED_IAM</pre> | AWS DevOps, arsitek Cloud | 

## Sumber daya terkait
<a name="use-user-ids-iam-policies-access-control-automation-resources"></a>
+ [Buat tumpukan dari CloudFormation konsol](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/cfn-console-create-stack.html) (CloudFormation dokumentasi)
+ [Sumber daya kustom yang didukung Lambda (dokumentasi](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/template-custom-resources-lambda.html)) CloudFormation 
+ [Pengidentifikasi unik](https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_identifiers.html#identifiers-unique-ids) (dokumentasi IAM)
+ [Gunakan kredensyal sementara dengan AWS sumber daya (dokumentasi](https://docs.aws.amazon.com/IAM/latest/UserGuide/id_credentials_temp_use-resources.html) IAM)

# Validasi Account Factory untuk kode Terraform (AFT) secara lokal
<a name="validate-account-factory-for-terraform-aft-code-locally"></a>

*Alexandru Pop dan Michal Gorniak, Amazon Web Services*

## Ringkasan
<a name="validate-account-factory-for-terraform-aft-code-locally-summary"></a>

Pola ini menunjukkan cara menguji kode HashiCorp Terraform secara lokal yang dikelola oleh AWS Control Tower Account Factory for Terraform (AFT). Terraform adalah alat infrastruktur sebagai kode (IAc) yang membantu Anda menggunakan kode untuk menyediakan dan mengelola infrastruktur dan sumber daya cloud. AFT menyiapkan pipeline Terraform yang membantu Anda menyediakan dan menyesuaikan beberapa Akun AWS di. AWS Control Tower

Selama pengembangan kode, akan sangat membantu untuk menguji infrastruktur Terraform Anda sebagai kode (IAc) secara lokal, di luar pipa AFT. Pola ini menunjukkan bagaimana melakukan hal berikut:
+ Ambil salinan lokal kode Terraform yang disimpan di AWS CodeCommit repositori di akun manajemen AFT Anda.
+ Simulasikan pipeline AFT secara lokal dengan menggunakan kode yang diambil.

Prosedur ini juga dapat digunakan untuk menjalankan perintah Terraform yang bukan merupakan bagian dari pipeline AFT normal. Misalnya, Anda dapat menggunakan metode ini untuk menjalankan perintah seperti`terraform validate`,`terraform plan`,`terraform destroy`, dan`terraform import`.

## Prasyarat dan batasan
<a name="validate-account-factory-for-terraform-aft-code-locally-prereqs"></a>

**Prasyarat**
+ Lingkungan AWS multi-akun aktif yang menggunakan [AWS Control Tower](https://aws.amazon.com/controltower)
+ Lingkungan [AFT](https://docs.aws.amazon.com/controltower/latest/userguide/taf-account-provisioning.html) yang sepenuhnya digunakan
+ AWS Command Line Interface (AWS CLI), [diinstal](https://docs.aws.amazon.com/cli/latest/userguide/getting-started-install.html) dan [dikonfigurasi](https://docs.aws.amazon.com/cli/latest/userguide/cli-chap-configure.html)
+ [AWS CLI pembantu kredensi untuk AWS CodeCommit](https://docs.aws.amazon.com/codecommit/latest/userguide/setting-up-https-unixes.html), diinstal dan dikonfigurasi
+ Python 3.x
+ [Git](https://git-scm.com/book/en/v2/Getting-Started-Installing-Git), diinstal dan dikonfigurasi pada mesin lokal Anda
+ `git-remote-commit`utilitas, [diinstal dan dikonfigurasi](https://docs.aws.amazon.com/codecommit/latest/userguide/setting-up-git-remote-codecommit.html#setting-up-git-remote-codecommit-install)
+ [Terraform](https://learn.hashicorp.com/collections/terraform/aws-get-started?utm_source=WEBSITE&utm_medium=WEB_IO&utm_offer=ARTICLE_PAGE&utm_content=DOCS), diinstal dan dikonfigurasi (versi paket Terraform lokal harus cocok dengan versi yang digunakan dalam penerapan AFT)

**Batasan**
+ Pola ini tidak mencakup langkah-langkah penerapan yang diperlukan untuk AWS Control Tower, AFT, atau modul Terraform tertentu.
+ Output yang dihasilkan secara lokal selama prosedur ini tidak disimpan di log runtime pipeline AFT.

## Arsitektur
<a name="validate-account-factory-for-terraform-aft-code-locally-architecture"></a>

**Tumpukan teknologi target**
+ Infrastruktur AFT dikerahkan dalam penerapan AWS Control Tower 
+ Terraform
+ Git
+ AWS CLI versi 2

**Otomatisasi dan skala**

Pola ini menunjukkan cara memanggil kode Terraform secara lokal untuk penyesuaian akun global AFT dalam satu yang dikelola AFT. Akun AWS Setelah kode Terraform Anda divalidasi, Anda dapat menerapkannya ke akun yang tersisa di lingkungan multi-akun Anda. Untuk informasi selengkapnya, lihat [Memanggil ulang penyesuaian dalam dokumentasi.](https://docs.aws.amazon.com/controltower/latest/userguide/aft-account-customization-options.html#aft-re-invoke-customizations) AWS Control Tower 

Anda juga dapat menggunakan proses serupa untuk menjalankan kustomisasi akun AFT di terminal lokal. Untuk memanggil kode Terraform secara lokal dari penyesuaian akun AFT, kloning repositori alih-alih **aft-account-customizations**repositori dari akun manajemen AFT Anda. **aft-global-account-customizations** CodeCommit 

## Alat
<a name="validate-account-factory-for-terraform-aft-code-locally-tools"></a>

**Layanan AWS**
+ [AWS Control Tower](https://docs.aws.amazon.com/controltower/latest/userguide/what-is-control-tower.html)membantu Anda mengatur dan mengatur lingkungan AWS multi-akun, mengikuti praktik terbaik preskriptif.
+ [AWS Command Line Interface (AWS CLI)](https://docs.aws.amazon.com/cli/latest/userguide/cli-chap-welcome.html) adalah alat sumber terbuka yang membantu Anda berinteraksi Layanan AWS melalui perintah di shell baris perintah Anda.

**Layanan 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.
+ [Git](https://git-scm.com/docs) adalah sistem kontrol versi terdistribusi open-source.

**Kode**

Berikut ini adalah contoh skrip bash yang dapat digunakan untuk menjalankan kode Terraform secara lokal yang dikelola oleh AFT. Untuk menggunakan skrip, ikuti instruksi di bagian [Epik](#validate-account-factory-for-terraform-aft-code-locally-epics) dari pola ini.

```
#! /bin/bash
# Version: 1.1 2022-06-24 Unsetting AWS_PROFILE since, when set, it interferes with script operation
#          1.0 2022-02-02 Initial Version
#
# Purpose: For use with AFT: This script runs the local copy of TF code as if it were running within AFT pipeline.
#        * Facilitates testing of what the AFT pipline will do 
#           * Provides the ability to run terraform with custom arguments (like 'plan' or 'move') which are currently not supported within the pipeline.
#
# © 2021 Amazon Web Services, Inc. or its affiliates. All Rights Reserved.
# This AWS Content is provided subject to the terms of the AWS Customer Agreement
# available at http://aws.amazon.com/agreement or other written agreement between
# Customer and either Amazon Web Services, Inc. or Amazon Web Services EMEA SARL or both.
#
# Note: Arguments to this script are passed directly to 'terraform' without parsing nor validation by this script.
#
# Prerequisites:
#    1. local copy of ct GIT repositories
#    2. local backend.tf and aft-providers.tf filled with data for the target account on which terraform is to be run
#       Hint: The contents of above files can be obtain from the logs of a previous execution of the AFT pipeline for the target account.
#    3. 'terraform' binary is available in local PATH
#    4. Recommended: .gitignore file containing 'backend.tf', 'aft_providers.tf' so the local copy of these files are not pushed back to git

readonly credentials=$(aws sts assume-role \
    --role-arn arn:aws:iam::$(aws sts get-caller-identity --query "Account" --output text ):role/AWSAFTAdmin \
    --role-session-name AWSAFT-Session \
    --query Credentials )

unset AWS_PROFILE
export AWS_ACCESS_KEY_ID=$(echo $credentials | jq -r '.AccessKeyId')
export AWS_SECRET_ACCESS_KEY=$(echo $credentials | jq -r '.SecretAccessKey')
export AWS_SESSION_TOKEN=$(echo $credentials | jq -r '.SessionToken')
terraform "$@"
```

## Epik
<a name="validate-account-factory-for-terraform-aft-code-locally-epics"></a>

### Simpan kode contoh sebagai file lokal
<a name="save-the-example-code-as-a-local-file"></a>


| Tugas | Deskripsi | Keterampilan yang dibutuhkan | 
| --- | --- | --- | 
| Simpan kode contoh sebagai file lokal. | [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/id_id/prescriptive-guidance/latest/patterns/validate-account-factory-for-terraform-aft-code-locally.html) | Administrator AWS | 
| Jadikan kode contoh dapat dijalankan. | Buka jendela terminal dan autentikasi ke akun manajemen AWS AFT Anda dengan melakukan salah satu hal berikut:[\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/id_id/prescriptive-guidance/latest/patterns/validate-account-factory-for-terraform-aft-code-locally.html)Organisasi Anda mungkin juga memiliki alat khusus untuk memberikan kredensil otentikasi ke lingkungan Anda. AWS  | Administrator AWS | 
| Verifikasi akses ke akun manajemen AFT dengan benar Wilayah AWS. | Pastikan Anda menggunakan sesi terminal yang sama dengan yang Anda autentikasi ke akun manajemen AFT Anda.[\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/id_id/prescriptive-guidance/latest/patterns/validate-account-factory-for-terraform-aft-code-locally.html) | Administrator AWS | 
| Buat direktori lokal baru untuk menyimpan kode repositori AFT. | Dalam sesi terminal yang sama, jalankan perintah berikut:<pre>mkdir my_aft <br />cd my_aft</pre> | Administrator AWS | 
| Kloning kode repositori AFT jarak jauh. | [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/id_id/prescriptive-guidance/latest/patterns/validate-account-factory-for-terraform-aft-code-locally.html) | Administrator AWS | 

### Buat file konfigurasi Terraform yang diperlukan agar pipeline AFT berjalan secara lokal
<a name="create-the-terraform-configuration-files-required-for-the-aft-pipeline-to-run-locally"></a>


| Tugas | Deskripsi | Keterampilan yang dibutuhkan | 
| --- | --- | --- | 
| Buka pipeline AFT yang dijalankan sebelumnya dan salin file konfigurasi Terraform ke folder lokal. | File `backend.tf` dan `aft-providers.tf` konfigurasi yang dibuat dalam epik ini diperlukan agar pipeline AFT dapat berjalan secara lokal. File-file ini dibuat secara otomatis dalam pipeline AFT berbasis cloud, tetapi harus dibuat secara manual agar pipeline dapat berjalan secara lokal. Menjalankan pipeline AFT secara lokal memerlukan satu set file yang mewakili menjalankan pipeline dalam satu Akun AWS.[\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/id_id/prescriptive-guidance/latest/patterns/validate-account-factory-for-terraform-aft-code-locally.html)**Contoh pernyataan backend.tf yang dibuat secara otomatis**<pre>## Autogenerated backend.tf ##<br />## Updated on: 2022-05-31 16:27:45 ##<br />terraform {<br />  required_version = ">= 0.15.0"<br />  backend "s3" {<br />    region         = "us-east-2"<br />    bucket         = "aft-backend-############-primary-region"<br />    key            = "############-aft-global-customizations/terraform.tfstate"<br />    dynamodb_table = "aft-backend-############"<br />    encrypt        = "true"<br />    kms_key_id     = "########-####-####-####-############"<br />    role_arn       = "arn:aws:iam::#############:role/AWSAFTExecution"<br />  }<br />}</pre>**`aft-providers.tf`**File `backend.tf` dan terkait dengan penyebaran AFT Akun AWS, dan folder tertentu. File-file ini juga berbeda, tergantung pada apakah mereka berada di **aft-account-customizations**repositori **aft-global-customizations**dan dalam penerapan AFT yang sama. Pastikan Anda membuat kedua file dari daftar runtime yang sama. | Administrator AWS | 

### Jalankan pipeline AFT secara lokal dengan menggunakan contoh skrip bash
<a name="run-the-aft-pipeline-locally-by-using-the-example-bash-script"></a>


| Tugas | Deskripsi | Keterampilan yang dibutuhkan | 
| --- | --- | --- | 
| Terapkan perubahan konfigurasi Terraform yang ingin Anda validasi. | [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/id_id/prescriptive-guidance/latest/patterns/validate-account-factory-for-terraform-aft-code-locally.html) | Administrator AWS | 
| Jalankan `ct_terraform.sh` skrip dan tinjau outputnya. | [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/id_id/prescriptive-guidance/latest/patterns/validate-account-factory-for-terraform-aft-code-locally.html)** **[\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/id_id/prescriptive-guidance/latest/patterns/validate-account-factory-for-terraform-aft-code-locally.html) | Administrator AWS | 

### Dorong perubahan kode lokal Anda kembali ke repositori AFT
<a name="push-your-local-code-changes-back-to-the-aft-repository"></a>


| Tugas | Deskripsi | Keterampilan yang dibutuhkan | 
| --- | --- | --- | 
| Tambahkan referensi ke `aft-providers.tf` file `backend.tf` dan file ke `.gitignore` file. | Tambahkan `backend.tf`**** dan `aft-providers.tf` file yang Anda buat ke `.gitignore` file dengan menjalankan perintah berikut:<pre>echo backend.tf >> .gitignore<br />echo aft-providers.tf >>.gitignore</pre>Memindahkan file ke `.gitignore`**** file memastikan bahwa mereka tidak dikomit dan didorong kembali ke repositori AFT jarak jauh. | Administrator AWS | 
| Komit dan dorong perubahan kode Anda ke repositori AFT jarak jauh. | [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/id_id/prescriptive-guidance/latest/patterns/validate-account-factory-for-terraform-aft-code-locally.html)Perubahan kode yang Anda perkenalkan dengan mengikuti prosedur ini hingga titik ini diterapkan Akun AWS hanya untuk satu. | Administrator AWS | 

### Meluncurkan perubahan ke beberapa akun
<a name="roll-out-the-changes-to-multiple-accounts"></a>


| Tugas | Deskripsi | Keterampilan yang dibutuhkan | 
| --- | --- | --- | 
| Luncurkan perubahan ke semua akun Anda yang dikelola oleh AFT. | Untuk meluncurkan perubahan ke beberapa Akun AWS yang dikelola oleh AFT, ikuti petunjuk di [Re-invoke kustomisasi](https://docs.aws.amazon.com/controltower/latest/userguide/aft-account-customization-options.html#aft-re-invoke-customizations) dalam dokumentasi. AWS Control Tower  | Administrator AWS | 

# Lebih banyak pola
<a name="infrastructure-more-patterns-pattern-list"></a>

**Topics**
+ [Tambahkan HA ke Oracle PeopleSoft di Amazon RDS Custom dengan menggunakan replika baca](add-ha-to-oracle-peoplesoft-on-amazon-rds-custom-by-using-a-read-replica.md)
+ [Secara otomatis mengaudit grup AWS keamanan yang memungkinkan akses dari alamat IP publik](audit-security-groups-access-public-ip.md)
+ [Mengotomatiskan pembuatan akun dengan menggunakan Akselerator Zona Landing di AWS](automate-account-creation-lza.md)
+ [Otomatis menambahkan atau memperbarui entri registri Windows menggunakan AWS Systems Manager](automate-adding-or-updating-windows-registry-entries-using-aws-systems-manager.md)
+ [Mengotomatiskan penilaian sumber daya AWS](automate-aws-resource-assessment.md)
+ [Mengotomatiskan portofolio AWS Service Catalog dan penerapan produk dengan menggunakan AWS CDK](automate-aws-service-catalog-portfolio-and-product-deployment-by-using-aws-cdk.md)
+ [Otomatiskan failover dan failback lintas wilayah dengan menggunakan DR Orchestrator Framework](automate-cross-region-failover-and-failback-by-using-dr-orchestrator-framework.md)
+ [Mengotomatiskan penghapusan AWS CloudFormation tumpukan dan sumber daya terkait](automate-deletion-cloudformation-stacks-associated-resources.md)
+ [Otomatiskan konsumsi dan visualisasi metrik kustom Amazon MWAA di Amazon Managed Grafana dengan menggunakan Terraform](automate-ingestion-and-visualization-of-amazon-mwaa-custom-metrics.md)
+ [Otomatiskan konfigurasi RabbitMQ di Amazon MQ](automate-rabbitmq-configuration-in-amazon-mq.md)
+ [Mengotomatiskan penyebaran Rantai Pasokan AWS data lake dalam pengaturan multi-repositori](automate-the-deployment-of-aws-supply-chain-data-lakes.md)
+ [Otomatiskan replikasi instans Amazon RDS di seluruh Akun AWS](automate-the-replication-of-amazon-rds-instances-across-aws-accounts.md)
+ [Secara otomatis melampirkan kebijakan terkelola AWS untuk Systems Manager ke profil EC2 instans menggunakan Cloud Custodian dan AWS CDK](automatically-attach-an-aws-managed-policy-for-systems-manager-to-ec2-instance-profiles-using-cloud-custodian-and-aws-cdk.md)
+ [Membuat CI/CD pipeline dan kluster Amazon ECS secara otomatis untuk layanan mikro menggunakan AWS CDK](automatically-build-ci-cd-pipelines-and-amazon-ecs-clusters-for-microservices-using-aws-cdk.md)
+ [Secara otomatis mendeteksi perubahan dan memulai CodePipeline jaringan pipa yang berbeda untuk monorepo di CodeCommit](automatically-detect-changes-and-initiate-different-codepipeline-pipelines-for-a-monorepo-in-codecommit.md)
+ [Membangun pipeline data untuk menyerap, mengubah, dan menganalisis data Google Analytics menggunakan AWS DataOps Development Kit](build-a-data-pipeline-to-ingest-transform-and-analyze-google-analytics-data-using-the-aws-dataops-development-kit.md)
+ [Bangun PAC Server Perusahaan Fokus Mikro dengan Amazon EC2 Auto Scaling dan Systems Manager](build-a-micro-focus-enterprise-server-pac-with-amazon-ec2-auto-scaling-and-systems-manager.md)
+ [Buat dan dorong gambar Docker ke Amazon ECR menggunakan GitHub Actions dan Terraform](build-and-push-docker-images-to-amazon-ecr-using-github-actions-and-terraform.md)
+ [Bangun AWS landing zone yang mencakup MongoDB Atlas](build-aws-landing-zone-that-includes-mongodb-atlas.md)
+ [Memusatkan manajemen kunci akses IAM di AWS Organizations dengan menggunakan Terraform](centralize-iam-access-key-management-in-aws-organizations-by-using-terraform.md)
+ [Memusatkan distribusi paket perangkat lunak di AWS Organizations dengan menggunakan Terraform](centralize-software-package-distribution-in-aws-organizations-by-using-terraform.md)
+ [Konfigurasikan pencatatan pemanggilan model di Amazon Bedrock dengan menggunakan AWS CloudFormation](configure-bedrock-invocation-logging-cloudformation.md)
+ [Konfigurasikan perutean hanya-baca di grup ketersediaan Selalu Aktif di SQL Server pada AWS](configure-read-only-routing-in-an-always-on-availability-group-in-sql-server-on-aws.md)
+ [Buat portal untuk frontend mikro dengan menggunakan AWS Amplify, Angular, dan Federasi Modul](create-amplify-micro-frontend-portal.md)
+ [Buat kerangka orkestrasi sumber daya berbasis API menggunakan Actions dan Terragrunt GitHub](create-an-api-driven-resource-orchestration-framework-using-github-actions-and-terragrunt.md)
+ [Membuat EventBridge koneksi Amazon lintas akun di suatu organisasi](create-cross-account-amazon-eventbridge-connection-organization.md)
+ [Buat pipeline CI dinamis untuk proyek Java dan Python secara otomatis](create-dynamic-ci-pipelines-for-java-and-python-projects-automatically.md)
+ [Menerapkan API Amazon API Gateway di situs web internal menggunakan endpoint pribadi dan Application Load Balancer](deploy-an-amazon-api-gateway-api-on-an-internal-website-using-private-endpoints-and-an-application-load-balancer.md)
+ [Menyebarkan dan mengelola AWS Control Tower kontrol dengan menggunakan AWS CDK dan CloudFormation](deploy-and-manage-aws-control-tower-controls-by-using-aws-cdk-and-aws-cloudformation.md)
+ [Terapkan dan kelola AWS Control Tower kontrol dengan menggunakan Terraform](deploy-and-manage-aws-control-tower-controls-by-using-terraform.md)
+ [Menyebarkan kenari CloudWatch Synthetics dengan menggunakan Terraform](deploy-cloudwatch-synthetics-canaries-by-using-terraform.md)
+ [Menerapkan cluster CockroachDB di Amazon EKS dengan menggunakan Terraform](deploy-cockroachdb-on-eks-using-terraform.md)
+ [Menerapkan sistem file Lustre untuk pemrosesan data berkinerja tinggi dengan menggunakan Terraform dan DRA](deploy-lustre-file-system-for-high-performance-data-processing-with-terraform-dra.md)
+ [Terapkan kasus penggunaan RAG AWS dengan menggunakan Terraform dan Amazon Bedrock](deploy-rag-use-case-on-aws.md)
+ [Menerapkan sumber daya di AWS Wavelength Zona dengan menggunakan Terraform](deploy-resources-wavelength-zone-using-terraform.md)
+ [Menerapkan instance cluster failover SQL Server di Amazon EC2 dan Amazon FSx dengan menggunakan Terraform](deploy-sql-server-failover-cluster-instances-on-amazon-ec2-and-amazon-fsx.md)
+ [Terapkan Otomatisasi Keamanan untuk AWS WAF solusi dengan menggunakan Terraform](deploy-the-security-automations-for-aws-waf-solution-by-using-terraform.md)
+ [Mendeteksi instans database Amazon RDS dan Aurora yang memiliki sertifikat CA kedaluwarsa](detect-rds-instances-expiring-certificates.md)
+ [Dokumentasikan desain AWS landing zone](document-your-aws-landing-zone-design.md)
+ [Ekspor laporan AWS Backup dari seluruh organisasi di AWS Organizations sebagai file CSV](export-aws-backup-reports-from-across-an-organization-in-aws-organizations-as-a-csv-file.md)
+ [Buat rekomendasi yang dipersonalisasi dan diberi peringkat ulang menggunakan Amazon Personalize](generate-personalized-and-re-ranked-recommendations-using-amazon-personalize.md)
+ [Mengatur set izin untuk beberapa akun dengan menggunakan Account Factory untuk Terraform](govern-permission-sets-aft.md)
+ [Identifikasi dan beri tahu kapan sumber daya Amazon Data Firehose tidak dienkripsi dengan kunci AWS KMS](identify-and-alert-when-amazon-data-firehose-resources-are-not-encrypted-with-an-aws-kms-key.md)
+ [Implementasikan Account Factory for Terraform (AFT) dengan menggunakan pipeline bootstrap](implement-account-factory-for-terraform-aft-by-using-a-bootstrap-pipeline.md)
+ [Menerapkan versi API berbasis jalur dengan menggunakan domain kustom di Amazon API Gateway](implement-path-based-api-versioning-by-using-custom-domains.md)
+ [Instal Agen SSM di node pekerja Amazon EKS dengan menggunakan Kubernetes DaemonSet](install-ssm-agent-on-amazon-eks-worker-nodes-by-using-kubernetes-daemonset.md)
+ [Instal Agen dan CloudWatch agen SSM di node pekerja Amazon EKS menggunakan preBootstrapCommands](install-the-ssm-agent-and-cloudwatch-agent-on-amazon-eks-worker-nodes-using-prebootstrapcommands.md)
+ [Kelola set AWS IAM Identity Center izin sebagai kode dengan menggunakan AWS CodePipeline](manage-aws-iam-identity-center-permission-sets-as-code-by-using-aws-codepipeline.md)
+ [Kelola set AWS izin secara dinamis dengan menggunakan Terraform](manage-aws-permission-sets-dynamically-by-using-terraform.md)
+ [Kelola produk AWS Service Catalog di beberapa akun AWS dan Wilayah AWS](manage-aws-service-catalog-products-in-multiple-aws-accounts-and-aws-regions.md)
+ [Mengelola aplikasi kontainer lokal dengan menyiapkan Amazon ECS Anywhere dengan AWS CDK](manage-on-premises-container-applications-by-setting-up-amazon-ecs-anywhere-with-the-aws-cdk.md)
+ [Mengelola AWS Organizations kebijakan sebagai kode dengan menggunakan AWS CodePipeline dan Amazon Bedrock](manage-organizations-policies-as-code.md)
+ [Migrasikan data DNS secara massal ke zona host pribadi Amazon Route 53](migrate-dns-records-in-bulk-to-an-amazon-route-53-private-hosted-zone.md)
+ [Migrasi Oracle ke PeopleSoft Amazon RDS Kustom](migrate-oracle-peoplesoft-to-amazon-rds-custom.md)
+ [Migrasikan sistem RHEL BYOL ke instans AWS License-Included dengan menggunakan AWS MGN](migrate-rhel-byol-systems-to-aws-license-included-instances-by-using-aws-mgn.md)
+ [Pantau ElastiCache kluster Amazon untuk enkripsi saat istirahat](monitor-amazon-elasticache-clusters-for-at-rest-encryption.md)
+ [Memantau aktivitas aplikasi dengan menggunakan Wawasan CloudWatch Log](monitor-application-activity-by-using-cloudwatch-logs-insights.md)
+ [Pantau cluster SAP RHEL Pacemaker dengan menggunakan layanan AWS](monitor-sap-rhel-pacemaker-clusters-by-using-aws-services.md)
+ [Buat arsitektur IPAM Multi-wilayah yang hierarkis dengan menggunakan Terraform AWS](multi-region-ipam-architecture.md)
+ [Optimalkan penerapan tanpa server multi-akun dengan menggunakan alur kerja dan Tindakan AWS CDK GitHub](optimize-multi-account-serverless-deployments.md)
+ [Menyediakan AWS Service Catalog produk berdasarkan AWS CloudFormation template dengan menggunakan GitHub Actions](provision-aws-service-catalog-products-using-github-actions.md)
+ [Menyediakan peran IAM dengan hak istimewa paling sedikit dengan menerapkan solusi mesin penjual otomatis peran](provision-least-privilege-iam-roles-by-deploying-a-role-vending-machine-solution.md)
+ [Hapus EC2 entri Amazon di Akun AWS seberang AWS Managed Microsoft AD dengan menggunakan AWS Lambda otomatisasi](remove-amazon-ec2-entries-across-aws-accounts-from-aws-managed-microsoft-ad.md)
+ [Hapus EC2 entri Amazon dalam hal yang sama Akun AWS dari AWS Managed Microsoft AD dengan menggunakan AWS Lambda otomatisasi](remove-amazon-ec2-entries-in-the-same-aws-account-from-aws-managed-microsoft-ad.md)
+ [Amankan transfer file dengan menggunakan Transfer Family, Amazon Cognito, dan GuardDuty](secure-file-transfers.md)
+ [Kirim pemberitahuan saat pengguna IAM dibuat](send-a-notification-when-an-iam-user-is-created.md)
+ [Siapkan router sel tanpa server untuk arsitektur berbasis sel](serverless-cell-router-architecture.md)
+ [Siapkan CI/CD pipeline untuk beban kerja hybrid di Amazon ECS Anywhere dengan menggunakan AWS CDK dan GitLab](set-up-a-ci-cd-pipeline-for-hybrid-workloads-on-amazon-ecs-anywhere-by-using-aws-cdk-and-gitlab.md)
+ [Menyiapkan HA/DR arsitektur untuk Oracle E-Business Suite di Amazon RDS Custom dengan database siaga aktif](set-up-an-ha-dr-architecture-for-oracle-e-business-suite-on-amazon-rds-custom-with-an-active-standby-database.md)
+ [Mengatur resolusi DNS untuk jaringan hybrid di lingkungan multi-akun AWS](set-up-dns-resolution-for-hybrid-networks-in-a-multi-account-aws-environment.md)
+ [Menyiapkan infrastruktur Multi-AZ untuk SQL Server Always On FCI dengan menggunakan Amazon FSx](set-up-multi-az-infrastructure-for-a-sql-server-always-on-fci-by-using-amazon-fsx.md)
+ [Siapkan fungsionalitas Oracle UTL\$1FILE pada Aurora PostgreSQL yang kompatibel](set-up-oracle-utl_file-functionality-on-aurora-postgresql-compatible.md)
+ [Sederhanakan otentikasi aplikasi dengan TLS timbal balik di Amazon ECS dengan menggunakan Application Load Balancer](simplify-application-authentication-with-mutual-tls-in-amazon-ecs.md)
+ [Sederhanakan manajemen sertifikat pribadi dengan menggunakan AWS Private CA dan AWS RAM](simplify-private-certificate-management-by-using-aws-private-ca-and-aws-ram.md)
+ [Merampingkan alur kerja pembelajaran mesin dari pengembangan lokal hingga eksperimen yang dapat diskalakan dengan menggunakan SageMaker AI dan Hydra](streamline-machine-learning-workflows-by-using-amazon-sagemaker.md)
+ [Tandai lampiran Transit Gateway secara otomatis menggunakan AWS Organizations](tag-transit-gateway-attachments-automatically-using-aws-organizations.md)
+ [Peran transisi untuk PeopleSoft aplikasi Oracle di Amazon RDS Custom for Oracle](transition-roles-for-an-oracle-peoplesoft-application-on-amazon-rds-custom-for-oracle.md)
+ [Gunakan Amazon Q Developer sebagai asisten pengkodean untuk meningkatkan produktivitas Anda](use-q-developer-as-coding-assistant-to-increase-productivity.md)