Text size
എന്റെ റഡാറിൽ6 മിനിറ്റ് വായന

എസ്. എൽ. ഒ. കള്: എത്രത്തോളം വിശ്വസനീയമാണെന്നത് തീരുമാനിക്കുക

100% പ്രവർത്തന സമയം തെറ്റായ ലക്ഷ്യമാണ്. പിശക് ബജറ്റുകൾ ടീമുകളെ തീരുമാനിക്കാൻ എങ്ങനെ സഹായിക്കുന്നു.

SLOs: deciding how reliable is reliable enough
AI ഉപയോഗിച്ച് സൃഷ്ടിച്ച ചിത്രീകരണം

ഒരു മാനേജര് ക്ക് ഒരു സേവനം എത്രത്തോളം വിശ്വസനീയമായിരിക്കണം എന്ന് ചോദിച്ചാൽ, ഉത്തരം സാധാരണയായി "100%" ആണ്. അത് ശരിയാണെന്ന് തോന്നുന്നു. ആര് ക്ക് വിശ്രമ വേണമെന്നുണ്ട്?

പക്ഷെ 100% അസാധ്യമാണ്, അത് പിന്തുടരുന്നത് വളരെ ചെലവേറിയതാണ്. ഓരോ "ഒമ്പത്" അധികമായി ലഭ്യത കഴിഞ്ഞതിനേക്കാൾ കൂടുതൽ വില. നിങ്ങളുടെ ഉപയോക്താക്കൾക്ക് 99.99% നും 100% നും ഇടയിലുള്ള വ്യത്യാസം പറയാൻ കഴിയില്ല കാരണം അവരുടെ സ്വന്തം വൈഫൈ, ഫോൺ, ISP എന്നിവ വളരെ പലപ്പോഴും പരാജയപ്പെടുന്നു.

സേവന നിലവാര ലക്ഷ്യങ്ങൾ (എസ്. എൽ. ഒ) എന്നത് എത്രത്തോളം വിശ്വസനീയമാണെന്നത് തീരുമാനിക്കുന്നതിനുള്ള ഒരു മാർഗമാണ്.

എസ്. എൽ. ഐ. , എസ്. എല്. ഒ. , പിശക് ബജറ്റുകൾ, ലളിതമായി

SLI (സേവന നിലവാര സൂചകം): ഉപയോക്താവിന്റെ കാഴ്ചപ്പാടിൽ നിന്ന് നിങ്ങളുടെ സേവനം എങ്ങനെ പ്രവർത്തിക്കുന്നു എന്നതിന്റെ അളവ്. ഉദാഹരണത്തിന്: വിജയകരമായ HTTP അഭ്യർത്ഥനകളുടെ ശതമാനം, അല്ലെങ്കിൽ 300 മില്ലിമീറ്ററിൽ താഴെയുള്ള സേവനത്തിന്റെ ശതമാനം.

SLO (സേവന നിലവാര ലക്ഷ്യം): ഒരു സമയ വിൻഡോയിലുടനീളം ആ സൂചകത്തിനുള്ള ലക്ഷ്യം. ഉദാഹരണത്തിന്: 99.9% അഭ്യർത്ഥനകളും 30 ദിവസത്തിനുള്ളിൽ അളക്കുമ്പോൾ വിജയിക്കുന്നു.

പിശക് ബജറ്റ്: എസ്. ഒ. ഒ അനുവദിക്കുന്ന പരാജയത്തിന്റെ അളവ്. 30 ദിവസത്തിനുള്ളിൽ 99.9% ലക്ഷ്യം വെച്ചാൽ, നിങ്ങൾക്ക് 0.1% പരാജയപ്പെട്ട അഭ്യർത്ഥനകൾ താങ്ങാനാകും, അല്ലെങ്കിൽ ഏകദേശം 43 മിനിറ്റ് പൂർണ്ണമായ പ്രവർത്തനരഹിത സമയം.

