David O'Brien (Xirus): Meritve! Meritve! Meritve! 1. del

David O'Brien je nedavno ustanovil lastno podjetje Xirus (https://xirus.com.au), ki se osredotoča na izdelke v oblaku Microsoft Azure Stack. Zasnovane so za dosledno gradnjo in izvajanje hibridnih aplikacij v podatkovnih centrih, robnih lokacijah, oddaljenih pisarnah in oblaku.

David usposablja posameznike in podjetja o vseh stvareh Microsoft Azure in Azure DevOps (prej VSTS) ter še vedno nudi praktično svetovanje in infrakodiranje. Že 5 let je dobitnik nagrade Microsoft MVP (Microsoft Most Valuable Professional), pred kratkim pa je prejel nagrado Azure MVP. Kot soorganizator srečanja Microsoft Cloud and Datacentre Meetup v Melbournu O'Brien redno govori na mednarodnih konferencah in združuje svoje zanimanje za potovanje po svetu s strastjo do deljenja IT zgodb s skupnostjo. Davidov blog se nahaja na david-obrien.net, svoje spletno usposabljanje objavlja tudi na Pluralsight.

Pogovor govori o pomenu meritev pri razumevanju dogajanja v vašem okolju in delovanja vaše aplikacije. Microsoft Azure ima zmogljiv in enostaven način za prikaz metrik za vse vrste delovnih obremenitev, predavanje pa pojasnjuje, kako jih lahko uporabite vse.

V nedeljo ob 3. uri zjutraj, ko spite, vas nenadoma zbudi besedilno sporočilo: »superkritična aplikacija se spet ne odziva«. Kaj se dogaja? Kje in kaj je razlog za "zavore"? V tem predavanju boste spoznali storitve, ki jih Microsoft Azure ponuja strankam za zbiranje dnevnikov in zlasti meritev iz vaših delovnih obremenitev v oblaku. David vam bo povedal, katere metrike bi vas morale zanimati pri delu na oblačni platformi in kako do njih priti. Naučili se boste o odprtokodnih orodjih in gradnji nadzornih plošč ter na koncu pridobili dovolj znanja za ustvarjanje lastnih nadzornih plošč.

In če vas ob 3. uri znova zbudi sporočilo, da se je kritična aplikacija zrušila, lahko hitro ugotovite vzrok.

Dober dan, danes bomo govorili o meritvah. Moje ime je David O'Brien, sem soustanovitelj in lastnik majhnega avstralskega svetovalnega podjetja Xirus. Še enkrat hvala, ker ste prišli sem, da preživite svoj čas z mano. Zakaj smo torej tukaj? Če želite govoriti o meritvah, ali bolje rečeno, povedal vam bom o njih, in preden se lotimo česar koli, začnimo s teorijo.

David O'Brien (Xirus): Meritve! Meritve! Meritve! 1. del

Povedal vam bom, kaj so metrike, kaj lahko počnete z njimi, na kaj morate biti pozorni, kako zbirati in omogočiti zbiranje metrik v Azure in kaj je vizualizacija metrik. Pokazal vam bom, kako te stvari izgledajo v Microsoftovem oblaku in kako delati s tem oblakom.

Preden začnemo, bom prosil tiste, ki uporabljajo Microsoft Azure, da dvignejo roke. Kdo dela z AWS? Malo jih vidim. Kaj pa Google? ALI Cloud? En moški! Super. Kaj so torej meritve? Uradna definicija ameriškega nacionalnega inštituta za standarde in tehnologijo je: "Metrika je merski standard, ki opisuje pogoje in pravila za merjenje lastnosti in služi za razumevanje rezultatov meritev." Kaj to pomeni?

Vzemimo primer metrike za spreminjanje prostega prostora na disku virtualnega stroja. Na primer, dana nam je številka 90 in ta številka pomeni odstotek, to je, da je količina prostega prostora na disku 90%. Opažam, da ni preveč zanimivo brati opis definicije metrike, ki obsega 40 strani v pdf formatu.

Vendar pa metrika ne pove, kako je bil dosežen rezultat meritve, prikazuje le ta rezultat. Kaj počnemo z meritvami?

Najprej izmerimo vrednost nečesa, da nato uporabimo rezultat meritve.

David O'Brien (Xirus): Meritve! Meritve! Meritve! 1. del

