IT用語 システム開発

システムにおけるSLAとSLOの特徴と違いを解説!

システム開発を行う時やシステムサービスを利用する際に利用者(発注側)と提供者(受注側)との間でサービスにおける取り決めなどを契約しますが、取り決めの中で「SLA(えすえるえー)」というものも合意します。

SLAはシステム稼働後に重要になってきます。

そして、同じような言葉で「SLO」もありますので、今回はSLAとSLOの違いに関しても解説します。

SLA(えすえるえー)とは

SLA(Service Level Agreement)は日本語にすると「サービスレベル合意書」となりますが、これはサービス提供者とサービス利用者の間で「どのような内容のサービスを、どのレベルの品質で提供するか」をサービス開始前に双方で取り決めて明文化したものをいいます。

なぜSLAが大事かと言うと、例えばクラウドサービスを利用する時に、しょっちゅうサービスが止まってしまったら、使い物にならないですよね。

なので、利用者からみれば「サービスを絶対止めないでください」ということを提供者にお願いします。

とはいえ、サービス提供者側からしたら、「100%止めない」となると、相当のコストが掛かるし、そもそも100%は現実的ではありません。

そこで、提供者と利用者の間で、どのレベルまでなら許容できるかを予め合意しておきます。

稼働率のSLAに関して、簡単な例を以下に上げます。

SLAの例

  • 24時間365日で提供されるサービスの稼働率を99.5%に設定してSLAを合意する
  • SLA上は1か月で合計約3.6時間以内のサービス停止が許容される
  • もしも、サービスダウンで4時間サービスが停止してしまったら、SLA違反となる
  • SLA違反の場合はサービス利用料の10%を利用者に返金する。

このようにSLAを取り決めることで、提供者はサービスレベルの維持に頑張りますし、利用者も安心してサービスを使うことができるようになりますね。

SLAのイメージ

SLAを上げる、つまり稼働率を限りなく100%に近づけたり、障害完了時間を30分以内とかを実現しようとすると、それだけ人員やシステム構成のボリュームが多くなるので、当然コストが掛かり、利用者へ請求される金額も高くなります。

そのため、SLAには利用者がどんな使い方をするかによって、適切な内容にしていく必要がありますね。

SLO(エスエルオー)とは

一方、SLO(Service Level Objective)は日本語にすると「サービスレベル目標」となります。

SLOはあくまでも「目標」なので、サービスの提供者が設定するだけなので、利用者には見せないこともあります。

目標値なので、SLA よりも高い(厳しい)数値が設定されます。

例えば、さきほどSLA で稼働率 99.5 % を設定していた場合は、SLO は稼働率 99.9 % に設定するような形になります。

そして、SLO は提供者が勝手に決めるので、もしも守れなくても利用者に対してのペナルティはありません

とはいえ、守れない目標値を設定しても意味がないので、そこは現実的な数値にします。

また、利用者にも開示することで、利用者へ信頼や安心感を与えることもできますね。

SLOのイメージ

SLAとSLOの違い

ここまでSLAとSLOの内容を解説してきましたので、SLAとSLOの違いは大体把握できたかと思いますが、改めて違いを比較してみましょう。

下図にまとめてみましたが、SLAはペナルティが発生する分、「遵守できる内容や値を設定する」ということになりますね。

一方、SLOは具体的な数値を設定して、提供者側の内部目標として使うことが多いですね。ペナルティが発生しないので、ある程度高い目標値を設定できますね。

SLAとSLOの比較

まとめ

今回はサービスレベルを設定するためのSLAとSLOに関して解説してきました。

SLAとSLOのまとめ

  • SLA(サービスレベル合意書)は「どのような内容のサービスを、どのレベルの品質で提供するか」を提供者と利用者で合意する
  • SLO(サービスレベル目標)は「サービスレベルの目標」を提供者が設定する
  • SLAよりSLOの方が設定する数値が高い(厳しい)
  • SLAは達成できない時に利用者に対してペナルティが発生する

SLAはサービス提供者側が元から決めていて、変更できないこともありますが、一からシステムを開発するような時は、開発の要件定義工程からある程度SLAどうしようか、提供者と利用者が話し合いを行うこともありますね。

SLAの値をどうするかはお互い譲れない時もありますが、揉めたくはない部分ですね。。。

SLA、SLOに似た言葉としては「SLM(Service Level Management):サービスレベルマネジメント」「SLI(Service Level Indicator):サービスレベル指標」などがありますので、間違いないよう気を付けましょう。

以上です!

-IT用語, システム開発