Prometheuse andmesalve valimine: Thanos vs VictoriaMetrics

Tere kõigile. Allpool on dekrüpteerimine aruanne Big Monitoring Meetup 4-st.

Prometheus – erinevate süsteemide ja teenuste jälgimise süsteem, mille abil saavad süsteemiadministraatorid koguda infot süsteemide hetkeparameetrite kohta ning seadistada hoiatusi, et saada teateid kõrvalekallete kohta süsteemide töös.

Aruanne võrreldakse Thanos и VictoriaMetrics — Prometheuse mõõdikute pikaajalise säilitamise projektid.

Prometheuse andmesalve valimine: Thanos vs VictoriaMetrics

Esita video

Prometheuse andmesalve valimine: Thanos vs VictoriaMetrics

Lubage mul kõigepealt rääkida Prometheusest. See on seiresüsteem, mis kogub antud sihtmärkide mõõdikuid ja salvestab need kohalikku salvestusruumi. Prometheus saab kirjutada mõõdikuid kaugmällu, genereerida hoiatusi ja salvestusreegleid.

Prometheuse andmesalve valimine: Thanos vs VictoriaMetrics

Prometheuse piirangud:

  • Sellel puudub globaalne päringuvaade. See on siis, kui teil on mitu sõltumatut Prometheuse eksemplari. Nad koguvad mõõdikuid. Ja soovite esitada päringuid kõigi nende mõõdikute peale, mis on kogutud erinevatest Prometheuse eksemplaridest. Prometheus seda ei luba.
  • Prometheuse puhul on jõudlus piiratud ainult ühe serveriga. Prometheus ei saa automaatselt skaleerida mitmele serverile. Saate sihtmärgid käsitsi jagada mitme Prometheuse vahel.
  • Prometheuse mõõdikute ulatus on piiratud ainult ühe serveriga samal põhjusel, et seda ei saa automaatselt mitmele serverile skaleerida.
  • Prometheuses pole andmete turvalisuse korraldamine nii lihtne.

Prometheuse andmesalve valimine: Thanos vs VictoriaMetrics

Lahendused nendele probleemidele/ülesannetele?

Lahendused on:

Kõik need lahendused on mõeldud Prometheuse kogutud andmete kaugsalvestuseks. Need lahendavad eelmise slaidi kaugsalvestusprobleemi erineval viisil. Selles esitluses räägin ainult kahest esimesest lahendusest: Thanos и VictoriaMetrics.

Esimest korda teave selle kohta Thanos ilmus peale see link. Arhitektuur on kirjeldatud Thanos ja kuidas see toimib.

Prometheuse andmesalve valimine: Thanos vs VictoriaMetrics

Thanos võtab Prometheuse salvestatud andmed kohalikule draivile ja kopeerib need S3-le, GCS või muusse objektihoidlasse.

Prometheuse andmesalve valimine: Thanos vs VictoriaMetrics

Seega pakub Thanos globaalset päringuvaadet. Objekti salvestusruumi salvestatud andmete kohta saate päringuid teha mitmest Prometheuse eksemplarist.

Prometheuse andmesalve valimine: Thanos vs VictoriaMetrics

Thanos toetab PromQL-i ja Prometheuse päringu API.

Prometheuse andmesalve valimine: Thanos vs VictoriaMetrics

Thanos kasutab andmete salvestamiseks Prometheuse koodi.

Prometheuse andmesalve valimine: Thanos vs VictoriaMetrics

Thanos on välja töötatud samade arendajate poolt nagu Prometheus.

edasi VictoriaMetrics. Siin linkkus me esimest korda rääkisime VictoriaMetrics.

Prometheuse andmesalve valimine: Thanos vs VictoriaMetrics

VictoriaMetrics saab andmeid mitmelt prometheuselt kaugkirjutamise API Prometheuse toetatud protokoll.

Prometheuse andmesalve valimine: Thanos vs VictoriaMetrics

VictoriaMetrics pakub globaalset päringuvaadet, kuna mitu Prometheuse eksemplari saab kirjutada andmeid ühte VictoriaMetricsi. Sellest lähtuvalt saate teha päringuid kõigi nende andmete kohta.

Prometheuse andmesalve valimine: Thanos vs VictoriaMetrics

