【问题标题】:Find the terminated EC2 instances count查找终止的 EC2 实例计数
【发布时间】:2021-10-28 21:31:00
【问题描述】:

有没有办法找到所有地区在过去 1/2/3/4/5 或 6 个月内启动的 EC2 实例的数量? (运行和终止)。 从下面类似的问题中,我只能获得当前状态(运行|停止|终止),但不能获得过去几个月的任何信息。 How to see all running Amazon EC2 instances across all regions?

请指教。这纯粹是出于审计目的。 提前致谢。

【问题讨论】:

  • 如果你有turned on AWS Config那么你可以获取历史信息。或者,也许来自您的历史结算数据。

标签: amazon-web-services amazon-ec2 aws-cli ec2-api-tools


【解决方案1】:

AWS CloudTrail 通过在您的 AWS 账户中提供活动历史记录,让您更轻松地确保遵守内部政策和监管标准。

如果您启用了 CloudTrail,AWS 可以选择查看事件历史记录。请浏览此AWS page 以查看清晰的说明。

如果您喜欢使用 AWS CLI,this documentation 会提供所有详细信息。

【讨论】:

    【解决方案2】:

    我建议结合存储在 S3 和 Athena 中的 CloudTrail 日志来执行查询。单独使用 CloudTrail 的问题在于,在日志滚动之前您有 3 个月的时间窗口。您的要求最长可达六个月。

    要将日志文件传送到 S3 存储桶,CloudTrail 必须具有所需的权限,并且不能将其配置为 Requester Pays 存储桶。当您在 CloudTrail 控制台中创建或更新跟踪时创建 Amazon S3 存储桶时,CloudTrail 会自动将所需权限附加到存储桶。

    要设置 Athena,您可以通过 CloudTrail 控制台进行配置:

    1. https://console.aws.amazon.com/cloudtrail/ 打开 CloudTrail 控制台
    2. 在导航窗格中,选择事件历史记录。
    3. 选择创建 Athena 表。
    4. 对于存储位置,使用向下箭头选择存储日志文件以供跟踪查询的 Amazon S3 存储桶。
    5. 选择创建表。该表是使用包含 Amazon S3 存储桶名称的默认名称创建的。

    然后你可以在 Athena 中运行类似这样的查询:

    SELECT eventname,
         useridentity.principalid,
         awsregion,
         eventtime
    FROM cloudtrail_logs
    WHERE eventtime >= '2021-02-01T00:00:00Z'
        AND eventtime < '2021-08-30T00:00:00Z'
        AND (eventname ='RunInstances')
    

    参考文献

    Create S3 Bucket Policy for CloudTrail
    Query CloudTrail logs with Athena
    Athena Search CloudTrail Logs

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2021-08-25
      • 2018-04-18
      • 2012-05-19
      • 2016-05-13
      • 2016-12-03
      • 1970-01-01
      • 1970-01-01
      • 2014-05-16
      相关资源
      最近更新 更多