Terjemahan disediakan oleh mesin penerjemah. Jika konten terjemahan yang diberikan bertentangan dengan versi bahasa Inggris aslinya, utamakan versi bahasa Inggris.
Aktifkan Wawasan Lambda pada penerapan gambar kontainer Lambda
Untuk mengaktifkan Wawasan Lambda pada fungsi Lambda yang di-deploy sebagai image kontainer, tambahkan baris di Dockerfile Anda. Baris-baris ini akan melakukan instalasi agen Wawasan Lambda sebagai sebuah ekstensi dalam image kontainer Anda. Garis yang akan ditambahkan berbeda untuk wadah dan wadah x86-64. ARM64
catatan
Agen Wawasan Lambda hanya didukung pada runtime Lambda yang menggunakan Amazon Linux 2.
Deployment image kontainer x86-64
Untuk mengaktifkan Wawasan Lambda pada fungsi Lambda yang di-deploy sebagai image kontainer yang berjalan pada kontainer x86-64, tambahkan baris di bawah ini ke Dockfire Anda. Baris-baris ini akan melakukan instalasi agen Wawasan Lambda sebagai sebuah ekstensi dalam image kontainer Anda.
RUN curl -O https://lambda-insights-extension.s3-ap-northeast-1.amazonaws.com/amazon_linux/lambda-insights-extension.rpm && \ rpm -U lambda-insights-extension.rpm && \ rm -f lambda-insights-extension.rpm
Setelah Anda membuat fungsi Lambda, tetapkan CloudWatchLambdaInsightsExecutionRolePolicyIAMkebijakan ke peran eksekusi fungsi, dan Lambda Insights diaktifkan pada fungsi Lambda berbasis gambar container.
catatan
Untuk menggunakan versi lama ekstensi Lambda Insights, ganti perintah sebelumnya dengan ini:. URL URL https://lambda-insights-extension.s3-ap-northeast-1.amazonaws.com/amazon_linux/lambda-insights-extension.1.0.111.0.rpm
Saat ini, hanya Wawasan Lambda versi 1.0.111.0 dan versi selanjutnya yang tersedia. Untuk informasi selengkapnya, lihat Versi yang tersedia untuk ekstensi Wawasan lambda..
Verifikasi ciri khas paket agen Wawasan Lambda pada sebuah server Linux
Masukkan perintah berikut untuk mengunduh kunci publik.
shell$
wget https://lambda-insights-extension.s3-ap-northeast-1.amazonaws.com/lambda-insights-extension.gpgMasukkan perintah berikut untuk mengimpor kunci publik ke dalam keyring Anda.
shell$
gpg --import lambda-insights-extension.gpgHasil akhirnya akan serupa dengan yang berikut ini. Catat nilai
key
, Anda akan membutuhkannya pada langkah berikutnya. Dalam contoh hasil akhir ini, nilai kunci adalah848ABDC8
.gpg: key 848ABDC8: public key "Amazon Lambda Insights Extension" imported gpg: Total number processed: 1 gpg: imported: 1 (RSA: 1)
Verifikasi sidik jari dengan memasukkan perintah berikut. Ganti
key-value
dengan nilai kunci dari langkah sebelumnya.shell$
gpg --fingerprint key-valueString sidik jari di hasil akhir perintah ini seharusnya
E0AF FA11 FFF3 5BD7 349E E222 479C 97A1 848A BDC8
. Jika string sidik jari tidak cocok, jangan instal agen dan hubungi AWS.Setelah Anda memverifikasi sidik jari, Anda dapat menggunakannya untuk memverifikasi paket agen Wawasan Lambda. Unduh berkas tanda pembeda standar paket dengan memasukkan perintah berikut.
shell$
wget https://lambda-insights-extension.s3-ap-northeast-1.amazonaws.com/amazon_linux/lambda-insights-extension.rpm.sigVerifikasi tanda pembeda dengan memasukkan perintah berikut.
shell$
gpg --verify lambda-insights-extension.rpm.sig lambda-insights-extension.rpmOutput-nya akan terlihat seperti berikut ini:
gpg: Signature made Thu 08 Apr 2021 06:41:00 PM UTC using RSA key ID 848ABDC8 gpg: Good signature from "Amazon Lambda Insights Extension" gpg: WARNING: This key is not certified with a trusted signature! gpg: There is no indication that the signature belongs to the owner. Primary key fingerprint: E0AF FA11 FFF3 5BD7 349E E222 479C 97A1 848A BDC8
Dalam output yang diharapkan, mungkin ada peringatan tentang tanda pembeda yang terpercaya. Kunci hanya dapat dipercaya jika Anda atau seseorang yang Anda percaya telah menandatanganinya. Ini tidak berarti bahwa tanda pembeda Anda tidak valid, hanya saja Anda belum memverifikasi kunci publiknya.
Jika outputnya berisi
BAD signature
, periksa apakah Anda melakukan langkah-langkahnya dengan benar. Jika Anda terus mendapatkanBAD signature
respons, hubungi AWS dan hindari menggunakan file yang diunduh.
Contoh x86-64
Bagian ini mencakup satu contoh pengaktifan Wawasan Lambda pada fungsi Lambda Python berbasis citra kontainer.
Contoh pengaktifan Wawasan Lambda pada citra kontainer Lambda
Buat sebuah Dockerfile yang mirip dengan berikut ini:
FROM public.ecr.aws/lambda/python:3.8 // extra lines to install the agent here RUN curl -O https://lambda-insights-extension.s3-ap-northeast-1.amazonaws.com/amazon_linux/lambda-insights-extension.rpm && \ rpm -U lambda-insights-extension.rpm && \ rm -f lambda-insights-extension.rpm COPY index.py ${LAMBDA_TASK_ROOT} CMD [ "index.handler" ]
Buat sebuah file Python bernama
index.py
yang serupa dengan yang berikut ini:def handler(event, context): return { 'message': 'Hello World!' }
Masukan Dockerfile dan
index.py
dalam direktori yang sama. Kemudian, di direktori itu, jalankan langkah-langkah berikut untuk membangun image docker dan mengunggahnya ke Amazon. ECR// create an ECR repository aws ecr create-repository --repository-name test-repository // build the docker image docker build -t test-image . // sign in to AWS aws ecr get-login-password | docker login --username AWS --password-stdin "${
ACCOUNT_ID
}".dkr.ecr."${REGION
}".amazonaws.com // tag the image docker tag test-image:latest "${ACCOUNT_ID
}".dkr.ecr."${REGION
}".amazonaws.com/test-repository:latest // push the image to ECR docker push "${ACCOUNT_ID
}".dkr.ecr."${REGION
}".amazonaws.com/test-repository:latestGunakan ECR gambar Amazon yang baru saja Anda buat untuk membuat fungsi Lambda.
Tetapkan CloudWatchLambdaInsightsExecutionRolePolicyIAMkebijakan ke peran eksekusi fungsi.
ARM64penyebaran gambar kontainer
Untuk mengaktifkan Lambda Insights pada fungsi Lambda yang diterapkan sebagai gambar kontainer yang berjalan pada wadah AL2 _aarch64 (yang menggunakan ARM64 arsitektur), tambahkan baris berikut di Dockerfile Anda. Baris-baris ini akan melakukan instalasi agen Wawasan Lambda sebagai sebuah ekstensi dalam image kontainer Anda.
RUN curl -O https://lambda-insights-extension-arm64.s3-ap-northeast-1.amazonaws.com/amazon_linux/lambda-insights-extension-arm64.rpm && \ rpm -U lambda-insights-extension-arm64.rpm && \ rm -f lambda-insights-extension-arm64.rpm
Setelah Anda membuat fungsi Lambda, tetapkan CloudWatchLambdaInsightsExecutionRolePolicyIAMkebijakan ke peran eksekusi fungsi, dan Lambda Insights diaktifkan pada fungsi Lambda berbasis gambar container.
catatan
Untuk menggunakan versi lama ekstensi Lambda Insights, ganti perintah sebelumnya dengan ini:. URL URL https://lambda-insights-extension-arm64.s3-ap-northeast-1.amazonaws.com/amazon_linux/lambda-insights-extension-arm64.1.0.229.0.rpm
Saat ini, hanya Wawasan Lambda versi 1.0.229.0 dan versi selanjutnya yang tersedia. Untuk informasi selengkapnya, lihat Versi yang tersedia untuk ekstensi Wawasan lambda..
Verifikasi ciri khas paket agen Wawasan Lambda pada sebuah server Linux
Masukkan perintah berikut untuk mengunduh kunci publik.
shell$
wget https://lambda-insights-extension-arm64.s3-ap-northeast-1.amazonaws.com/lambda-insights-extension.gpgMasukkan perintah berikut untuk mengimpor kunci publik ke dalam keyring Anda.
shell$
gpg --import lambda-insights-extension.gpgHasil akhirnya akan serupa dengan yang berikut ini. Catat nilai
key
, Anda akan membutuhkannya pada langkah berikutnya. Dalam contoh hasil akhir ini, nilai kunci adalah848ABDC8
.gpg: key 848ABDC8: public key "Amazon Lambda Insights Extension" imported gpg: Total number processed: 1 gpg: imported: 1 (RSA: 1)
Verifikasi sidik jari dengan memasukkan perintah berikut. Ganti
key-value
dengan nilai kunci dari langkah sebelumnya.shell$
gpg --fingerprint key-valueString sidik jari di hasil akhir perintah ini seharusnya
E0AF FA11 FFF3 5BD7 349E E222 479C 97A1 848A BDC8
. Jika string sidik jari tidak cocok, jangan instal agen dan hubungi AWS.Setelah Anda memverifikasi sidik jari, Anda dapat menggunakannya untuk memverifikasi paket agen Wawasan Lambda. Unduh berkas tanda pembeda standar paket dengan memasukkan perintah berikut.
shell$
wget https://lambda-insights-extension-arm64.s3-ap-northeast-1.amazonaws.com/amazon_linux/lambda-insights-extension-arm64.rpm.sigVerifikasi tanda pembeda dengan memasukkan perintah berikut.
shell$
gpg --verify lambda-insights-extension-arm64.rpm.sig lambda-insights-extension-arm64.rpmOutput-nya akan terlihat seperti berikut ini:
gpg: Signature made Thu 08 Apr 2021 06:41:00 PM UTC using RSA key ID 848ABDC8 gpg: Good signature from "Amazon Lambda Insights Extension" gpg: WARNING: This key is not certified with a trusted signature! gpg: There is no indication that the signature belongs to the owner. Primary key fingerprint: E0AF FA11 FFF3 5BD7 349E E222 479C 97A1 848A BDC8
Dalam output yang diharapkan, mungkin ada peringatan tentang tanda pembeda yang terpercaya. Kunci hanya dapat dipercaya jika Anda atau seseorang yang Anda percaya telah menandatanganinya. Ini tidak berarti bahwa tanda pembeda Anda tidak valid, hanya saja Anda belum memverifikasi kunci publiknya.
Jika outputnya berisi
BAD signature
, periksa apakah Anda melakukan langkah-langkahnya dengan benar. Jika Anda terus mendapatkanBAD signature
respons, hubungi AWS dan hindari menggunakan file yang diunduh.
ARM64Contoh
Bagian ini mencakup satu contoh pengaktifan Wawasan Lambda pada fungsi Lambda Python berbasis citra kontainer.
Contoh pengaktifan Wawasan Lambda pada citra kontainer Lambda
Buat sebuah Dockerfile yang mirip dengan berikut ini:
FROM public.ecr.aws/lambda/python:3.8 // extra lines to install the agent here RUN curl -O https://lambda-insights-extension-arm64.s3-ap-northeast-1.amazonaws.com/amazon_linux/lambda-insights-extension-arm64.rpm && \ rpm -U lambda-insights-extension-arm64.rpm && \ rm -f lambda-insights-extension-arm64.rpm COPY index.py ${LAMBDA_TASK_ROOT} CMD [ "index.handler" ]
Buat sebuah file Python bernama
index.py
yang serupa dengan yang berikut ini:def handler(event, context): return { 'message': 'Hello World!' }
Masukan Dockerfile dan
index.py
dalam direktori yang sama. Kemudian, di direktori itu, jalankan langkah-langkah berikut untuk membangun image docker dan mengunggahnya ke Amazon. ECR// create an ECR repository aws ecr create-repository --repository-name test-repository // build the docker image docker build -t test-image . // sign in to AWS aws ecr get-login-password | docker login --username AWS --password-stdin "${ACCOUNT_ID}".dkr.ecr."${REGION}".amazonaws.com // tag the image docker tag test-image:latest "${ACCOUNT_ID}".dkr.ecr."${REGION}".amazonaws.com/test-repository:latest // push the image to ECR docker push "${ACCOUNT_ID}".dkr.ecr."${REGION}".amazonaws.com/test-repository:latest
Gunakan ECR gambar Amazon yang baru saja Anda buat untuk membuat fungsi Lambda.
Tetapkan CloudWatchLambdaInsightsExecutionRolePolicyIAMkebijakan ke peran eksekusi fungsi.