小编kri*_*004的帖子

Auto Scaldown Cooldown 与健康检查宽限期的区别

AWS Autoscaling 有两个概念:

  • 冷却时间:来自 AWS 文档:冷却时间有助于确保您的 Auto Scaling 组在之前的扩展活动生效之前不会启动或终止其他实例。您可以根据您的实例预热期或其他应用程序需求配置时间长度。详细信息在这里
  • 健康检查宽限期:来自 AWS 文档:通常,刚投入使用的 Auto Scaling 实例需要预热才能通过健康检查。Amazon EC2 Auto Scaling 会等待运行状况检查宽限期结束,然后再检查实例的运行状况。详细信息在这里

但我无法弄清楚它们之间的区别。有人可以帮忙吗?

提前致谢。

amazon-web-services autoscaling

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

使用boto3列出超过100个堆栈

我们需要列出处于CREATE_COMPLETE状态的所有堆栈.在我们的AWS账户中,我们有超过400个这样的堆栈.我们为此编写了以下代码:

stack_session = session.client('cloudformation')
list_stacks = stack_session.list_stacks(StackStatusFilter=['CREATE_COMPLETE'])
Run Code Online (Sandbox Code Playgroud)

但是,这仅列出前100个堆栈.我们想知道如何获得所有堆栈?我们正在使用python boto3库.

python aws-cloudformation boto3

5
推荐指数
1
解决办法
1708
查看次数

无法使用 aws:PrincipalOrgID 创建订阅过滤器

我有一个启用了 Organizations 的 AWS 账户。我想确保来自我的子帐户的某些日志转到我的 Kinesis 流的日志记录帐户中。这个想法是,将来如果我在组织中创建一个新的子帐户,日志应该转到 Kinesis。

为此,我使用aws logs put-destination命令在我的日志记录帐户中创建了一个 Kinesis 日志目标。我向其添加了目的地策略。我使用的政策是:

{
    "Version": "2012-10-17",
    "Statement": {
        "Sid": "PutSubscriptionFilter",
        "Effect": "Allow",
        "Principal": {
            "AWS": ["*"]
        },
        "Action": "logs:PutSubscriptionFilter",
        "Resource": "arn:aws:logs:us-east-1:123456789012:destination:mytestLogDestination",
        "Condition": {
            "StringEquals": {
                "aws:PrincipalOrgID": "o-abcde12345"
            }
        }
    }
}
Run Code Online (Sandbox Code Playgroud)

我用来添加目标策略的命令是:

aws logs put-destination-policy \
    --destination-name mytestLogDestination \
    --access-policy file://destination_policy.json
Run Code Online (Sandbox Code Playgroud)

这成功添加了目标策略。我可以通过运行以下命令确认这一点:aws logs describe-destinations --destination-name-prefix mytestLogDestination。当我尝试使用以下命令在我的一个成员帐户中创建新的订阅过滤器时,它出错了。我试过的命令是:

aws logs put-subscription-filter \
    --log-group-name "/aws/lambda/GetOrgIdFunction" \
    --filter-name randomsubscriptionfilter --filter-pattern "" \
    --destination-arn arn:aws:logs:us-east-1:123456789012:destination:mytestLogDestination
Run Code Online (Sandbox Code Playgroud)

错误信息是:

调用 PutSubscriptionFilter 操作时发生错误 (AccessDeniedException):帐户 ID …

amazon-web-services amazon-cloudwatch amazon-cloudwatchlogs

4
推荐指数
1
解决办法
906
查看次数