View a markdown version of this page

Membuat dan menghapus layer 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 layer di Lambda

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

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

Setelah Anda mengemas 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, lihatMenggunakan AWS CloudFormation dengan lapisan. Untuk membuat layer menggunakan AWS Serverless Application Model (AWS SAM), lihatMenggunakan AWS SAM dengan lapisan.

Membuat lapisan

Untuk membuat layer, 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 Lambda-managed ke 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.

Layers 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 layer.

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. (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.

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

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

  9. Pilih Buat.

Atau, Anda dapat menjalankan perintah publish-layer-version AWS Command Line Interface (CLI). Saat mengunggah dari Amazon S3, S3ObjectStorageMode=REFERENCE sertakan untuk menggunakan penyimpanan kode S3 yang dikelola sendiri, atau hilangkan (default COPY ke) 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 DeleteLayerVersionAPI. Misalnya, jalankan AWS CLI perintah delete-layer-version dengan nama layer dan versi layer yang ditentukan.

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

Ketika Anda menghapus versi layer, Anda tidak dapat lagi mengkonfigurasi 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 lapisan.

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 akan 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 terhadap kuota ukuran paket penerapan fungsi (250 MB unzip) tetapi tidak lagi diperhitungkan dalam kuota penyimpanan tingkat akun. Lambda-managed

Lapisan 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 penyimpanan Anda Lambda-managed . Fungsi yang mereferensikan versi lapisan yang dikelola sendiri yang dihapus terus berjalan normal. Namun, jika Anda juga menghapus objek sumber dari bucket S3 Anda atau mencabut akses Lambda ke sana, Anda tidak dapat lagi memperbarui konfigurasi fungsi dengan lapisan itu.

catatan

Menghapus versi lapisan tidak pernah menonaktifkan fungsi yang mereferensikannya. Fungsi tetap Active terlepas dari apakah lapisan yang 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.