100社のコスト診断から見えてきたもの
まずは株式会社DELTA 丹 哲郎氏による「100社のコスト診断から見えてきた、コスト削減の王道とケモノ道」の内容を紹介する。
株式会社DELTAは、CTOのための技術支援サービスを提供する企業。なかでもインフラコスト削減サービスは、削減額に応じた費用を支払う成果報酬型で、発注する側から見れば実質無料というユニークなサービスだ。2022年の創業以来、170社以上のコスト削減に取り組み、削減額の総額は年間で約1億5000万円、最大削減率は93%にも及ぶ。
その知見を活かして、丹氏が勧めるのは「コスト削減はお祭りムードで総力戦」で取り組むこと、つまり、プロダクトに関わるメンバー全員が参加し、楽しみながら、徹底的にインフラコストを削減しようということだ。「利用者全員がクラウド利用にオーナーシップを持つ」というFinOpsの原則にも沿った考え方である。
もちろん、基本的なコスト削減手法を実践することは重要だ。AWSであれば、AWS Cost ExplorerやAWS Cost & Usage Reportによる分析を起点に、ボトルネックになっているサービスから解消することや、AWS Well-Architected Toolによるコスト最適化のベストプラクティスを採用することなどが挙げられる。しかし、丹氏はあえて疑問を投げかける。
「でも、それだけでいいんだっけ?」
例えばAmazon Auroraのサイズがコストを圧迫しているとしたら、Reserved Instanceでコストを節約するのは本質的な対策ではないかもしれない。アプリケーション自体のアーキテクチャを見直すことで、抜本的にコストを削減できる可能性がある。そこに気づくためには、インフラエンジニアだけでなく、DBエンジニアやアプリエンジニアなどの、さまざまな視点が必要になる。だから、コスト削減はメンバー全員による「総力戦」なのだと、丹氏は繰り返す。
プロダクトメンバー全員で戦う「モブコスト分析」のススメ
そこで丹氏が勧めるのが、Billing and Cost ManagementやCost & Usage Reportを見ながら、プロダクトに関わるメンバー全員でディスカッションする「モブコスト分析」だ。ポイントとなるのは、メンバー全員が「こうやればいいんじゃない?」とコスト削減のアイディアを出すことと、「ドメインとアーキテクチャを繋げてみる」ことだと、丹氏は言う。
例えば、フロントエンドエンジニアなら、トラフィックが多い画面の当たりがつけられるかもしれない。カスタマーサポートなら、トラフィックが増えるユースケースを知っているかもしれない。インフラエンジニアはトラフィック削減のベストプラクティスを提供し、バックエンドエンジニアは、最適化が不十分な処理に気づくかもしれない。
プロダクトのどこでトラフィックが増えるかは、そのビジネスの特性に依存する。また、それぞれの職域に応じて、ユースケースやデータ構造など、知識や観測可能な範囲は異なる。このようなさまざまなドメインからの知恵を持ち寄り、解釈して、アーキテクチャと繋げて考えることが、根本的なコスト削減には欠かせないのだと、丹氏は強調する。
もう一つ丹氏が強調したのが「Elephant in the room」と恐れずに向き合うことだ。Elephant in the roomとは「見て見ぬふりをする」という慣用句だが、ここでは規模や重要度が大きすぎて、手入れしづらいシステムを指す。例えば、Auroraの巨大なインスタンスがあるとする。上位5%のクエリがこのインスタンスのパフォーマンスに影響があると分かれば、そこをチューニングすればコスト削減効果は大きい。アーキテクチャ、データ構造などのElephantから逃げずに削減に取り組むと、コスト削減に成功しやすいと、丹氏は言う。