この記事はSRE Advent Calendar 2024の19日目の記事です
SLI/SLOの運用をどんなに頑張ってもビジネス貢献してなくない?や99.99999999%達成しようが結局売り上げが変わらないみたいな話をたまに聞く。これについてのポエムです。
SLI/SLOはビジネスKPIと直接関係がないと意味がないのか?
これは個人的にはNoだと思っています。もちろんSLIにp95のレイテンシーがあってそれを改善することで売り上げが数%変わりみたいな話も聞きますしこのような相関があるとモチベーション的にも上がるので良いことはありそうです。一方でSLOを達成しようがしまいが売り上げに全く貢献しないSLI/SLOが無価値かというとそうではないと思います
SLI/SLOで見たいものはなんなのか
SLI/SLOの目的は「サービスの信頼性とユーザー体験を定量的かつ明確に管理・改善すること」です。そこにビジネスKPIが登場することもあれば、そうでないこともありますが、重要なのは「組織全体で同じ指標を見て意思決定に活用する」ことです。
たとえば、SLOをもとに現在のシステムが十分に健全であると確認できれば、新しい機能リリースや積極的な施策に取り組む自信が生まれます。一方で、SLO違反が頻発している場合にはリスクを抑えるための対応を優先するべきだという判断が下せます。このように、SLI/SLOは「攻め」と「守り」のバランスを取るための重要な指標です。
また、SLI/SLOが開発チームやSREだけの指標になっている場合、その効果は限定的です。ビジネス層も含めた組織全体が同じ指標を共有し、それに基づいて迅速に意思決定を行える体制が整ってこそ、本来の価値が発揮されます。
SREというロールがあるのならばまずはこの指標を組織全体で見るという方向へ持っていくのが大事なお仕事であると思っています。
なにをSLI/SLOにするか意思決定するのです
一般的なビジネス指標と同じく、SLIやSLOは受動的になにかから導かれて決定論的に”決まる”のではなく、相応の意志をもって能動的に”決める”ものという側面があります。なにがSLI/SLOに相応しいか判断するのではなく、なにをSLI/SLOにするか意思決定するのです。
この記事のこの部分がとても好きです。SLI/SLOの運用は、単なる測定やモニタリングの枠を超えた、自律的な目標設定とその達成へのコミットメントです。組織が自ら「どのような価値をユーザーに提供したいのか」を考え抜き、それを具体的な形に落とし込むプロセスこそが、SLI/SLOの本質だと思います。
「自分たちで決めて運用する」ということは、単に目標値を設定するだけではありません。それは、自らのサービスやプロダクトに対する理解を深め、ユーザーとの接点を見極め、限られたリソースの中で何を優先すべきかを決断することでもあります。そのためには、チーム全体が同じ方向を向き、共通の認識を持つことが重要です。
最後に
日曜朝のポエムでした。まとめみたいなのはないです。
おまけ
0ベースからのSREチームのOKRってなんだろうなぁと思ったのでメモ
- Objective
- SLI/SLOの運用プロセスを確立し、信頼性管理を組織文化に定着させる
- KR
- 組織/ステークホルダー全体で同一の指標を追っている状態にする
- SLO違反時のポストモーテムを標準化し、違反ごとに改善計画を提出して実行する割合を100%にする
- SLO違反が発生した場合の対応時間を平均で20%短縮する