View a markdown version of this page

Buat versi baru resep gambar - EC2 Image Builder

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

Buat versi baru resep gambar

Bagian ini menunjukkan cara membuat resep gambar atau versi baru dari resep yang ada. Resep gambar mendefinisikan AMI dasar, komponen build, dan konfigurasi. Gunakan resep ini untuk membuat Amazon Machine Images (AMI) dengan Image Builder. Anda dapat membuat resep gambar dari konsol Image Builder atau dengan AWS CLI.

Buat versi resep gambar baru dari konsol

Saat Anda membuat versi resep baru, itu hampir sama dengan membuat resep baru. Perbedaannya adalah bahwa detail tertentu telah dipilih sebelumnya agar sesuai dengan resep dasar, dalam banyak kasus. Daftar berikut menjelaskan perbedaan antara membuat resep baru dan membuat versi baru dari resep yang ada.

Detail resep dasar dalam versi baru
  • Nama Tidak dapat diedit.

  • Versi - Diperlukan. Masukkan nomor versi yang ingin Anda buat dalam format <major>. <minor>. <patch>. Image Builder mendukung penambahan versi otomatis untuk resep, memungkinkan Anda menggunakan pola wildcard dalam versi resep Anda. Saat Anda membuat resep dengan versi wildcard seperti1.0.x, Image Builder secara otomatis menambah versi (misalnya,,, 1.0.1 1.0.21.0.3, dan seterusnya). Ini menghilangkan kebutuhan untuk melacak dan menambah versi resep secara manual.

  • Opsi Pilih gambar - Pre-selected, tetapi Anda dapat mengeditnya. Jika Anda mengubah pilihan Anda untuk sumber gambar dasar Anda, Anda mungkin kehilangan detail lain yang bergantung pada opsi asli yang Anda pilih.

    Untuk melihat detail yang terkait dengan pemilihan gambar dasar Anda, pilih tab yang cocok dengan pilihan Anda.

    Managed image
    • Sistem Operasi Gambar (OS) - Tidak dapat diedit.

    • Nama gambar — Pre-selected, berdasarkan kombinasi pilihan gambar dasar yang Anda buat untuk resep yang ada. Namun, jika Anda mengubah opsi Pilih gambar, Anda kehilangan nama Gambar yang telah dipilih sebelumnya.

    • Auto-versioning pilihan Tidak cocok dengan resep dasar Anda. Opsi gambar ini default ke opsi Gunakan versi OS yang dipilih.

      penting

      Jika Anda menggunakan versi semantik untuk memulai pembuatan pipeline, pastikan Anda mengubah nilai ini menjadi Gunakan versi OS terbaru yang tersedia. Untuk mempelajari selengkapnya tentang pembuatan versi semantik untuk sumber daya Pembuat Gambar, lihatPembuatan versi semantik di Image Builder.

    AWS Marketplace image
    • Langganan — Tab ini harus terbuka, dan gambar berlangganan dari AWS Marketplace harus dipilih sebelumnya agar sesuai dengan resep dasar Anda. Jika Anda mengubah gambar yang digunakan resep Anda sebagai gambar dasarnya, Anda mungkin kehilangan detail lain yang bergantung pada gambar asli yang Anda pilih.

    Untuk informasi selengkapnya tentang AWS Marketplace produk, lihat Membeli produk di Panduan AWS Marketplace Pembeli.

    Custom AMI

    Sumber AMI (Diperlukan) - Masukkan ID AMI atau parameter Penyimpanan Parameter AWS Systems Manager (SSM) yang berisi ID AMI untuk digunakan sebagai gambar dasar. Agen SSM harus diinstal sebelumnya di AMI yang dipilih.

    • ID AMI — Pengaturan ini tidak diisi sebelumnya dengan entri asli Anda. Masukkan ID AMI untuk gambar dasar Anda. Contoh:ami-1234567890abcdef1.

    • Parameter SSM — Masukkan nama atau ARN parameter SSM Parameter Store yang berisi ID AMI untuk gambar dasar Anda. Contoh: /ib/test/param atau arn:aws:ssm:us-east-1:111122223333:parameter/ib/test/param.

  • Konfigurasi instans — Pengaturan sudah dipilih sebelumnya, tetapi Anda dapat mengeditnya.

    • Agen Manajer Sistem — Anda dapat memilih atau mengosongkan kotak centang ini untuk mengontrol instalasi agen Manajer Sistem pada image baru. Secara default, kotak centang ini tetap jelas, dan Image Builder menyimpan agen Manajer Sistem di AMI akhir Anda. Untuk menghapus agen Manajer Sistem dari gambar akhir, pilih kotak centang.

    • Data pengguna — Anda dapat menggunakan area ini untuk memberikan perintah, atau skrip perintah untuk dijalankan, saat Anda meluncurkan instance build. Namun, nilai ini menggantikan perintah apa pun yang mungkin telah ditambahkan Image Builder untuk memastikan bahwa Manajer Sistem diinstal. Perintah ini termasuk skrip pembersihan yang biasanya dijalankan Image Builder untuk gambar Linux sebelum membuat gambar baru.

      Saat Image Builder meluncurkan instance, skrip data pengguna berjalan selama fase cloud-init, sebelum eksekusi komponen dimulai. Langkah ini dicatat ke file berikut pada instance:var/log/cloud-init.log.

      catatan
      • Jika Anda memasukkan data pengguna, pastikan bahwa agen Manajer Sistem sudah diinstal sebelumnya pada image dasar Anda, atau bahwa Anda menyertakan instalasi dalam data pengguna Anda.

      • Untuk gambar Linux, pastikan langkah-langkah pembersihan dijalankan dengan menyertakan perintah untuk membuat file kosong bernama perform_cleanup dalam skrip data pengguna Anda. Image Builder mendeteksi file ini, dan menjalankan skrip pembersihan sebelum membuat gambar baru. Untuk informasi selengkapnya dan naskah contoh, lihatPraktik terbaik keamanan untuk Pembuat Gambar.

  • Direktori kerja — Pre-selected, tetapi Anda dapat mengeditnya.

  • Komponen — Komponen yang sudah termasuk dalam resep ditampilkan di bagian Komponen yang dipilih di akhir setiap daftar komponen (build dan test). Anda dapat menghapus atau menyusun ulang komponen yang dipilih sesuai dengan kebutuhan Anda.

    Komponen pengerasan CIS tidak mengikuti aturan pemesanan komponen standar dalam resep Pembuat Gambar. Komponen pengerasan CIS selalu berjalan terakhir untuk memastikan bahwa tes benchmark berjalan terhadap gambar keluaran Anda.

    catatan

    Membangun dan menguji daftar komponen menampilkan komponen yang tersedia berdasarkan jenis pemilik komponen. Untuk menambahkan komponen, pilih Tambahkan komponen build, dan pilih filter kepemilikan yang berlaku. Misalnya, untuk menambahkan komponen build yang terkait dengan AWS Marketplace produk, pilihAWS Marketplace. Ini membuka panel pilihan di sisi kanan antarmuka konsol yang mencantumkan AWS Marketplace komponen.

    Untuk komponen CIS, pilihThird party managed.

    Anda dapat mengonfigurasi pengaturan berikut untuk komponen yang Anda pilih:

    • Opsi pembuatan versi — Pre-selected, tetapi Anda dapat mengubahnya. Sebaiknya pilih opsi Gunakan versi komponen terbaru yang tersedia untuk memastikan bahwa build gambar Anda selalu mengambil versi terbaru komponen. Jika Anda perlu menggunakan versi komponen tertentu dalam resep Anda, Anda dapat memilih Tentukan versi komponen, dan masukkan versi di kotak Versi komponen yang muncul.

    • Parameter masukan — Menampilkan parameter input yang diterima komponen. Nilai sudah diisi sebelumnya dengan nilai dari versi resep sebelumnya. Jika Anda menggunakan komponen ini untuk pertama kalinya dalam resep ini, dan nilai default ditentukan untuk parameter input, nilai default muncul di kotak Nilai dengan teks berwarna abu-abu. Jika tidak ada nilai lain yang dimasukkan, Pembuat Gambar menggunakan nilai default.

      Jika parameter input diperlukan, tetapi tidak memiliki nilai default yang ditentukan dalam komponen, Anda harus memberikan nilai. Pembuat Gambar tidak akan membuat versi resep jika ada parameter yang diperlukan yang hilang dan tidak memiliki nilai default yang ditentukan.

      penting

      Parameter komponen adalah nilai teks biasa, dan masuk AWS CloudTrail. Kami menyarankan Anda menggunakan AWS Secrets Manager atau AWS Systems Manager Parameter Store untuk menyimpan rahasia Anda. Untuk informasi selengkapnya tentang Manajer Rahasia, lihat Apa itu Manajer Rahasia? dalam Panduan AWS Secrets Manager Pengguna. Untuk informasi selengkapnya tentang AWS Systems Manager Penyimpanan Parameter, lihat Penyimpanan AWS Systems Manager Parameter di Panduan AWS Systems Manager Pengguna.

    Untuk memperluas pengaturan untuk opsi Versioning atau parameter Input, Anda dapat memilih panah di sebelah nama pengaturan. Untuk memperluas semua pengaturan untuk semua komponen yang dipilih, Anda dapat mematikan dan menghi dupkan tombol Perluas semua.

  • Penyimpanan (volume) - sudah diisi sebelumnya. Volume root Nama perangkat, Snapshot, dan pilihan IOPS, tidak dapat diedit. Namun, Anda dapat mengubah semua pengaturan yang tersisa, seperti Ukuran. Anda juga dapat menambahkan volume baru, dan mengenkripsi volume baru atau yang sudah ada.

    Untuk mengenkripsi volume untuk gambar yang dibuat Image Builder di bawah akun Anda di Wilayah sumber (tempat build berjalan), Anda harus menggunakan enkripsi volume penyimpanan dalam resep gambar. Enkripsi yang berjalan selama fase distribusi build hanya untuk gambar yang didistribusikan ke akun atau Wilayah lain.

    catatan

    Jika Anda menggunakan enkripsi untuk volume Anda, Anda harus memilih kunci untuk setiap volume secara terpisah, meskipun kunci tersebut sama dengan kunci yang digunakan untuk volume root.

