У меня есть функция лямбда-AWS, чтобы вызвать ежедневный импортер рабочих местAWS лямбда-функция ConnectionError при конфигурации с VPC
Я использую «стартером функцию AWS Lambda.» для этого и lambda_handler достаточно просты. Это псевдо-код, что я делаю:
try:
cron_job = CloudCron()
status = redis_get_importer_status(db_key, key)
if status != 'running':
cron_job.login()
redis_set_importer_status(db_key, key, 'running')
cron_job.start_importer()
except Exception:
exc_traceback = traceback.print_exc()
print(exc_traceback)
Эта функция инициируется CloudWatch события каждые 15 минут.
Функция лямбда не смогла запустить lambda_handler и жаловалась на отсутствие политики выполнения для VPC. Чтобы решить эту проблему, я применил для этой роли AWSLambdaVPCAccessExecutionRole Policy. В то время как это работало с моим lamda_handler, были и другие проблемы. Модуль запросов python бросил ConnectionError при попытке входа на сайт. Я увеличил таймаут до 5 минут и память до 1 ГБ и все еще вижу эту проблему.
ConnectionError: HTTPSConnectionPool (хост = 'test.site.com.au', порт = 443): МАКС.ПОПЫТОК превышены URL:/аутентификации/авторизации (Вызванный NewConnectionError (': Не удалось установить новое соединение: [Errno 110] Connection timed out ',))
Я запустил тот же lambda_handler внутри своего VPC и, кажется, работает без проблем.
Я наконец удалил статус redis и получил статус в своей лямбда-функции и настройке VPC в lamba и снова запустил lamda_handler, и это, похоже, работает без каких-либо проблем.
Мне нужна конфигурация VPC для установки и получения ключей с сервера redis.
Любая помощь приветствуется!
Приветствия!
У меня есть аналогичная проблема. и сконфигурированные частные подсети с NAT Gateway, тем не менее, до сих пор не имеют доступа к Интернету. Любая помощь? – Kostanos
@ Kostanos Я уже ответил вам на другой вопрос, на который вы ссылались на этот точный комментарий. Пожалуйста, разместите свой собственный вопрос вместо того, чтобы рассылать этот комментарий по каждому связанному с ним вопросу. –
Спасибо @ mark-b Я уже разрешил это. Мой iisue заключался в том, что я создал NAT-шлюз внутри частной подсети, когда я должен делать это в публичной подсети. – Kostanos