VictoriaMetrics toetab ka, nagu Thanos, PromQL ja Prometheus päringu API-d.

Prometheuse andmesalve valimine: Thanos vs VictoriaMetrics

Erinevalt Thanosest on VictoriaMetricsi lähtekood kirjutatud nullist ning optimeeritud kiiruse ja ressursside tarbimise jaoks.

Prometheuse andmesalve valimine: Thanos vs VictoriaMetrics

VictoriaMetrics, erinevalt Thanosest, skaleerib nii vertikaalselt kui ka horisontaalselt. Sööma Ühe sõlmega versioon, mis skaleerub vertikaalselt. Võite alustada ühe protsessori ja 1 GB mäluga ning kasvatada sadade protsessorite ja 1 TB mäluga. VictoriaMetrics teab, kuidas kõiki neid ressursse kasutada. Selle jõudlus suureneb umbes 100 korda võrreldes 1-tuumalise süsteemiga.

Prometheuse andmesalve valimine: Thanos vs VictoriaMetrics

Thanose ajalugu algas 2017. aasta novembris, kui ilmus esimene avalik kohustus. Enne seda töötati Thanos välja ettevõttesiseselt ebatõenäoline.io.

Prometheuse andmesalve valimine: Thanos vs VictoriaMetrics

2019. aasta juunis ilmus oluline väljalase 0.5.0, milles eemaldatud lobamokk protokolli. Ta eemaldati Thanosest, kuna ta ei esinenud hästi. Tihti ei töötanud Thanose klaster õigesti, sõlmed ühendati sellega valesti kuulujuttude protokolli tõttu. Seega otsustasime selle sealt eemaldada. Usun, et see on õige otsus.

Prometheuse andmesalve valimine: Thanos vs VictoriaMetrics

Samal juunil 2019 saatsid nad avalduse numbri 256 в Cloud Native Computing Foundation.

Prometheuse andmesalve valimine: Thanos vs VictoriaMetrics

Ja paari kuu pärast võeti Thanos vastu Cloud Native Computing Foundation, kuhu kuuluvad Prometheus, Kubernetes ja muud populaarsed projektid.

Prometheuse andmesalve valimine: Thanos vs VictoriaMetrics

2018. aasta jaanuaris algas VictoriaMetricsi arendus.

Prometheuse andmesalve valimine: Thanos vs VictoriaMetrics

2018. aasta septembris mainisin esimest korda avalikult VictoriaMetricsit.

Prometheuse andmesalve valimine: Thanos vs VictoriaMetrics

2018. aasta detsembris avaldati ühe sõlme versioon.

Prometheuse andmesalve valimine: Thanos vs VictoriaMetrics

Mai 2019 avaldati nii ühe sõlme kui ka klastri versiooni allikad.

Prometheuse andmesalve valimine: Thanos vs VictoriaMetrics

2019. aasta juunis esitasime sarnaselt Thanosele numbri all taotluse sihtasutusele CNCF 255. Kandideerisime üks päev enne Thanose avaldust.

Prometheuse andmesalve valimine: Thanos vs VictoriaMetrics

Aga kahjuks pole meid ikka veel sinna vastu võetud. Vajalik kogukonna abi.

Prometheuse andmesalve valimine: Thanos vs VictoriaMetrics

Mõelge kõige olulisematele slaididele, mis näitavad Thanose ja VictoriaMetricsi arhitektuuri.

Prometheuse andmesalve valimine: Thanos vs VictoriaMetrics

Alustame Thanosega. Kollased komponendid on Prometheuse komponendid. Kõik muu on Thanose komponendid. Alustame kõige olulisemast komponendist. Thanos Sidecar on komponent, mis paigaldatakse iga Prometheuse kõrvale. See vastutab Prometheuse andmete laadimise eest kohalikust salvestusruumist S3 või muusse objektisalvestusruumi.

Samuti on olemas selline komponent nagu Thanos Store Gateway, mis saab Thanos Queryst saabuvate päringute korral neid andmeid Object Storage'ist lugeda. Thanos Query rakendab PromQL-i ja Prometheuse API-d. See tähendab, et väljast näeb see välja nagu Prometheus. See võtab vastu PromQL päringuid, saadab need Thanos Store Gatewayle, Thanos Store Gateway saab vajalikud andmed Object Storage'ist, saadab need tagasi.

