AWS Lambda - Приклади використання лямбда функцій
AWS Lambda - це сервіс призначений для запуску коду без використання серверів. Сам код запускається на внутрішніх AWS серверах автоматично масштабованої продуктивності.
Для створення нової Lambda функції перейдіть до відповідного розділу "AWS" > "Lambda" > "Functions" або просто перейдіть за посиланням нище:
https://us-east-1.console.aws.amazon.com/lambda/home?region=us-east-1#/functionsДалі натисніть кнопку "Create function" і далі обираємо наступні параметри:
| Choose one of the following options to create your function: | Author from scratch |
| Function name: | My-Test-Function |
| Runtime: | Python 3.13 |
| Architecture: | x86_64 |
Далі нам треба підключити тригер. Для цього натискаємо кнопку + Add trigger і відкриється сторінка вибору тригеру по якому буде спрацбовувати ваша нова функція.
Список тригерів і як вони працюють:
EventBridge (CloudWatch Events) - Спрацьовує за розкладом
- Create a new rule
- Rule name: Every_hour
- Rule type: Schedule expression
- Schedule expression: rate(2 hours) OR cron(0 */2 * * ? *)
API Gateway - ...
- Trigger configuration: API Gateway
- API: Create an API
- API type: HTTP API
- Security: Open
Далі переходимо до розділу в API Gateway > Details > API:
- API endpoint: https://4icyromi0j.execute-api.us-east-1.amazonaws.com/default/get_my_ip
Встановлення кастомних бібліотек:
1. Для почтаку необхідно підготувати потрібні пакети локально (бажано на тій самій версії середовища):
- mkdir -p lambda/python
- cd lambda/python
- pip3 install -t . requests
- rm -r *dist-info __pycache__
- cd ..
- zip -r9 lambda-layer.zip python
2. Після цього перейдіть до консолі AWS до разділу Lambda > Layers
Натисніть кнопку "Create layer"
- Name: Library___Requests
- Description: Library___Requests
- Upload a .zip file: Обрати тількищо створений файл "lambda-layer.zip"
- Compatible runtimes: Python 3.13
Натисніть кнопку "Create"
3. І тепер нам лишилось тільки додати наш layer до нашої лямбда-функції. Для цього перейдіть в консоль AWS до разділу Lambda > Functions > My-Test-Function > Layers.
Натисніть кнопку "Add a layer" та заповніть форму:
- Choose a layer: Custom layers
- Custom layers: Library___Requests
- Version: 1
Натисніть кнопку "Add"