问题标签 [aws-sdk-java-2.0]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
206 浏览

java - 创建标签失败并出现错误 java.lang.NoSuchMethodError

我可以使用 aws-sdk-java 创建实例,但最近在尝试创建用于命名实例的标签时,我反复收到错误

java.lang.NoSuchMethodError: com.amazonaws.services.ec2.AmazonEC2.createTags(Lcom/amazonaws/services/ec2/model/CreateTagsRequest;)Lcom/amazonaws/services/ec2/model/CreateTagsResult;

我尝试在使用创建实例时设置标签名称

但即便如此,同样的错误 java.lang.NoSuchMethodError 也会失败。虽然编译没有问题,但我不明白为什么部署后会出现此错误。

0 投票
1 回答
3414 浏览

java - 我将如何通过 Java 属性为 AWS Parameter Store Spring 属性源公开 AWS 凭证

来自文档:http ://cloud.spring.io/spring-cloud-static/spring-cloud-aws/2.0.0.RC2/single/spring-cloud-aws.html#_parameter_store_configuration_credentials_and_region_configuration

参数存储配置支持使用引导上下文来配置默认 AWSSimpleSystemsManagement 客户端,该客户端使用 com.amazonaws.auth.DefaultAWSCredentialsProviderChain 和 com.amazonaws.regions.DefaultAwsRegionProviderChain

提供者链的文档:https ://docs.aws.amazon.com/sdk-for-java/v1/developer-guide/credentials.html

我希望避免使用环境变量或命令行属性,因为它们很有可能会泄漏到 prod 中某处的日志中。我看到的最佳选择是使用 .properties 文件。根据第一个链接,由于模块是在引导上下文中加载的,我想“Spring”的方法是将这些属性包含在 bootstrap.properties 文件中(根据 spring-cloud 文档:https: //cloud.spring.io/spring-cloud-static/spring-cloud.html#_the_bootstrap_application_context )

所以我的项目看起来像这样:

/src/main/resources/bootstrap.properties

pom.xml

请注意,我还公开了 AWS_REGION 环境变量,这是要克服的第一个障碍。我正在运行 Java 8,并且可以复制从 Eclipse 和命令行 Maven 运行的以下行为。

在启动时,我得到这个堆栈跟踪:

我是否应该期望这个模块能够看到 bootstrap.properties 中的属性?我还应该如何为引导上下文提供属性?

0 投票
1 回答
332 浏览

amazon-web-services - 无法将数据从 AWS Kinesis 存档到 Glacier

我正在开发一个在 EC2 上作为 Web 服务托管的数据处理应用程序,每秒生成一个 .csv 格式的小数据文件(小于 10KB)。

问题陈述: 将生成的所有数据文件存档到 Amazon Glacier。

我的方法: 因为数据文件非常小。我将文件存储在 AWS Kinesis 中,几个小时后,我将数据刷新到 S3(因为我找不到将数据从 Kinesis 放入 Glacier 的直接方法)并在一天结束时使用 S3 生命周期管理将所有对象存档到 Glacier .

我的问题:

  1. 有没有办法直接从 Kinesis 将数据传输到 Glacier?

  2. 是否可以将 Kinesis 配置为在一天结束时将数据刷新到 S3/Glacier?Kinesis 可以保存数据是否有任何时间或内存限制?

  3. 如果 Kinesis 无法直接将数据传输到 Glacier。有没有类似的解决方法 - 我可以编写一个 lambda 函数来从 Kinesis 获取数据并将其存档到 Glacier 吗?

  4. 是否可以在 Kinesis 或 S3 或 Glacier 级别合并所有 .csv 文件?

  5. Kinesis 适合我的用例吗?还有什么我可以使用的吗?

如果有人能花时间回答我的问题并指出一些参考资料,我将不胜感激。请让我知道我的方法是否存在缺陷,或者是否有更好的方法。

谢谢。

0 投票
0 回答
265 浏览

java - Transfer Manager 上的 Amazon SDK 自定义标头问题

我们正在尝试使用 TransferManager 从 Amazon S3 下载文件。但是 TransferManager 在 doDownload 函数中多次使用 getObjectMetadata 服务。并通过从我提供的初始请求中复制普通成员来调用这些服务来创建请求。

问题是我添加了一些自定义标头,包括授权标头。getObjectMetadata 需要该标头。所以我必须修改一些 sdk 类。

AmazonS3Client.java

RequestCopyUtils.java

对我来说,这似乎是一个错误。但是有什么合适的解决办法吗?

问候

0 投票
2 回答
3247 浏览

java - AWS Amazon S3 Java SDK - 在上传大文件时刷新凭证/令牌

我正在尝试将一个大文件上传到使用令牌的服务器,并且令牌在 10 分钟后过期,所以如果我上传一个小文件,它将起作用,因此如果文件大,我会遇到一些问题并会尝试在访问被拒绝时永久上传

所以我需要刷新BasicAWSCredentials中的令牌,而不是用于AWSStaticCredentialsProvider因此我不确定我该怎么做,请帮助=)