Kuid meil on Object Storage'is salvestatud andmed ilma viimase kahe tunnita Thanos Sidecari rakendamise tõttu, mis ei saa viimased kaks tundi Object Storage S3 üles laadida, kuna Prometheus pole nende kahe tunni jooksul veel kohalikku salvestusruumi faile loonud.

Kuidas otsustasite sellest mööda hiilida? Thanos Query saadab lisaks päringutele Thanos Store Gatewayle paralleelsed päringud igale Prometheuse kõrval asuvale Thanose külgkorvile.

Ja Thanos Sidecar omakorda edastab päringuid Prometheusele ja hangib andmeid viimase kahe tunni kohta.

Lisaks nendele komponentidele on olemas ka valikuline komponent, ilma milleta Thanos end halvasti tunneb. See on Thanos Compact, mis liidab väikesed failid Object Storage'is suuremateks failideks, mille on siia üles laadinud Thanos Sidecars. Thanos Sidecar laadib sinna kaks tundi andmefaile üles. Kui neid faile suuremateks failideks ei liita, võib nende arv väga oluliselt kasvada. Mida rohkem selliseid faile, seda rohkem mälu on vaja Thanos Store Gateway jaoks, seda rohkem on vaja ressursse andmete, metaandmete edastamiseks üle võrgu. Thanos Store Gateway muutub ebaefektiivseks. Seetõttu on vaja käivitada Thanos Compact, mis liidab väikesed failid suuremateks, et selliseid faile oleks vähem ja et Thanos Store Gatewayl oleks vähem kulu.

Samuti on olemas selline komponent nagu Thanos Ruler. See täidab Prometheuse hoiatusreegleid ja suudab arvutada Prometheuse salvestusreegleid, et kirjutada andmed tagasi objektide salvestusruumi. Kuid seda komponenti ei soovitata kasutada, kuna. Ta kipub tagastama mittetäielikke andmeid.

Siin on Thanose jaoks lihtne skeem.

Prometheuse andmesalve valimine: Thanos vs VictoriaMetrics

Nüüd võrdleme VictoriaMetricsi skeemiga.

VictoriaMetricsil on 2 versiooni: ühe sõlme ja klastri versioon. Üks sõlm töötab ühes arvutis. Ühel sõlmel pole neid komponente, vaid üks binaar. See kahendfail slaidil näeb välja nagu see ruut. Kõik ruudu sees on ühe sõlme versiooni binaarfaili sisu. Sa ei pea sellest teadma. Lihtsalt käivitage kahendfail – ja kõik töötab meie jaoks.

Klastri versioon on keerulisem. Selle sees on kolm erinevat komponenti: vmselect, vminsert ja vmstorage. Nende nimest peaks olema selge, mida igaüks neist teeb. Komponent Insert aktsepteerib andmeid erinevates vormingutes: Prometheuse kaugkirjutamise API-st, Influx liini protokollist, Graphite protokollist ja OpenTSDB protokollist. Komponent Insert aktsepteerib need, analüüsib ja jagab need olemasolevate salvestuskomponentide vahel, kus andmed on juba salvestatud. Komponent Select aktsepteerib omakorda PromQL-i päringuid. See rakendab PromQL, samuti Prometheuse päringu API-d ning seda saab kasutada Prometheuse asendajana Grafanas või teistes Prometheuse API klientides. Select võtab promql päringu, analüüsib seda, loeb salvestussõlmedest selle päringu täitmiseks vajalikud andmed, töötleb neid andmeid ja tagastab vastuse.

Prometheuse andmesalve valimine: Thanos vs VictoriaMetrics

Võrdleme Thanose ja VictoriaMetricsi installimise keerukust.

Prometheuse andmesalve valimine: Thanos vs VictoriaMetrics

Alustame Thanosega. Enne Thanosega töötamist peate looma objektide salvestusruumis (nt S3 või GCS) ämbri, et Thanos Sidecar saaks sinna andmeid kirjutada.

Prometheuse andmesalve valimine: Thanos vs VictoriaMetrics

