У лямбда-триггера AWS нет облачного фронта - PullRequest
0 голосов
/ 07 ноября 2018

Я создал новую лямбда-функцию, но не вижу облачного фронта в качестве опции в триггерах. Кто-нибудь знает, почему это может быть? Спасибо

Ответы [ 3 ]

0 голосов
/ 08 ноября 2018

Функция интеграции Lambda @ Edge в CloudFront требует, чтобы эти функции были написаны на Node.js. Невозможно вызвать функцию на другом языке непосредственно из CloudFront.

Вы должны создавать функции со свойством времени выполнения nodejs6.10 или nodejs8.10.

https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/lambda-requirements-limits.html#lambda-requirements-lambda-function-configuration

Конечно, в среде выполнения Node.js у вас есть AWS Javascript SDK, поэтому, если у вас есть действительно убедительный случай, вы можете использовать его из функции Javascript для вызова другого, отличного от него. Лямбда-функция написана на другом языке ... но трудно представить общий случай, когда это имело бы смысл, из-за дополнительной задержки и стоимости, но я, например, использовал это решение, чтобы Lambda @ Edge могла проникнуть внутрь VPC - что можно сделать, только вызвав вторую функцию Lambda (которую можно настроить для доступа к VPC) изнутри первой (что не может, потому что функции Lambda @ Edge работают в регионе, ближайшем к зрителю, скорее чем в одном регионе, поэтому они не будут работать внутри VPC).

0 голосов
/ 31 июля 2019

Согласно текущей документации AWS:

Убедитесь, что вы находитесь в регионе США-Восток-1 ( Н. Вирджиния ). Вы должны быть в этом регионе, чтобы создать Lambda @ Edge функций.

См .: Учебник AWS: создание простой функции Lambda @ Edge

Select AWS region

0 голосов
/ 07 ноября 2018

Вы не можете добавить с консоли Lambda. Для добавления триггера для поведения кэша, вам нужно сделать это из консоли CloudFront.

Это подробно объясняется здесь - https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/lambda-edge-add-triggers-cf-console.html

...