എസ് എൽ എ (സേവന നില കരാർ): സാധാരണയായി സാമ്പത്തിക പ്രത്യാഘാതങ്ങളുള്ള ഉപഭോക്താക്കളുമായി ഒരു കരാർ. നിങ്ങളുടെ ആന്തരിക എസ്. എൽ. ഒ. കള് ക്കാളും കൂടുതല് അയഞ്ഞതായിരിക്കണം എസ്. എല്. ഒ. ക്കള് , നിങ്ങള് ക്ക് ആരോടും കടം കൊടുക്കുന്നതിനു മുമ്പ് നിങ്ങള് പ്രശ്നങ്ങൾ ശ്രദ്ധിക്കും.

പിശക് ബജറ്റുകൾ വളരെ ഉപകാരപ്രദമായ എന്തുകൊണ്ട്

പിശക് ബജറ്റ് വിശ്വാസ്യതയെ ഒരു ആർഗ്യുമെന്റിൽ നിന്നും ഒരു പങ്കിട്ട സംഖ്യയിലേക്ക് മാറ്റുന്നു.

  • ബജറ്റ് ബാക്കി? ടീമിന് സവിശേഷതകൾ വിതരണം ചെയ്യാം, പരീക്ഷണം നടത്താം, ന്യായമായ അപകടസാധ്യതകൾ ഏറ്റെടുക്കാം.
  • ബജറ്റ് ഏതാണ്ട് തീർന്നു? വേഗത കുറയ്ക്കൂ, വിശ്വാസ്യതയില് ശ്രദ്ധ കേന്ദ്രീകരിക്കൂ, അപകടകരമായ മാറ്റങ്ങള് മാറ്റിവെക്കുക.
  • ബജറ്റ് തീർന്നോ? അപകടകരമായ വിന്യാസങ്ങൾ തടയുക, പരാജയത്തിന് കാരണക്കാരനെ പരിഹരിക്കുക.

ഉത്പന്നങ്ങളും എൻജിനീയറിങ്ങും "ഞങ്ങള് വിശ്വാസ്യതയോ ഫീച്ചറുകളോ ആണോ" എന്നതിനെ കുറിച്ച് തർക്കിക്കുന്നത് അവസാനിപ്പിക്കും. ബജറ്റ് അതിനുള്ള ഉത്തരം നൽകുന്നു.

ഒരു SLO ഒന്നും ലംഘിക്കപ്പെടില്ല എന്ന വാഗ്ദാനമല്ല. എത്രമാത്രം ലംഘനം അനുവദനീയമാണെന്നും, നമ്മൾ കടന്നുപോയാൽ എന്ത് ചെയ്യുമെന്നും ഒരു കരാറാണ്.

നല്ല എസ്. എൽ. ഐ. കൾ തിരഞ്ഞെടുക്കുക

നല്ല എസ്. എൽ. ഐ. കൾ ഉപയോക്താക്കൾ യഥാർഥത്തിൽ അനുഭവിക്കുന്നതിനെ അളക്കുന്നുഃ

  • ലഭ്യമായത്: വിജയകരമായ അഭ്യർത്ഥനകളുടെ അനുപാതം (അല്ലാത്ത 5xx പ്രതികരണങ്ങൾ).
  • ലേറ്റൻസി: ഒരു പരിധിക്ക് മുകളിലുള്ള അപേക്ഷകളുടെ അനുപാതം.
  • പുതുമ: ഡേറ്റാ പൈപ്പ്ലൈനിന്, ഡാറ്റ എത്രമാത്രം പുതിയതാണ്.
  • കൃത്യതചില സംവിധാനങ്ങളുടെ ഫലങ്ങൾ ശരിയാണോ എന്ന്.

ഉപയോക്താവിന് കഴിയുന്നത്ര അടുത്ത് അളക്കുകഃ സേവനത്തിന്റെ ആഴത്തിൽ അല്ല ലോഡ് ബാലൻസറിലോ ഗേറ്റ്വേയിലോ. "CPU 80% ൽ താഴെ" എന്നതുപോലുള്ള SLI- കൾ ഒഴിവാക്കുകഃ ഉപയോക്താക്കൾ സിപിയുവിനെക്കുറിച്ച് ശ്രദ്ധിക്കുന്നില്ല.