Seejärel peate iga Prometheuse jaoks installima Thanos Sidecari. Enne seda peate meeles pidama andmete tihendamise keelamist Prometheuses. Andmete tihendamine tihendab perioodiliselt Prometheuse kohalikus mälus olevaid andmeid, et vähendada ressursitarbimist.

Kui installite oma Prometheusele Thanos Sidecari, peate selle andmete tihendamise keelama, kuna Thanos Sidecar ei tööta korralikult, kui andmete tihendamine on lubatud. See tähendab, et teie Prometheus hakkab andmeid salvestama kahetunniste plokkidena ja lõpetab nende plokkide ühendamise suuremateks. Seega, kui teete päringuid, mis ületavad viimase kahe tunni kestust, ei tööta need nii tõhusalt, kui toimiksid, kui andmete tihendamine oleks lubatud.

Prometheuse andmesalve valimine: Thanos vs VictoriaMetrics

Seetõttu soovitab Thanos vähendada andmete säilitamise aega kohalikus salvestusruumis 6-8 tunnini, et vähendada seda suure hulga väikeste plokkide üldkulusid.

Pärast Thanos Sidecari installimist peate installima iga objektisalvestusämbri jaoks kaks komponenti. Need on Thanos Compactor ja Thanos Store Gateway.

Prometheuse andmesalve valimine: Thanos vs VictoriaMetrics

Pärast seda peate installima Thanos Query ja konfigureerima selle nii, et see saaks ühenduse luua kõigi teil olevate Thanose Store'i lüüsidega ja samuti kõigi Thanose külgkorvidega.

Siin võib olla väike probleem.

Prometheuse andmesalve valimine: Thanos vs VictoriaMetrics

Peate seadistama usaldusväärse ja turvalise ühenduse Thanos Querylt nende komponentidega. Ja kui teil on Prometheus'y erinevates andmekeskustes või erinevates VPC-des, siis on ühendused nendega väljastpoolt keelatud. Kuid selleks, et Thanos Query töötaks, peate seal ühenduse kuidagi konfigureerima ja leidma viisi.

Kui teil on palju selliseid andmekeskusi, siis vastavalt väheneb kogu süsteemi töökindlus. Kuna Thanos Query peab pidevalt hoidma ühendusi kõigi erinevates andmekeskustes asuvate Thanose külgkorvidega. Iga sissetuleva päringu korral saadab see päringud kõigile Thanose külgkorvidele. Kui ühendus katkeb, saate kas mittetäieliku andmestiku või vastuse "klaster ei tööta".

Prometheuse andmesalve valimine: Thanos vs VictoriaMetrics

VictoriaMetricsis on asjad veidi lihtsamad. Ühe sõlmega versiooni jaoks käivitage lihtsalt üks binaarfail ja kõik töötab.

Prometheuse andmesalve valimine: Thanos vs VictoriaMetrics

Kobarversioonis piisab kõigi ülaltoodud kolme tüüpi komponentide käitamisest mis tahes vajalikus koguses või kasutatavas koguses tüürikaart komponentide käivitamise automatiseerimiseks Kubernetesis. Plaanime teha ka Kubernetese operaatori. Helmi diagramm ei hõlma mõnda juhtumit ja võimaldab teil jalga tulistada. Näiteks võimaldab see vähendada salvestussõlmede arvu, mis toob kaasa andmete kadumise.

Prometheuse andmesalve valimine: Thanos vs VictoriaMetrics

Pärast ühe binaarse või rühmitatud versiooni käivitamist peate lihtsalt lisama Prometheuse konfiguratsiooni kaugkirjutamise URL-i seadistusnii, et see hakkab andmeid kirjutama paralleelselt kohalikule ja kaugsalvestusele. Nagu näete, peaks see konfiguratsioon töötama palju usaldusväärsemalt kui Thanose konfiguratsioon. Me ei pea hoidma ühendust VictoriaMetricsist kõigi Prometheuse omadega, sest Prometheus ise ühendub VictoriaMetricsiga ja edastab andmeid.

Prometheuse andmesalve valimine: Thanos vs VictoriaMetrics

Kaaluge Thanose ja VictoriaMetricsi toetamist.

Prometheuse andmesalve valimine: Thanos vs VictoriaMetrics

