Terjemahan disediakan oleh mesin penerjemah. Jika konten terjemahan yang diberikan bertentangan dengan versi bahasa Inggris aslinya, utamakan versi bahasa Inggris.
Arsitektur dan terminologi ADDF
Sebelum Anda dapat memahami topik keamanan dan operasional dalam panduan ini, penting untuk memiliki pemahaman tingkat tinggi tentang terminologi, komponen, dan arsitektur Autonomous Driving Data Framework (ADDF). Bagian ini terdiri dari topik-topik berikut:
Terminologi ADDF
Terminologi kunci untuk ADDF adalah sebagai berikut:
-
Modul ADDF — Modul adalah infrastruktur sebagai kode (IAc) yang mengimplementasikan tugas umum dalam sistem bantuan pengemudi tingkat lanjut (ADAS). Tugas umum termasuk mengonfigurasi penyimpanan data terpusat, jaringan pemrosesan data, mekanisme visualisasi, antarmuka pencarian, beban kerja simulasi, antarmuka analitik, dan dasbor bawaan. Anda dapat membuat modul berdasarkan kebutuhan Anda, atau Anda dapat menggunakan kembali atau menyesuaikan modul yang ada.
Anda dapat menggunakan AWS Cloud Development Kit (AWS CDK) untuk mendefinisikan modul ADDF, atau Anda dapat menggunakan kerangka kerja IAC umum, seperti Hashicorp Terraform atau AWS CloudFormation, untuk mengimplementasikan modul ADDF. Modul memiliki seperangkat parameter input. Parameter input dapat bergantung pada nilai output dari modul lain. Modul ADDF adalah unit penyebaran terkecil untuk target ADDF. Akun AWS
-
File manifes penerapan ADDF - File ini mendefinisikan orkestrasi modul ADDF mandiri. Orkestrasi mengacu pada urutan penyebaran modul. Dalam file manifes penerapan ADDF, Anda dapat menggunakan grup ADDF untuk mengelompokkan modul terkait bersama-sama. Dalam file ini, Anda juga menentukan toolchain ADDF Akun AWS, target ADDF Akun AWS, dan target. Wilayah AWS
-
Kerangka penerapan ADDF - Kerangka kerja ini menyebarkan modul ADDF ke dalam target ADDF Akun AWS berdasarkan orkestrasi yang ditentukan dalam file manifes penerapan ADDF. Kerangka penerapan ADDF diimplementasikan dengan menggunakan proyek AWS sumber terbuka berikut:
-
SeedFarmer
(GitHub) — SeedFarmer adalah alat CLI yang digunakan untuk penerapan ADDF. Ini mengelola setiap status modul, menyiapkan dan mengemas kode modul, membuat kebijakan hak istimewa paling sedikit untuk peran penerapan ADDF, dan menyediakan instruksi semantik yang digunakan untuk penerapan. CodeSeeder Anda dapat berinteraksi langsung dengan SeedFarmer untuk menjalankan penerapan ADDF, atau Anda dapat mengintegrasikannya ke dalam pipeline continuous integration and continuous deployment (CI/CD). -
CodeSeeder
(GitHub) — CodeSeeder menyebarkan infrastruktur arbitrer sebagai paket kode melalui pekerjaan. AWS CodeBuild SeedFarmersecara otomatis mengatur dan menjalankan. CodeSeeder Hanya berinteraksi SeedFarmer langsung dengan CodeSeeder.
Kerangka penerapan ADDF dirancang untuk mendukung penerapan dalam arsitektur akun tunggal dan multi-akun. Berdasarkan persyaratan organisasi Anda, Anda memutuskan apakah arsitektur satu akun atau multi-akun diperlukan.
-
-
ADDF toolchain Akun AWS — Akun ini mengatur dan mengelola penyebaran modul ke dalam target ADDF Akun AWS, berdasarkan definisi dalam file manifes penerapan ADDF. Penerapan ADDF hanya dapat memiliki satu toolchain ADDF. Akun AWS Dalam arsitektur akun tunggal, rantai alat ADDF juga Akun AWS merupakan target ADDF. Akun AWS Akun ini berisi peran AWS Identity and Access Management (IAM), yang disebut peran IAM toolchain ADDF, yang diasumsikan oleh SeedFarmer selama proses penerapan ADDF. Dalam panduan ini, kami merujuk ke toolchain ADDF Akun AWS sebagai akun toolchain.
-
Target ADDF Akun AWS - Ini adalah akun target tempat Anda menggunakan modul ADDF. Anda dapat memiliki satu atau lebih akun target. Akun ini berisi sumber daya dan logika aplikasi yang dijelaskan dalam file manifes penerapan ADDF dan modul yang dipetakan. Dalam arsitektur akun tunggal, target ADDF juga Akun AWS merupakan rantai alat ADDF. Akun AWS Setiap akun target ADDF berisi peran IAM, yang disebut peran IAM penerapan ADDF, yang diasumsikan oleh CodeSeeder selama proses penerapan. Dalam panduan ini, kami merujuk ke target ADDF Akun AWS sebagai akun target.
-
Instans ADDF — Saat Anda menerapkan ADDF dan modul Anda di cloud, seperti yang didefinisikan dalam file manifes penerapan ADDF Anda, ini menjadi instance ADDF. Instans ADDF dapat memiliki arsitektur akun tunggal atau multi-akun, dan Anda dapat menerapkan beberapa instans ADDF. Untuk informasi selengkapnya tentang memilih jumlah instance dan mendesain arsitektur akun untuk kasus penggunaan Anda, lihatMendefinisikan arsitektur ADDF Anda.
Arsitektur ADDF
Diagram berikut menunjukkan arsitektur tingkat tinggi untuk instance ADDF di. AWS Cloud Ini menunjukkan arsitektur multi-akun, termasuk akun toolchain khusus dan dua akun target. Panduan ini membahas end-to-end proses penggunaan ADDF untuk menyebarkan sumber daya ke akun target.

