Terjemahan disediakan oleh mesin penerjemah. Jika konten terjemahan yang diberikan bertentangan dengan versi bahasa Inggris aslinya, utamakan versi bahasa Inggris.
Cara kerja aturan manajemen siklus hidup untuk sumber daya gambar Image Builder
Aturan siklus hidup membuat gambar Anda tetap segar dan mengurangi biaya infrastruktur, seperti penyimpanan snapshot untuk AMI keluaran dan penyimpanan repositori Amazon ECR untuk kontainer.
Kebijakan siklus hidup mendukung jenis aturan ini:
- Menghentikan aturan
-
Menetapkan status sumber daya gambar Image Builder ke
Deprecated. Pipeline Image Builder masih berjalan untuk gambar yang tidak digunakan lagi. Anda dapat secara opsional menyetel waktu penghentian untuk AMI terkait tanpa memengaruhi kemampuan Anda untuk meluncurkan instance baru.AMI yang tidak digunakan lagi tidak muncul dalam pencarian umum. Misalnya, describe-images perintah Amazon EC2 mengecualikan AMI yang tidak digunakan lagi dari hasil. Untuk menemukan AMI yang tidak digunakan lagi, tentukan ID AMI secara langsung.
catatan
Aturan ini tidak berlaku untuk gambar berbasis kontainer.
- Nonaktifkan aturan
-
Menetapkan status sumber daya gambar Image Builder ke
Disabled. Ini mencegah pipeline Image Builder berjalan untuk gambar ini. Anda dapat menonaktifkan AMI terkait secara opsional untuk mencegah peluncuran instans baru.AMI yang dinonaktifkan menjadi pribadi dan tidak lagi meluncurkan instance baru. Akun, organisasi, atau unit organisasi yang sebelumnya memiliki akses bersama kehilangan akses itu.
catatan
Aturan ini tidak berlaku untuk gambar berbasis kontainer.
- Hapus aturan
-
Menghapus sumber daya gambar berdasarkan usia atau hitungan. Anda menentukan ambang batas yang memenuhi kebutuhan Anda. Ketika sumber daya gambar Image Builder melewati ambang batas, itu akan dihapus. Anda dapat secara opsional membatalkan pendaftaran AMI terkait atau menghapus snapshot untuk AMI tersebut. Anda juga dapat menentukan tag untuk sumber daya yang ingin Anda pertahankan melewati ambang batas.
Untuk gambar kontainer, aturan ini menghapus sumber daya gambar kontainer Image Builder. Anda juga dapat menghapus gambar kontainer dari repositori ECR untuk mencegah peluncuran kontainer baru.
Prioritas aturan dan urutan evaluasi
Jika kebijakan memiliki beberapa jenis aturan, Image Builder mengevaluasi setiap sumber daya dalam urutan ini:
-
Menghentikan aturan
-
Nonaktifkan aturan
-
Hapus aturan
penting
Hanya satu tindakan yang berlaku untuk setiap sumber daya per eksekusi. Jika sumber daya cocok dengan aturan usang, Image Builder akan menghentikan aturan tersebut dan melewatkan aturan nonaktifkan dan hapus untuk sumber daya tersebut selama proses yang sama. Dalam eksekusi berikutnya, Image Builder mengevaluasi sumber daya terhadap aturan lain jika memenuhi kriteria mereka.
Urutan prioritas ini mendukung strategi siklus hidup progresif. Misalnya, Anda dapat mengonfigurasi kebijakan untuk menghentikan gambar setelah 90 hari, menonaktifkannya setelah 120 hari, dan menghapusnya setelah 180 hari. Setiap eksekusi hanya menerapkan tindakan pencocokan prioritas tertinggi.
Gambar menyatakan bahwa melewatkan evaluasi aturan
Image Builder melewatkan gambar di status tertentu untuk mencegah tindakan duplikat:
-
Aturan usang - Image Builder melewatkan gambar yang sudah usang, dinonaktifkan, gagal, atau dibatalkan.
-
Menonaktifkan aturan - Image Builder melewatkan gambar yang sudah dinonaktifkan, gagal, atau dibatalkan.
-
Aturan hapus - Image Builder mengevaluasi gambar dalam keadaan apa pun untuk dihapus, tunduk pada aturan penyimpanan dan pengecualian.
Daftar Isi
Aturan pengecualian siklus hidup AMI
Aturan pengecualian melindungi AMI tertentu dari tindakan siklus hidup. Konfigurasikan aturan pengecualian di Konsol Manajemen AWS, API, atau. AWS CLI
Kebijakan siklus hidup mendukung jenis aturan pengecualian ini:
-
Tag-based pengecualian - Tidak termasuk sumber daya gambar Image Builder dengan tag tertentu (hingga 50 tag). Untuk informasi selengkapnya tentang cara kerja tag pada tingkat sumber daya yang berbeda, lihatTag sebagai pemilih sumber daya vs. aturan pengecualian.
-
Pengecualian AMI Publik - Tidak termasuk AMI yang dibagikan secara publik.
-
Pengecualian terakhir yang diluncurkan - Tidak termasuk AMI yang meluncurkan instance dalam jangka waktu tertentu.
catatan
Amazon EC2 melaporkan waktu peluncuran terakhir dengan penundaan 24 jam. Peluncuran dalam 24 jam terakhir mungkin tidak tercermin saat pemeriksaan pengecualian berjalan.
-
Pengecualian wilayah - Tidak termasuk AMI secara spesifik. Wilayah AWS
-
Pengecualian akun bersama - Tidak termasuk AMI yang dibagikan dengan spesifik. Akun AWS
catatan
Image Builder melewatkan gambar dengan build yang sedang berlangsung (menunggu, membuat, membangun, mengimpor, menguji, mendistribusikan, atau mengintegrasikan status). Image Builder mengevaluasi gambar-gambar ini dalam proses terjadwal berikutnya.
Urutan evaluasi aturan pengecualian AMI
EC2 Image Builder AMI-level mengevaluasi aturan pengecualian exclusionRules.amis () pada AMI keluaran setelah menentukan kelayakan untuk tindakan siklus hidup. Aturan ini berlaku untuk sumber daya Amazon EC2 AMI, bukan sumber daya gambar Image Builder. Penghitungan retensi berjalan secara terpisah. AMI yang dikecualikan tidak menggunakan slot retensi. Image Builder memeriksa kondisi secara berurutan dan melewatkan AMI pada pertandingan pertama:
-
Pengecualian wilayah — Memeriksa apakah AMI berada di Wilayah yang dikecualikan.
-
Pengecualian AMI Publik — Memeriksa apakah AMI bersifat publik dan
isPublicpengecualian diaktifkan. -
Pengecualian tag — Memeriksa apakah AMI memiliki tag yang cocok dengan peta tag pengecualian.
-
Pengecualian akun bersama — Memeriksa apakah AMI dibagikan dengan akun yang tercantum dalam pengecualian.
-
Pengecualian terakhir diluncurkan — Memeriksa apakah AMI diluncurkan dalam jendela waktu yang dikecualikan.
Dalam detail sumber daya eksekusi, AMI yang dilewati menampilkan SKIPPED status dengan alasan yang menunjukkan kondisi pengecualian mana yang cocok.
Tag sebagai pemilih sumber daya vs. aturan pengecualian
Tag melayani dua tujuan berbeda dalam kebijakan siklus hidup. Setiap mekanisme tag beroperasi pada tingkat sumber daya tertentu:
-
Image Builder image — Sumber daya Image Builder yang melacak build (format ARN:
arn:aws:imagebuilder:). Kelola tag pada sumber daya ini melalui Image Builder.region:account:image/name/version -
Output AMI atau image kontainer — Gambar kontainer Amazon EC2 AMI atau Amazon ECR yang mendasari yang dihasilkan Image Builder. Kelola tag pada sumber daya ini masing-masing melalui Amazon EC2 atau Amazon ECR.
- Tag sebagai pemilih sumber daya (cakupan kebijakan)
-
Tag-based pemilihan resource mengevaluasi tag pada resource image Image Builder saja, bukan pada AMI keluaran atau container. Image Builder menggunakan tag ini untuk menemukan sumber daya yang berlaku untuk kebijakan tersebut.
Konfigurasikan pemilihan sumber daya berbasis tag di
resourceSelection.tagMapbidang. Setiap entri adalah pasangan kunci-nilai. Kebijakan ini memilih gambar Image Builder yang cocok dengan pasangan nilai kunci tag tertentu (logika OR). Image Builder tidak mengevaluasi gambar tanpa tag yang cocok. - Tag sebagai aturan pengecualian (pengecualian tingkat aturan)
-
Tag pengecualian bekerja dalam arah yang berlawanan. Setelah Image Builder memilih sumber daya berdasarkan cakupan kebijakan, Image Builder memeriksa setiap sumber daya terhadap aturan pengecualian sebelum mengambil tindakan apa pun. Konfigurasikan tag pengecualian pada dua tingkat, masing-masing beroperasi pada jenis sumber daya yang berbeda:
exclusionRules.tagMap-
Mengevaluasi tag pada sumber daya gambar Image Builder saja. Tidak memeriksa tag pada AMI atau wadah yang mendasarinya. Jika tag gambar Image Builder cocok dengan entri (kunci yang tepat dan kecocokan nilai), Image Builder melewatkan gambar dan semua sumber daya keluaran terkait.
exclusionRules.amis.tagMap-
Mengevaluasi tag pada output AMI ( EC2-level sumber daya Amazon) selama pemrosesan sumber daya terkait. Gunakan ini untuk mengecualikan AMI keluaran tertentu berdasarkan tag Amazon EC2 mereka (misalnya, tag yang diterapkan melalui pengaturan distribusi atau langsung melalui Amazon EC2).
penting
Pemilihan sumber daya dan exclusionRules.tagMap jangan mengevaluasi tag pada AMI keluaran (tag Amazon EC2) atau wadah (tag Amazon ECR). Untuk mengecualikan AMI keluaran berdasarkan tag Amazon EC2, gunakan. exclusionRules.amis.tagMap
contoh Pemilih tag dan pengecualian bekerja sama
Kebijakan dengan pengaturan ini:
-
Tag pemilihan sumber daya:
Environment: Production(dievaluasi pada sumber daya gambar Image Builder) -
Image-level tag pengecualian (
exclusionRules.tagMap):Retain: True(dievaluasi pada sumber daya gambar Image Builder) -
AMI-level tag pengecualian (
exclusionRules.amis.tagMap):SharedWith: Partner(dievaluasi pada AMI keluaran)
Image Builder melakukan langkah-langkah berikut:
-
Pemilihan sumber daya - Image Builder menemukan semua sumber daya gambar Image Builder ditandai
Environment: Production. -
Image-level pengecualian - Image Builder memeriksa setiap gambar Image Builder yang dipilih untuk tag
Retain: True. Image Builder melewatkan gambar dengan tag ini, termasuk sumber daya outputnya. -
AMI-level pengecualian - Image Builder memeriksa AMI keluaran (sumber daya Amazon EC2) dari gambar yang tersisa untuk tag.
SharedWith: PartnerAMI dengan tag ini dilewati.
Bagaimana retensi dihitung
Saat Anda mengonfigurasi pengaturan retensi untuk aturan penghapusan, filter AGE dan COUNT mengevaluasi sumber daya gambar Image Builder Anda, tidak secara langsung terhadap AMI atau container keluaran.
penting
Filter AGE menggunakan tanggal pembuatan sumber daya gambar Image Builder (disetel setelah build selesai), bukan AMI keluaran atau tanggal pembuatan container. Filter COUNT menghitung sumber daya gambar Image Builder per versi resep, bukan AMI keluaran atau kontainer.
Perhitungan retensi bergantung pada cara Anda menentukan versi resep dalam cakupan kebijakan Anda:
- Versi tertentu (misalnya,
1.0.0) -
Jumlah retensi berlaku untuk gambar Image Builder yang dibuat dengan versi resep yang tepat. Image Builder mempertahankan gambar terbaru (berdasarkan tanggal pembuatan) terlebih dahulu.
- Pola versi wildcard (misalnya,
1.x.x) -
Jumlah retensi berlaku secara independen per versi resep yang cocok. Misalnya,
1.x.xdengan jumlah retensi 5 mempertahankan 5 gambar terbaru untuk1.0.0, 5 terbaru untuk1.1.0, dan seterusnya. - Tag-based pemilihan sumber daya
-
Dengan pemilihan sumber daya berbasis tag (lihatTag sebagai pemilih sumber daya vs. aturan pengecualian), retensi juga dihitung per versi resep. Image Builder mengurutkan gambar terbaru-pertama dalam setiap versi dan menerapkan jumlah retensi secara independen per grup versi.
Age-based vs. filter hapus berbasis hitungan
Aturan hapus menggunakan salah satu dari dua jenis filter untuk menentukan kelayakan penghapusan:
AGEmenyaring-
Mempertahankan gambar Image Builder lebih baru dari ambang usia yang ditentukan (dalam hari, minggu, bulan, atau tahun dari tanggal pembuatan gambar Image Builder). Anda dapat mengatur
retainAtLeastuntuk menyimpan jumlah minimum gambar terbaru per versi resep, tanpa memandang usia. COUNTmenyaring-
Mempertahankan gambar N Image Builder terbaru per versi resep. Semua gambar di luar jumlah yang ditentukan memenuhi syarat untuk dihapus.
Perilaku retensi tambahan berlaku:
-
Gambar Image Builder yang gagal atau dibatalkan tidak dihitung terhadap batas retensi dan selalu memenuhi syarat untuk dihapus.
-
Image Builder memproses gambar terbaru-terlebih dahulu dan menerapkan jumlah retensi sebelum mengevaluasi kelayakan penghapusan.
Bagaimana tindakan siklus hidup memengaruhi sumber daya terkait
Tindakan siklus hidup pada image Image Builder memengaruhi AMI atau container keluaran terkait, tergantung pada jenis aturan dan konfigurasi:
- Menghentikan
-
Menetapkan status sumber daya gambar Image Builder ke
Deprecated. Anda juga dapat menghentikan AMI keluaran terkait. AMI yang tidak digunakan lagi tidak muncul dalam penelusuran umum tetapi tetap dapat digunakan oleh ID AMI. Image Builder menambahkanDeprecatedBy: EC2 Image Buildertag ke setiap AMI yang tidak digunakan lagi.Berlaku untuk AMI-based gambar saja, bukan wadah.
- Nonaktifkan
-
Menetapkan status sumber daya gambar Image Builder ke
Disabled. Anda juga dapat menonaktifkan AMI keluaran terkait. AMI yang dinonaktifkan menjadi pribadi dan tidak lagi meluncurkan instance baru.Berlaku untuk AMI-based gambar saja, bukan wadah.
- Delete
-
Menghapus sumber daya gambar Image Builder. Anda juga dapat menghapus:
-
Output AMI didistribusikan ke akun lain Wilayah AWS dan
-
Snapshot yang terkait dengan AMI tersebut
-
Wadah didistribusikan ke repositori Amazon ECR
Berlaku untuk gambar berbasis kontainer AMI-based dan kontainer.
-
catatan
Image Builder membuat keputusan tindakan siklus hidup pada tingkat gambar. Sumber daya keluaran terkait (AMI, snapshot, container) hanya berubah jika Anda mengonfigurasi aturan untuk memasukkannya.
Transisi status sumber daya yang diizinkan
Kebijakan siklus hidup dan sumber daya gambar transisi StartResourceStateUpdate API di antara status ini:
- Tersedia → Usang
-
Menandai gambar yang tersedia sebagai usang. Gambar tetap dapat digunakan oleh ID AMI tetapi tidak muncul dalam pencarian umum. Image Builder menambahkan
DeprecatedBy: EC2 Image Buildertag untuk melacak. - Tersedia atau Usang → Dinonaktifkan
-
Menjadikan AMI pribadi dan mencegah peluncuran instans baru. Jika AMI sebelumnya tidak digunakan lagi, Image Builder menghapus tag usang karena gambar dipindahkan ke status yang lebih ketat.
- Status non-bangunan apa pun → Dihapus
-
Membatalkan pendaftaran AMI atau menghapus gambar kontainer dari ECR. Anda dapat menyertakan snapshot terkait atau container yang mendasari untuk dihapus.
- Usang atau Dinonaktifkan → Tersedia
-
StartResourceStateUpdateAPI mengembalikan image yang tidak digunakan lagi atau dinonaktifkan ke status yang tersedia. Ini membalikkan penghentian, mengaktifkan kembali AMI, dan menghapus tanggal dan tag penghentian. DeprecatedBy Transisi ini hanya berfungsi melalui API manual, bukan eksekusi kebijakan otomatis.
catatan
Gambar yang sedang dibangun (dalam keadaan tertunda, membuat, membangun, mengimpor, menguji, mendistribusikan, atau mengintegrasikan status) tidak mengubah status. Pembaruan status manual pada gambar dengan build aktif gagal dengan kesalahan.
Melihat detail aturan untuk kebijakan siklus hidup
Di konsol, halaman detail kebijakan siklus hidup memiliki halaman Tab Aturan yang menampilkan detail aturan untuk kebijakan tersebut.
Di AWS CLI, jalankan perintah get-lifecycle-policy