catatan

Jika Anda tidak memiliki resep yang ada, gunakan wizard pipeline Pembuat Gambar, atau pilih Resep gambar dari panel navigasi lalu pilih Buat resep gambar. Bidang yang dijelaskan di bagian ini berlaku untuk resep baru dan versi baru.

Untuk membuat versi resep gambar baru:
  1. Di bagian atas halaman detail resep, pilih Buat versi baru. Ini membuka halaman Resep Buat gambar.

  2. Untuk membuat versi baru, buat perubahan, lalu pilih Buat resep.

    Gambar akhir Anda dapat berisi hingga sembilan kode produk dari produk AWS Marketplace gambar dan komponen. Image Builder mengembalikan kesalahan selama pembuatan resep jika gambar dasar dan komponen Anda melebihi batas ini.

Tinjau batasan berikut sebelum Anda membuat resep gambar:

  • Gambar akhir Anda dapat berisi paling banyak sembilan kode AWS Marketplace produk, digabungkan dari gambar dasar dan komponen. Kode produk adalah pengenal yang dilamp AWS Marketplace irkan ke AMI berbayar atau didukung untuk penagihan dan lisensi.

  • Anda dapat menyertakan hingga 20 komponen (gabungan membangun dan menguji). Ini adalah batas default, yang dapat Anda minta untuk ditingkatkan AWS Dukungan.

  • Komponen yang sama tidak dapat muncul lebih dari sekali dalam resep.

  • Semua komponen harus sesuai dengan platform (Linux, Windows, atau macOS) dari gambar dasar Anda. Komponen juga harus mendukung versi OS ketika metadata itu tersedia.

