标签: aws-cli

如何获取 Amazon S3 存储桶的大小?

我想绘制 Amazon S3 存储桶的大小(以字节为单位和项目数),并且正在寻找一种获取数据的有效方法。

s3cmd工具提供一种方式来获得使用总文件大小s3cmd du s3://bucket_name,但我担心它的能力,规模,因为它看起来像它获取每个文件的数据,并计算其自身的总和。由于亚马逊以 GB 月为单位向用户收费,因此他们不直接公开此值似乎很奇怪。

尽管Amazon 的 REST API 会返回存储桶中的项目数,但s3cmd似乎并未公开它。我可以做,s3cmd ls -r s3://bucket_name | wc -l但这似乎是一个黑客。

Ruby AWS::S3库看起来很有前途,但只提供了存储桶项目的数量,而不是总存储桶大小。

有没有人知道提供获取这些数据的方法的任何其他命令行工具或库(首选 Perl、PHP、Python 或 Ruby)?

disk-space-utilization amazon-s3 amazon-web-services aws-cli

362
推荐指数
11
解决办法
37万
查看次数

使用 aws cli 从 Amazon S3 下载时导致拒绝访问的原因是什么?

我真的在 AWS 中挣扎,试图找出我在这里遗漏了什么。我想这样做,以便 IAM 用户可以从 S3 存储桶下载文件 - 而不仅仅是将文件完全公开 - 但我的访问被拒绝。如果有人能发现发生了什么,我会被激怒。

到目前为止我所做的:

  • 创建了一个名为 my-user 的用户(例如)
  • 为用户生成访问密钥并将它们放在 EC2 实例上的 ~/.aws 中
  • 创建了一个我希望为我的用户授予访问权限的存储桶策略
  • 运行命令 aws s3 cp --profile my-user s3://my-bucket/thing.zip .

桶策略:

{
  "Id": "Policy1384791162970",
  "Statement": [
    {
      "Sid": "Stmt1384791151633",
      "Action": [
        "s3:GetObject"
      ],
      "Effect": "Allow",
      "Resource": "arn:aws:s3:::my-bucket/*",
      "Principal": {
        "AWS": "arn:aws:iam::111122223333:user/my-user"
      }
    }
  ]
}
Run Code Online (Sandbox Code Playgroud)

结果是A client error (AccessDenied) occurred: Access Denied虽然我可以使用相同的命令和默认(root 帐户?)访问密钥下载。

我也尝试添加用户策略。虽然我不知道为什么有必要,但我认为它不会受到伤害,所以我将它附加到了我的用户。

{
  "Statement": [
    {
      "Sid": "Stmt1384889624746",
      "Action": "s3:*",
      "Effect": "Allow",
      "Resource": "arn:aws:s3:::my-bucket/*"
    }
  ]
} …
Run Code Online (Sandbox Code Playgroud)

amazon-s3 aws-cli

60
推荐指数
4
解决办法
24万
查看次数

从 aws 证书管理器下载 SSL 证书

我正在使用 aws 证书管理器来管理 SSL。最近我购买了通配符 ssl*.example-private.com现在我需要该 SSL 证书才能在 aws 上的企业 git 实例上部署。

如何从aws下载ssl?

ssl ssl-certificate amazon-ec2 amazon-web-services aws-cli

49
推荐指数
4
解决办法
6万
查看次数

从 aws 命令行工具按名称搜索 ec2 实例

我有一个名为dev-server-03. 现在如何dev-server-*从命令行搜索所有实例?

我正在使用 aws cli 工具。

amazon-ec2 amazon-web-services aws-cli

45
推荐指数
2
解决办法
4万
查看次数

如何在 AWS CLI 中列出所有 VPC 依赖项?

我想通过 CLI 删除 VPC。但是得到一个错误:

A client error (DependencyViolation) occurred when calling the DeleteVpc operation: The vpc 'vpc-xxx' has dependencies and cannot be deleted.
Run Code Online (Sandbox Code Playgroud)

如何列出阻止我删除此 VPC 的所有依赖项?

command-line-interface amazon-web-services amazon-vpc aws-cli

24
推荐指数
3
解决办法
9154
查看次数

您将如何在特定 VPC 中使用 aws cli 列出带有标签名称、实例的私有 IP 地址和实例 ID 的实例?

我得到的最接近的是使用以下命令。

此命令设法列出所有实例名称。

aws ec2 describe-instances --filters Name=vpc-id,Values=vpc-e2f17e8b --query 'Reservations[].Instances[].Tags[?Key==`Name`].Value[]'
Run Code Online (Sandbox Code Playgroud)

此命令设法列出所有我不需要的私有 IP 地址、实例 ID 和所有标签。我只需要名字。

aws ec2 describe-instances --filters Name=vpc-id,Values=vpc-e2f17e8b | jq '.Reservations[].Instances[] | {PrivateIpAddress, InstanceId, Tags}'
Run Code Online (Sandbox Code Playgroud)

我不知道为什么我不能像这样执行命令:

aws ec2 describe-instances | jq '.["Reservations"]|.[]|.Instances|.[]|.PrivateIpAddress + " " + .InstanceId + " " + .Tags[?Key==`Name`].Value[]'
Run Code Online (Sandbox Code Playgroud)

此命令有效,但它显示所有标签键名称。

aws ec2 describe-instances | jq '.["Reservations"]|.[]|.Instances|.[]|.PrivateIpAddress + " " + .InstanceId + " " + .Tags'
Run Code Online (Sandbox Code Playgroud)

aws-cli

23
推荐指数
4
解决办法
7万
查看次数

在 Amazon S3 上递归更改给定扩展名的文件的内容类型

我有一个带有嵌套“文件夹”结构的大型 S3 存储桶,其中包含(除其他外)静态 .json 和 .md 文件。论文的文件正在由S3担任text/plain,而不是正确的application/jsontext/markdown

我已更新存储桶默认值,以便新上传的内容类型正确。

遍历“树”并更新匹配特定扩展名的文件的内容类型的最佳方法是什么?

amazon-s3 aws-cli

14
推荐指数
2
解决办法
1万
查看次数

是否可以根据其 IP 地址获取 aws ec2 实例 ID

我有 IP 地址列表,我想查找与该 IP 地址关联的实例是否仍在运行或终止。我每天都在启动和终止大量实例,只想从 puppetmaster 中删除它们的证书。

如果有任何替代方法,我可以实现我的目标,我可以做到。

puppet amazon-ec2 amazon-web-services puppetmaster aws-cli

13
推荐指数
2
解决办法
2万
查看次数

在AWS中,有什么方法可以查看子网中已分配的ip吗?

有什么方法可以查看 AWS 认为已在子网中分配的 IP 地址吗?我已经运行了 ping 扫描,并且检查了我们的内部 ip 管理软件,应该有超过 8 个 ip 可用,但是网络负载均衡器创建向导坚持认为我的可用 ip 少于 8 个。

如果我能看到亚马逊认为我们正在使用的 ips,那就太棒了,这样我就可以看到差异是什么,但我没有看到任何方法可以做到这一点。有人知道我该怎么做吗?它需要显示所有分配的 ip,而不仅仅是附加到 ec2 实例的 ip。

amazon-web-services amazon-vpc aws-cli

13
推荐指数
2
解决办法
4万
查看次数

2 个 ELB (ALB) 到 1 个目标组,可能吗?

我有以下方案:

Internet <-> elb1external <-> 清漆 <-> elb2internal <-> targetgroupofwebnodes

但是有些/static/*&直接从& 第二个 ELB附近/media/*路由到,所以我需要两者targetgroupofwebnodeselb1externalvarnishelb1&elb2指向同一目标 Web 节点组。

当我尝试从第二个 ELB 的下拉列表中选择它时,Amazon Web 控制台将该组显示为灰色,但我确实看到在 Web 上提到了该方案。

作为我创建的解决方法 targetgroupofwebnodes2了相同的服务器,但我只需要 1 个,下一个任务是自动缩放,因此将有一个自动缩放组而不是目标组。

我必须为此使用 CLI 还是有办法通过 Web 控制台?

amazon-ec2 amazon-web-services amazon-elb aws-cli

12
推荐指数
1
解决办法
9957
查看次数