Thanos peab Sidecaril silma peal hoidma, et nad ei lõpetaks andmete Object Storage'i üleslaadimist. Nad võivad selle andmete allalaadimise peatada allalaadimisvigade tõttu, näiteks katkeb ajutiselt teie võrguühendus objektisalvestusega või pole objektisalvestus ajutiselt saadaval. Thanos Sidecar märkab seda praegu, teatab veast, võib kokku kukkuda ja seejärel töö lõpetada. Kui te seda ei jälgi, siis teie andmeid enam objektisalvestusse ei edastata. Kui säilitusaeg möödub (soovitatav on 6-8 tundi), siis kaotate andmed, mis ei sattunud objektide salvestusruumi.

Prometheuse andmesalve valimine: Thanos vs VictoriaMetrics

Thanose tihendajad võivad töötamise lõpetada võidusõit külgkorviga. Tihendajad võtavad andmeid objektisalvestusest ja liidavad need suuremateks andmetükkideks. Kuna tihendajad pole külgvankritega sünkroniseeritud, võib juhtuda järgmist: külgkorvi pole jõudnud veel plokki lisada, tihendaja otsustab, et see plokk on täielikult kirjutatud. Tihendaja hakkab seda lugema. See loeb plokki mittetäielikult ja lakkab töötamast. Vaata detaile siin.

Prometheuse andmesalve valimine: Thanos vs VictoriaMetrics

Store Gateway võib tihendaja ja külgkorvide vaheliste võistluste tõttu tagastada ebajärjekindlaid andmeid. Siin on sama asi, sest Store Gateway ei ole mingil viisil sünkroonitud tihendajate ja külgkorvidega. Sellest tulenevalt võivad võistlustingimused tekkida, kui Store Gateway ei näe osa andmetest või näeb lisaandmeid.

Prometheuse andmesalve valimine: Thanos vs VictoriaMetrics

Thanose päringukomponent tagastab vaikimisi osalise tulemuse, kui mõned külgkorvid või poelüüsid pole hetkel saadaval. Saate osa andmetest ja isegi ei tea, et te ei saanud kõiki andmeid. Vaikimisi töötab see nii. Sarnases olukorras tagastab VictoriaMetrics märgistatud andmed osalistena.

Prometheuse andmesalve valimine: Thanos vs VictoriaMetrics

Erinevalt Thanosest kaotab VictoriaMetrics andmeid harva. Isegi kui Prometheuse ja VictoriaMetricsi ühendus katkeb, pole see probleem, kuna Prometheus jätkab sissetulevate uute andmete kirjutamist ette kirjutamise logisse, mis on 2 tundi pikk. Kui taastate ühenduse VictoriaMetricsiga kahe tunni jooksul, ei lähe andmed kaotsi. Prometheus saab pärast VictoriaMetricsiga uuesti ühenduse loomist andmeid lisada.

Prometheuse andmesalve valimine: Thanos vs VictoriaMetrics

Erinevalt Thanosest, mis kirjutab andmed objektide salvestusruumi alles kahe tunni pärast, kopeerib Prometheus andmed automaatselt kaugkirjutusprotokolli kaudu kaugsalvestusse, näiteks VictoriaMetrics. Te ei karda Prometheuse kohaliku salvestusruumi kaotamist. Kui ta kaotas ootamatult kohaliku salvestusruumi, kaotate viimased sekundid andmeid, millel polnud halvimal juhul aega kaugmällu kirjutada.

Prometheuse andmesalve valimine: Thanos vs VictoriaMetrics

Erinevalt Thanosest haldab Kubernetes klastrit automaatselt. Erinevalt VictoriaMetricsi klastri komponentidest on keeruline paigutada kõiki Thanose komponente ühte Kubernetese klastrisse.

Prometheuse andmesalve valimine: Thanos vs VictoriaMetrics

VictoriaMetricsil on väga lihtne uuendada uuele versioonile. Peatage lihtsalt VictoriaMetrics, värskendage binaarfaile ja alustage. Kui peatatakse SIGINT-signaali kaudu, lülituvad kõik VictoriaMetricsi kahendfailid graatsiliselt välja. Nad salvestavad vajalikud andmed õigesti, sulgevad sissetulevad ühendused õigesti, et mitte midagi kaotada. Seega ei kaota te uuendamisel midagi.

