SLI(サービスレベル指標)(エスエルアイ)

SLI(サービスレベル指標)(エスエルアイ)

SLI(サービスレベル指標)(エスエルアイ)

英語表記: Service Level Indicator (SLI)

概要

SLI(サービスレベル指標)は、システムがユーザーに対して提供するサービスの品質や健全性を、客観的に測定し定量化するための主要なデータポイントです。信頼性工学(SRE)の活動において、主観的な評価を排し、サービスの目標達成度を監視するために不可欠な要素として位置づけられています。これにより、基盤となるハードウェアと、その上で稼働するソフトウェアの複雑な連携が生み出す「ユーザー体験」を、明確な数値として捉えることが可能になります。

詳細解説

SLIの目的と信頼性工学における役割

SLIの最大の目的は、サービスの「可観測性」を具体化することにあります。可観測性とは、システムの外部からの出力データを通じて、その内部状態をどれだけ正確に把握できるかという能力を指しますが、SLIはその能力を支える最も重要な測定項目です。

信頼性工学(SRE)の文脈において、SLIは次のステップであるサービスレベル目標(SLO)を設定するための基礎となります。SLOが「目指すべき目標」であるのに対し、SLIは「現在の実績」を示すデータそのものです。この実績データがなければ、目標達成に向けた改善活動や、許容可能な障害の範囲(エラーバジェット)を定めることはできません。

ハードウェアとソフトウェアの関係性におけるSLI

私たちのシステムは、サーバー、ネットワーク機器といった「ハードウェア」と、アプリケーションコードやOSといった「ソフトウェア」が組み合わさって動いています。SLIが測定するのは、この両者が連携した結果、最終的にユーザーに届けられるサービスの品質です。

例えば、Webサービスの応答時間を測る「レイテンシ」のSLIを考えてみましょう。このレイテンシは、サーバーのCPU処理速度(ハードウェアの性能)、データベースへのクエリ効率(ソフトウェアの設計)、ネットワークの遅延(ハードウェアとインフラ)など、多くの要因によって決まります。SLIを分析することで、もしレイテンシが悪化した場合、それがハードウェアの負荷限界によるものなのか、あるいはソフトウェアの非効率なコードによるものなのかを切り分ける手がかりを得ることができるのです。

このように、SLIは単なる技術的な指標ではなく、ハードウェアとソフトウェアの関係性を監視し、ライフサイクル全体を通じてサービスの信頼性を維持するための、運用上の「共通言語」として機能している点が非常に重要です。

主要なSLIの種類

SLIとして一般的に採用される指標には、以下のようなものがあります。これらの指標は、エンドユーザーの体験に直結するように設計されるべきです。

  1. レイテンシ(応答時間): リクエストを送信してから応答が返ってくるまでの時間です。特に、平均値だけでなく、上位の遅延(99パーセンタイルなど)を測定することが、一部のユーザーが体験する遅さを正確に把握するために不可欠です。
  2. エラー率: 失敗したリクエストや、予期せぬエラーが発生したトランザクションの割合です。例えば、HTTP 5xxエラーの発生頻度などが該当します。
  3. スループット: 単位時間あたりに処理できるリクエストやデータ量です。システムの処理能力の指標となります。
  4. 可用性(アベイラビリティ): システムが正常に稼働し、利用可能であった時間の割合です。これは「サービスが生きているか死んでいるか」を測る最も基本的な指標です。

これらのデータは、可観測性の三本柱の一つである「メトリクス」(時系列データ)として収集され、リアルタイムで監視されます。この監視を通じて、システムが目標とする信頼性を維持できているかを常にチェックし、問題が発生する前に対応する、というライフサイクル管理のサイクルが回るのです。

具体例・活用シーン

SLIは、私たちが日常的に利用するサービスにおいて、目に見えない形で信頼性を支えています。

1. サービスの健康診断としてのSLI

SLIは、システムにとっての「健康診断の数値」のようなものだと考えると非常に理解しやすいです。

例えば、あなたの健康状態(サービスの信頼性)をチェックする際、体温、血圧、心拍数といった具体的な数値(SLI)を測定します。単に「体調が良い」という主観的な感覚だけでは不確実ですが、体温が37.5℃を超えた(SLIが目標値を超えた)という事実があれば、客観的に「異常がある」と判断できます。