Untuk informasi selengkapnya tentang membuat resep gambar saat Anda membuat pipeline gambar, lihat Langkah 2: Pilih resep di bagian Mem ulai dari panduan ini.

Buat resep gambar dengan AWS CLI

Untuk membuat resep gambar dengan create-image-recipe perintah Pembuat Gambar di AWS CLI, ikuti langkah-langkah ini:

Prasyarat

Sebelum Anda menjalankan perintah Pembuat Gambar di bagian ini untuk membuat resep gambar dari AWS CLI, Anda dapat membuat komponen yang digunakan resep secara opsional. Contoh resep gambar pada langkah berikut mengacu pada contoh komponen yang dibuat di Buat komponen khusus dari AWS CLI bagian panduan ini.

Jika Anda ingin memasukkan komponen dalam resep Anda, perhatikan ARN yang ingin Anda sertakan. Anda juga dapat membuat resep tanpa komponen apa pun untuk menguji AMI yang ada atau alur kerja khusus distribusi.

  1. Buat file JSON input CLI

    Anda dapat memberikan semua input untuk create-image-recipe perintah dengan parameter perintah inline. Namun, perintah yang dihasilkan bisa sangat panjang. Untuk merampingkan perintah, Anda dapat menyediakan file JSON yang berisi semua pengaturan resep.

    catatan

    Konvensi penamaan untuk nilai data dalam file JSON mengikuti pola yang ditentukan untuk parameter permintaan operasi API Image Builder. Untuk meninjau parameter permintaan operasi API, lihat CreateImageRecipe perintah di Refer ensi API EC2 Image Builder.

    Untuk memberikan nilai data sebagai parameter baris perintah, lihat nama parameter yang ditentukan dalam Referensi AWS CLI Perintah.

    Berikut adalah ringkasan parameter yang ditentukan contoh-contoh ini:

    • name (string, required) — Nama resep gambar.

    • description (string) — Deskripsi resep gambar.

    • ParentImage (string, required) — Gambar yang digunakan resep gambar sebagai dasar untuk gambar yang disesuaikan. Anda dapat menentukan gambar induk menggunakan salah satu opsi berikut:

      • AMI ID — Gunakan ketika Anda memiliki AMI tertentu (misalnya,ami-1234567890abcdef1) yang ingin Anda sesuaikan. Karena ID AMI bersifat statis, kami merekomendasikan gambar Image Builder ARN atau parameter SSM sebagai gantinya ketika Anda ingin resep Anda mengambil gambar dasar yang lebih baru secara otomatis.

      • Sumber daya gambar Pembuat Gambar ARN - Gunakan saat Anda ingin membangun di atas gambar Pembuat Gambar. Ini termasuk Amazon-managed gambar yang disediakan Image Builder untuk sistem operasi paling populer, serta gambar yang Anda buat sebelumnya. Tentukan gambar ARN dengan versi semantik, atau gunakan wildcard versi untuk selalu mendapatkan versi terbaru.

      • AWS Systems Manager Parameter Penyimpanan Parameter (SSM) — Gunakan saat Anda ingin resep Anda secara otomatis mengambil ID AMI baru tanpa membuat versi resep baru. Mengawali parameter denganssm:, diikuti dengan nama parameter atau ARN. Ini sangat ideal untuk pipeline yang harus selalu menggunakan gambar dasar Amazon Linux atau Windows terbaru.

      • AWS Marketplace ID produk — Gunakan saat Anda berlangganan produk AMI AWS Marketplace dan ingin menyesuaikannya lebih lanjut.

      catatan
      • Saat Anda menggunakan ID AMI atau parameter SSM yang diselesaikan ke AMI, Anda harus memiliki akses ke AMI tersebut di akun Anda. AMI juga harus ada di Wilayah yang sama tempat Image Builder menjalankan build.

      • Contoh Linux dan macOS menentukan ID AMI, dan contoh Windows menggunakan gambar Image Builder ARN.

    • <major>SemanticVersion (string, required) — Masukkan nomor versi yang ingin Anda buat dalam format. <minor>. <patch>. Image Builder mendukung penambahan versi otomatis untuk resep, memungkinkan Anda menggunakan pola wildcard dalam versi resep Anda. Saat Anda membuat resep dengan versi wildcard seperti1.0.x, Image Builder secara otomatis menambah versi (misalnya,,, 1.0.1 1.0.21.0.3, dan seterusnya). Ini menghilangkan kebutuhan untuk melacak dan menambah versi resep secara manual. Untuk mempelajari selengkapnya tentang pembuatan versi semantik untuk sumber daya Pembuat Gambar, lihatPembuatan versi semantik di Image Builder.

    • komponen (array, opsional) - Berisi array ComponentConfiguration objek. Komponen bersifat opsional - Anda dapat membuat resep tanpa komponen apa pun untuk pengujian atau alur kerja distribusi:

      catatan

      Image Builder menginstal komponen sesuai urutan yang Anda tentukan dalam resep. Namun, komponen pengerasan CIS selalu berjalan terakhir untuk memastikan bahwa pengujian benchmark berjalan terhadap gambar keluaran Anda.

      • componentArn (string, wajib) — Komponen ARN.

        Tip

        Untuk menggunakan salah satu contoh untuk membuat resep gambar Anda sendiri, Anda harus mengganti contoh ARN dengan ARN untuk komponen yang Anda gunakan untuk resep Anda.

      • parameter (array objek) - Berisi array ComponentParameter objek. Jika parameter input diperlukan, tetapi tidak memiliki nilai default yang ditentukan dalam komponen, Anda harus memberikan nilai. Pembuat Gambar tidak akan membuat versi resep jika ada parameter yang diperlukan yang hilang dan tidak memiliki nilai default yang ditentukan.

        penting

        Parameter komponen adalah nilai teks biasa, dan masuk AWS CloudTrail. Kami menyarankan Anda menggunakan AWS Secrets Manager atau AWS Systems Manager Parameter Store untuk menyimpan rahasia Anda. Untuk informasi selengkapnya tentang Manajer Rahasia, lihat Apa itu Manajer Rahasia? dalam Panduan AWS Secrets Manager Pengguna. Untuk informasi selengkapnya tentang AWS Systems Manager Penyimpanan Parameter, lihat Penyimpanan AWS Systems Manager Parameter di Panduan AWS Systems Manager Pengguna.

        • name (string, required) — Nama parameter komponen yang akan disetel.

        • value (array of strings, required) — Berisi array string untuk mengatur nilai parameter komponen bernama. Jika ada nilai default yang ditentukan untuk komponen, dan tidak ada nilai lain yang disediakan, AWSTOE menggunakan nilai default.

    • AmiWatermarks (array string, opsional) - Daftar nama tanda air untuk dilampirkan ke AMI keluaran yang dibuat dari resep ini. Tanda air adalah penanda garis keturunan yang membantu Anda melacak sejarah gambar Anda. Tentukan 1 hingga 5 nama. Setiap nama harus terdiri dari 3 hingga 128 karakter, dan dapat mencakup huruf, angka, spasi, dan karakter khusus berikut: ( ) [ ] . / - ' @ _ Untuk informasi selengkapnya, lihat Lacak garis keturunan AMI dengan tanda air.

    • tambahan InstanceConfiguration (objek) — Tentukan pengaturan tambahan dan luncurkan skrip untuk instance build Anda.

      • systems ManagerAgent (object) — Berisi pengaturan untuk agen System Manager pada instance build Anda.

        catatan

        Resep Windows tidak mendukung systemsManagerAgent konfigurasi. Jika Anda menyertakannya dengan gambar induk Windows, permintaan gagal.

        • uninstall AfterBuild (Boolean) — Mengontrol apakah agen Manajer Sistem dihapus dari image build akhir Anda sebelum membuat AMI baru. Jika opsi ini diset true el ke, maka agen dihapus dari gambar akhir. Jika opsi disetel kefalse, maka agen dibiarkan sehingga disertakan dalam AMI baru. Nilai default-nya adalah false.

          catatan

          Jika uninstallAfterBuild atribut tidak disertakan dalam file JSON, dan kondisi berikut benar, maka Image Builder menghapus agen Manajer Sistem dari gambar akhir sehingga tidak tersedia di AMI:

          • userDataOverrideItu kosong atau telah dihilangkan dari file JSON.

          • Image Builder secara otomatis menginstal agen Manajer Sistem pada instance build untuk sistem operasi yang tidak memiliki agen pra-instal pada image dasar.

      • user DataOverride (string) — Menyediakan perintah atau skrip perintah untuk dijalankan saat Anda meluncurkan instance build Anda.

        catatan

        Data pengguna selalu dikodekan berdasarkan 64. Misalnya, perintah berikut dikodekan sebagaiIyEvYmluL2Jhc2gKbWtkaXIgLXAgL3Zhci9iYi8KdG91Y2ggL3Zhcg==:

        #!/bin/bash mkdir -p /var/bb/ touch /var

        Contoh Linux menggunakan nilai yang dikodekan ini.

    Linux

    Gambar dasar (parentImageproperti) dalam contoh berikut adalah AMI. Ketika Anda menggunakan AMI, Anda harus memiliki akses ke AMI, dan AMI harus berada di Wilayah sumber (Wilayah yang sama tempat Image Builder menjalankan perintah). Simpan file sebagaicreate-image-recipe.json, dan gunakan dalam create-image-recipe perintah.

    { "name": "BB Ubuntu Image recipe", "description": "Hello World image recipe for Linux.", "parentImage": "ami-1234567890abcdef1", "semanticVersion": "1.0.0", "components": [ { "componentArn": "arn:aws:imagebuilder:us-west-2:111122223333:component/bb$" } ], "additionalInstanceConfiguration": { "systemsManagerAgent": { "uninstallAfterBuild": true }, "userDataOverride": "IyEvYmluL2Jhc2gKbWtkaXIgLXAgL3Zhci9iYi8KdG91Y2ggL3Zhcg==" } }
    Windows

    Contoh berikut mengacu pada versi terbaru dari gambar Windows Server 2016 English Full Base. ARN dalam contoh ini mereferensikan gambar terbaru berdasarkan filter versi semantik yang telah Anda tentukan:arn:aws:imagebuilder:us-west-2:aws:image/windows-server-2016-english-full-base-x86/x.x.x.

    { "name": "MyBasicRecipe", "description": "This example image recipe creates a Windows 2016 image.", "parentImage": "arn:aws:imagebuilder:us-west-2:aws:image/windows-server-2016-english-full-base-x86/x.x.x", "semanticVersion": "1.0.0", "components": [ { "componentArn": "arn:aws:imagebuilder:us-west-2:111122223333:component/my-example-component/2019.12.02/1" }, { "componentArn": "arn:aws:imagebuilder:us-west-2:111122223333:component/my-imported-component/1.0.0/1" } ] }
    catatan

    Untuk mempelajari selengkapnya tentang pembuatan versi semantik untuk sumber daya Pembuat Gambar, lihatPembuatan versi semantik di Image Builder.

    macOS

    Gambar dasar (parentImageproperti) dalam contoh berikut adalah AMI. Ketika Anda menggunakan AMI, Anda harus memiliki akses ke AMI, dan AMI harus berada di Wilayah sumber (Wilayah yang sama tempat Image Builder menjalankan perintah). Simpan file sebagaicreate-image-recipe.json, dan gunakan dalam create-image-recipe perintah.

    { "name": "macOS Catalina Image recipe", "description": "Hello World image recipe for macOS.", "parentImage": "ami-1234567890abcdef1", "semanticVersion": "1.0.0", "components": [ { "componentArn": "arn:aws:imagebuilder:us-west-2:111122223333:component/catalina$" } ], "additionalInstanceConfiguration": { "systemsManagerAgent": { "uninstallAfterBuild": true }, "userDataOverride": "IyEvYmluL2Jhc2gKbWtkaXIgLXAgL3Zhci9iYi8KdG91Y2ggL3Zhcg==" } }

    Contoh: Resep tanpa komponen

    Anda dapat membuat resep tanpa komponen apa pun untuk menguji AMI yang ada atau alur kerja khusus distribusi. Contoh berikut menunjukkan resep yang menggunakan AMI yang ada tanpa menerapkan komponen tambahan apa pun:

    { "name": "Test Distribution Recipe", "description": "Recipe for testing and distributing existing AMI without modifications.", "parentImage": "ami-1234567890abcdef1", "semanticVersion": "1.0.0", "additionalInstanceConfiguration": { "systemsManagerAgent": { "uninstallAfterBuild": true } } }
  2. Buat resepnya

    Gunakan perintah berikut untuk membuat resep. Berikan nama file JSON yang Anda buat pada langkah sebelumnya dalam --cli-input-json parameter:

    aws imagebuilder create-image-recipe --cli-input-json file://create-image-recipe.json
    catatan
    • Anda harus menyertakan notasi file:// pada awal jalur file JSON.

    • Jalur untuk file JSON harus mengikuti konvensi yang sesuai untuk sistem operasi dasar tempat Anda menjalankan perintah. Misalnya, Windows menggunakan garis miring terbalik (\) untuk merujuk ke jalur direktori, sementara Linux dan macOS menggunakan garis miring maju (/).

    Gambar akhir Anda dapat berisi hingga sembilan kode produk dari produk AWS Marketplace gambar dan komponen. Pembuat Gambar mengembalikan kesalahan selama pembuatan resep jika gambar dasar dan komponen Anda melebihi batas ini saat Anda menjalankan create-image-recipe perintah.

    Perintah mengembalikan ARN resep gambar baru, seperti yang ditunjukkan dalam contoh output berikut.

    { "requestId": "a1b2c3d4-5678-90ab-cdef-EXAMPLE11111", "clientToken": "a1b2c3d4-5678-90ab-cdef-EXAMPLE22222", "imageRecipeArn": "arn:aws:imagebuilder:us-west-2:123456789012:image-recipe/my-recipe/1.0.1" }
  3. Verifikasi resep Anda

    Untuk mengonfirmasi bahwa Image Builder membuat resep Anda seperti yang diharapkan, jalankan get-image-recipe perintah dengan ARN yang dikembalikan langkah sebelumnya.

    aws imagebuilder get-image-recipe --image-recipe-arn arn:aws:imagebuilder:us-west-2:123456789012:image-recipe/my-recipe/1.0.1