ലക്ഷ്യം തെരഞ്ഞെടുക്കുന്നു

ചില പ്രായോഗിക ഉപദേശം:

  • നിങ്ങളുടെ ഇപ്പോഴത്തെ പ്രകടനത്തോടെ തുടങ്ങുക. ഇന്ന് 99.5% ആണെങ്കിൽ 99.99% SLO എന്നത് ഒരു സ്വപ്നമാണ്. നേടിയെടുക്കാവുന്ന എന്തെങ്കിലും സജ്ജമാക്കുക, എന്നിട്ട് അത് ശക്തമാക്കുക.
  • വ്യത്യസ്ത സേവനങ്ങള് , വ്യത്യസ്ത ലക്ഷ്യങ്ങള് . ചെക്ക് ഔട്ടിന് 99.95% വേണമെന്നു വരും. ഒരു ആന്തരിക റിപ്പോർട്ട് ജനറേറ്റര് 99 ശതമാനവും ശരിയാകും.
  • ആശ്രിതത്വം പരിഗണിക്കുക. നിങ്ങളുടെ സേവനം അത് ആശ്രയിക്കുന്ന കാര്യങ്ങളെക്കാൾ വിശ്വസനീയമായിരിക്കില്ല, അവരുടെ പരാജയങ്ങൾക്കായി നിങ്ങൾ രൂപകൽപ്പന ചെയ്തില്ലെങ്കിൽ.
  • 28 അല്ലെങ്കിൽ 30 ദിവസത്തെ റോളിംഗ് വിൻഡോ ഉപയോഗിക്കുക തുടങ്ങാന് .
SLO 30 ദിവസത്തിനുള്ള അനുവദനീയമായ പ്രവർത്തനരഹിത സമയം
99% ഏകദേശം 7 മണിക്കൂറും 12 മിനിറ്റും
99.5% ഏകദേശം 3 മണിക്കൂറും 36 മിനിറ്റും
99.9% ഏകദേശം 43 മിനിറ്റ്
99.95% ഏകദേശം 22 മിനിറ്റ്
99.99% ഏകദേശം 4 മിനിറ്റ്

ഈ ടേബിളില് നോക്കിയാല് സാധാരണയായി 100% സംഭാഷണം പെട്ടെന്ന് അവസാനിക്കും.

കത്തുന്ന വേഗതയെക്കുറിച്ച് മുന്നറിയിപ്പ്

എസ്.എല്.ഒ.കള് മുന്നറിയിപ്പ് നല് കുന്നതും മെച്ചപ്പെടുത്തുന്നു. സിപിയു അല്ലെങ്കിൽ വ്യക്തിഗത പിശകുകൾക്ക് പകരം, നിങ്ങൾ എത്ര വേഗത്തിലാണ് മുന്നറിയിപ്പ് കത്തിക്കല് പിശക് ബജറ്റ്

  • വേഗത്തിൽ കത്തിക്കല്: നിലവിലെ നിരക്കിൽ, നിങ്ങൾ മണിക്കൂറുകളില് മുഴുവൻ മാസത്തെ ബജറ്റ് ഉപയോഗിക്കും. ആരെയെങ്കിലും വിളിക്കൂ.
  • പതുക്കെ കത്തുന്നുദിവസങ്ങൾക്കകം അത് ഉപയോഗിച്ചു തീർക്കും. ഒരു ടിക്കറ്റ് ഉണ്ടാക്കുക, ജോലി സമയത്തു നോക്കൂ.

ഗൂഗിൾ എസ്ആര് ഇ വർക്ക്ബുക്ക് ശുപാർശ ചെയ്യുന്നു മൾട്ടി-വിൻഡോ, മൾട്ടി ബേൺ റേറ്റ് അലേർട്ടുകൾഉദാഹരണത്തിന്: കഴിഞ്ഞ മണിക്കൂറിൽ നിങ്ങൾ നിങ്ങളുടെ ബജറ്റിന്റെ 2% ഉപയോഗിച്ചു (അവസാന 5 മിനിറ്റ് അത് ഇപ്പോഴും നടക്കുന്നുണ്ടെന്ന് സ്ഥിരീകരിക്കുന്നു). അത് യഥാര് ത്ഥ സംഭവങ്ങള് പെട്ടെന്ന് പിടികൂടുന്നു, ചെറിയ ബ്ലിപ്പുകള് അവഗണിക്കുന്നു.