Na primer, ugotovili smo količino prostega prostora na disku in zdaj ga lahko uporabimo, uporabimo ta pomnilnik itd. Ko prejmemo metrični rezultat, ga moramo interpretirati. Na primer, metrika je vrnila rezultat 90. Vedeti moramo, kaj ta številka pomeni: količino prostega prostora ali količino porabljenega prostora na disku v odstotkih ali gigabajtih, omrežno zakasnitev 90 ms in tako naprej, tj. , moramo razložiti pomen metrične vrednosti. Da bi bile metrike sploh smiselne, moramo po interpretaciji ene vrednosti metrike zagotoviti, da se zbere več vrednosti. To je zelo pomembno, ker se veliko ljudi ne zaveda potrebe po zbiranju meritev. Microsoft je zelo poenostavil zbiranje meritev, vendar je na vas, da zagotovite njihovo zbiranje. Te meritve so shranjene samo 41 dni in izginejo na 42. dan. Zato morate glede na lastnosti vaše zunanje ali notranje opreme poskrbeti za shranjevanje meritev za več kot 41 dni - v obliki dnevnikov, dnevnikov itd. Zato jih morate po zbiranju postaviti na neko mesto, ki vam omogoča, da po potrebi povlečete vso statistiko sprememb rezultatov meritev. Ko jih postavite tja, lahko začnete z njimi učinkovito delati.

Šele ko pridobite metrike, jih interpretirate in zberete, lahko ustvarite SLA – dogovor o ravni storitev. Ta pogodba o ravni storitve morda ni tako pomembna za vaše stranke; pomembnejša je za vaše sodelavce, vodje, tiste, ki vzdržujejo sistem in jih skrbi njegova funkcionalnost. Metrika lahko meri število vstopnic – na primer prejmete 5 vstopnic na dan, v tem primeru pa prikazuje hitrost odziva na zahteve uporabnikov in hitrost odpravljanja težav. Metrika ne bi smela povedati le, da se vaše spletno mesto naloži v 20 ms ali da je vaša odzivna hitrost 20 ms, metrika je več kot le en tehnični indikator.

Zato je naloga našega pogovora, da vam predstavimo podrobno sliko bistva metrike. Metrika služi tako, da lahko z ogledom dobite popolno sliko procesa.

David O'Brien (Xirus): Meritve! Meritve! Meritve! 1. del

Ko imamo metriko, lahko 99-odstotno zagotovimo, da sistem deluje, saj ni samo pogled na datoteko dnevnika tisti, ki pravi, da sistem deluje. 99-odstotno jamstvo za neprekinjeno delovanje pomeni, da se na primer 99 % časa API odzove z običajno hitrostjo 30 ms. Prav to je tisto, kar zanima vaše uporabnike, vaše sodelavce in vodje. Veliko naših strank spremlja dnevnike spletnega strežnika, vendar v njih ne opazijo napak in mislijo, da je vse v redu. Na primer, vidijo hitrost omrežja 200 Mb/s in si mislijo: "ok, vse je super!" Da bi dosegli teh 200, pa potrebujejo uporabniki odzivno hitrost 30 milisekund in ravno to je tisti indikator, ki se ne meri in ne zbira v dnevniških datotekah. Hkrati so uporabniki presenečeni, da se spletno mesto nalaga zelo počasi, ker nimajo potrebnih meritev in ne poznajo razlogov za takšno vedenje.

Ker pa imamo SLA 100-odstotno delovanje, se stranke začnejo pritoževati, ker je spletno mesto dejansko zelo težko uporabljati. Zato je za ustvarjanje objektivne SLA potrebno videti celotno sliko procesa, ki ga ustvarijo zbrane metrike. To je stalna težava, ki jo imam pri nekaterih ponudnikih, ki pri ustvarjanju SLA nimajo pojma, kaj pomeni izraz "uptime" in v večini primerov svojim strankam ne razložijo, kako deluje njihov API.

Če ste ustvarili storitev, na primer API za tretjo osebo, bi morali razumeti, kaj pomeni končna metrika 39,5 – odziv, uspešen odziv, odziv pri hitrosti 20 ms ali pri hitrosti 5 ms. Na vas je, da prilagodite njihov SLA svojemu lastnemu SLA, svojim meritvam.

Ko vse to ugotovite, lahko začnete ustvarjati osupljivo nadzorno ploščo. Povejte mi, ali je že kdo uporabljal aplikacijo za interaktivno vizualizacijo Grafana? Super! Sem velik oboževalec te odprte kode, ker je ta stvar brezplačna in enostavna za uporabo.

David O'Brien (Xirus): Meritve! Meritve! Meritve! 1. del

Če še niste uporabljali Grafana, vam bom povedal, kako delati z njim. Verjetno se kdo, rojen v 80. in 90. letih, spomni CareBears? Ne vem, kako priljubljeni so bili ti medvedi v Rusiji, toda ko gre za meritve, bi morali biti enaki »skrbni medvedi«. Kot sem rekel, potrebujete veliko sliko o tem, kako deluje celoten sistem, in ne bi smel biti samo vaš API, vaše spletno mesto ali storitev, ki se izvaja v virtualnem računalniku.