Direktori kerja

Direktori kerja menentukan jalur sistem file pada instance build tempat Image Builder menjalankan operasi build dan test. Image Builder meneruskan jalur ini AWS Systems Manager sebagai direktori kerja untuk eksekusi perintah.

Jika Anda tidak menentukan direktori kerja, Image Builder menggunakan default berikut:

  • Linux: /tmp

  • macOS: /tmp

  • Windows: C:/

Untuk Windows, jalur tidak dapat berisi karakter double-quote (").

Tip

Atur direktori kerja ke jalur pada volume terlampir yang lebih besar ketika komponen Anda membutuhkan lebih banyak ruang disk sementara selama instalasi daripada yang disediakan direktori default.

Tag AMI

Anda dapat menerapkan tag ke AMI yang dibuat Image Builder selama fase build, sebelum distribusi gambar. Image Builder menerapkan tag ini ke AMI, terpisah dari tag sumber daya pada resep itu sendiri. Tentukan tag AMI dengan amiTags parameter dalam file input JSON Anda.

catatan

Anda tidak dapat menggunakan kunci tag yang dicadangkan CreatedBy atauEc2ImageBuilderArn. Image Builder mengelola kunci ini secara otomatis.

{ "name": "tagged-recipe", "semanticVersion": "1.0.0", "parentImage": "arn:aws:imagebuilder:us-west-2:aws:image/amazon-linux-2023-x86/x.x.x", "components": [ { "componentArn": "arn:aws:imagebuilder:us-west-2:aws:component/update-linux/x.x.x" } ], "amiTags": { "Environment": "Production", "Team": "Platform", "CostCenter": "12345" } }

Kesalahan umum dan pemecahan masalah

Tabel berikut mencantumkan kesalahan umum yang mungkin Anda temui saat membuat resep gambar, bersama dengan cara mengatasinya.

Kesalahan Penyebab Resolusi
“Komponen dapat ditentukan dalam resep gambar paling banyak sekali” Komponen duplikat (bahkan dengan versi yang berbeda). Hapus duplikat. Gunakan hanya satu versi dari setiap komponen.
“Komponen ARN tidak cocok dengan Platform Gambar Induk” Ketidakcocokan platform. Verifikasi platform gambar dasar Anda. Gunakan komponen Linux dengan AMI Linux, dan seterusnya.
“Komponen ARN tidak mendukung Versi OS Gambar Induk” Ketidakcocokan versi OS. Periksa versi OS yang didukung komponen. Gunakan versi komponen yang kompatibel.
“Pembuat Gambar tidak mendukung konfigurasi Agen SSM di Windows” Anda menentukan systemsManagerAgent dengan gambar induk Windows. Hapus additionalInstanceConfiguration.systemsManagerAgent blok.
“Anda telah melampaui ukuran komponen kumulatif maksimum 25 KB” Terlalu banyak atau terlalu besar parameter. Kurangi jumlah parameter atau persingkat nilai parameter.
“Resep dapat berisi paling banyak 9 produk pasar” Terlalu banyak kode AWS Marketplace produk. Kurangi jumlah AWS Marketplace komponen, atau gunakan gambar dasar dengan kode produk yang lebih sedikit.
“Versi semantik yang disediakan tidak mengikuti format yang diperlukan” String versi yang tidak valid. Gunakan format major.minor.patch dengan satu wildcard opsional. x
“Komponen ARN... tidak digunakan lagi dan tidak dapat dimasukkan dalam resep baru” (atau “dinonaktifkan”) Komponen yang direferensikan memiliki DISABLED status DEPRECATED atau. Perbarui ke versi komponen saat ini.

Impor VM sebagai gambar dasar Anda di konsol

Bagian ini menunjukkan cara mengimpor mesin virtual (VM) sebagai gambar dasar untuk resep gambar Anda. Ini tidak mencakup langkah-langkah lain yang terlibat dengan membuat resep atau versi resep di sini. Untuk langkah-langkah tambahan untuk membuat resep gambar baru dengan wizard pembuatan pipeline di konsol Pembuat Gambar, lihatWisaya pipa: Buat AMI. Untuk langkah-langkah tambahan untuk membuat resep gambar baru atau versi resep, lihatBuat versi baru resep gambar.

Untuk mengimpor VM sebagai gambar dasar untuk resep gambar Anda di konsol Image Builder, ikuti langkah-langkah ini, bersama dengan langkah-langkah lain yang diperlukan, untuk membuat resep atau versi resep Anda.

  1. Di bagian Pilih gambar untuk gambar dasar, pilih opsi Impor gambar dasar.

  2. Pilih Image Operating System (OS) dan versi OS seperti biasanya.

Konfigurasi impor VM

Saat Anda mengekspor VM Anda dari lingkungan virtualisasinya, proses itu membuat satu atau lebih file wadah disk yang bertindak sebagai snapshot dari lingkungan, pengaturan, dan data VM Anda. Anda dapat menggunakan file-file ini untuk mengimpor VM Anda sebagai gambar dasar untuk resep gambar Anda. Untuk informasi selengkapnya tentang mengimpor VM di Image Builder, lihat Impor dan ekspor gambar VM

Untuk menentukan lokasi sumber impor Anda, ikuti langkah-langkah berikut:

Sumber impor

Tentukan sumber untuk wadah disk image VM pertama atau snapshot untuk diimpor di bagian Disk container 1.

  1. Sumber — Ini bisa berupa bucket S3 atau snapshot EBS.

  2. Pilih lokasi disk S3 — Masukkan lokasi di Amazon S3 tempat gambar disk Anda disimpan. Untuk menelusuri lokasi, pilih Jelajahi S3.

  3. Untuk menambahkan wadah disk, pilih Tambahkan wadah disk.

IAM Role

Untuk mengaitkan peran IAM dengan konfigurasi impor VM Anda, pilih peran dari daftar tarik -turun peran IAM, atau pilih Buat peran baru untuk membuat peran baru. Jika Anda membuat peran baru, halaman konsol Peran IAM terbuka di tab terpisah.

Pengaturan lanjutan - opsional

Pengaturan berikut adalah opsional. Dengan pengaturan ini, Anda dapat mengonfigurasi enkripsi, lisensi, tag, dan lainnya untuk gambar dasar yang dibuat oleh impor.

Umum
  1. Tentukan Nama unik untuk gambar dasar. Jika Anda tidak memasukkan nilai, gambar dasar mewarisi nama resep.

  2. Tentukan Versi untuk gambar dasar. Gunakan format berikut: <major>.<minor>.<patch>. Jika Anda tidak memasukkan nilai, gambar dasar mewarisi versi resep.

  3. Anda juga dapat memasukkan Deskripsi untuk gambar dasar.

Arsitektur gambar dasar

Untuk menentukan arsitektur sumber impor VM Anda, pilih nilai dari daftar Arsitektur.

Enkripsi

Jika image disk VM Anda dienkripsi, Anda harus memberikan kunci untuk digunakan untuk proses impor. Untuk menentukan impor, pilih nilai dari daftar Enkripsi (kunci KMS). AWS KMS key Daftar berisi kunci KMS yang dapat diakses akun Anda di Wilayah saat ini.

Manajemen lisensi

Saat Anda mengimpor VM, proses impor secara otomatis mendeteksi OS VM dan menerapkan lisensi yang sesuai ke image dasar. Tergantung pada platform OS Anda, jenis lisensinya adalah sebagai berikut:

  • Lisensi disertakan - AWS Lisensi yang sesuai untuk platform Anda diterapkan ke gambar dasar Anda.

  • Bawa lisensi Anda sendiri (BYOL) - Mempertahankan lisensi dari VM Anda, jika berlaku.

Untuk melampirkan konfigurasi lisensi yang dibuat dengan AWS License Manager gambar dasar Anda, pilih dari daftar nama konfigurasi lisensi. Untuk informasi selengkapnya tentang Manajer Lisensi, lihat Bek erja dengan konfigurasi lisensi di Panduan Pengguna Manajer Lisensi.

catatan
  • Konfigurasi lisensi berisi aturan lisensi berdasarkan ketentuan perjanjian perusahaan Anda.

  • Linux hanya mendukung lisensi BYOL.

Tag (gambar dasar)

Tag menggunakan pasangan kunci-nilai untuk menetapkan teks yang dapat dicari ke sumber daya Pembuat Gambar Anda. Untuk menentukan tag untuk gambar dasar yang diimpor, masukkan pasangan kunci-nilai dengan kotak K unci dan Nilai.

Untuk menambahkan tanda, pilih Tambahkan tanda. Untuk menghapus sebuah tag, pilih Hapus tag.