Terjemahan disediakan oleh mesin penerjemah. Jika konten terjemahan yang diberikan bertentangan dengan versi bahasa Inggris aslinya, utamakan versi bahasa Inggris.
Otomatiskan alokasi Amazon VPC IPv4 IPAM CIDR untuk yang baru dengan menggunakan AFT Akun AWS
Kien Pham dan Alex Pazik, Amazon Web Services
Ringkasan
Pola ini menunjukkan cara mengotomatiskan alokasi CIDR Amazon VPC IP Address Manager (IPAM IPv4 ) untuk yang baru dengan Akun AWS menggunakan Account AWS Control Tower Factory for Terraform (AFT). Ini dilakukan dengan menggunakan kustomisasi tingkat akun yang mengalokasikan blok IPv4 CIDR dari IPAM ke virtual private cloud (VPC) baru menggunakan modul. aft-account-customizations
Dengan IPAM, Anda dapat mengatur, menetapkan, memantau, dan mengaudit alamat IP dalam skala besar, memungkinkan Anda untuk dengan mudah merencanakan, melacak, dan memantau alamat IP untuk beban kerja Anda AWS . Anda dapat membuat kolam IPAM dan IPAM untuk digunakan untuk mengalokasikan blok IPv4 CIDR ke VPC baru selama proses penjual akun.
Prasyarat dan batasan
Prasyarat
Aktif Akun AWS dengan AWS Control Tower diaktifkan di didukung Wilayah AWSdan AFT dikerahkan
Penyedia sistem kontrol versi (VCS)
yang didukung seperti BitBucket, GitHub, dan Enterprise GitHub Lingkungan runtime tempat Anda dapat menjalankan modul Terraform yang menginstal AFT
AWS Command Line Interface (AWS CLI) diinstal dan dikonfigurasi
Batasan
Beberapa Layanan AWS tidak tersedia di semua Wilayah AWS. Untuk ketersediaan Wilayah, lihat AWS Layanan menurut Wilayah
. Untuk titik akhir tertentu, lihat Titik akhir dan kuota layanan, dan pilih tautan untuk layanan.
Versi produk
AWS Control Tower landing zone versi 3.0 atau lebih baru, lebih awal dari versi 4.0
AFT
versi 1.13.0 atau yang lebih baru, lebih awal dari versi 2.0.0 Terraform OSS versi 1.2.0 atau yang lebih baru, lebih awal dari versi 2.0.0
Terraform AWS Provider
( terraform-provider-aws) versi 5.11.0 atau yang lebih baru, lebih awal dari versi 6.0.0Modul Terraform untuk IPAM
( aws-ia/ipam/aws) versi 2.1.0 atau yang lebih baru
Arsitektur
Diagram berikut menunjukkan alur kerja dan komponen pola ini.

