Upgrade to Pro — share decks privately, control downloads, hide ads and more …

【JAWS DAYS 2026】Kiro CLIで変わるAWS運用とコスト管理

Sponsored · Your Podcast. Everywhere. Effortlessly. Share. Educate. Inspire. Entertain. You do you. We'll handle the rest.
Avatar for Hiroki Ohtake Hiroki Ohtake
March 06, 2026
120

【JAWS DAYS 2026】Kiro CLIで変わるAWS運用とコスト管理

JAWS DAYS 2026 ランチタイムLT トラックE
「Kiro CLIで変わるAWS運用とコスト管理」
https://fortee.jp/jawsdays-2026/proposal/b4f86a49-2275-4bba-a7ec-87b5e91b6033

Avatar for Hiroki Ohtake

Hiroki Ohtake

March 06, 2026
Tweet

Transcript

  1. JAWS DAYS 2026 
 Mashup for the Future 
 Kiro

    CLIで変わる 
 AWS運用とコスト管理 
 アイレット株式会社 大嵩 洋喜

  2. #jawsug #jawsdays2026 #jawsdays2026_a 自己紹介
 名前:大嵩 洋喜(おおたけ ひろき) 
 
 アイレット株式会社


    クラウドインテグレーション事業部
 
 2023年 4月 23新卒として入社
 AWSの運用保守・構築を担当
 
 趣味:
 音楽(メタル)、ドラム、ゲーム(FPS)、映画
 @rockyx0609

  3. #jawsug #jawsdays2026 #jawsdays2026_a • Kiro CLIとは
 • Amazon EC2が高負荷時の調査
 •

    AWSアカウントのコスト最適化アプローチ
 • まとめ
 アジェンダ

  4. #jawsug #jawsdays2026 #jawsdays2026_a • CPU負荷シミュレーションのため「stress-ng」を使用する
 • 2分間全コアに負荷をかけCPU使用率100%を維持する
 • stress-ng --cpu

    0 --timeout 120s
 • メトリクスを元にKiro CLIから原因調査を行う
 • ターミナルの環境変数にAWS認証情報が入っていること
 前提
 Amazon EC2が高負荷時の調査

  5. #jawsug #jawsdays2026 #jawsdays2026_a > EC2インスタンス(otake-test-jawsdays)のCPU使用率が2分間急激に上がりました。原因を詳しく調べてくだ さい
 ~割愛~
 
 > 現在稼働中のインスタンスID

    i-XXXX が見つかりました。過去2分間のCPU使用率を確認します。
 Running aws cli command (using tool: aws):
 
 Service name: cloudwatch
 Operation name: get-metric-statistics 
 Parameters: 
 - statistics: ["Average","Maximum"]
 - dimensions: [{"Name":"InstanceId","Value":"i-XXXX"}]
 - period: 60
 - metric-name: "CPUUtilization "
 - namespace: "AWS/EC2"
 - start-time: "2026-02-11T05:00:00Z"
 - end-time: "2026-02-11T05:30:00Z"
 - unit: "Percent"
 Region: ap-northeast-1
 Label: CPU使用率メトリクスの取得(過去30分) - Completed in 0.855s
 
 プロンプトを投げてみる
 Amazon EC2が高負荷時の調査

  6. #jawsug #jawsdays2026 #jawsdays2026_a > CPU使用率の急上昇を確認しました。05:15(14:15 JST)に最大99.99%まで上昇しています。さらに詳 細な調査のため、CloudWatch Logsとシステムログを確認します。
 
 Running

    aws cli command (using tool: aws):
 
 Service name: logs
 Operation name: describe-log-groups
 Parameters: 
 - log-group-name-prefix: "/aws/ec2"
 Region: ap-northeast-1
 Label: CloudWatch Logsグループの確認Running aws cli command (using tool: aws):
 
 Service name: ssm
 Operation name: send-command 
 Parameters: 
 - instance-ids: ["i-054f3fccdbcdb7315"]
 - parameters: {"commands":["ps aux --sort=-%cpu | head -20","uptime","free -h","df -h "]}
 - document-name: "AWS-RunShellScript"
 Region: ap-northeast-1
 Label: Systems Managerでプロセス情報を取得
 Allow this action? Use 't' to trust (always allow) this tool for the session. [y/n/t]:
 
 Amazon EC2が高負荷時の調査

  7. #jawsug #jawsdays2026 #jawsdays2026_a > 現在のシステム状態は正常です。過去のログを確認するため、journalログとシステム イベントを調査します。
 Running aws cli command

    (using tool: aws):
 
 Service name: ssm
 Operation name: send-command
 Parameters: 
 - parameters: {"commands":["journalctl --since '2026-02-11 05:14:00' --until '2026-02-11 05:17:00' | tail -100","last -20","cat /var/log/messages | grep -i 'Feb 11 05:1[4-6]' | tail -50 || echo 'No /var/log/messages'","cat /var/log/syslog | grep -i 'Feb 11 05:1[4-6]' | tail -50 || echo 'No /var/log/syslog'","systemctl list-units --state=failed"]}
 - document-name: "AWS-RunShellScript"
 - instance-ids: ["i-054f3fccdbcdb7315"]
 Region: ap-northeast-1
 Label: 過去のシステムログとCPU高負荷時のプロセス情報を取得
 Allow this action? Use 't' to trust (always allow) this tool for the session. [y/n/t]:
 Amazon EC2が高負荷時の調査

  8. #jawsug #jawsdays2026 #jawsdays2026_a > ## 調査結果
 
 ### 原因
 stress-ng

    というCPU負荷テストツールが実行されました。
 
 ### 詳細情報
 
 実行時刻: 2026-02-11 05:16:49 UTC(14:16:49 JST)
 
 実行コマンド: 
 stress-ng --cpu 0 --timeout 120s 
 
 ### 結論
 
 これは意図的なCPU負荷テストです。ec2-userによって手動で実行され、2分間のタイムアウト設 定通りに自動終了しました。現在システムは正常稼働しており
 、問題はありません。
 
 stress-ngは負荷テストやストレステストに使用される正規のツールで、システムの性能評価やモ ニタリングアラートのテストなどに利用されます。
 Amazon EC2が高負荷時の調査

  9. #jawsug #jawsdays2026 #jawsdays2026_a > AWS利用料の最適化を行いたいです。リソース情報から調査してください。また設 定変更等は絶対に行わないでください。
 
 > AWS利用料の最適化のため、現在のリソース状況を調査します。設定変更は一切 行いません。


    Running aws cli command (using tool: aws):
 
 Service name: ec2
 Operation name: describe-instances
 Parameters: 
 Region: ap-northeast-1
 Label: EC2インスタンス一覧の取得Running aws cli command (using tool: aws):
 ~割愛~
 同様にプロンプトを投げてみる
 セクションタイトル

  10. #jawsug #jawsdays2026 #jawsdays2026_a ### 1. 停止中のEC2インスタンス(コスト削減機会)
 
 停止中でもEBSボリューム料金が発生しているインスタンス:
 
 -

    **i-XXXX** (t2.micro, Windows, 30GB gp2) 
 - 停止期間: 2025/11/17以降
 - **i-XXXX** (t2.micro, Windows, 30GB gp2)
 - 停止期間: 2025/5/2以降
 - **i-XXXX** (t3.large, Windows, 30GB gp2)
 - 停止期間: 2026/1/14以降
 - **i-XXXX** (t3.small, Linux, 8GB gp3)
 - 停止期間: 2026/1/8以降
 
 ~割愛~
 
 セクションタイトル
 リソース単位で出してくれる

  11. #jawsug #jawsdays2026 #jawsdays2026_a ## 推定月額コスト削減額
 
 1. 停止中EC2のEBS削除: 約$50-100/月
 2.

    停止中RDS削除: 約$200-400/月
 3. 不要なNAT Gateway削除: 約$120-160/月
 4. 古いスナップショット削除: 約$20-50/月
 5. gp2→gp3移行: 約$10-20/月
 6. 未使用EIP解放: 約$10-20/月
 
 合計推定削減額: 約$410-750/月(年間$4,920-9,000)
 セクションタイトル
 最終的なサマリーも出してくれます

  12. #jawsug #jawsdays2026 #jawsdays2026_a > 調査結果をMarkdownファイルにしてください
 
 > 調査結果をMarkdownファイルとして保存します。
 I'll create

    the following file: /Users/otake/aws-cost-optimization-report.md (using tool: write)
 Purpose: AWS利用料最適化調査レポートをMarkdownファイルとして作成
 ~割愛〜
 
 
 ❯ ls -l | grep aws-cost-optimization-report.md 
 -rw-r--r--@ 1 otake 339809989 8322 2 11 14:40 aws-cost-optimization-report.md
 セクションタイトル
 ファイルへの保存も可能!