{"id":100,"date":"2020-12-01T10:17:11","date_gmt":"2020-12-01T10:17:11","guid":{"rendered":"https:\/\/behnam.cc\/?p=100"},"modified":"2020-12-01T10:21:38","modified_gmt":"2020-12-01T10:21:38","slug":"devops-and-service-level-objectives","status":"publish","type":"post","link":"https:\/\/behnam.cc\/?p=100","title":{"rendered":"DevOps and Service Level Objectives"},"content":{"rendered":"\n<figure class=\"wp-block-image size-large\"><img loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"683\" src=\"https:\/\/behnam.cc\/wp-content\/uploads\/2020\/12\/DevOps-SLO-1024x683.png\" alt=\"\" class=\"wp-image-101\" srcset=\"https:\/\/behnam.cc\/wp-content\/uploads\/2020\/12\/DevOps-SLO-1024x683.png 1024w, https:\/\/behnam.cc\/wp-content\/uploads\/2020\/12\/DevOps-SLO-300x200.png 300w, https:\/\/behnam.cc\/wp-content\/uploads\/2020\/12\/DevOps-SLO-768x513.png 768w, https:\/\/behnam.cc\/wp-content\/uploads\/2020\/12\/DevOps-SLO-1536x1025.png 1536w, https:\/\/behnam.cc\/wp-content\/uploads\/2020\/12\/DevOps-SLO.png 1801w\" sizes=\"auto, (max-width: 1024px) 100vw, 1024px\" \/><\/figure>\n\n\n\n<p>Anyone ever worked in IT or ICT industry knows about \u2013 or at least heard of \u2013 SLAs; Service Level Agreements. A service level agreement is a commitment between a service provider and a client. Particular aspects of the service &#8211; quality, availability, responsiveness &#8211; are agreed between the service provider and the service user. The user could be either external customer or other internal teams of the same organisation. However, more formal SLAs with penalties are common for customers, internal users need to know what level of service they can expect for any service provided by other teams.<\/p>\n\n\n\n<p>Service provider teams must set clear Service Level Objectives (SLO) to be able to commit to SLAs based on them. An SLO is a target value or range of values for a service level that is measured by a Service Level Indicator (SLI). SLI is a carefully defined quantitative measure of some aspect of the level of service that is provided. Some common examples of SLIs are \u2018request latency\u2019, \u2018error rate\u2019 and \u2018system throughput\u2019.<\/p>\n\n\n\n<p>Setting right SLO might be complicated. While choosing a specific SLI or set of SLIs might be easy, deciding which one or what combination of SLIs might be the best option for the SLO is tricky. Remember that we set SLO to be able to commit to a certain level of service and final judgement here is with the user of the service. No matter how we choose SLIs for the SLO, if the user is not getting what is expected, SLO would be useless. So we need to look at SLOs from user\u2019s point of view.<\/p>\n\n\n\n<p>SLAs are tied to business goals so normally DevOps are not responsible to provide them but since SLOs are needed to provide SLAs and SLOs are based on SLIs which falls under Monitoring and Alerting tasks of DevOps, they normally get involved in helping to avoid triggering the consequences of missed SLOs. They can also help to define the SLIs: there obviously needs to be an objective way to measure the SLOs in the agreement, or disagreements will arise.<\/p>\n\n\n\n<p>But what about internal services? DevOps have to make sure they are setting accurate expectations for internal teams regarding services they provide by defining correct SLOs and by helping other service provider teams to do so as well. After all, they considered Monitoring and Alerting experts unless there is some specialist team for Monitoring and Alerting.<\/p>\n\n\n\n<p>There are different resources about how to choose best SLIs for different SLOs, so I will not go through details of setting SLIs for any specific SLO. Just don\u2019t forget to try to define SLO as close as possible to the user\u2019s perspective.<\/p>\n","protected":false},"excerpt":{"rendered":"<p>Anyone ever worked in IT or ICT industry knows about \u2013 or at least heard of \u2013 SLAs; Service Level Agreements. A service level agreement is a commitment between a service provider and a client. Particular aspects of the service &hellip;<\/p>\n<p class=\"read-more\"><a href=\"https:\/\/behnam.cc\/?p=100\">Read more &raquo;<\/a><\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[1],"tags":[21,14,20,22,24,23,25,17,19,18,15],"class_list":["post-100","post","type-post","status-publish","format-standard","hentry","category-uncategorized","tag-alerting","tag-devops","tag-monitoring","tag-service-level-agreement","tag-service-level-indicator","tag-service-level-objective","tag-site-reliability-engineering","tag-sla","tag-sli","tag-slo","tag-sre"],"_links":{"self":[{"href":"https:\/\/behnam.cc\/index.php?rest_route=\/wp\/v2\/posts\/100","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/behnam.cc\/index.php?rest_route=\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/behnam.cc\/index.php?rest_route=\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/behnam.cc\/index.php?rest_route=\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/behnam.cc\/index.php?rest_route=%2Fwp%2Fv2%2Fcomments&post=100"}],"version-history":[{"count":1,"href":"https:\/\/behnam.cc\/index.php?rest_route=\/wp\/v2\/posts\/100\/revisions"}],"predecessor-version":[{"id":102,"href":"https:\/\/behnam.cc\/index.php?rest_route=\/wp\/v2\/posts\/100\/revisions\/102"}],"wp:attachment":[{"href":"https:\/\/behnam.cc\/index.php?rest_route=%2Fwp%2Fv2%2Fmedia&parent=100"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/behnam.cc\/index.php?rest_route=%2Fwp%2Fv2%2Fcategories&post=100"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/behnam.cc\/index.php?rest_route=%2Fwp%2Fv2%2Ftags&post=100"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}