Prometheuse andmesalve valimine: Thanos vs VictoriaMetrics

VictoriaMetricsil on klastri laiendamine väga lihtne. Lihtsalt lisage vajalikud komponendid ja jätkake tööd.

Prometheuse andmesalve valimine: Thanos vs VictoriaMetrics

Thanose ja VictoriaMetricsi lõksude kohta.

Prometheuse andmesalve valimine: Thanos vs VictoriaMetrics

Thanosel on järgmised lõksud. Prometheus peaks salvestama andmeid viimase kahe tunni kohta. Kui need kaovad, kaotate need täielikult, kuna neil pole olnud aega objektide salvestusruumi (nt S3) kirjutada.

Prometheuse andmesalve valimine: Thanos vs VictoriaMetrics

Store Gateway komponent ja tihenduskomponent võivad suure objektisalvestusruumi haldamiseks võtta palju mälu, kui sinna on salvestatud palju väikeseid faile. Mida suurem on failide arv ja suurus, seda rohkem RAM-i vajavad Store Gateway ja tihendaja metateabe salvestamiseks. Thanosel on palju probleeme, millega Store Gateway ja tihendaja jooksevad kokku keskmise kirjutatava andmemahu korral.

Prometheuse andmesalve valimine: Thanos vs VictoriaMetrics

Reklaamitakse, et Thanos suudab teie Prometheuse arvu järgi piiramatult skaleerida. Tegelikult pole see tõsi. Kuna kõik päringud läbivad päringukomponendi, mis peab paralleelselt küsitlema kõiki Store Gateway komponente ja kõiki Sidecari komponente, eraldama sealt andmed ja seejärel neid eeltöötlema. On ilmne, et päringute kiirust piirab kõige aeglasem nõrk lüli, kõige aeglasem Store Gateway või kõige aeglasem külgkorv.

Need komponendid võivad olla ebaühtlaselt koormatud. Näiteks on teil Prometheus, mis kogub miljoneid mõõdikuid sekundis. Ja seal on Prometheus, mis kogub tuhandeid mõõdikuid sekundis. Prometheus, mis kogub miljoneid mõõdikuid sekundis, laadib serverit, millel see töötab, palju rohkem. Vastavalt sellele on külgkorv seal aeglasem. Ja üldiselt on seal kõik aeglane. Ja päringukomponent tõmbab andmeid sealt väga aeglaselt. Sellest tulenevalt piirab see aeglane külgkorv kogu teie klastri jõudlust.

Prometheuse andmesalve valimine: Thanos vs VictoriaMetrics

Vaikimisi tagastab Thanos osalised andmed, kui mõned külgkorvid ja kumbki poevärav pole saadaval. Näiteks kui teil on külgkorvid laiali üle maailma erinevates andmekeskustes, siis suureneb oluliselt tõenäosus, et komponendid katkevad ja ei ole saadaval. Seetõttu saate enamikul juhtudel osalisi andmeid isegi teadmata.

Prometheuse andmesalve valimine: Thanos vs VictoriaMetrics

VictoriaMetricsil on ka lõkse. Esimene lõks on valik, mis piirab VictoriaMetricsi vahemälu jaoks kasutatava RAM-i hulka. Vaikimisi on see 60% RAM-i masinas, kus töötab VictoriaMetrics, või 60% RAM-i VictoriaMetricsi kaustas Kubernetes.

Kui muudate seda väärtust valesti, võite VictoriaMetricsi jõudluse rikkuda. Näiteks kui väärtus on seatud liiga madalaks, ei pruugi andmed enam VictoriaMetricsi vahemällu mahtuda. Seetõttu peab ta tegema lisatööd ja laadima protsessori kettaga. Kui teete selle valiku liiga suureks, suurendab see esiteks tõenäosust, et VictoriaMetrics jookseb kokku mälutõrke tõttu ja teiseks viib see selleni, et operatsioonisüsteemil jääb faili jaoks väga vähe RAM-i. vahemälu. Ja VictoriaMetrics tugineb jõudluse tagamiseks faili vahemällu. Kui sellest ei piisa, võib ketta koormus oluliselt suureneda. Seetõttu nõuanne: ärge muutke parameetrit, kui see pole tingimata vajalik.

