CIコスト監査とは? パイプラインの無駄を見つけて削減する
CIコスト監査とは、パイプラインの費用がどこに使われているかを構造化してレビューするもので、請求額を推測するのではなく、無駄と具体的な節約を明らかにするために実施されます。
CIコストは、積み重なった小さな判断を通じて静かに増大します - ここでは過大なrunner、そこでは不安定なテスト、どこかでは冗長なtrigger。コスト監査は一歩下がって全体像を体系的に調べます。そしてCI支出の多くが無駄であるため、最初の監査ではほぼ必ず二桁パーセントの節約が見つかります。
監査で調べること
- チーム、repo、workflowごとの支出(コスト配分)。
- runnerのサイズとOSの選択と、jobが実際に必要とするものとの比較。
- cacheのヒット率とcold-startのオーバーヘッド。
- 不安定さによる再実行率と、二重請求される分数。
- 冗長な実行を引き起こすtriggerとmatrixの設定。
ステップ1: 支出を配分する
まずコストをチーム、repo、workflowにマッピングすることから始めます。これは通常、少数のpipelineが請求額の大部分を占めていることを明らかにします - これがレバレッジが最も高いターゲットです。
ステップ2: 無駄を狩る
コストの高いpipelineについて、過大なrunner、欠落または無効なcache、不安定な再実行、冗長なtriggerをチェックします。それぞれが既知の無駄パターンであり、既知の修正方法があります。
ステップ3: 機会を定量化する
各発見に数値を付けます: cacheによって節約される分数、適切なサイジングで取り戻すpremium、不安定さを安定させることで削減される再実行。/learn/github-actions-cost-calculator の計算ツールが、これらを月額のドルに換算するのに役立ちます。
ステップ4: 実行して再測定する
修正を適用し、その後再監査して節約が定着したことを確認し、リグレッションに注意します。コスト監査は一度きりのイベントではなく、繰り返す習慣として最も価値があります。
監査が見つける最大のレバー
監査は、分あたりのレート自体が最大の機会であるとしばしば結論づけます。監査対象のワークロードをLatchkeyのマネージドrunnerに移すと、GitHub-hostedと比べてレートが約70%削減され、自己修復が監査で指摘された不安定な再実行の無駄を取り除きます - これはしばしば単一で最大の項目です。
重要なポイント
- CIコスト監査とは、無駄と節約を見つけるための構造化されたレビューです。
- 配分、runnerのサイジング、cache、不安定さ、triggerを調べます。
- 最初の監査ではほぼ必ず二桁パーセントの節約が見つかります。