gpt4 book ai didi

amazon-web-services - 尝试在没有代理的情况下连接 Dynamo DB 时发生连接超时错误

转载 作者:行者123 更新时间:2023-12-04 10:39:28 25 4
gpt4 key购买 nike

我的应用程序需要连接到 DynamoDB,实际上我的网络在代理后面运行。在尝试使用以下配置使用代理连接 DynamoDB 时,它工作正常。

#DynamoDB configuration
amazon.dynamodb.endpoint=https://dynamodb.REGIONXXXX.amazonaws.com
amazon.dynamodb.region=XXXXXXXXX
spring.data.dynamodb.entity2ddl.auto=create-only
proxy.server.address=XXXXXXXXX
proxy.server.port=31XXXXX

DynamoDB 配置:

@Bean
public AmazonDynamoDB amazonDynamoDB() {
return AmazonDynamoDBClientBuilder
.standard()
.withClientConfiguration(
PredefinedClientConfigurations.defaultConfig()
.withProxyHost(proxy)//we want to remove this code.
.withProxyPort(port))
.withEndpointConfiguration(
new AwsClientBuilder
.EndpointConfiguration(amazonDynamoDBEndpoint, amazonDynamoDBRegion))
.build();
}

要求是通过使用VPC端点连接它,这样我们相信我们可以在没有任何代理的情况下连接它。同样需要哪些配置?是否需要更改代码而不是删除代理?

我们已使用以下策略配置 VPC 端点:

{
"Statement": [
{
"Action": "*",
"Effect": "Allow",
"Resource": "*",
"Principal": "*"
}
]

但是尝试使用上面提到的相同代码(没有代理)连接 DynamoDB 导致以下错误:

com.amazonaws.SdkClientException: Unable to execute HTTP request: Connect to dynamodb.XXXXXX-1.amazonaws.com:443 [dynamodb.XXXXXXX.amazonaws.com/XX.1XX.226.XXX] failed: connect timed out

请帮助解决这个问题。

最佳答案

与 S3 一样,DyanamoDB 使用 VPC 网关端点。启用 VPC 网关后,您可以只使用默认配置,因为 VPC 会处理将来自 EC2 实例的请求从私有(private) IP 地址路由到 DynamoDB。

AmazonDynamoDB client = AmazonDynamoDBClientBuilder.standard()
.build();

注意:我不熟悉 AWS Java API,所以我从上面的 AWS 示例代码中获取了这个。

这假设您的安全组和 VPC 路由规则是正确的。

关于amazon-web-services - 尝试在没有代理的情况下连接 Dynamo DB 时发生连接超时错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/59998122/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com