值得一提的是,我们使用本地服务器(不是亚马逊云)提供令牌,为了方便我们使用亚马逊的代码。

这是我的代码:

0 投票
1 回答
682 浏览

java - Amazon S3 AWS SDK [Java] - MultiPart Upload 如何在 http 响应中获取自定义标头?

使用 TransferManager 时如何从服务器响应访问自定义标头?

我们在服务器的响应中添加了一个自定义标头,从客户端我们使用带有默认传输管理器的多部分上传

有什么建议我怎么能把它连接起来?

所以基本上我想传递return response.getAwsResponse();类中找到的响应:AmazonS3Client关于方法

该响应将具有来自服务器的 HTTP 响应,其中包含我所追求的自定义石南花,基本上是在文件 100% 完成时发回的唯一 ID,因此我无法对其进行操作。

我需要将这个自定义标头从响应传递到我使用传输管理器和upload.waitForCompletion()的一开始,我也不想编辑亚马逊的,

那么有谁知道是否有接口或其他对象可以让我访问它?

0 投票
1 回答
458 浏览

amazon-web-services - 使用 Java SDK 查询 AWS SQS 队列 URL

适用于 SQS 的 AWS Java 开发工具包的大多数操作都需要队列 URL。

给定队列名称,可以使用GetQueueUrl操作查询队列 url。

AmazonSQS客户端自动缓存此操作的结果,还是由应用程序缓存队列 url 以避免重复查询?

0 投票
2 回答
2302 浏览

amazon-web-services - 从java连接到AWS RDS而不暴露密码

我成功地能够像任何其他数据库连接一样连接到 RDS。我使用 spring jpa 数据(存储库)对 postgres db 进行 CRUD 操作。目前我在属性文件中提供了 db url 和凭证

但是,在连接到生产或预生产时,这不是一个选项。这里的最佳做法是什么。AWS 是否提供任何内置机制来从端点读取这些详细信息,例如访问 S3 的情况?

我的意图不是公开密码。

0 投票
0 回答
225 浏览

amazon-web-services - 如何为 Java SDK 查询执行指定 Athena 查询结果文件的 Content-Type?

我正在从我的 Lambda 执行查询,类似于文档中提供的示例:

正如预期的那样,在包含所选行的结果存储桶中创建了一个 csv 文件。它的内容类型是二进制/八位字节流。有什么方法可以让 Athena 创建带有 text/plain 类型的文件?

0 投票
3 回答
407 浏览

kubernetes - Kubernetes 的 Sagemaker 证书问题

我创建了一个通过 java sdk 使用 Sagemaker 的 docker 容器。该容器部署在具有多个副本的 k8s 集群上。

该容器正在向 Sagemaker 发出简单请求,以列出我们已经训练和部署的一些模型。但是,我们现在遇到了一些 java 证书的问题。我对 k8s 和证书非常陌生,所以如果您能提供一些帮助来解决这个问题,我将不胜感激。

以下是尝试列出端点时日志中的一些跟踪: