标签: aws-cli

如何仅列出实例 ID 和相关标签

我使用 CLI 工具,我只想列出实例的实例 ID 和相关标签。我使用的命令是 ec2-describe 实例。我尝试了某些过滤器,但没有任何效果。

有人可以帮忙吗??

错误 :

./Instance_Audit.sh: line 24: $: command not found
./Instance_Audit.sh: line 25: syntax error near unexpected token `do'
./Instance_Audit.sh: line 25: ` do echo $ID ; echo $(aws ec2 describe-instances  --query "Reservations[].Instances[?InstanceId==\`$ID\`].Tags[]") done'
Run Code Online (Sandbox Code Playgroud)

amazon-ec2 amazon-web-services aws-cli

6
推荐指数
2
解决办法
7235
查看次数

通过 aws CLI 删除默认 VPC

启动新账户时,Amazon 会创建一个新的默认 VPC,其中包含 3 个子网、1 个安全组、1 个 ACL 和 1 个互联网网关。我想删除默认的 vpc 和与之关联的对象。我可以通过控制台来做到这一点,但我想通过 aws cli 来实现这一点,但我被卡住了。

当我尝试以下命令时:

aws ec2 delete-vpc --vpc-id $VpcId
Run Code Online (Sandbox Code Playgroud)

控制台返回 DependencyViolation 错误:

调用DeleteVpc操作时出现客户端错误(DependencyViolation):vpc 'vpc-13f53076'有依赖关系,无法删除。

所以我试图删除依赖项,但它并不适用于所有人!

  • 对于互联网网关,我遇到了同样的错误:

    调用 DeleteInternetGateway 操作时发生客户端错误 (DependencyViolation):internetGateway 'igw-d0f51bb5' 具有依赖关系,无法删除。

  • 对于默认安全组。我收到以下错误:

    调用DeleteSecurityGroup操作时出现客户端错误(CannotDelete):指定组:“sg-acca7bc”名称:“default”不能被用户删除

  • 对于默认 ACL,我收到以下错误:

    调用DeleteNetworkAcl操作时出现客户端错误(InvalidParameterValue):无法删除默认网络ACL acl-d3ba77b6

这是一个新账户,之前没有创建任何东西,除了亚马逊创建的默认 vpc。任何在正确方向上的帮助或指示将不胜感激。

amazon-ec2 amazon-web-services amazon-vpc aws-cli

6
推荐指数
2
解决办法
4996
查看次数

CLI 将数据放入 AWS Firehose

AWS Firehose 于今天发布。我正在尝试使用它并试图弄清楚如何使用 AWS CLI 将数据放入流中。我有一个简单的 JSON 负载和相应的 Redshift 表,其中包含映射到 JSON 属性的列。我尝试了各种组合,但似乎无法通过 cli 传入 JSON 有效负载。

我试过的:

aws firehose put-record --delivery-stream-name test-delivery-stream --record '{ "attribute": 1 }'

aws firehose put-record --delivery-stream-name test-delivery-stream --record { "attribute": 1 }

aws firehose put-record --delivery-stream-name test-delivery-stream --record Data='{ "attribute": 1 }'

aws firehose put-record --delivery-stream-name test-delivery-stream --record Data={ "attribute": 1 }

aws firehose put-record --delivery-stream-name test-delivery-stream --cli-input-json '{ "attribute": 1 }'

aws firehose put-record --delivery-stream-name test-delivery-stream --cli-input-json { "attribute": 1 }
Run Code Online (Sandbox Code Playgroud)

我看过没有帮助的 cli 帮助。 …

amazon-web-services aws-cli amazon-kinesis-firehose

6
推荐指数
2
解决办法
5871
查看次数

如何重命名 ec2-instance 名称

我想使用 cli 重命名 100 个 ec2 实例怎么做?

这将显示所有实例名称:

aws ec2 describe-instances --filters "Name=tag:productionpriority,Values=productionpriority" --query 'Reservations[].Instances[].[ [Tags[?Key==`Name`].Value][0][0],PublicIpAddress, PrivateIpAddress, InstanceId, InstanceType, Placement.AvailabilityZone]'
Run Code Online (Sandbox Code Playgroud)

但是如何修改实例名称,即用新名称替换旧名称?

amazon-ec2 amazon-web-services aws-cli

6
推荐指数
1
解决办法
4393
查看次数

requestParameters 返回“指定的映射表达式无效:true”

我正在配置 lambda 函数的 API 网关与Serverless Framework 0.4.2 版的集成。

我的问题是定义端点的请求参数。API 网关条目的AWS 文档说:

请求参数

表示 Amazon API Gateway 可以接受的请求参数。请求参数表示为键/值映射,源作为键,布尔标志作为值。布尔标志用于指定是否需要该参数。源必须与模式 method.request.{location}.{name} 匹配,其中 location 是查询字符串、路径或标头。name 是有效的唯一参数名称。此处指定的源可用于集成以映射到集成请求参数或模板。

据我了解, 中的配置s-function.json直接提供给 AWS CLI,因此我以以下格式指定了请求参数: "method.request.querystring.startYear": true. 但是,我收到一个Invalid mapping expression specified: true错误。我也尝试将配置指定为"method.request.querystring.startYear": "true"相同的结果。

s-function.json

{
    "name": "myname",
    // etc...
    "endpoints": [
        {
            "path": "mypath",
            "method": "GET",
            "type": "AWS",
            "authorizationType": "none",
            "apiKeyRequired": false,
            "requestParameters": {
                "method.request.querystring.startYear": true,
                "method.request.querystring.startMonth": true,
                "method.request.querystring.startDay": true,
                "method.request.querystring.currentYear": true,
                "method.request.querystring.currentMonth": true,
                "method.request.querystring.currentDay": true, …
Run Code Online (Sandbox Code Playgroud)

amazon-web-services aws-cli aws-api-gateway serverless-framework

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

我的 AWS CLI 无法使用 sudo

我有shell脚本,用途aws cli,我的脚本将被使用sudo执行(例如:sudo ./test.sh

但我收到了消息: Unable to locate credentials. You can configure credentials by running "aws configure".

其实,我并配置了两个sudo aws configureaws configure

我做错了什么?请帮忙。谢谢!

shell aws-cli

6
推荐指数
2
解决办法
6270
查看次数

我的描述负载均衡器查询未返回负载均衡器的完整列表

当我运行以下命令时:

aws elb describe-load-balancers --query 'LoadBalancerDescriptions[*].LoadBalancerName'
Run Code Online (Sandbox Code Playgroud)

尽管我的帐户中有超过 200 个负载均衡器,但我在输出中只得到 19 个负载均衡器。为什么会发生这种情况?

load-balancing amazon-web-services aws-cli

6
推荐指数
1
解决办法
1205
查看次数

获取 AWS S3 存储桶的 CLI 配置

我想查看 S3 存储桶的现有配置,以便我可以在各种情况下出于自己的目的窃取和调整它。但是,我没有看到我期望的选项:

aws s3api describe-bucket --bucket BucketName 
Run Code Online (Sandbox Code Playgroud)

类似于确实存在的 EMR 描述集群选项:

aws emr describe-cluster --cluster-id j-1PGB1J30TZHQF
Run Code Online (Sandbox Code Playgroud)

amazon-s3 amazon-web-services aws-cli

6
推荐指数
1
解决办法
6822
查看次数

如何修复:“AccessDeniedException:您位于 ap-southeast-1,但您的目录区域是 us-east-1。请使用 us-east-1 作为区域。”

我正在尝试 aws Quicksight 入门教程: https://docs.aws.amazon.com/quicksight/latest/user/embedded-dashboards-with-iam-setup-step-3.html

我即将使用

     aws quicksight register-user --aws-account-id XXXXXXXXX --namespace 
     default --identity-type IAM --iam-arn 
     "arn:aws:iam::XXXXXXXXX:role/qsembed" --user-role READER --session-name 
     "XXXXXXXXX@XXXXXXXXX.com" --email XXXXXXXXX@XXXXXXXXX .com --region ap- southeast-1
Run Code Online (Sandbox Code Playgroud)

然而我受到打击

“调用 RegisterUser 操作时发生错误 (AccessDeniedException):您位于 ap-southeast-1,但您的目录区域是 us-east-1。请使用 us-east-1 作为区域。”

Quicksight 和主要 AWS 账户均位于新加坡 (ap-southeast-1)。似乎没有文档可以解决这个问题

非常感谢帮助

amazon-web-services aws-cli amazon-quicksight

6
推荐指数
1
解决办法
2554
查看次数

aws s3 cli 与实时观看文件夹同步

jsondata当本地文件夹发生更改时,bash 命令将持续监视文件夹并与 s3 同步该文件夹。

现在我正在运行此命令,但它没有 -watch 标志。

aws s3 sync jsondata s3://mybucket/jsondata/
Run Code Online (Sandbox Code Playgroud)

unix bash amazon-s3 aws-cli

6
推荐指数
1
解决办法
5811
查看次数