2016-09-22 4 views
1

Я следил за несколькими учебниками и добавлял различные конфигурации IAM и группы безопасности, чтобы сделать все как можно более открытыми и очевидными, и ничего не сработало. Вот журнал отладки и основная ошибка, вставленная ниже. Дайте мне знать, есть ли какие-либо другие данные, которые я должен добавить, чтобы это было ясно.AWS Лямбда не может подключиться к Kinesis Firehose «Максимальное количество попыток превышено с помощью url»

[DEBUG] 2016-09-22T13:57:40.965Z 5b770867-80cc-11e6-b5b8-018d2de39616 ConnectionError received when sending HTTP request. 
Traceback (most recent call last): 
File "/var/runtime/botocore/endpoint.py", line 174, in _get_response 
proxies=self.proxies, timeout=self.timeout) 
File "/var/runtime/botocore/vendored/requests/sessions.py", line 573, in send 
r = adapter.send(request, **kwargs) 
File "/var/runtime/botocore/vendored/requests/adapters.py", line 419, in send 
raise ConnectTimeout(e, request=request) 
ConnectTimeout: HTTPSConnectionPool(host='firehose.us-east-1.amazonaws.com', port=443): Max retries exceeded with url:/(Caused by ConnectTimeoutError(<botocore.awsrequest.AWSHTTPSConnection object at 0x7fbbc4c92c10>, 'Connection to firehose.us-east-1.amazonaws.com timed out. (connect timeout=60)')) 

Debug Output from lambda log in Cloudwatch

+0

Является ли ваша функция лямбда запущенной внутри вашего VPC? И если да, у вас есть шлюз NAT в вашем VPC? –

+0

Это в VPC, но у нас нет NAT. Должен ли я отправить это за пределы VPC для достижения Кинезиса? Я просто хочу, чтобы он оказался в экземпляре RDS в том же VPC ... Я смотрю на изменение своей лямбда-функции, чтобы просто вставить записи в RDS вместо того, чтобы беспокоиться о кинезисе ... мне было слишком долго. – Caullyn

+0

Служба Kinesis не работает внутри вашего VPC, так что да, вы должны отправить запрос вне VPC. Для этого вам понадобится шлюз NAT. –

ответ

1

Пожалуйста, следуйте мой ответ в этом thread. Это объясняет, как сделать лямбда-контакт с любой услугой в Интернете (например, S3, кинезис и так далее).

+0

Спасибо, johni. Это полностью избыточно, чтобы добавить кинезис, мне удалось написать мое решение, просто используя лямбда и s3. Если мне когда-либо понадобится включить его, это похоже на жизнеспособный и безопасный метод. – Caullyn

+0

«Простое решение» не соответствует вашим потребностям? вам может не понадобиться VPC. Более того, скажем, вам нужно использовать S3 API - для этого было встроенное решение, и вам не нужно было устанавливать VPC, как описано в другой пост-AWS, добавленной для этого специально. Надеемся, они сделают то же самое для Кинезиса и других (если не уже, я не обновлен). – johni

+0

Уже в vpc – Caullyn

0

В настоящее время вы не можете подключить задачу Lambda непосредственно Kinesis шланговой, только Kineses Streams. Один из способов - позволить Firehose записывать файл на S3, а затем запускать задачу Lambda через S3 event notifications.

Смежные вопросы