സഹായിക്കുന്ന ഉപകരണങ്ങൾ

ഈ പ്രോമെഥിയസ് നിയമങ്ങൾ കൈകൊണ്ട് എഴുതുന്നത് മടുപ്പിക്കുന്നതും തെറ്റുകൾ വരുത്തുന്നതുമാണ്. ലളിതമായ ഒരു SLO നിർവചനത്തില് നിന്ന് ഉപകരണങ്ങള് അവ സൃഷ്ടിക്കുന്നു:

  • മടിയൻ: ഒരു SLO സ്പെസിഫിക്കേഷനിൽ നിന്നും പ്രോമെഥിയസ് റെക്കോർഡിംഗ് ആൻഡ് അലേർട്ടിംഗ് നിയമങ്ങൾ സൃഷ്ടിക്കുന്നു.
  • പൈറ: സമാനമായ, ബജറ്റുകളും കത്തുന്ന നിരക്കുകളും കാണിക്കുന്ന ഒരു നല്ല ഇന്റർഫേസ്.
  • ഓപ്പൺസ്ലോ: ഒരു വിതരണക്കാരന് നിഷ്പക്ഷമായ സവിശേഷത SLOs കോഡായി നിർവചിക്കുന്നതിനായി.
  • മിക്ക വാണിജ്യ നിരീക്ഷണ പ്ലാറ്റ്ഫോമുകളിലും (ഡാറ്റാഡോഗ്, ഗ്രാഫാന ക്ലൌഡ്, ഹണികോംബ്, നോബിൾ 9 എന്നിവയും മറ്റുള്ളവയും) SLO സവിശേഷതകൾ ബിൽറ്റ്-ഇൻ ചെയ്തിട്ടുണ്ട്.
# Sloth example
version: "prometheus/v1"
service: "shop-api"
slos:
  - name: "requests-availability"
    objective: 99.9
    sli:
      events:
        error_query: sum(rate(http_requests_total{job="shop-api",code=~"5.."}[{{.window}}]))
        total_query: sum(rate(http_requests_total{job="shop-api"}[{{.window}}]))
    alerting:
      page_alert:
        labels:
          severity: critical

എവിടെ നിന്നാണ് ഞാൻ തുടങ്ങേണ്ടത്?

നിങ്ങളുടെ ഏറ്റവും പ്രധാനപ്പെട്ട ഉപയോക്തൃ-മുഖം സേവനം തിരഞ്ഞെടുക്കുക. ഒരു ലഭ്യതാ എസ്. ഐ. യും ഒരു ലേറ്റൻസി എസ്. ഐ യും നിർവചിക്കുക. കഴിഞ്ഞ മാസത്തെ യഥാർത്ഥ ഡാറ്റയുടെ അടിസ്ഥാനത്തില് ലക്ഷ്യങ്ങള് നിശ്ചയിക്കുക. ബേൺ റേറ്റ് അലേർട്ടുകൾ ചേർക്കുക, ബജറ്റ് ഡാഷ്ബോർഡിൽ കാണിക്കുക, ഓരോ രണ്ടാഴ്ച കൂടുമ്പോഴും ഒരു ടീമായി അവലോകനം ചെയ്യുക.

എന്റെ അഭിപ്രായം: പരിപൂർണ്ണതയല്ല ലക്ഷ്യം. എത്രത്തോളം അപൂർണനായിരിക്കാൻ കഴിയുമെന്ന് കൃത്യമായി അറിയുകയും അത് അനുസരിച്ച് പ്രവർത്തിക്കുകയും ചെയ്യുക എന്നതാണ്.

ഡെസ്ലി