David O'Brien (Xirus): Meritve! Meritve! Meritve! 1. del

Organizirati morate zbiranje tistih metrik, ki najbolj v celoti odražajo delovanje celotnega sistema. Večina vas je razvijalcev programske opreme, zato se vaše življenje nenehno spreminja, prilagaja novim zahtevam izdelkov in tako kot vas skrbijo procesi kodiranja, bi vas morali skrbeti tudi meritve. Vedeti morate, kako se metrika nanaša na vsako vrstico kode, ki jo napišete. Na primer, naslednji teden začnete z novo marketinško kampanjo in pričakujete, da bo vaše spletno mesto obiskalo veliko število uporabnikov. Za analizo tega dogodka boste potrebovali meritve in morda boste potrebovali celotno nadzorno ploščo za sledenje dejavnosti teh ljudi. Potrebovali boste meritve, da boste razumeli, kako uspešna je vaša marketinška kampanja in kako dejansko deluje. Pomagali vam bodo na primer razviti učinkovit CRM – sistem za upravljanje odnosov s strankami.

Pa začnimo z našo storitvijo v oblaku Azure. Zbirko meritev je zelo enostavno najti in organizirati, ker ima Azure Monitor. Ta monitor centralizira upravljanje konfiguracije vašega sistema. Vsak element Azure, ki ga želite uporabiti za svoj sistem, ima privzeto omogočenih veliko meritev. To je brezplačna aplikacija, ki deluje takoj po izdelavi in ​​ne zahteva nobenih predhodnih nastavitev, v sistem vam ni treba ničesar pisati ali "šraufati". To bomo preverili z ogledom naslednje predstavitve.

David O'Brien (Xirus): Meritve! Meritve! Meritve! 1. del

Poleg tega je mogoče te metrike poslati aplikacijam tretjih oseb, kot je sistem za shranjevanje in analizo dnevnikov Splunk, aplikacija za upravljanje dnevnikov v oblaku SumoLogic, orodje za obdelavo dnevnikov ELK in IBM Radar. Res je, da obstajajo majhne razlike, ki so odvisne od virov, ki jih uporabljate - virtualni stroj, omrežne storitve, podatkovne baze Azure SQL, torej se uporaba metrik razlikuje glede na funkcije vašega delovnega okolja. Ne bom rekel, da so te razlike resne, a na žalost so še vedno prisotne in to je treba upoštevati. Omogočanje in pošiljanje metrik je možno na več načinov: prek portala, CLI/Power Shell ali z uporabo predlog ARM.

David O'Brien (Xirus): Meritve! Meritve! Meritve! 1. del

Preden začnem svojo prvo predstavitev, bom odgovoril na vsa vaša vprašanja. Če ni vprašanj, začnimo. Zaslon prikazuje, kako je videti stran Azure Monitor. Ali lahko kdo od vas reče, da ta monitor ne deluje?

David O'Brien (Xirus): Meritve! Meritve! Meritve! 1. del

Tako je zdaj vse v redu, lahko vidite, kako izgledajo storitve monitorja. Lahko rečem, da je to odlično in zelo preprosto orodje za vsakdanje delo. Uporablja se lahko za spremljanje aplikacij, omrežij in infrastrukture. Pred kratkim je bil vmesnik za spremljanje izboljšan in če so bile prej storitve na različnih mestih, so zdaj vse informacije o storitvah združene na domači strani monitorja.

Tabela meritev je zavihek vzdolž poti HomeMonitorMetrics, na katerega se lahko odpravite, da si ogledate vse razpoložljive meritve in izberete tiste, ki jih potrebujete. Če pa morate omogočiti zbiranje meritev, morate uporabiti pot imenika nastavitev HomeMonitorDiagnostic in potrditi potrditvena polja Enabled/Disabled metrics. Privzeto so skoraj vse meritve omogočene, če pa morate omogočiti nekaj dodatnega, boste morali spremeniti stanje diagnostike iz Onemogočeno v Omogočeno.

David O'Brien (Xirus): Meritve! Meritve! Meritve! 1. del

To storite tako, da kliknete vrstico izbrane metrike in na zavihku, ki se odpre, omogočite diagnostični način. Če boste analizirali izbrano metriko, morate po kliku na povezavo Vklopi diagnostiko v oknu, ki se prikaže, označiti potrditveno polje Pošlji v analitiko dnevnika.

David O'Brien (Xirus): Meritve! Meritve! Meritve! 1. del

Log Analytics je nekoliko podoben Splunk-u, vendar stane manj. Ta storitev vam omogoča, da zberete vse svoje meritve, dnevnike in vse ostalo, kar potrebujete, ter jih postavite v delovni prostor Log Analytics. Storitev uporablja poseben jezik za obdelavo poizvedb KQL - Kusto Quarry Language, njegovo delo si bomo ogledali v naslednji predstavitvi. Zaenkrat bom omenil, da lahko z njegovo pomočjo ustvarite poizvedbe glede metrik, dnevnikov, izrazov, trendov, vzorcev itd. in ustvarite nadzorne plošče.