-
Buat dan bootstrap ADDF Akun AWS.
Agar berfungsi dengan baik, setiap akun harus di-bootstrap ke ADDF dan ke. AWS CDK Jika ini merupakan penerapan ADDF baru atau Anda menambahkan akun target baru, lakukan hal berikut:
-
Bootstrap AWS CDK di akun toolchain dan setiap akun target. Untuk petunjuk, lihat Bootstrapping (dokumentasi)AWS CDK . ADDF menggunakan AWS CDK untuk menyebarkan infrastrukturnya.
-
Bootstrap ADDF di akun toolchain dan setiap akun target. Untuk petunjuk, lihat Akun AWS Bootstrap di Panduan Penerapan ADDF
. Ini mengatur semua peran IAM khusus ADDF yang diperlukan oleh dan. SeedFarmer CodeSeeder
catatan
Anda perlu melakukan langkah ini hanya jika Anda awalnya menerapkan ADDF atau menambahkan akun target baru. Langkah ini bukan bagian dari penerapan ADDF yang berulang ke instance ADDF yang sudah ada.
-
-
Buat atau sesuaikan modul ADDF.
Buat atau sesuaikan modul ADDF berdasarkan masalah spesifik yang Anda coba selesaikan. Modul Anda harus mewakili tugas atau kelompok tugas yang terisolasi. Tentukan parameter input untuk modul sesuai kebutuhan, dan gunakan nilai output modul sebagai parameter input untuk modul lain.
-
Tentukan orkestrasi modul dalam file manifes penerapan ADDF.
Dalam file manifes ADDF, atur modul ke dalam grup dan tentukan urutan penerapan dan dependensi di antara keduanya. Dalam file ini, Anda juga menentukan akun toolchain tunggal dan akun target (termasuk Wilayah AWS) untuk setiap grup ADDF dan modulnya.
-
Evaluasi file manifes penerapan ADDF dan buat cakupan penerapan.
Pengembang ADDF atau pipeline CI/CD, seperti AWS CodePipeline, memulai evaluasi file manifes penerapan ADDF dengan memanggil alat CLI,. SeedFarmer Untuk memulai evaluasi:
-
SeedFarmer menggunakan file manifes penerapan ADDF sebagai parameter input untuk evaluasi.
-
Untuk mengasumsikan peran IAM toolchain ADDF, SeedFarmer mengharapkan peran IAM yang sama dan valid atau kredenal pengguna yang ditentukan selama proses bootstrap ADDF, pada langkah 1.
Jika SeedFarmer tidak memiliki kredensional yang benar untuk mengasumsikan peran IAM toolchain ADDF atau tidak dapat mengakses file manifes penerapan ADDF, evaluasi tidak akan dimulai.
Jika SeedFarmer dapat memulai evaluasi, ini mengasumsikan peran IAM toolchain ADDF di akun toolchain. Dari sana, SeedFarmer dapat mengakses akun target apa pun, dengan mengasumsikan peran IAM penerapan ADDF di akun itu. SeedFarmer kemudian mencoba membaca metadata ADDF apa pun di akun toolchain dan akun target. Salah satu hal berikut terjadi:
-
Jika tidak ada metadata ADDF untuk dibaca, itu menunjukkan bahwa ini adalah contoh ADDF baru. SeedFarmer menentukan bahwa cakupan penerapan adalah seluruh file manifes penerapan ADDF dan isinya.
-
Jika metadata ADDF ada, SeedFarmer bandingkan file manifes penerapan ADDF dan isinya dengan MD5 hash artefak yang digunakan yang ada di akun target. Jika perubahan yang dapat diterapkan terdeteksi, proses ini berlanjut. Jika tidak ada perubahan deployable yang terdeteksi, prosesnya selesai.
-
-
Terapkan modul ADDF dalam ruang lingkup ke akun target.
CodeSeeder sekarang memiliki daftar penerapan yang diurutkan untuk dijalankan, sesuai dengan file manifes penerapan ADDF dan hasil evaluasi dari langkah sebelumnya. Berdasarkan daftar yang diurutkan itu, CodeSeeder mengasumsikan peran IAM penerapan ADDF di setiap akun target terkait. Kemudian berjalan CodeSeeder dalam AWS CodeBuild pekerjaan untuk membuat atau memperbarui penyebaran IAC individu, seperti AWS CDK aplikasi, untuk modul ADDF. Secara default, ADDF digunakan AWS CDK sebagai kerangka IAc, tetapi kerangka kerja IAc umum lainnya juga didukung. Setelah proses selesai untuk setiap akun target, Anda memiliki alur kerja end-to-end berbasis ADAS lintas akun yang sepenuhnya diterapkan, seperti yang Anda tentukan dalam file manifes penerapan ADDF.
Jika Anda menggunakan arsitektur akun tunggal, akun toolchain dan akun target adalah akun yang sama, dan satu akun memiliki semua fungsi yang dijelaskan.
-
Gunakan infrastruktur yang digunakan ADDF.
Pengembang ADAS dapat menggunakan alur kerja berbasis ADAS yang diterapkan, seperti yang ditentukan oleh kasus penggunaan Anda.
Alur kerja ini menjelaskan arsitektur satu contoh lingkungan multi-akun ADDF. Bergantung pada model pengembangan, penerapan, dan operasi Anda, sebaiknya Anda menjalankan beberapa instans ADDF di lingkungan multi-tahap. Pengaturan tipikal mungkin mencakup instance ADDF khusus yang didedikasikan Akun AWS untuk setiap tahap penerapan, seperti cabang untuk pengembangan, pengujian, dan produksi. Anda juga dapat menjalankan beberapa instans ADDF di lingkungan akun tunggal atau multi-akun yang sama Wilayah AWS, dengan asumsi bahwa Anda membuat namespace sumber daya unik untuk setiap instans ADDF. Untuk informasi selengkapnya, lihat Mendefinisikan arsitektur ADDF Anda.