SLA basically means a Service Level Agreement. It’s a formal agreement between you and your customer. It basically describes the reliability of your product/service so you can have a formal agreement which basically says our product will be online 99 percent of the time annually and if we fail to achieve that objective we will give 30% of your annual license fee back.
SLA’s also include penalties in the contract. That means if you fail to meet a certain level of reliability you basically do something for your customers.
Before we go on to SLO’s, SLA’s is like a contract that includes a lot of components like it might include the reliability of an API, Home Page, Dashboard, etc. Each of these components is basically the reliability objectives that you want to achieve. In the huge contract, you’d have a section which is SLO’s which would say, for example, API will be up 99.99% of the time and the error rate of the API will be less than 0.01 percent in a year. SLO’s basically describes the reliability goal of a particular resource in your organization or in your product.
SLI stands for service level indicator. It’s the current status of my API or any other resource. This is what monitoring tools tells you. This basically answers the question – What’s the uptime of my API this quarter or this year.
SLA is the contract. SLO is the goal. SLI is how has your resource been performing over a period of time.
Check out Fyipe: A Complete SRE and DevOps Platform that saves your hundreds of dollars today, and thousands as you grow.