You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何查询特定类型(t3.micro)EC2实例运行时长及类型变更时间

查询特定EC2实例类型的运行时长

AWS没有直接提供按实例类型筛选并返回运行时长的原生命令,但可以通过组合describe-instances和本地时间计算实现:

  • 第一步,筛选目标实例类型的实例及启动时间:
aws ec2 describe-instances --filters "Name=instance-type,Values=t3.micro" --query 'Reservations[*].Instances[*].[InstanceId, LaunchTime]' --output table
  • 第二步,自动计算运行时长(以小时为单位):
aws ec2 describe-instances --filters "Name=instance-type,Values=t3.micro" --query 'Reservations[*].Instances[*].[InstanceId, LaunchTime]' --output json | jq -r '.[] | .[] | "\(.[0]) \(.[1])"' | while read id launch; do
    launch_epoch=$(date -d "$launch" +%s)
    current_epoch=$(date +%s)
    runtime=$(( (current_epoch - launch_epoch) / 3600 ))
    echo "实例ID: $id,运行时长: $runtime 小时"
done

说明:需本地安装jq工具解析JSON;若使用macOS,date命令参数需调整为date -j -f "%Y-%m-%dT%H:%M:%SZ" "$launch" +%s

查询EC2实例类型上次变更时间的AWS CLI命令

实例类型变更操作会被AWS CloudTrail记录,可通过cloudtrail lookup-events命令查询:

  • 查询单个实例的类型变更历史:
aws cloudtrail lookup-events --lookup-attributes AttributeKey=ResourceName,AttributeValue=i-1234567890abcdef0 --event-name ModifyInstanceAttribute --query 'Events[*].[EventTime, CloudTrailEvent]' --output json | jq -r '.[] | select(.[1] | fromjson | .requestParameters.instanceType != null) | "\(.[0]) 实例类型变更为: \((.[1] | fromjson).requestParameters.instanceType)"'

替换命令中的i-1234567890abcdef0为目标实例ID,结果会返回所有类型变更的时间及对应实例类型,最新记录即为上次变更时间。

  • 批量查询t3.micro实例的类型变更历史:
for instance_id in $(aws ec2 describe-instances --filters "Name=instance-type,Values=t3.micro" --query 'Reservations[*].Instances[*].InstanceId' --output text); do
    echo "=== 实例 $instance_id 的类型变更历史 ==="
    aws cloudtrail lookup-events --lookup-attributes AttributeKey=ResourceName,AttributeValue=$instance_id --event-name ModifyInstanceAttribute --query 'Events[*].[EventTime, CloudTrailEvent]' --output json | jq -r '.[] | select(.[1] | fromjson | .requestParameters.instanceType != null) | "\(.[0]) 变更为: \((.[1] | fromjson).requestParameters.instanceType)"' || echo "无类型变更记录"
done

注意:需确保目标区域已开启CloudTrail,且查询事件在CloudTrail保留周期内(默认90天,如需更长时间需配置日志存储到S3)。

内容的提问来源于stack exchange,提问作者sr.m

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.28 00:22:48