Prometheuse andmesalve valimine: Thanos vs VictoriaMetrics

Teine variant. See retentionPeriod on periood, mis on vaikimisi seatud 1 kuuks. See on aeg, mille jooksul VictoriaMetrics andmeid säilitab. Pärast seda perioodi kustutab VictoriaMetrics andmed.

Paljud inimesed käitavad VictoriaMetricsi ilma selle võimaluseta ja salvestavad andmeid kuu aja jooksul. Ja siis küsitakse: miks eelmise kuu andmed kadusid? Kuna vaikimisi säilitusperiood on 1 kuu. Seetõttu peate teadma ja määrama õige retentionPeriod.

Prometheuse andmesalve valimine: Thanos vs VictoriaMetrics

Vaatame läbi ainulaadsed omadused.

Prometheuse andmesalve valimine: Thanos vs VictoriaMetrics

Thanosel on funktsioon nimega downsampling: 5-minutilised ja tunnised intervallid, mis sageli on ei tööta korralikult. Kui guugeldate ja vaatate nende probleemi githubis, on selle allalaadimisega seotud palju probleeme, et mõnikord ei tööta see õigesti või ei tööta nii, nagu kasutajad ootavad.

Prometheuse andmesalve valimine: Thanos vs VictoriaMetrics

Thanosel on Prometheuse HA paaride andmete dubleerimine. Kui kaks Prometheust koguvad samadelt sihtmärkidelt samu mõõdikuid ja Thanos lisab need objektide salvestusruumi. Erinevalt VictoriaMetricsist saab Thanos need andmed korralikult eemaldada.

Prometheuse andmesalve valimine: Thanos vs VictoriaMetrics

Thanosel on hoiatuskomponent, mis oli Thanose skeemil. Aga tema ei ole soovitatav tootmises kasutada.

Prometheuse andmesalve valimine: Thanos vs VictoriaMetrics

Thanose eeliseks on see, et Thanos ja Prometheus jagavad sama koodi. Thanos ja Prometheus on välja töötatud samade arendajate poolt. Thanose või Prometheuse täiustamisega võidab teine ​​pool.

Prometheuse andmesalve valimine: Thanos vs VictoriaMetrics

VictoriaMetricsi põhifunktsioon on MetricsQL. Need on PromQL-i VictoriaMetricsi laiendused, millest ma rääkisin eelmisel suurel jälgimisperioodil.

Prometheuse andmesalve valimine: Thanos vs VictoriaMetrics

VictoriaMetrics toetab andmete üleslaadimist paljude erinevate protokollide abil. VictoriaMetrics ei saa mitte ainult Prometheuse andmeid vastu võtta, vaid ka protokollide Influx, OpenTSDB ja Graphite kaudu.

Prometheuse andmesalve valimine: Thanos vs VictoriaMetrics

VictoriaMetricsi andmed võtavad palju vähem ruumi kui Thanos ja Prometheus.

Tõeliste andmete kirjutamisel räägivad kasutajad Prometheuse ja Thanosega võrreldes kettal olevate andmete mahu 2–5-kordsest vähenemisest.

Prometheuse andmesalve valimine: Thanos vs VictoriaMetrics

VictoriaMetricsi teine ​​eelis on see, et see on optimeeritud kiiruse jaoks.

Prometheuse andmesalve valimine: Thanos vs VictoriaMetrics

Räägime infrastruktuuri maksumusest.

Prometheuse andmesalve valimine: Thanos vs VictoriaMetrics

Üks Thanose eeliseid on see, et see salvestab andmeid objektide salvestusruumi, mis on suhteliselt odav.

Andmete salvestamisel objektisalvestusse peate maksma andmete kirjutamise ja lugemise toimingute eest (10 dollarit miljoni toimingu kohta). Kui kirjutate andmeid objektide salvestusruumi, maksate oma hostimiskulud andmete Internetti üleslaadimise eest, kui teie klaster pole AWS-is – see on seal tasuta. Andmeid lugedes maksate 10 TB eest 230–1 dollarit. See võib olla oluline, kui taotlete sageli Thanose klastrist ajaloolisi andmeid.

Prometheuse andmesalve valimine: Thanos vs VictoriaMetrics

