Прежде всего хочу отметить, что я новичок в AWS и Kafka.
Мой сервер Kafka, который развернут на экземпляре AWS EC2, запускает лямбду всякий раз, когда производитель создает в теме.Лямбда-функция пытается вызвать потребительский API для использования из этой темы, но http-соединение, которое пытается создать лямбда, не удается из-за тайм-аута.Лямбда-функция находится в том же виртуальном частном процессоре, что и сервер kafka.
Я попробовал следующее:
- проверил, связана ли проблема только с этим конкретным API или с каждым API.Я обнаружил, что другие API, например, http://google.co.in дает мне ответ без каких-либо ошибок.
- очевидно использовал публичный ip сервера kafka
- удален из vpc и пробовал без vpc, все еще та же проблема
- Прикрепленная политика для полного доступа к vpc.
URL url = new URL("http://ec2-*-*-*-*.ap-south-1.compute.amazonaws.com/consumers/db_json_consumer/instances/lambda_consumer/topics/kbtest");
HttpURLConnection conn = (HttpURLConnection) url.openConnection();
conn.setRequestMethod("GET");
conn.setRequestProperty("Content-Type", "application/json");
conn.setRequestProperty("Accept", "application/json");
logger.log("Connection : " + conn);
conn.connect();
if (conn.getResponseCode() != 200) {
logger.log("Failed : HTTP error code : " + conn.getResponseCode());
}
BufferedReader br = new BufferedReader(new InputStreamReader(conn.getInputStream()));
String output;
System.out.println("Output from Server .... \n");
while ((output = br.readLine()) != null) {
System.out.println(output);
}
logger.log("\nSending 'GET' request to URL : " + url);
logger.log("Response Code : " + conn.getResponseCode());
conn.disconnect();
}
Execution result: failed(logs)
Details
The area below shows the result returned by your function execution. Learn more about returning results from your function.
{
"errorMessage": "2019-06-24T12:25:08.529Z 406d0e22-3283-4f02-9c31-cb2163c1b950 Task timed out after 15.02 seconds"
}
Summary
Code SHA-256
Mn3/26Ky/hBE1ONL+LDdYaLEiCQZo6VHdlfcRpF8WYw=
Request ID
406d0e22-3283-4f02-9c31-cb2163c1b950
Duration
15015.27 ms
Billed duration
15000 ms
Resources configured
512 MB
Max memory used
55 MB
Log output
The section below shows the logging calls in your code. These correspond to a single row within the CloudWatch log group corresponding to this Lambda function. Click here to view the CloudWatch log group.
START RequestId: 406d0e22-3283-4f02-9c31-cb2163c1b950 Version: $LATEST
Heyy lambda object : HeyConnection : sun.net.www.protocol.http.HttpURLConnection:http://13.235.76.198:8082/consumers/db_json_consumer/instances/lambda_consumer/topics/kbtestEND RequestId: 406d0e22-3283-4f02-9c31-cb2163c1b950
REPORT RequestId: 406d0e22-3283-4f02-9c31-cb2163c1b950 Duration: 15015.27 ms Billed Duration: 15000 ms Memory Size: 512 MB Max Memory Used: 55 MB
2019-06-24T12:25:08.529Z 406d0e22-3283-4f02-9c31-cb2163c1b950 Task timed out after 15.02 seconds