インフラエンジニアの隙間時間 Infrastructure Engineer's Spare Time

2025.11.04

【AWS】[AWSCLI] エビデンス取得効率化コマンド一覧

概要

変更作業等のエビデンス取得を画面キャプチャでやっていると、下記の課題があると思います。

・面倒くさい ・キャプチャは変更の全量がとれない ・変更箇所以外を変更していないエビデンスがない

っていうのをAWS CLIでテキスト出力して楽ちんする方法です。

使い方は、作業前と作業後をテキスト出力して、diff結果から変更箇所を確認。 エビデンス取る方も確認する方も楽ができて効率UP!!

AWS CLI

コンポーネント 項目 用途 コマンド
EC2 AMI AMI一覧取得 aws ec2 describe-images \
  --region ap-northeast-1 \
  --owners self \
  --query 'reverse(sort_by(Images,&CreationDate)[].{ImageId:ImageId, CreationDate:CreationDate})' \
  --output table
EC2 スナップショット スナップショット一覧取得 aws ec2 describe-snapshots \
--region ap-northeast-1 \
--owner-ids self \
--query 'reverse(sort_by(Snapshots,&StartTime)[].{SnapshotId:SnapshotId,StartTime:StartTime})' \
--output table
EC2 EBS EBS一覧取得 aws ec2 describe-volumes --output table \
--query 'Volumes[*].{ID:VolumeId, State:State, Type:VolumeType, Size:Size, Iops:Iops, Throughput:Throughput}'
EC2 EBS EBS一覧取得
(インスタンス情報もつける)
aws ec2 describe-volumes --output table \
--query 'Volumes[*].{ID:VolumeId, State:State, Type:VolumeType, Size:Size, Iops:Iops, Throughput:Throughput,InstanceId:Attachments[0].InstanceId,InstanceName:Tags[0].Value}'
EC2 EBS EBS設定変更の進行状況 aws ec2 describe-volumes-modifications --output table \
--query 'VolumesModifications[*].{ID:VolumeId, State:ModificationState, Progress:Progress, StartTime:StartTime}'
EC2 ENI VPCフローログ一覧取得 aws ec2 describe-flow-logs --output table \
--query 'FlowLogs[*].{FlowLogId:FlowLogId, ResourceId:ResourceId, LogGroupName:LogGroupName, LogDestinationType:LogDestinationType, LogDestination:LogDestination}'
ELB ALBリスナールール リスナールール一覧の取得 aws elbv2 describe-rules \
--listener-arn #ELBのリスナーarn# \
--query 'Rules[].{Priority: Priority, RuleArn: RuleArn}'
--output=table
S3 バケット バケット一覧取得 aws s3 ls
S3 ライフサイクルポリシー ライフサイクルポリシーの取得 aws s3api get-bucket-lifecycle-configuration --bucket #バケット名#
S3 バケットポリシー バケットポリシーの取得 aws s3api get-bucket-policy --bucket #バケット名# \
--query Policy --output text
S3 アクセスログ アクセスログ設定の取得 aws s3api get-bucket-logging --bucket #バケット名#
IAM IAM ポリシー IAM ポリシーの取得 aws iam get-policy-version \
--version-id #対象ポリシーのバージョン# \
--policy-arn #対象ポリシーのARN# \
--query 'PolicyVersion.Document'
SQS SQSキュー sqs キューの取得 for QueueUrl in \$(aws sqs list-queues --query "QueueUrls[]" --output text);
do
aws sqs get-queue-attributes --queue-url "$QueueUrl" --attribute-names All
done
Lambda Lambda 関数 Lambda 関数コードの取得 func="#Lambda関数名#"
url=\$(aws lambda get-function --function-name ${func} | jq -r '.Code.Location')
curl -o lambda.zip $url
Lambda Lambda 関数 function一覧の取得 aws lambda list-functions --output table \
--query 'sort_by(Functions, &FunctionName)[*].{FunctionName:FunctionName, FunctionArn:FunctionArn, Runtime:Runtime, LastModified:LastModified}'
VPC ルートテーブル ルートテーブルの取得 aws ec2 describe-route-tables \
--route-table-ids #ルートテーブルのID# \
--output json
VPC TGW TGW attachmentsの一覧取得 aws ec2 describe-transit-gateway-attachments
VPC TGW TGW route-table-associationsの一覧取得 aws ec2 get-transit-gateway-route-table-associations --transit-gateway-route-table-id #TGW route tableのID# --output table
VPC TGW TGW route-table-propagationsの一覧取得 aws ec2 get-transit-gateway-route-table-propagations --transit-gateway-route-table-id #TGW route tableのID# --output table
VPC TGW TGW 全route-tableの一覧取得 aws ec2 search-transit-gateway-routes --transit-gateway-route-table-id tgw-rtb-0f486b7edea1ee8e2 --filters "Name=state,Values=active,blackhole"
ResourceAccessManager principals principalsの一覧取得 aws ram list-principals --resource-owner SELF --resource-type #任意のリソースタイプ#
cloudwatch cwlogs ログの抽出 awslogs get #ロググループ名# \
--start='DD/MM/YYYY HH:MM' \
--end='DD/MM/YYYY HH:MM' > #出力先のファイル名.csv#
cloudwatch CWアラーム CWアラーム一覧の取得 aws cloudwatch describe-alarms | jq '.MetricAlarms | map({AlarmName: .AlarmName, AlarmActions: .AlarmActions}) | sort_by(.AlarmName)'
cloudfront ディストリビューション ディストリビューション一覧取得 aws cloudfront list-distributions
acm 証明書 証明書一覧取得 aws acm list-certificates

記事一覧に戻る