View a markdown version of this page

Membuat dan menghapus lapisan di Lambda - AWS Lambda

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

Membuat dan menghapus lapisan di Lambda

Lapisan Lambda adalah arsip file.zip yang berisi kode tambahan atau data. Lapisan biasanya berisi dependensi pustaka, runtime khusus, atau file konfigurasi.

Bagian ini menjelaskan cara membuat dan menghapus lapisan di Lambda. Untuk informasi konseptual selengkapnya tentang lapisan dan mengapa Anda mungkin mempertimbangkan untuk menggunakannya, lihatMengelola dependensi Lambda dengan lapisan.

Setelah Anda mengem as konten layer Anda, langkah selanjutnya adalah membuat layer di Lambda. Bagian ini menunjukkan cara membuat dan menghapus lapisan menggunakan konsol Lambda atau API Lambda saja. Untuk membuat layer menggunakan AWS CloudFormation, lihatPenggunaan AWS CloudFormation dengan lapisan. Untuk membuat layer menggunakan AWS Serverless Application Model (AWS SAM), lihatMenggunakan AWS SAM dengan lapisan.

Membuat lapisan

Untuk membuat lapisan, Anda dapat mengunggah arsip file.zip dari mesin lokal Anda atau dari Amazon Simple Storage Service (Amazon S3). Saat mengunggah dari Amazon S3, Anda dapat memilih apakah Lambda menyalin kode ke Lambda-managed penyimpanan atau mereferensikannya langsung dari bucket S3 Anda. Untuk informasi selengkapnya, lihat Self-managed Penyimpanan kode S3.

Lambda mengekstrak konten lapisan ke dalam direktori /opt saat menyiapkan lingkungan eksekusi untuk fungsi.

Layer dapat memiliki satu atau lebih versi layer. Saat Anda membuat lapisan, Lambda menetapkan versi lapisan ke versi 1. Anda dapat mengubah izin pada versi lapisan yang ada kapan saja. Namun, untuk memperbarui kode atau membuat perubahan konfigurasi lainnya, Anda harus membuat versi baru dari lapisan.

Untuk membuat lapisan (konsol)
  1. Buka halaman Fungsi di konsol Lambda.

  2. Pilih Buat lapisan.

  3. Di bagian Konfigurasi lapisan, untuk Nama, masukkan nama untuk lapisan Anda.

  4. (Opsional) Untuk Deskripsi, masukkan deskripsi untuk lapisan Anda.

  5. Untuk mengunggah kode lapisan Anda, lakukan salah satu hal berikut:

    • Untuk mengunggah file .zip dari komputer Anda, pilih Unggah file .zip. Selanjutnya, pilih Unggah untuk memilih file .zip lokal Anda.

    • Untuk mengunggah file dari Amazon S3, pilih Unggah file dari Amazon S3. Kemudian, untuk URL tautan Amazon S3, masukkan tautan ke file.

  6. Jika Anda memilih untuk mengunggah dari Amazon S3, di bawah Mode penyimpanan kode, pilih salah satu dari berikut ini:

    • Mode salin (default)

    • Mode referensi

  7. (Opsional) Untuk arsitektur yang kompatibel, pilih satu nilai atau kedua nilai. Untuk informasi selengkapnya, lihat Memilih dan mengonfigurasi arsitektur set instruksi untuk fungsi Lambda Anda.

  8. (Opsional) Untuk runtime yang kompatibel, pilih runtime yang kompatibel dengan layer Anda.

  9. (Opsional) Untuk lisensi, masukkan informasi lisensi yang diperlukan.

  10. Pilih Buat.

Atau, Anda dapat menjalankan perintah publish-layer-version AWS Command Line Interface (CLI). Saat mengunggah dari Amazon S3, sertakan S3ObjectStorageMode=REFERENCE untuk menggunakan penyimpanan kode S3 yang dikelola sendiri, atau hilangkan (default keCOPY) untuk menggunakan penyimpanan. Lambda-managed Contoh:

aws lambda publish-layer-version --layer-name my-layer --zip-file fileb://layer.zip --compatible-runtimes python3.14

Setiap kali Anda menjalankanpublish-layer-version, Lambda membuat versi baru dari layer.

Menghapus versi lapisan

Untuk menghapus versi layer, gunakan operasi DeleteLayerVersion API. Misalnya, jalankan AWS CLI perintah delete-layer-version dengan nama layer dan layer version yang ditentukan.

aws lambda delete-layer-version --layer-name my-layer --version-number 1

Saat Anda menghapus versi lapisan, Anda tidak dapat lagi mengonfigurasi fungsi baru untuk menggunakannya. Namun, fungsi apa pun yang sudah mereferensikan versi lapisan yang dihapus terus berjalan dengan konten lapisan itu. Lambda tidak pernah menggunakan kembali nomor versi untuk nama layer.

Dampak kuota penyimpanan dari penghapusan lapisan

Dampak kuota penyimpanan dari menghapus versi lapisan tergantung pada mode penyimpanan yang digunakan oleh lapisan dan oleh fungsi yang mereferensikannya.

Lapisan menggunakan Lambda-managed penyimpanan (COPY)

Saat Anda menghapus versi lapisan yang menggunakan Lambda-managed penyimpanan, kode lapisan dihapus dari kuota Lambda-managed penyimpanan akun Anda. Namun, fungsi apa pun yang masih mereferensikan versi lapisan yang dihapus terus memiliki akses ke konten lapisan. Konten lapisan diperhitungkan dalam kuota ukuran paket penerapan fungsi (250 MB dibuka ritsleting) tetapi tidak lagi diperhitungkan dalam kuota penyimpanan tingkat akun. Lambda-managed

Layer menggunakan penyimpanan S3 yang dikelola sendiri (REFERENSI)

Lapisan yang menggunakan penyimpanan kode S3 yang dikelola sendiri tidak menggunakan Lambda-managed penyimpanan, jadi menghapusnya tidak berdampak pada kuota Lambda-managed penyimpanan Anda. Fungsi yang mereferensikan versi lapisan yang dikelola sendiri yang dihapus terus berjalan secara normal. Namun, jika Anda juga menghapus objek sumber dari bucket S3 Anda atau mencabut akses Lambda ke objek tersebut, Anda tidak dapat lagi memperbarui konfigurasi fungsi dengan lapisan tersebut.

catatan

Menghapus versi layer tidak pernah menonaktifkan fungsi yang mereferensikannya. Fungsi tetap ada Active terlepas dari apakah lapisan digunakan Lambda-managed atau penyimpanan S3 yang dikelola sendiri. InactiveStatus hanya berlaku ketika Lambda kehilangan akses ke kode sumber fungsi sendiri yang disimpan dalam bucket S3 yang dikelola sendiri.