Thanose klastri puhul peate maksma serverite eest Compact, Store Gateway, Query komponentide eest, mis nõuavad palju mälu, CPU suurte andmemahtude jaoks.

Prometheuse andmesalve valimine: Thanos vs VictoriaMetrics

VictoriaMetricsil on järgmised kulud. Kui salvestate andmeid GCE kõvaketastele, tuleb välja 40 dollarit 1 TB eest. VictoriaMetricsi jaoks piisab tavalistest HDD-draividest, pole vaja SSD-sid, mis maksavad viis korda rohkem. VictoriaMetrics on optimeeritud HDD jaoks.

Prometheuse andmesalve valimine: Thanos vs VictoriaMetrics

VictoriaMetrics vajab servereid komponentide jaoks: kas Single-nod või rühmitatud komponentide jaoks, mis erinevalt Thanose komponentidest nõuavad palju vähem CPU-d, RAM-i - vastavalt tuleb see odavam.

Prometheuse andmesalve valimine: Thanos vs VictoriaMetrics

Rakendusnäited.

Prometheuse andmesalve valimine: Thanos vs VictoriaMetrics

Thanose jaoks on rakendusnäide Gitlab. Gitlab töötab täielikult Thanosel. Kuid kõik pole seal nii sujuv. Kui neid vaadata küsimustes, siis näete, et neil on pidevalt mõni Thanose tööprobleemid: Pole piisavalt mälu Store Gateway või Query komponentide jaoks. Nad peavad pidevalt mälumahtu suurendama.

Seetõttu suurenevad nende probleemide lahendamise kulud.

Teine teostus, mis võib olla edukam, on Improbable, kes alustas Thanose arendamist. Nad avaldasid Thanose allika. Improbable on ettevõte, mis arendab mängumootoreid.

Prometheuse andmesalve valimine: Thanos vs VictoriaMetrics

VictoriaMetricsil on avalikud rakendusnäited, mis on järgmised:

  • wixi veebisaidi koostaja
  • Adidas rakendab VictoriaMetricsi ja tegi isegi esitluse viimasel PromCon 2019-l
  • TrafficStarsi reklaamivõrk
  • Seznam.cz on populaarne Tšehhi otsingumootor.

Ja siis oli nimetuid ettevõtteid, mida ma praegu nimetada ei oska. Nad ei nõustunud.

  • Üks suur mänguarendaja. Suurem kui im ​​Ebatõenäoline.
  • Suur graafikatarkvara arendaja.
  • Vene suur pank.
  • Euroopa tuuleturbiinitootja, kes on VictoriaMetricsi edukalt testinud. See tootja rakendab VictoriaMetricsi, et jälgida tuuleturbiini andmeid kiirusega 50 proovi sekundis anduri kohta. Igal tuuleturbiinil on mitusada andurit. Neil on mitusada tuuleturbiini.
  • Venemaa lennufirmad, kes soovivad VictoriaMetricsi juurutada, kuid ei saa seda siiski teha. Oleme nendega lepingujärgus.

Prometheuse andmesalve valimine: Thanos vs VictoriaMetricsJäreldused.

VictoriaMetrics ja Thanos lahendavad sarnaseid probleeme, kuid erineval viisil:

  • Globaalne päringuvaade
  • horisontaalne skaleerimine
  • meelevaldne kinnipidamine

Prometheuse andmesalve valimine: Thanos vs VictoriaMetrics

Aitäh.

Ootame Sind meie juurde telegrammi kanal.

Prometheuse andmesalve valimine: Thanos vs VictoriaMetrics

Küsitluses saavad osaleda ainult registreerunud kasutajad. Logi sissepalun.

Mida kasutate Prometheuse pikaajalise ladustamisena?

  • 35,3%Thanos6

  • 0,0%Cortex0

  • 0,0%M3DB0

  • 41,2%VictoriaMetrics7

  • 23,5%muu4

17 kasutajat hääletas. 16 kasutajat jäi erapooletuks.

Allikas: www.habr.com

Ostke DDoS-kaitsega saitide jaoks usaldusväärne hostimine, VPS VDS-serverid 🔥 Osta usaldusväärne veebimajutus DDoS-kaitsega, VPS VDS serverid | ProHoster