Vous pouvez désormais monter ** EFS ** sur ** Lambda **. Cela vous permet d'importer des bibliothèques Python configurées dans EFS dans Lambda.
Auparavant, si vous vouliez importer une bibliothèque non Python dans Lambda, vous ne pouviez la télécharger que sur la couche Lambda. Cependant, cette méthode a une taille limite de «compressée à 50 Mo ou moins et décompressée à 250 Mo ou moins». Pour cette raison, il n'était pas possible d'utiliser plusieurs grandes bibliothèques. Par conséquent, si le système est un peu volumineux, il est nécessaire de prendre certaines mesures comme aller au docker, et Lambda à lui seul ne suffisait pas.
Cependant, maintenant que vous pouvez monter EFS sur Lambda, ce problème est résolu. `Vous pouvez maintenant importer des bibliothèques installées sur EFS dans Lambda. ''
how to
Créez un point d'accès EFS (accès client)
ID utilisateur propriétaire: 1001
ID du groupe de propriétaires: 1001
Autorisations: 777
Le chemin (répertoire) est défini ici sur / lambda
Montez EFS sur EC2 fonctionnel
sudo yum install -y amazon-efs-utils
cd /mnt
sudo mkdir efs
sudo mount -t efs fs-xxxxx:/ efs
Installez Python et les bibliothèques sur EFS Installez Python 3.8.1 et pandas ici
sudo yum -y install gcc openssl-devel bzip2-devel libffi-devel
wget https://www.python.org/ftp/python/3.8.1/Python-3.8.1.tgz
tar xzf Python-3.8.1.tgz
cd Python-3.8.1
sudo ./configure --enable-optimizations
sudo make altinstall
# check
python3.8 --version
pip3.8 --version
cd /mnt/efs
pip3.8 install --upgrade --target lambda/ pandas
Réglez la fonction Lambda Doit appartenir à VPC Ajout de la stratégie ʻAmazonElasticFileSystemClientReadWriteAcces` au rôle d'exécution de Lambda Ajouter EFS
Importer avec Lambda Vous pouvez l'importer comme ça.
import sys
sys.path.append("/mnt/efs")
import pandas as pd
Recommended Posts