Terjemahan disediakan oleh mesin penerjemah. Jika konten terjemahan yang diberikan bertentangan dengan versi bahasa Inggris aslinya, utamakan versi bahasa Inggris.
AWS Proton komponen
Komponen adalah jenis sumber AWS Proton daya. Mereka menambahkan fleksibilitas ke template layanan. Komponen menyediakan tim platform dengan mekanisme untuk memperluas pola infrastruktur inti, dan menentukan perlindungan yang memberdayakan pengembang untuk mengelola aspek infrastruktur aplikasi mereka.
Dalam AWS Proton administrator mendefinisikan infrastruktur standar yang digunakan di seluruh tim pengembangan dan aplikasi. Namun, tim pengembangan mungkin perlu menyertakan sumber daya tambahan untuk kasus penggunaan spesifik mereka, seperti antrian Amazon Simple Queue Service (Amazon SQS) atau tabel Amazon DynamoDB. Sumber daya khusus aplikasi ini mungkin sering berubah, terutama selama pengembangan aplikasi awal. Mempertahankan perubahan yang sering terjadi pada templat yang ditulis administrator ini mungkin sulit untuk dikelola dan diskalakan — administrator perlu mempertahankan lebih banyak templat tanpa nilai tambah administrator yang sebenarnya. Alternatif—membiarkan pengembang aplikasi membuat template untuk aplikasi mereka—juga tidak ideal, karena menghilangkan kemampuan administrator untuk membakukan komponen arsitektur utama, seperti tugas. AWS Fargate Di sinilah komponen masuk.
Dengan komponen, pengembang dapat menambahkan sumber daya tambahan ke aplikasi mereka, di atas dan di luar apa yang didefinisikan administrator dalam template lingkungan dan layanan. Pengembang kemudian melampirkan komponen ke instance layanan. AWS Proton menyediakan sumber daya infrastruktur yang ditentukan oleh komponen seperti halnya menyediakan sumber daya untuk lingkungan dan instance layanan.
Komponen dapat membaca input instance layanan dan memberikan output ke instance layanan, untuk pengalaman yang terintegrasi penuh. Misalnya, jika komponen menambahkan bucket Amazon Simple Storage Service (Amazon S3) Simple Storage Service (Amazon S3) untuk digunakan oleh instance layanan, template komponen dapat mempertimbangkan nama instance lingkungan dan layanan untuk penamaan bucket. Saat AWS Proton merender template layanan untuk menyediakan instance layanan, instance layanan dapat merujuk ke bucket dan menggunakannya.
Komponen yang AWS Proton saat ini mendukung adalah komponen yang didefinisikan secara langsung. Anda meneruskan file Infrastructure as Code (IAc) yang mendefinisikan infrastruktur komponen secara langsung ke AWS Proton API atau konsol. Ini berbeda dari lingkungan atau layanan, di mana Anda mendefinisikan IAc dalam bundel template dan mendaftarkan bundel sebagai sumber daya template, kemudian menggunakan sumber daya template untuk membuat lingkungan atau layanan.
catatan
Komponen yang didefinisikan secara langsung memungkinkan pengembang untuk menentukan infrastruktur tambahan dan menyediakannya. AWS Proton ketentuan semua komponen yang didefinisikan secara langsung berjalan di lingkungan yang sama menggunakan peran yang sama AWS Identity and Access Management (IAM).
Administrator dapat mengontrol apa yang dapat dilakukan pengembang dengan komponen dengan dua cara:
-
Sumber komponen yang didukung — Administrator dapat mengizinkan lampiran komponen ke instance layanan berdasarkan properti versi templat AWS Proton layanan. Secara default, pengembang tidak dapat melampirkan komponen ke instance layanan.
Untuk informasi selengkapnya tentang properti ini, lihat supportedComponentSourcesparameter tindakan CreateServiceTemplateVersionAPI di Referensi AWS Proton API.
catatan
Saat Anda menggunakan sinkronisasi templat, AWS Proton buat versi templat layanan secara implisit saat Anda melakukan perubahan pada bundel templat layanan di repositori. Dalam hal ini, alih-alih menentukan sumber komponen yang didukung selama pembuatan versi templat layanan, Anda menentukan properti ini dalam file yang terkait dengan setiap versi utama templat layanan. Untuk informasi selengkapnya, lihat Menyinkronkan templat layanan.
-
Peran komponen — Administrator dapat menetapkan peran komponen ke lingkungan. AWS Proton mengasumsikan peran ini ketika menyediakan infrastruktur yang ditentukan oleh komponen yang didefinisikan secara langsung di lingkungan. Oleh karena itu, peran komponen mencakup infrastruktur yang dapat ditambahkan pengembang menggunakan komponen yang didefinisikan secara langsung di lingkungan. Dengan tidak adanya peran komponen, pengembang tidak dapat membuat komponen yang didefinisikan secara langsung di lingkungan.
Untuk informasi selengkapnya tentang menetapkan peran komponen, lihat componentRoleArnparameter tindakan CreateEnvironmentAPI di Referensi AWS Proton API.
catatan
Peran komponen tidak digunakan di Penyediaan yang dikelola sendiri lingkungan.
Topik
Bagaimana komponen dibandingkan dengan AWS Proton sumber daya lain?
Dalam banyak hal, komponen mirip dengan AWS Proton sumber daya lainnya. Infrastruktur mereka didefinisikan dalam file template IAC, ditulis dalam format AWS CloudFormation YAMAL atau Terraform HCL. AWS Proton dapat menyediakan infrastruktur komponen menggunakan penyediaan AWS-managed atau self-managed provisioning.
Komponen, bagaimanapun, berbeda dari AWS Proton sumber daya lain dalam beberapa hal:
-
Status terpisah — Komponen dirancang untuk dilampirkan ke instance layanan dan untuk memperluas infrastrukturnya, tetapi juga dapat dalam keadaan terpisah, di mana mereka tidak dilampirkan ke instance layanan apa pun. Untuk informasi selengkapnya tentang status komponen, lihatNegara-negara komponen.
-
Tidak ada skema - Komponen tidak memiliki skema terkait seperti yang dimiliki bundel template. Input komponen didefinisikan oleh layanan. Sebuah komponen dapat mengkonsumsi input ketika dilampirkan ke instance layanan.
-
Tidak ada komponen yang dikelola pelanggan — AWS Proton selalu menyediakan infrastruktur komponen untuk Anda. Tidak ada versi komponen sumber daya Anda sendiri. Untuk informasi selengkapnya tentang lingkungan yang dikelola pelanggan, lihat. Buat lingkungan
-
Tidak ada sumber daya template - Komponen yang didefinisikan secara langsung tidak memiliki sumber daya template terkait yang mirip dengan templat lingkungan dan layanan. Anda menyediakan file template IAC langsung ke komponen. Demikian pula, Anda langsung menyediakan manifes yang mendefinisikan bahasa template dan mesin rendering untuk menyediakan infrastruktur komponen. Anda membuat file template dan manifes dengan cara yang mirip dengan membuat bundel template. Namun, dengan komponen yang didefinisikan secara langsung, tidak ada persyaratan untuk menyimpan file IAC sebagai bundel di lokasi tertentu, dan Anda tidak membuat sumber daya template di AWS Proton luar file IAc.
-
Tidak ada penyediaan CodeBuild berbasis - Anda tidak dapat menyediakan komponen yang ditentukan secara langsung menggunakan skrip penyediaan kustom Anda sendiri, yang dikenal sebagai penyediaan berbasis. CodeBuild Untuk informasi selengkapnya, lihat Cara CodeBuild kerja penyediaan.
Komponen di AWS Proton konsol
Gunakan AWS Proton konsol untuk membuat, memperbarui, melihat, dan menggunakan AWS Proton komponen.
Halaman konsol berikut terkait dengan komponen. Kami menyertakan tautan langsung ke halaman konsol tingkat atas.
-
Komponen
- Lihat daftar komponen di AWS akun Anda. Anda dapat membuat komponen baru, dan memperbarui atau menghapus komponen yang ada. Pilih nama komponen pada daftar untuk melihat halaman detailnya. Daftar serupa juga ada di halaman detail Lingkungan dan detail contoh Layanan. Daftar ini hanya menampilkan komponen yang terkait dengan sumber daya yang sedang dilihat. Saat Anda membuat komponen dari salah satu daftar ini, AWS Proton pra-pilih lingkungan terkait pada halaman Create component.
-
Detail komponen - Untuk melihat halaman detail komponen, pilih nama komponen pada daftar Komponen
. Pada halaman detail, lihat detail dan status komponen, dan perbarui atau hapus komponen. Melihat dan mengelola daftar output (misalnya, sumber daya yang disediakan ARNs), AWS CloudFormation tumpukan yang disediakan, dan tag yang ditetapkan.
-
Buat komponen
- Buat komponen. Masukkan nama dan deskripsi komponen, pilih sumber daya terkait, tentukan file IAc sumber komponen, dan tetapkan tag. -
Perbarui komponen — Untuk memperbarui komponen, pilih komponen pada daftar Komponen
, dan kemudian, pada menu Tindakan, pilih Perbarui komponen. Atau, pada halaman detail Komponen, pilih Perbarui. Anda dapat memperbarui sebagian besar detail komponen. Anda tidak dapat memperbarui nama komponen. Dan Anda dapat memilih apakah akan menerapkan ulang komponen atau tidak setelah pembaruan berhasil.
-
Konfigurasi lingkungan — Saat membuat atau memperbarui lingkungan, Anda dapat menentukan peran Komponen. Peran ini mengontrol kemampuan untuk menjalankan komponen yang ditentukan secara langsung di lingkungan dan memberikan izin untuk menyediakannya.
-
Buat versi templat layanan baru — Saat membuat versi templat layanan, Anda dapat menentukan sumber komponen yang didukung untuk versi templat. Ini mengontrol kemampuan untuk melampirkan komponen ke instance layanan layanan berdasarkan versi template ini.
Komponen dalam AWS Proton API dan AWS CLI
Gunakan AWS Proton API atau AWS CLI untuk membuat, memperbarui, melihat, dan menggunakan AWS Proton komponen.
Tindakan API berikut secara langsung mengelola sumber daya AWS Proton komponen.
-
CreateComponent— Buat AWS Proton komponen.
-
DeleteComponent— Hapus AWS Proton komponen.
-
GetComponent— Dapatkan data terperinci untuk suatu komponen.
-
ListComponentOutputs— Dapatkan daftar komponen Infrastruktur sebagai output Kode (IAc).
-
ListComponentProvisionedResources— Buat daftar sumber daya yang disediakan untuk komponen dengan detail.
-
ListComponents— Daftar komponen dengan data ringkasan. Anda dapat memfilter daftar hasil berdasarkan lingkungan, layanan, atau satu contoh layanan.
Tindakan API berikut dari AWS Proton sumber daya lain memiliki beberapa fungsi yang terkait dengan komponen.
-
CreateEnvironment, UpdateEnvironment— Gunakan
componentRoleArn
untuk menentukan Nama Sumber Daya Amazon (ARN) dari peran layanan IAM yang AWS Proton digunakan saat menyediakan komponen yang ditentukan secara langsung di lingkungan ini. Ini menentukan ruang lingkup infrastruktur yang dapat disediakan oleh komponen yang didefinisikan secara langsung. -
CreateServiceTemplateVersion— Gunakan
supportedComponentSources
untuk menentukan sumber komponen yang didukung. Komponen dengan sumber yang didukung dapat dilampirkan ke instance layanan berdasarkan versi template layanan ini.
Pertanyaan yang sering diajukan komponen
Apa siklus hidup suatu komponen?
Komponen dapat berada dalam keadaan terpasang atau terlepas. Mereka dirancang untuk dilampirkan ke instance layanan dan meningkatkan infrastrukturnya sebagian besar waktu. Komponen terpisah berada dalam keadaan transisi yang memungkinkan Anda menghapus komponen atau melampirkannya ke instance layanan lain dengan cara yang terkontrol dan aman. Untuk informasi selengkapnya, lihat Negara-negara komponen.
Mengapa saya tidak dapat menghapus komponen terlampir saya?
Solusi: Untuk menghapus komponen terlampir, perbarui komponen untuk melepaskannya dari instance layanan, validasi stabilitas instance layanan, dan kemudian hapus komponen tersebut.
Mengapa ini diperlukan? Komponen terlampir menyediakan infrastruktur tambahan yang dibutuhkan aplikasi Anda untuk menjalankan fungsi runtime-nya. Instance layanan mungkin menggunakan output komponen untuk mendeteksi dan menggunakan sumber daya infrastruktur ini. Menghapus komponen, sehingga menghapus sumber daya infrastrukturnya, dapat mengganggu instance layanan terlampir.
Sebagai langkah keamanan tambahan, Anda AWS Proton mengharuskan Anda memperbarui komponen dan melepaskannya dari instance layanannya sebelum Anda dapat menghapusnya. Anda kemudian dapat memvalidasi instance layanan Anda untuk memastikan bahwa instance tersebut terus digunakan dan berfungsi dengan baik. Jika Anda mendeteksi masalah, Anda dapat dengan cepat memasang kembali komponen ke instance layanan, lalu bekerja untuk memperbaiki masalah tersebut. Jika Anda yakin bahwa instance layanan Anda bebas dari ketergantungan apa pun pada komponen, Anda dapat menghapus komponen dengan aman.
Mengapa saya tidak dapat mengubah instance layanan terlampir komponen secara langsung?
Solusi: Untuk mengubah lampiran, perbarui komponen untuk melepaskannya dari instance layanan, validasi stabilitas komponen dan instance layanan, lalu lampirkan komponen ke instance layanan baru.
Mengapa ini diperlukan? Komponen dirancang untuk dilampirkan ke instance layanan. Komponen Anda mungkin menggunakan input instance layanan untuk penamaan dan konfigurasi sumber daya infrastruktur. Mengubah instance layanan terlampir dapat mengganggu komponen (selain kemungkinan gangguan pada instance layanan, seperti yang dijelaskan di FAQ sebelumnya, Mengapa saya tidak dapat menghapus komponen terlampir saya? ). Misalnya, ini dapat menyebabkan penggantian nama, dan bahkan mungkin penggantian, sumber daya yang ditentukan dalam template IAc komponen.
Sebagai langkah keamanan tambahan, Anda AWS Proton mengharuskan Anda memperbarui komponen dan melepaskannya dari instance layanannya sebelum Anda dapat melampirkannya ke instance layanan lain. Anda kemudian dapat memvalidasi stabilitas komponen dan instance layanan sebelum melampirkan komponen ke instance layanan baru.