Torej potrdimo potrditveno polje Send to Log Analytics in potrditvena polja plošče LOG: DataPlaneRequests, MongoRequests in QueryRuntimeStatistics ter spodaj na plošči METRIC – potrditveno polje Requests. Nato dodelimo ime in shranimo nastavitve. V ukazni vrstici to predstavlja dve vrstici kode. Mimogrede, lupina Azure Cloud v tem smislu spominja na Google, ki vam omogoča tudi uporabo ukazne vrstice v spletnem brskalniku. AWS nima česa takega, zato je Azure v tem smislu veliko bolj priročen.

Na primer, lahko zaženem predstavitev prek spletnega vmesnika brez uporabe kode na svojem prenosniku. Za to se moram overiti s svojim računom Azure. Nato lahko uporabite na primer terrafone, če ga že uporabljate, počakajte na povezavo s storitvijo in dobite delovno okolje Linux, ki ga Microsoft uporablja privzeto.

David O'Brien (Xirus): Meritve! Meritve! Meritve! 1. del

Nato uporabljam Bash, ki je vgrajen v Azure Cloud Shell. Zelo uporabna stvar je IDE, vgrajen v brskalnik, lahka različica VS Code. Nato lahko grem v svojo predlogo meritev napak, jo uredim in prilagodim svojim potrebam.

David O'Brien (Xirus): Meritve! Meritve! Meritve! 1. del

Ko nastavite zbirko meritev v tej predlogi, jo lahko uporabite za ustvarjanje meritev za celotno infrastrukturo. Ko uporabimo metrike, jih zberemo in shranimo, jih bomo morali vizualizirati.

David O'Brien (Xirus): Meritve! Meritve! Meritve! 1. del

Azure Monitor se ukvarja samo z meritvami in ne zagotavlja splošne slike zdravja vašega sistema. Morda imate številne druge aplikacije, ki se izvajajo zunaj okolja Azure. Torej, če morate spremljati vse procese in vizualizirati vse zbrane metrike na enem mestu, potem Azure Monitor za to ni primeren.

Za rešitev tega problema Microsoft ponuja orodje Power BI, celovito programsko opremo za poslovno analizo, ki vključuje vizualizacijo najrazličnejših podatkov. To je precej drag izdelek, katerega stroški so odvisni od nabora funkcij, ki jih potrebujete. Privzeto vam ponuja 48 vrst podatkov za obdelavo in je povezan z Azure SQL Data Warehouses, Azure Data Lake Storage, Azure Machine Learning Services in Azure Databricks. Z uporabo razširljivosti lahko prejemate nove podatke vsakih 30 minut. To lahko zadošča za vaše potrebe, če potrebujete vizualizacijo spremljanja v realnem času. V tem primeru je priporočljiva uporaba aplikacij, kot je Grafana, ki sem jo omenil. Poleg tega Microsoftova dokumentacija opisuje možnost pošiljanja metrik, dnevnikov in tabel dogodkov z orodji SIEM v vizualizacijske sisteme Splunk, SumoLogic, ELK in IBM radar.

23:40 min

Nadaljevanje kmalu ...

Nekaj ​​oglasov 🙂

Hvala, ker ste ostali z nami. So vam všeč naši članki? Želite videti več zanimivih vsebin? Podprite nas tako, da oddate naročilo ali priporočite prijateljem, oblak VPS za razvijalce od 4.99 $, edinstven analog začetnih strežnikov, ki smo ga izumili za vas: Vsa resnica o VPS (KVM) E5-2697 v3 (6 jeder) 10 GB DDR4 480 GB SSD 1 Gbps od 19 USD ali kako deliti strežnik? (na voljo z RAID1 in RAID10, do 24 jeder in do 40 GB DDR4).

Dell R730xd dvakrat cenejši v podatkovnem centru Equinix Tier IV v Amsterdamu? Samo tukaj 2 x Intel TetraDeca-Core Xeon 2x E5-2697v3 2.6 GHz 14C 64 GB DDR4 4 x 960 GB SSD 1 Gbps 100 TV od 199 $ na Nizozemskem! Dell R420 - 2x E5-2430 2.2 Ghz 6C 128 GB DDR3 2x960 GB SSD 1 Gbps 100 TB - od 99 $! Preberite o Kako zgraditi infrastrukturo Corp. razreda z uporabo strežnikov Dell R730xd E5-2650 v4 v vrednosti 9000 evrov za drobiž?

Vir: www.habr.com

Dodaj komentar