システム運用においても同様です。オペレーターが「サーバーは動いているから大丈夫だろう」と主観的に判断するのではなく、「過去5分間の決済APIのエラー率SLIが0.1%を超えた」という客観的なデータに基づいて、アラートを発報し、対応を開始するのです。この客観性こそが、信頼性工学の肝であり、SLIはそのスタートラインとなります。

2. ECサイトの決済成功率

  • SLIの定義: ユーザーが決済ボタンを押してから、システムが「成功」を返すまでのトランザクションのうち、実際に成功した割合。
  • 活用シーン: このSLIが99.9%を下回った場合、ただちに決済システム(ハードウェア、ネットワーク、ソフトウェア)に何らかの障害が発生していると判断できます。特にセール時など負荷が高い状況でこのSLIが悪化した場合、ハードウェアのリソース不足か、ソフトウェアのボトルネックかを迅速に特定するための分析が始まります。

3. 動画ストリーミングの体験品質

  • SLIの定義: 動画視聴中にバッファリング(読み込みによる一時停止)が発生した回数、またはバッファリング時間の割合。
  • 活用シーン: ユーザーは動画が途切れることに非常に敏感です。このSLIを測定することで、たとえサーバーが稼働していても、ネットワーク遅延や配信ソフトウェアの問題によって視聴体験が損なわれていないかを監視します。この指標は、ハードウェアの配信能力と、ソフトウェアのエンコード効率が密接に関わるため、両者の連携を評価するのに最適です。

資格試験向けチェックポイント

SLIは、ITパスポート試験の「マネジメント系」や、基本情報技術者試験、応用情報技術者試験の「ストラテジ系」および「マネジメント系」で、SREやサービスマネジメントの文脈で頻出します。

  • SLI、SLO、SLAの明確な区別:
    • SLI(指標): サービス品質を測定する具体的なデータ(例:応答時間)。
    • SLO(目標): SLIに対して設定する目標値(例:応答時間を99%で200ms以内にする)。
    • SLA(合意): 顧客と交わす契約レベル。SLOよりも緩やかに設定されることが多いです。この3つの関係性は必ず押さえてください。
  • 可観測性との関連: SLIは、可観測性の三要素(メトリクス、ログ、トレース)のうち、主に「メトリクス」(時系列データ)として扱われ、システムの健全性を数値で把握するために利用されます。この分類は重要です。
  • エラーバジェットの計算基盤: 信頼性工学では、SLOを達成できなかった場合に消費される「エラーバジェット」という概念がありますが、このバジェットの消費判定は、SLIの測定データに基づいて行われます。SLIがエラーバジェットの計算に不可欠であることを理解しておきましょう。
  • ユーザーフォーカス: SLIは内部的なサーバーの指標(CPU使用率など)ではなく、エンドユーザーが体験する品質に焦点を当てた指標である、という原則が出題されることがあります。

関連用語

SLIを理解するためには、それが組み込まれる信頼性工学のフレームワーク全体を把握することが重要です。

  • SLO(サービスレベル目標): SLIの測定結果に基づいて設定される、達成すべき具体的な目標値です。
  • SLA(サービスレベル合意): 顧客との間で取り交わされる、サービスの品質に関する正式な契約です。
  • エラーバジェット(Error Budget): SLOから許容される不具合の期間や回数を差し引いた、開発チームが「失敗しても許される範囲」を示す予算です。SLIがこの予算を消費しているか否かを決定します。
  • 可観測性(Observability): システムの状態を外部データから把握する能力。SLIは可観測性を実現する手段の一つです。

関連用語の情報不足

信頼性工学の文脈で、これらの用語がどのように連携して機能するかの具体的なフローチャートや事例が、読者の理解を深めるためにさらに必要だと感じます。特に、SLIの測定データがSLOの達成判定にどのように使われ、それがエラーバジェットの消費にどう影響し、最終的に開発・運用チームの行動(例:新機能開発を一時停止して信頼性向上に注力する)にどう繋がるかという連鎖的な情報が不足しています。この実践的な運用サイクルの理解こそが、応用情報技術者試験レベルでは問われる傾向にありますので、補強が必要です。

よかったらシェアしてね!
  • URLをコピーしました!
  • URLをコピーしました!

この記事を書いた人

両親の影響を受け、幼少期からロボットやエンジニアリングに親しみ、国公立大学で電気系の修士号を取得。現在はITエンジニアとして、開発から設計まで幅広く活躍している。

目次