Alur kerja terdiri dari tugas-tugas utama berikut:
Memicu perubahan - Perubahan pada kustomisasi Terraform dan IPAM berkomitmen ke GitHub repositori dan didorong. Tugas ini memicu AWS CodeBuild pipeline secara otomatis.
Otomatiskan build — Di dalam CodeBuild, beberapa proyek build dipicu AWS Step Functions.
Terapkan kustomisasi — Step Functions berkoordinasi CodeBuild dengan merencanakan dan menerapkan perubahan Terraform. Tugas ini menggunakan modul AFT Terraform untuk mengoordinasikan penetapan IP kumpulan IPAM ke akun penjual otomatis. AWS
Alat
Layanan AWS
AWS CodeBuildadalah layanan build yang dikelola sepenuhnya yang membantu Anda mengkompilasi kode sumber, menjalankan pengujian unit, dan menghasilkan artefak yang siap digunakan.
AWS CodePipelinemembantu Anda dengan cepat memodelkan dan mengkonfigurasi berbagai tahapan rilis perangkat lunak dan mengotomatiskan langkah-langkah yang diperlukan untuk merilis perubahan perangkat lunak secara terus menerus.
AWS Control Towermengatur kemampuan beberapa lainnya, termasuk Layanan AWS AWS Organizations,, dan. AWS Service Catalog AWS IAM Identity Center Ini dapat membantu Anda mengatur dan mengatur lingkungan AWS multi-akun, mengikuti praktik terbaik preskriptif.
Amazon DynamoDB adalah layanan database NoSQL yang dikelola sepenuhnya yang menyediakan kinerja yang cepat, dapat diprediksi, dan terukur.
AWS Lambdaadalah layanan komputasi yang membantu Anda menjalankan kode tanpa perlu menyediakan atau mengelola server. Ini menjalankan kode Anda hanya bila diperlukan dan skala secara otomatis, jadi Anda hanya membayar untuk waktu komputasi yang Anda gunakan.
AWS SDK untuk Python (Boto3)
adalah kit pengembangan perangkat lunak yang membantu Anda mengintegrasikan aplikasi, perpustakaan, atau skrip Python Anda. Layanan AWS AWS Service Catalogmembantu 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.
AWS Step Functionsadalah layanan orkestrasi tanpa server yang membantu Anda menggabungkan AWS Lambda fungsi dan lainnya Layanan AWS untuk membangun aplikasi bisnis yang penting.
Amazon Virtual Private Cloud (Amazon VPC) 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 Amazon VPC IP Address Manager (IPAM) adalah fitur VPC yang memudahkan Anda merencanakan, melacak, dan memantau alamat IP untuk beban kerja Anda. AWS
Alat-alat lainnya
GitHub
adalah platform pengembang yang dapat digunakan pengembang untuk membuat, menyimpan, mengelola, dan membagikan kode mereka. HashiCorp Terraform
adalah alat infrastruktur sebagai kode (IAc) yang membantu Anda membuat dan mengelola sumber daya cloud dan lokal. Ini termasuk komponen tingkat rendah seperti instance komputasi, penyimpanan, dan jaringan dan komponen tingkat tinggi seperti entri DNS dan fitur perangkat lunak layanan (SaaS). Python adalah bahasa
pemrograman komputer tujuan umum. Anda dapat menggunakannya untuk membangun aplikasi, mengotomatiskan tugas, dan mengembangkan layanan di AWS Cloud aplikasi.
Repositori kode
Kode untuk pola ini tersedia di GitHub AWS Control Tower Account Factory for Terraform
repositori.
Praktik terbaik
Saat Anda menerapkan AFT, kami menyarankan Anda mengikuti praktik terbaik untuk membantu memastikan implementasi yang aman, efisien, dan berhasil. Pedoman dan rekomendasi utama untuk mengimplementasikan dan mengoperasikan AFT meliputi:
Tinjauan masukan secara menyeluruh — Tinjau dan pahami setiap masukan
dengan cermat. Konfigurasi input yang benar sangat penting untuk pengaturan dan fungsi AFT. Pembaruan template reguler - Simpan template diperbarui dengan AWS fitur terbaru dan versi Terraform. Pembaruan rutin membantu Anda memanfaatkan fungsionalitas baru dan menjaga keamanan.
Versioning — Sematkan versi modul AFT Anda dan gunakan penerapan AFT terpisah untuk pengujian jika memungkinkan.
Cakupan — Gunakan AFT hanya untuk menyebarkan pagar pembatas infrastruktur dan penyesuaian. Jangan menggunakannya untuk menyebarkan aplikasi Anda.
Linting dan validasi — Pipeline AFT memerlukan konfigurasi Terraform yang dilinted dan divalidasi. Jalankan lint, validasi, dan uji sebelum mendorong konfigurasi ke repositori AFT.
Modul Terraform — Buat kode Terraform yang dapat digunakan kembali sebagai modul, dan selalu tentukan versi Terraform dan AWS penyedia agar sesuai dengan kebutuhan organisasi Anda.
Epik
| Tugas | Deskripsi | Keterampilan yang dibutuhkan |
|---|---|---|
Menyebarkan AWS Control Tower. | Siapkan dan konfigurasikan AWS Control Tower di AWS lingkungan Anda untuk memastikan manajemen dan tata kelola terpusat Anda. Akun AWS Untuk informasi selengkapnya, lihat Memulai AWS Control Tower dalam AWS Control Tower dokumentasi. | Administrator awan |
Terapkan AWS Control Tower Account Factory untuk Terraform (AFT). | Siapkan AFT di akun manajemen AFT khusus yang baru. Untuk informasi selengkapnya, lihat C onfigure dan luncurkan AWS Control Tower Account Factory for Terraform Anda di dokumentasi. AWS Control Tower | Administrator awan |
Selesaikan pasca-penyebaran AFT. | Setelah penerapan infrastruktur AFT selesai, selesaikan langkah-langkah dalam langkah-langkah pasca-penerapan dalam dokumentasi. AWS Control Tower | Administrator awan |
| Tugas | Deskripsi | Keterampilan yang dibutuhkan |
|---|---|---|
Delegasikan administrator IPAM. | Untuk mendelegasikan akun administrator IPAM di AWS organisasi Anda, gunakan langkah-langkah berikut:
Atau, Anda dapat menggunakan AWS CLI dan menjalankan perintah berikut:
Untuk informasi selengkapnya, lihat Mengintegrasikan IPAM dengan akun di AWS organisasi dalam dokumentasi VPC Amazon enable-ipam-organization-admindan -account di AWS CLI Referensi Perintah. pentingUntuk terus menggunakan IPAM, Anda harus masuk ke akun administrator yang didelegasikan. Profil SSO atau variabel AWS lingkungan yang ditentukan pada langkah berikutnya harus memungkinkan Anda masuk ke akun tersebut dan memberikan izin untuk membuat kumpulan tingkat atas dan regional IPAM. | Administrator AWS |
Buat kolam tingkat atas dan regional IPAM. | GitHub Repositori pola ini berisi template Terraform yang dapat Anda gunakan untuk membuat kumpulan tingkat atas IPAM dan kumpulan regional Anda. Kemudian Anda dapat berbagi pool dengan organisasi, unit organisasi (OU) Akun AWS, atau sumber daya lainnya dengan menggunakan AWS Resource Access Manager (AWS RAM). Gunakan langkah-langkah berikut:
Catat ID kumpulan sumber daya yang dihasilkan setelah pembuatan. Anda akan memerlukan ID saat mengirimkan permintaan akun. Jika Anda lupa ID kumpulan sumber daya, Anda bisa mendapatkannya nanti dari file Konsol Manajemen AWS. pentingPastikan bahwa kolam yang dibuat CIDRs tidak tumpang tindih dengan kolam lain di Wilayah kerja Anda. Anda dapat membuat pool tanpa CIDR, tetapi Anda tidak akan dapat menggunakan pool untuk alokasi sampai Anda telah menyediakan CIDR untuk itu. Anda dapat menambahkan CIDRs ke kolam kapan saja dengan mengedit kolam. | Administrator AWS |
| Tugas | Deskripsi | Keterampilan yang dibutuhkan |
|---|---|---|
Mulailah membuat kustomisasi akun. | Untuk memulai kustomisasi akun baru, jalankan perintah berikut dari terminal Anda:
| DevOps insinyur |
Buat | Tambahkan kode dinamis ke Gunakan langkah-langkah berikut:
| DevOps insinyur |
Buat | Tambahkan kode dinamis ke Gunakan langkah-langkah berikut:
| DevOps insinyur |
Buat | Buat Gunakan langkah-langkah berikut:
| DevOps insinyur |
Buat | Buat Gunakan langkah-langkah berikut:
| DevOps insinyur |
Buat | Buat Gunakan langkah-langkah berikut:
| DevOps insinyur |
Buat | Buat Gunakan langkah-langkah berikut:
| DevOps insinyur |
Komit kustomisasi. | Untuk melakukan penyesuaian baru ke repositori kustomisasi akun, jalankan perintah berikut:
| DevOps insinyur |
Terapkan kustomisasi. | Tambahkan kode ke Gunakan langkah-langkah berikut:
| AWS DevOps |
Validasi kustomisasi. | Masuk ke akun yang baru dijual dan verifikasi bahwa kustomisasi berhasil diterapkan. Gunakan langkah-langkah berikut:
| DevOps insinyur |
Pemecahan masalah
| Isu | Solusi |
|---|---|
Anda mengalami kegagalan dalam pembuatan atau manajemen sumber daya yang disebabkan oleh izin yang tidak memadai. | Tinjau peran dan kebijakan AWS Identity and Access Management (IAM) yang dilampirkan ke Step Functions CodeBuild, dan layanan lain yang terlibat dalam penerapan. Konfirmasikan bahwa mereka memiliki izin yang diperlukan. Jika ada masalah izin, sesuaikan kebijakan IAM untuk memberikan akses yang diperlukan. |
Anda mencapai Layanan AWS kuota selama penerapan. | Sebelum Anda menerapkan pipeline, periksa Layanan AWS kuota untuk sumber daya seperti bucket Amazon Simple Storage Service (Amazon S3), peran IAM, dan fungsi. AWS Lambda Jika perlu, permintaan meningkat ke kuota. Untuk informasi lebih lanjut, lihat Layanan AWS kuota di Referensi AWS Umum. |
Sumber daya terkait
Layanan AWS dokumentasi
Sumber daya lainnya