{"id":54601,"date":"2019-12-30T00:00:00","date_gmt":"2019-12-29T21:00:00","guid":{"rendered":"https:\/\/prohoster.info\/blog\/blog_prohoster\/vybiraem-hranilishhe-dannyh-dlya-prometheus-thanos-vs-victoriametrics"},"modified":"2020-02-18T14:02:38","modified_gmt":"2020-02-18T11:02:38","slug":"vybiraem-hranilishhe-dannyh-dlya-prometheus-thanos-vs-victoriametrics","status":"publish","type":"post","link":"https:\/\/prohoster.info\/it\/blog\/administrirovanie\/vybiraem-hranilishhe-dannyh-dlya-prometheus-thanos-vs-victoriametrics","title":{"rendered":"Scegliamo un sistema di archiviazione per Prometheus: Thanos vs VictoriaMetrics","gt_translate_keys":[{"key":"rendered","format":"text"}]},"content":{"rendered":"<p>Ciao a tutti. Di seguito \u00e8 fornita la trascrizione <noindex><a rel=\"nofollow\" href=\"https:\/\/www.youtube.com\/watch?v=HyOXAdQE0Pk\">della presentazione al Big Monitoring Meetup 4<\/a><\/noindex>.<\/p>\n<p><\/p>\n<p><strong><noindex><a rel=\"nofollow\" href=\"https:\/\/github.com\/prometheus\">Prometheus<\/a><\/noindex><\/strong> \u2013 un sistema di monitoraggio di vari sistemi e servizi, attraverso il quale gli amministratori di sistema possono raccogliere informazioni sui parametri attuali dei sistemi e configurare avvisi per ricevere notifiche sugli scostamenti nel funzionamento dei sistemi.<\/p>\n<p><\/p>\n<p>Nella presentazione verr\u00e0 fatto un confronto <noindex><a rel=\"nofollow\" href=\"https:\/\/github.com\/thanos-io\/thanos\">Thanos<\/a><\/noindex> e <noindex><a rel=\"nofollow\" href=\"https:\/\/github.com\/VictoriaMetrics\/VictoriaMetrics\">VictoriaMetrics<\/a><\/noindex> \u2014 progetti per l'archiviazione a lungo termine delle metriche di Prometheus.<\/p>\n<p><noindex><a rel=\"nofollow\" name=\"habracut\"><\/a><\/noindex><\/p>\n<p><img decoding=\"async\" alt=\"Scegliamo un sistema di archiviazione per Prometheus: Thanos vs VictoriaMetrics\" src=\"\/wp-content\/uploads\/2019\/12\/b65866353c1f816a8cb2a90af1ceac23.jpg\" style=\"display:block;margin: 0 auto;\" \/><\/p>\n<p>\n<center><div class=\"youtube-placeholder\" data-id=\"HyOXAdQE0Pk\" onclick=\"loadVideo(this)\">\r\n        <img decoding=\"async\" src=\"https:\/\/img.youtube.com\/vi\/HyOXAdQE0Pk\/hqdefault.jpg\" alt=\"Guarda il video\" loading=\"lazy\" width=\"480\" height=\"360\" style=\"width:100%;height:auto;\">\r\n        <div class=\"play-button\"><\/div>\r\n    <\/div><\/center><\/p>\n<p><img decoding=\"async\" alt=\"Scegliamo un sistema di archiviazione per Prometheus: Thanos vs VictoriaMetrics\" src=\"\/wp-content\/uploads\/2019\/12\/dc3c90711a8102d3e70b972ca47ec152.jpg\" style=\"display:block;margin: 0 auto;\" \/><\/p>\n<p><\/p>\n<p>Iniziamo a parlare di Prometheus. \u00c8 un sistema di monitoraggio che raccoglie metriche da target specificati e le conserva in uno storage locale. Prometheus \u00e8 in grado di registrare metriche in uno storage remoto, generare alert e recording rules. <\/p>\n<p><\/p>\n<p><img decoding=\"async\" alt=\"Scegliamo un sistema di archiviazione per Prometheus: Thanos vs VictoriaMetrics\" src=\"\/wp-content\/uploads\/2019\/12\/e9852597e74c675d2216d971f19857c2.jpg\" style=\"display:block;margin: 0 auto;\" \/><\/p>\n<p><\/p>\n<h3 id=\"ogranicheniya-prometheus\">Limitazioni di Prometheus:<\/h3>\n<p><\/p>\n<ul>\n<li>Non ha una vista di query globale. Questo accade quando si hanno pi\u00f9 istanze indipendenti di Prometheus. Raccolgono metriche e si desidera eseguire una query su tutte queste metriche raccolte da diverse istanze di Prometheus. Prometheus non lo consente.<\/li>\n<li>La performance di Prometheus \u00e8 limitata a un singolo server. Prometheus non pu\u00f2 scalare automaticamente su pi\u00f9 server. Puoi solo suddividere manualmente i tuoi target tra diverse istanze di Prometheus.<\/li>\n<li>Il volume delle metriche in Prometheus \u00e8 limitato a un solo server per lo stesso motivo per cui non pu\u00f2 scalare automaticamente su pi\u00f9 server.<\/li>\n<li>In Prometheus non \u00e8 facile organizzare la salvaguardia dei dati.<\/li>\n<\/ul>\n<p><\/p>\n<p><img decoding=\"async\" alt=\"Scegliamo un sistema di archiviazione per Prometheus: Thanos vs VictoriaMetrics\" src=\"\/wp-content\/uploads\/2019\/12\/c140d41f1fe39d33e1fc84f5cc111481.jpg\" style=\"display:block;margin: 0 auto;\" \/><\/p>\n<p><\/p>\n<h3 id=\"resheniya-etih-problemzadach\">Soluzioni a queste problematiche?<\/h3>\n<p><\/p>\n<p>Le soluzioni sono le seguenti:<\/p>\n<p><\/p>\n<ul>\n<li><noindex><a rel=\"nofollow\" href=\"https:\/\/github.com\/thanos-io\/thanos\">Thanos<\/a><\/noindex><\/li>\n<li><noindex><a rel=\"nofollow\" href=\"https:\/\/github.com\/VictoriaMetrics\/VictoriaMetrics\">VictoriaMetrics<\/a><\/noindex><\/li>\n<li><noindex><a rel=\"nofollow\" href=\"https:\/\/github.com\/m3db\">Uber M3<\/a><\/noindex><\/li>\n<li><noindex><a rel=\"nofollow\" href=\"https:\/\/github.com\/cortexproject\/cortex\">Cortex<\/a><\/noindex><\/li>\n<\/ul>\n<p><\/p>\n<p>Tutte queste soluzioni sono per l'archiviazione remota dei dati raccolti da Prometheus. Risolvono il problema dell'archiviazione remota in modi diversi rispetto alla diapositiva precedente. In questa presentazione parler\u00f2 solo delle prime due soluzioni: <noindex><a rel=\"nofollow\" href=\"https:\/\/github.com\/thanos-io\/thanos\">Thanos<\/a><\/noindex> e <noindex><a rel=\"nofollow\" href=\"https:\/\/github.com\/VictoriaMetrics\/VictoriaMetrics\">VictoriaMetrics<\/a><\/noindex>.<\/p>\n<p><\/p>\n<p>Per la prima volta le informazioni su <noindex><a rel=\"nofollow\" href=\"https:\/\/github.com\/thanos-io\/thanos\">Thanos<\/a><\/noindex> sono emerse nel <noindex><a rel=\"nofollow\" href=\"https:\/\/improbable.io\/blog\/thanos-prometheus-at-scale\">questo link<\/a><\/noindex>. Qui viene descritta l'architettura <noindex><a rel=\"nofollow\" href=\"https:\/\/github.com\/thanos-io\/thanos\">Thanos<\/a><\/noindex> e come funziona.<\/p>\n<p><\/p>\n<p><img decoding=\"async\" alt=\"Scegliamo un sistema di archiviazione per Prometheus: Thanos vs VictoriaMetrics\" src=\"\/wp-content\/uploads\/2019\/12\/317db6bb4c3cd69d8742addb2bae16a4.jpg\" style=\"display:block;margin: 0 auto;\" \/><\/p>\n<p><\/p>\n<p>Thanos prende i dati salvati da Prometheus su disco locale e li copia in S3, in <noindex><a rel=\"nofollow\" href=\"https:\/\/cloud.google.com\/storage\/\">GCS<\/a><\/noindex> o in un altro storage a oggetti.<\/p>\n<p><\/p>\n<p><img decoding=\"async\" alt=\"Scegliamo un sistema di archiviazione per Prometheus: Thanos vs VictoriaMetrics\" src=\"\/wp-content\/uploads\/2019\/12\/7cf5f99dc5ce78f22c5956373812c0aa.jpg\" style=\"display:block;margin: 0 auto;\" \/><\/p>\n<p><\/p>\n<p>In questo modo Thanos offre una vista di query globale. \u00c8 possibile richiedere dati salvati nello storage a oggetti da pi\u00f9 istanze di Prometheus.<\/p>\n<p><\/p>\n<p><img decoding=\"async\" alt=\"Scegliamo un sistema di archiviazione per Prometheus: Thanos vs VictoriaMetrics\" src=\"\/wp-content\/uploads\/2019\/12\/286cf441fe18fb756c2708086872d8d8.jpg\" style=\"display:block;margin: 0 auto;\" \/><\/p>\n<p><\/p>\n<p>Thanos supporta PromQL e <noindex><a rel=\"nofollow\" href=\"https:\/\/prometheus.io\/docs\/prometheus\/latest\/querying\/api\/\">l'API di query di Prometheus<\/a><\/noindex>.<\/p>\n<p><\/p>\n<p><img decoding=\"async\" alt=\"Scegliamo un sistema di archiviazione per Prometheus: Thanos vs VictoriaMetrics\" src=\"\/wp-content\/uploads\/2019\/12\/6a750070d76414370501a8153cd48007.jpg\" style=\"display:block;margin: 0 auto;\" \/><\/p>\n<p><\/p>\n<p>Thanos utilizza il codice di Prometheus per l'archiviazione dei dati.<\/p>\n<p><\/p>\n<p><img decoding=\"async\" alt=\"Scegliamo un sistema di archiviazione per Prometheus: Thanos vs VictoriaMetrics\" src=\"\/wp-content\/uploads\/2019\/12\/ba0ca17154f9407900efc336f213ba07.jpg\" style=\"display:block;margin: 0 auto;\" \/><\/p>\n<p><\/p>\n<p>Thanos \u00e8 sviluppato dagli stessi sviluppatori di Prometheus.<\/p>\n<p><\/p>\n<p>Su <noindex><a rel=\"nofollow\" href=\"https:\/\/github.com\/VictoriaMetrics\/VictoriaMetrics\">VictoriaMetrics<\/a><\/noindex>. Ecco <noindex><a rel=\"nofollow\" href=\"https:\/\/medium.com\/faun\/victoriametrics-creating-the-best-remote-storage-for-prometheus-5d92d66787ac\">link<\/a><\/noindex>, dove abbiamo parlato per la prima volta di <noindex><a rel=\"nofollow\" href=\"https:\/\/github.com\/VictoriaMetrics\/VictoriaMetrics\">VictoriaMetrics<\/a><\/noindex>.<\/p>\n<p><\/p>\n<p><img decoding=\"async\" alt=\"Scegliamo un sistema di archiviazione per Prometheus: Thanos vs VictoriaMetrics\" src=\"\/wp-content\/uploads\/2019\/12\/a901d016e6e58c40c6c7c96b1cd5a8c9.jpg\" style=\"display:block;margin: 0 auto;\" \/><\/p>\n<p><\/p>\n<p>VictoriaMetrics ottiene i dati da pi\u00f9 prometheus tramite <noindex><a rel=\"nofollow\" href=\"https:\/\/prometheus.io\/docs\/practices\/remote_write\/\">API di scrittura remota<\/a><\/noindex> protocollo supportato da Prometheus.<\/p>\n<p><\/p>\n<p><img decoding=\"async\" alt=\"Scegliamo un sistema di archiviazione per Prometheus: Thanos vs VictoriaMetrics\" src=\"\/wp-content\/uploads\/2019\/12\/24798414102cc63a1a1062c5ae327f4c.jpg\" style=\"display:block;margin: 0 auto;\" \/><\/p>\n<p><\/p>\n<p>VictoriaMetrics offre una vista globale delle query, poich\u00e9 pi\u00f9 istanze di Prometheus possono registrare dati in un'unica VictoriaMetrics. Di conseguenza, puoi effettuare query su tutti questi dati.<\/p>\n<p><\/p>\n<p><img decoding=\"async\" alt=\"Scegliamo un sistema di archiviazione per Prometheus: Thanos vs VictoriaMetrics\" src=\"\/wp-content\/uploads\/2019\/12\/a717855dbdf1df859927a75557ee2573.jpg\" style=\"display:block;margin: 0 auto;\" \/><\/p>\n<p><\/p>\n<p>VictoriaMetrics supporta anche, come Thanos, PromQL e l'API di query di Prometheus.<\/p>\n<p><\/p>\n<p><img decoding=\"async\" alt=\"Scegliamo un sistema di archiviazione per Prometheus: Thanos vs VictoriaMetrics\" src=\"\/wp-content\/uploads\/2019\/12\/84daf1b7e160e6f9d8a53a83329f2436.jpg\" style=\"display:block;margin: 0 auto;\" \/><\/p>\n<p><\/p>\n<p>A differenza di Thanos, il codice sorgente di VictoriaMetrics \u00e8 stato scritto da zero ed \u00e8 ottimizzato per velocit\u00e0 e consumo di risorse. <\/p>\n<p><\/p>\n<p><img decoding=\"async\" alt=\"Scegliamo un sistema di archiviazione per Prometheus: Thanos vs VictoriaMetrics\" src=\"\/wp-content\/uploads\/2019\/12\/371dee8d4705438f560245c4e5e7444f.jpg\" style=\"display:block;margin: 0 auto;\" \/><\/p>\n<p><\/p>\n<p>VictoriaMetrics, a differenza di Thanos, scala sia verticalmente che orizzontalmente. C'\u00e8 <noindex><a rel=\"nofollow\" href=\"https:\/\/github.com\/VictoriaMetrics\/VictoriaMetrics\/blob\/master\/README.md\">una versione single-node<\/a><\/noindex>, che scala verticalmente. Puoi iniziare con una CPU e 1 GB di RAM e crescere gradualmente fino a cento CPU e 1 TB di RAM. VictoriaMetrics \u00e8 in grado di utilizzare tutte queste risorse. Le sue prestazioni aumenteranno di circa 100 volte rispetto a un sistema a singolo core. <\/p>\n<p><\/p>\n<p><img decoding=\"async\" alt=\"Scegliamo un sistema di archiviazione per Prometheus: Thanos vs VictoriaMetrics\" src=\"\/wp-content\/uploads\/2019\/12\/697e77546cda492f8512e7e761c0300f.jpg\" style=\"display:block;margin: 0 auto;\" \/><\/p>\n<p><\/p>\n<p>La storia di Thanos \u00e8 iniziata nel novembre 2017, quando \u00e8 stato effettuato il primo commit pubblico. Prima di ci\u00f2, Thanos \u00e8 stato sviluppato internamente dall'azienda <noindex><a rel=\"nofollow\" href=\"https:\/\/improbable.io\">improbable.io<\/a><\/noindex>. <\/p>\n<p><\/p>\n<p><img decoding=\"async\" alt=\"Scegliamo un sistema di archiviazione per Prometheus: Thanos vs VictoriaMetrics\" src=\"\/wp-content\/uploads\/2019\/12\/610a81cfb98082bb61b7ae28b00d2c78.jpg\" style=\"display:block;margin: 0 auto;\" \/><\/p>\n<p><\/p>\n<p>Nel giugno 2019 \u00e8 stata rilasciata la versione 0.5.0, che <noindex><a rel=\"nofollow\" href=\"https:\/\/thanos.io\/proposals\/201809_gossip-removal.md\/\">ha rimosso<\/a><\/noindex> <noindex><a rel=\"nofollow\" href=\"https:\/\/en.wikipedia.org\/wiki\/Gossip_protocol\">gossip<\/a><\/noindex> il protocollo. \u00c8 stato rimosso da Thanos perch\u00e9 ha mostrato diversi problemi. Spesso il cluster di Thanos non funzionava correttamente, le nodi si collegavano in modo errato a causa del protocollo gossip. Pertanto, \u00e8 stata presa la decisione di rimuoverlo. Credo che sia stata una scelta corretta. <\/p>\n<p><\/p>\n<p><img decoding=\"async\" alt=\"Scegliamo un sistema di archiviazione per Prometheus: Thanos vs VictoriaMetrics\" src=\"\/wp-content\/uploads\/2019\/12\/d7ecf0105d46464aadc4c46147edf9dc.jpg\" style=\"display:block;margin: 0 auto;\" \/><\/p>\n<p><\/p>\n<p>Nello stesso giugno 2019, hanno presentato la richiesta numero <noindex><a rel=\"nofollow\" href=\"https:\/\/github.com\/cncf\/toc\/pull\/256\">256<\/a><\/noindex> in <noindex><a rel=\"nofollow\" href=\"https:\/\/www.cncf.io\/\">Cloud Native Computing Foundation<\/a><\/noindex>.<\/p>\n<p><\/p>\n<p><img decoding=\"async\" alt=\"Scegliamo un sistema di archiviazione per Prometheus: Thanos vs VictoriaMetrics\" src=\"\/wp-content\/uploads\/2019\/12\/a8685a616bbdc619009c570e28c9f15b.jpg\" style=\"display:block;margin: 0 auto;\" \/><\/p>\n<p><\/p>\n<p>E dopo un paio di mesi Thanos \u00e8 stato accettato in <noindex><a rel=\"nofollow\" href=\"https:\/\/www.cncf.io\/\">Cloud Native Computing Foundation<\/a><\/noindex>, che include Prometheus, Kubernetes e altri progetti popolari.<\/p>\n<p><\/p>\n<p><img decoding=\"async\" alt=\"Scegliamo un sistema di archiviazione per Prometheus: Thanos vs VictoriaMetrics\" src=\"\/wp-content\/uploads\/2019\/12\/90c64c519aa283b13ce64b96da5ac945.jpg\" style=\"display:block;margin: 0 auto;\" \/><\/p>\n<p><\/p>\n<p>Nel gennaio 2018 \u00e8 iniziato lo sviluppo di VictoriaMetrics.<\/p>\n<p><\/p>\n<p><img decoding=\"async\" alt=\"Scegliamo un sistema di archiviazione per Prometheus: Thanos vs VictoriaMetrics\" src=\"\/wp-content\/uploads\/2019\/12\/c2243e3e0a8d00715644d7c84627c5cb.jpg\" style=\"display:block;margin: 0 auto;\" \/><\/p>\n<p><\/p>\n<p>Nel settembre 2018 ho menzionato per la prima volta VictoriaMetrics pubblicamente.<\/p>\n<p><\/p>\n<p><img decoding=\"async\" alt=\"Scegliamo un sistema di archiviazione per Prometheus: Thanos vs VictoriaMetrics\" src=\"\/wp-content\/uploads\/2019\/12\/66feecad1783c36651cdf2a19e6d0d70.jpg\" style=\"display:block;margin: 0 auto;\" \/><\/p>\n<p><\/p>\n<p>Nel dicembre 2018 \u00e8 stata pubblicata la versione single-node.<\/p>\n<p><\/p>\n<p><img decoding=\"async\" alt=\"Scegliamo un sistema di archiviazione per Prometheus: Thanos vs VictoriaMetrics\" src=\"\/wp-content\/uploads\/2019\/12\/aacf5d683c7d639df7a9f05e297f08c4.jpg\" style=\"display:block;margin: 0 auto;\" \/><\/p>\n<p><\/p>\n<p>Nel maggio 2019 <noindex><a rel=\"nofollow\" href=\"https:\/\/blog.usejournal.com\/open-sourcing-victoriametrics-f31e34485c2b\">sono stati pubblicati<\/a><\/noindex> i sorgenti sia della versione single-node che di quella cluster. <\/p>\n<p><\/p>\n<p><img decoding=\"async\" alt=\"Scegliamo un sistema di archiviazione per Prometheus: Thanos vs VictoriaMetrics\" src=\"\/wp-content\/uploads\/2019\/12\/6da160c13c87133b1994ef32f86db077.jpg\" style=\"display:block;margin: 0 auto;\" \/><\/p>\n<p><\/p>\n<p>Nel giugno 2019, come Thanos, abbiamo presentato una richiesta alla CNCF foundation con il numero <noindex><a rel=\"nofollow\" href=\"https:\/\/github.com\/cncf\/toc\/pull\/255\">255<\/a><\/noindex>. Abbiamo presentato la richiesta un giorno prima di Thanos. <\/p>\n<p><\/p>\n<p><img decoding=\"async\" alt=\"Scegliamo un sistema di archiviazione per Prometheus: Thanos vs VictoriaMetrics\" src=\"\/wp-content\/uploads\/2019\/12\/12c281eae67b3cec5a66fab41aee1fdb.jpg\" style=\"display:block;margin: 0 auto;\" \/><\/p>\n<p><\/p>\n<p>Ma, sfortunatamente, non siamo ancora stati accettati. Abbiamo bisogno dell'aiuto della comunit\u00e0.<\/p>\n<p><\/p>\n<p><img decoding=\"async\" alt=\"Scegliamo un sistema di archiviazione per Prometheus: Thanos vs VictoriaMetrics\" src=\"\/wp-content\/uploads\/2019\/12\/ab7b20661c3cfa01209cd742eb71a898.jpg\" style=\"display:block;margin: 0 auto;\" \/><\/p>\n<p><\/p>\n<p>Esaminiamo le diapositive pi\u00f9 importanti che mostrano l'architettura di Thanos e VictoriaMetrics.<\/p>\n<p><\/p>\n<p><img decoding=\"async\" alt=\"Scegliamo un sistema di archiviazione per Prometheus: Thanos vs VictoriaMetrics\" src=\"\/wp-content\/uploads\/2019\/12\/a268b600bcd0cebfd9c5069d2d911a9d.jpg\" style=\"display:block;margin: 0 auto;\" \/><\/p>\n<p><\/p>\n<p>Iniziamo con Thanos. I componenti gialli sono i componenti di Prometheus. Il resto sono i componenti di Thanos. Partiamo dal componente principale. Thanos Sidecar \u00e8 un componente che viene installato accanto a ogni Prometheus. Si occupa di caricare i dati di Prometheus dallo storage locale in S3 o in un altro Object Storage. <\/p>\n<p><\/p>\n<p>C'\u00e8 anche un componente chiamato Thanos Store Gateway, che \u00e8 in grado di leggere questi dati da Object Storage quando riceve richieste da Thanos Query. Thanos Query implementa PromQL e l'API di Prometheus. Quindi, da fuori, appare come Prometheus. Riceve richieste PromQL, le invia a Thanos Store Gateway, che recupera i dati necessari da Object Storage e li restituisce.<\/p>\n<p><\/p>\n<p>Tuttavia, nel nostro Object Storage vengono conservati dati che non coprono le ultime due ore a causa delle peculiarit\u00e0 dell'implementazione di Thanos Sidecar, che non riesce a caricare le ultime due ore in Object Storage S3, poich\u00e9 per queste ultime due ore Prometheus non ha ancora creato i file nel suo archivio locale.<\/p>\n<p><\/p>\n<p>Come si pu\u00f2 aggirare questo problema? Thanos Query, oltre a inviare richieste a Thanos Store Gateway, invia parallelamente richieste a ogni Thanos Sidecar che si trova vicino a Prometheus. <\/p>\n<p><\/p>\n<p>E Thanos Sidecar, a sua volta, inoltra le richieste a Prometheus e recupera i dati delle ultime due ore.<\/p>\n<p><\/p>\n<p>Oltre a questi componenti, c'\u00e8 un componente opzionale senza il quale Thanos avr\u00e0 problemi. Questo \u00e8 Thanos Compact, che si occupa di unire piccoli file nello Object Storage in file pi\u00f9 grandi, caricati qui dai Thanos Sidecar. Thanos Sidecar carica file con dati per due ore. Se questi file non vengono uniti in file pi\u00f9 grandi, il loro numero pu\u00f2 aumentare significativamente. Pi\u00f9 file ci sono, pi\u00f9 memoria \u00e8 necessaria per Thanos Store Gateway e pi\u00f9 risorse sono richieste per il trasferimento di dati e metadati. Il funzionamento di Thanos Store Gateway diventa inefficiente. Pertanto, \u00e8 necessario eseguire Thanos Compact, che unisce i piccoli file in file pi\u00f9 grandi, affinch\u00e9 ce ne siano meno e per ridurre il sovraccarico su Thanos Store Gateway.<\/p>\n<p><\/p>\n<p>C'\u00e8 anche un componente chiamato Thanos Ruler. Esso esegue le regole di allerta di Prometheus e pu\u00f2 calcolare le regole di registrazione di Prometheus, per registrare nuovamente i dati in Object Storage. Tuttavia, questo componente non \u00e8 raccomandato, poich\u00e9 \u00e8 <noindex><a rel=\"nofollow\" href=\"https:\/\/github.com\/thanos-io\/thanos\/blob\/master\/docs\/components\/rule.md#risk\">incline a restituire dati incompleti<\/a><\/noindex>.<\/p>\n<p><\/p>\n<p>Ecco uno schema semplice di Thanos. <\/p>\n<p><\/p>\n<p><img decoding=\"async\" alt=\"Scegliamo un sistema di archiviazione per Prometheus: Thanos vs VictoriaMetrics\" src=\"\/wp-content\/uploads\/2019\/12\/3f7cd77a1c056bf7ac245c774d05ea34.jpg\" style=\"display:block;margin: 0 auto;\" \/><\/p>\n<p><\/p>\n<p>Ora confrontiamo con lo schema di VictoriaMetrics.<\/p>\n<p><\/p>\n<p>VictoriaMetrics ha 2 versioni: Single-node e una versione cluster. Single-node funziona su un solo computer. Nella versione Single-node non ci sono questi componenti, solo un singolo binario. Questo binario nella diapositiva appare come questo quadrato. Tutto ci\u00f2 che si trova all'interno del quadrato \u00e8 il contenuto del file binario per la versione Single-node. Non \u00e8 necessario sapere di questo. Basta avviare il binario e tutto funziona. <\/p>\n<p><\/p>\n<p>La versione cluster \u00e8 pi\u00f9 complessa. All'interno di essa si trovano tre componenti diverse: vmselect, vminsert e vmstorage. Dalla loro denominazione dovrebbe essere chiaro cosa ciascuno di essi fa. Il componente Insert accetta dati in diversi formati: dall'API Prometheus remote write, dal protocollo Influx line, dal protocollo Graphite e dal protocollo OpenTSDB. Il componente Insert li riceve, li analizza e li distribuisce tra i componenti storage esistenti, dove i dati vengono poi salvati. Il componente Select, a sua volta, accetta query PromQL. Implementa <noindex><a rel=\"nofollow\" href=\"https:\/\/medium.com\/@valyala\/promql-tutorial-for-beginners-9ab455142085\">PromQL<\/a><\/noindex>, cos\u00ec come l'API di query di Prometheus, e pu\u00f2 essere utilizzato come sostituto di Prometheus in Grafana o in altri client API di Prometheus. Select accetta la query promql, la elabora, legge i dati necessari per eseguire tale query dai nodi storage, li processa e restituisce la risposta.<\/p>\n<p><\/p>\n<p><img decoding=\"async\" alt=\"Scegliamo un sistema di archiviazione per Prometheus: Thanos vs VictoriaMetrics\" src=\"\/wp-content\/uploads\/2019\/12\/5b4f1ec2504c1bea423e58ced26570bd.jpg\" style=\"display:block;margin: 0 auto;\" \/><\/p>\n<p><\/p>\n<p>Confrontiamo la complessit\u00e0 di installazione di Thanos e VictoriaMetrics.<\/p>\n<p><\/p>\n<p><img decoding=\"async\" alt=\"Scegliamo un sistema di archiviazione per Prometheus: Thanos vs VictoriaMetrics\" src=\"\/wp-content\/uploads\/2019\/12\/39b293fc911b2987a191cc5d98b1c9f7.jpg\" style=\"display:block;margin: 0 auto;\" \/><\/p>\n<p><\/p>\n<p>Iniziamo con Thanos. Prima di iniziare a lavorare con Thanos, \u00e8 necessario creare un bucket nello Storage Object, come S3 o GCS, affinch\u00e9 il Thanos Sidecar possa scrivervi i dati. <\/p>\n<p><\/p>\n<p><img decoding=\"async\" alt=\"Scegliamo un sistema di archiviazione per Prometheus: Thanos vs VictoriaMetrics\" src=\"\/wp-content\/uploads\/2019\/12\/7a59c36c4453f1747067c79d9a9b8e2a.jpg\" style=\"display:block;margin: 0 auto;\" \/><\/p>\n<p><\/p>\n<p>Poi, per ogni Prometheus, \u00e8 necessario installare il Thanos Sidecar. Prima di ci\u00f2, non dimenticate di disattivare la compressione dei dati in Prometheus. La compressione dei dati comprime periodicamente i dati nello storage locale di Prometheus per ridurre il consumo di risorse.<\/p>\n<p><\/p>\n<p>Quando installi Thanos Sidecar alle tue istanze di Prometheus, devi disabilitare la compressione dei dati, perch\u00e9 Thanos Sidecar non pu\u00f2 funzionare correttamente con la compressione dei dati attivata. Questo significa che il tuo Prometheus inizia a salvare i dati in blocchi di due ore e smette di unire questi blocchi in file pi\u00f9 grandi. Di conseguenza, se fai richieste che superano la durata delle ultime due ore, queste non funzioneranno altrettanto efficacemente rispetto a come potrebbero farlo se la compressione dei dati fosse attivata.<\/p>\n<p><\/p>\n<p><img decoding=\"async\" alt=\"Scegliamo un sistema di archiviazione per Prometheus: Thanos vs VictoriaMetrics\" src=\"\/wp-content\/uploads\/2019\/12\/825b70ede9edd1de6658576e2b824cd1.jpg\" style=\"display:block;margin: 0 auto;\" \/><\/p>\n<p><\/p>\n<p>Pertanto, Thanos consiglia di ridurre il periodo di conservazione dei dati nello storage locale a 6-8 ore, per diminuire questo overhead di un gran numero di piccoli blocchi.<\/p>\n<p><\/p>\n<p>Dopo aver installato il Thanos Sidecar, dovete installare due componenti per ogni bucket dello Storage Object. Questi sono Thanos Compactor e Thanos Store Gateway. <\/p>\n<p><\/p>\n<p><img decoding=\"async\" alt=\"Scegliamo un sistema di archiviazione per Prometheus: Thanos vs VictoriaMetrics\" src=\"\/wp-content\/uploads\/2019\/12\/77575d65a75bfd9af8d7dedf0cc5c922.jpg\" style=\"display:block;margin: 0 auto;\" \/><\/p>\n<p><\/p>\n<p>Dopo di che, \u00e8 necessario installare Thanos Query e configurarlo affinch\u00e9 possa collegarsi a tutti i Thanos Store Gateway che avete, cos\u00ec come ai Thanos Sidecar.<\/p>\n<p><\/p>\n<p>Qui potrebbe esserci un piccolo problema. <\/p>\n<p><\/p>\n<p><img decoding=\"async\" alt=\"Scegliamo un sistema di archiviazione per Prometheus: Thanos vs VictoriaMetrics\" src=\"\/wp-content\/uploads\/2019\/12\/6eddee956c58991ccee52891b368f10f.jpg\" style=\"display:block;margin: 0 auto;\" \/><\/p>\n<p><\/p>\n<p>\u00c8 necessario configurare una connessione sicura e protetta da Thanos Query a questi componenti. E se le tue istanze di Prometheus si trovano in diversi data center o in diverse VPC, le connessioni dall'esterno sono vietate. Ma per far funzionare Thanos Query devi trovare un modo per configurare la connessione.<\/p>\n<p><\/p>\n<p>Se hai molti data center, la stabilit\u00e0 dell'intero sistema ne risente. Infatti, Thanos Query deve mantenere costantemente le connessioni con tutti i Thanos Sidecar, che si trovano in diversi data center. Ad ogni richiesta in arrivo, invier\u00e0 query a tutti i Thanos Sidecar. Se la connessione viene interrotta, riceverai un set di dati incompleto o un messaggio di errore &#171;il cluster non funziona&#187;. <\/p>\n<p><\/p>\n<p><img decoding=\"async\" alt=\"Scegliamo un sistema di archiviazione per Prometheus: Thanos vs VictoriaMetrics\" src=\"\/wp-content\/uploads\/2019\/12\/13c3765871568ac0db4014964cb5d752.jpg\" style=\"display:block;margin: 0 auto;\" \/><\/p>\n<p><\/p>\n<p>In VictoriaMetrics tutto \u00e8 un po' pi\u00f9 semplice. Per la versione Single-node, \u00e8 sufficiente avviare un singolo binario e tutto funziona. <\/p>\n<p><\/p>\n<p><img decoding=\"async\" alt=\"Scegliamo un sistema di archiviazione per Prometheus: Thanos vs VictoriaMetrics\" src=\"\/wp-content\/uploads\/2019\/12\/1edf992a6404f5dea1ae2bd4f4d2d8fd.jpg\" style=\"display:block;margin: 0 auto;\" \/><\/p>\n<p><\/p>\n<p>Nella versione cluster \u00e8 sufficiente avviare tutti e tre i tipi di componenti sopra menzionati nel numero necessario, oppure utilizzare <noindex><a rel=\"nofollow\" href=\"https:\/\/github.com\/VictoriaMetrics\/helm-charts\/\">helm chart<\/a><\/noindex> per automatizzare l'avvio dei componenti in Kubernetes. Stiamo anche pianificando di creare un operatore Kubernetes. Helm chart non copre alcuni casi e permette di farsi del male. Ad esempio, consente di ridurre il numero di storage node, il che porter\u00e0 alla perdita di dati.<\/p>\n<p><\/p>\n<p><img decoding=\"async\" alt=\"Scegliamo un sistema di archiviazione per Prometheus: Thanos vs VictoriaMetrics\" src=\"\/wp-content\/uploads\/2019\/12\/ad4249222cb5e591d7e7bd0b7f1708c0.jpg\" style=\"display:block;margin: 0 auto;\" \/><\/p>\n<p><\/p>\n<p>Dopo aver avviato un binario o la versione cluster, \u00e8 sufficiente aggiungere nel config di Prometheus <noindex><a rel=\"nofollow\" href=\"https:\/\/github.com\/VictoriaMetrics\/VictoriaMetrics\/blob\/master\/README.md#prometheus-setup\">la configurazione per l'URL remote write<\/a><\/noindex>, affinch\u00e9 inizi a registrare i dati in parallelo sia nel storage locale che nel remote storage. Come avrai notato, questa configurazione dovrebbe funzionare in modo significativamente pi\u00f9 affidabile rispetto alla configurazione di Thanos. Non dobbiamo mantenere una connessione da VictoriaMetrics a tutti i Prometheus, perch\u00e9 i Prometheus si connettono autonomamente a VictoriaMetrics e inviano i dati. <\/p>\n<p><\/p>\n<p><img decoding=\"async\" alt=\"Scegliamo un sistema di archiviazione per Prometheus: Thanos vs VictoriaMetrics\" src=\"\/wp-content\/uploads\/2019\/12\/465ffc6cd77b2ca022b2541851a7ddbc.jpg\" style=\"display:block;margin: 0 auto;\" \/><\/p>\n<p><\/p>\n<p>Consideriamo il supporto di Thanos e VictoriaMetrics.<\/p>\n<p><\/p>\n<p><img decoding=\"async\" alt=\"Scegliamo un sistema di archiviazione per Prometheus: Thanos vs VictoriaMetrics\" src=\"\/wp-content\/uploads\/2019\/12\/6043f0d3d99cb3e49837f03d3e6bbb9b.jpg\" style=\"display:block;margin: 0 auto;\" \/><\/p>\n<p><\/p>\n<p>Thanos deve monitorare Sidecar affinch\u00e9 non interrompa il caricamento dei dati in Object Storage. Possono interrompere questo caricamento a causa di errori, ad esempio se la connessione di rete con Object Storage si interrompe temporaneamente o se Object Storage diventa temporaneamente non disponibile. In questo momento, Thanos Sidecar lo noter\u00e0, segnaler\u00e0 un errore, potrebbe bloccarsi e smettere di funzionare. Se non viene monitorato, i dati smetteranno di essere inviati a Object Storage. Se scade il tempo di retention (6-8 ore raccomandato), si perderanno i dati che non sono stati trasferiti in Object Storage.<\/p>\n<p><\/p>\n<p><img decoding=\"async\" alt=\"Scegliamo un sistema di archiviazione per Prometheus: Thanos vs VictoriaMetrics\" src=\"\/wp-content\/uploads\/2019\/12\/7c6556fecdee4ca4986931c2eebf9895.jpg\" style=\"display:block;margin: 0 auto;\" \/><\/p>\n<p><\/p>\n<p>I compattatori Thanos possono smettere di funzionare a causa di <noindex><a rel=\"nofollow\" href=\"https:\/\/github.com\/thanos-io\/thanos\/issues\/1919\">race con Sidecar<\/a><\/noindex>. I Compactor prelevano i dati dall'Object Storage e li uniscono in blocchi di dati pi\u00f9 grandi. Poich\u00e9 i compactor non sono sincronizzati con i Sidecar, pu\u00f2 verificarsi quanto segue: il Sidecar non ha ancora completato la scrittura del blocco, mentre il Compactor decide che il blocco \u00e8 completamente registrato. Il Compactor inizia a leggerlo e lo legge in forma incompleta, smettendo di funzionare. Vedi i dettagli <noindex><a rel=\"nofollow\" href=\"https:\/\/thanos.io\/proposals\/201901-read-write-operations-bucket.md\/\">qui<\/a><\/noindex>.<\/p>\n<p><\/p>\n<p><img decoding=\"async\" alt=\"Scegliamo un sistema di archiviazione per Prometheus: Thanos vs VictoriaMetrics\" src=\"\/wp-content\/uploads\/2019\/12\/7fd00e243009763781b54043dec1e94b.jpg\" style=\"display:block;margin: 0 auto;\" \/><\/p>\n<p><\/p>\n<p>Lo Store Gateway pu\u00f2 restituire dati inconsistenti a causa di race tra il Compactor e i Sidecar. La situazione \u00e8 simile, poich\u00e9 lo Store Gateway non \u00e8 sincronizzato con i Compactor e i Sidecar. Pertanto, possono verificarsi stati di race in cui lo Store Gateway non vede parte dei dati o visualizza dati extra.<\/p>\n<p><\/p>\n<p><img decoding=\"async\" alt=\"Scegliamo un sistema di archiviazione per Prometheus: Thanos vs VictoriaMetrics\" src=\"\/wp-content\/uploads\/2019\/12\/85fcc811173dda1a42ac8d4e3b212f5e.jpg\" style=\"display:block;margin: 0 auto;\" \/><\/p>\n<p><\/p>\n<p>Il componente Query in Thanos restituisce per impostazione predefinita un risultato parziale se alcune Sidecar o lo Store Gateway non sono disponibili in quel momento. Riceverai parte dei dati e nemmeno saprai che non hai ricevuto tutti i dati. Funziona cos\u00ec di default. In una situazione simile, VictoriaMetrics restituisce i dati contrassegnati come parziali. <\/p>\n<p><\/p>\n<p><img decoding=\"async\" alt=\"Scegliamo un sistema di archiviazione per Prometheus: Thanos vs VictoriaMetrics\" src=\"\/wp-content\/uploads\/2019\/12\/a9e5a70bdcafae9b98545514ca7a7ff3.jpg\" style=\"display:block;margin: 0 auto;\" \/><\/p>\n<p><\/p>\n<p>A differenza di Thanos, VictoriaMetrics perde raramente dati. Anche se la connessione tra Prometheus e VictoriaMetrics si interrompe, non \u00e8 un problema, poich\u00e9 Prometheus continua a scrivere i nuovi dati in arrivo nel Write Ahead Log, la cui dimensione \u00e8 di due ore. Se ripristini la connessione a VictoriaMetrics entro due ore, i dati non andranno persi. Prometheus <noindex><a rel=\"nofollow\" href=\"https:\/\/grafana.com\/blog\/2019\/03\/25\/whats-new-in-prometheus-2.8-wal-based-remote-write\/\">\u00e8 in grado di continuare a scrivere dati dopo il ripristino della connessione a VictoriaMetrics<\/a><\/noindex>.<\/p>\n<p><\/p>\n<p><img decoding=\"async\" alt=\"Scegliamo un sistema di archiviazione per Prometheus: Thanos vs VictoriaMetrics\" src=\"\/wp-content\/uploads\/2019\/12\/fa4be02056f7338416029bfd8f9d0214.jpg\" style=\"display:block;margin: 0 auto;\" \/><\/p>\n<p><\/p>\n<p>A differenza di Thanos, che registra i dati nello storage oggetto solo dopo due ore, Prometheus replica automaticamente i dati tramite il protocollo remote write nello storage remoto, come VictoriaMetrics. La perdita dello storage locale in Prometheus non \u00e8 un problema. Se dovesse perdere lo storage locale, nel peggiore dei casi si perderanno solo gli ultimi secondi di dati che non sono stati ancora registrati nello storage remoto.<\/p>\n<p><\/p>\n<p><img decoding=\"async\" alt=\"Scegliamo un sistema di archiviazione per Prometheus: Thanos vs VictoriaMetrics\" src=\"\/wp-content\/uploads\/2019\/12\/a6e9b2322eb9b3e145603a6b9db1002d.jpg\" style=\"display:block;margin: 0 auto;\" \/><\/p>\n<p><\/p>\n<p>Kubernetes gestisce automaticamente il cluster, a differenza di Thanos. Tutti i componenti di Thanos sono difficili da collocare in un unico cluster Kubernetes, a differenza dei componenti cluster di VictoriaMetrics.<\/p>\n<p><\/p>\n<p><img decoding=\"async\" alt=\"Scegliamo un sistema di archiviazione per Prometheus: Thanos vs VictoriaMetrics\" src=\"\/wp-content\/uploads\/2019\/12\/5b3d1586fe461a0c6f34de09fdd12845.jpg\" style=\"display:block;margin: 0 auto;\" \/><\/p>\n<p><\/p>\n<p>L'aggiornamento a una nuova versione di VictoriaMetrics \u00e8 molto semplice. Basta fermare VictoriaMetrics, aggiornare i binari e riavviarlo. Quando si ferma tramite segnale SIGINT, tutti i binari di VictoriaMetrics eseguono un arresto controllato. Essi salvano correttamente i dati necessari, chiudono correttamente le connessioni in ingresso per evitare perdite. Pertanto, non perderai nulla durante l'aggiornamento. <\/p>\n<p><\/p>\n<p><img decoding=\"async\" alt=\"Scegliamo un sistema di archiviazione per Prometheus: Thanos vs VictoriaMetrics\" src=\"\/wp-content\/uploads\/2019\/12\/96a52e2f0696172159919536efb68ad3.jpg\" style=\"display:block;margin: 0 auto;\" \/><\/p>\n<p><\/p>\n<p>Espandere il cluster di VictoriaMetrics \u00e8 molto semplice. Basta aggiungere i componenti necessari e continuare a lavorare. <\/p>\n<p><\/p>\n<p><img decoding=\"async\" alt=\"Scegliamo un sistema di archiviazione per Prometheus: Thanos vs VictoriaMetrics\" src=\"\/wp-content\/uploads\/2019\/12\/5f5e6ef78b322bb278e618a526f05e26.jpg\" style=\"display:block;margin: 0 auto;\" \/><\/p>\n<p><\/p>\n<p>Sui problemi di Thanos e VictoriaMetrics.<\/p>\n<p><\/p>\n<p><img decoding=\"async\" alt=\"Scegliamo un sistema di archiviazione per Prometheus: Thanos vs VictoriaMetrics\" src=\"\/wp-content\/uploads\/2019\/12\/17808bc76a16e571b7e4fa1655964201.jpg\" style=\"display:block;margin: 0 auto;\" \/><\/p>\n<p><\/p>\n<p>Thanos presenta i seguenti problemi. Prometheus deve conservare i dati degli ultimi due ore. Se vengono persi, si perderanno completamente, poich\u00e9 non sono ancora stati registrati nello storage oggetto, come S3. <\/p>\n<p><\/p>\n<p><img decoding=\"async\" alt=\"Scegliamo un sistema di archiviazione per Prometheus: Thanos vs VictoriaMetrics\" src=\"\/wp-content\/uploads\/2019\/12\/81ca9135d2d97b95e9731dd1f5501859.jpg\" style=\"display:block;margin: 0 auto;\" \/><\/p>\n<p><\/p>\n<p>Il componente Store Gateway e il componente compattatore possono richiedere molta memoria per lavorare con un grande storage oggetto, se contiene molti piccoli file. Maggiore \u00e8 il numero e le dimensioni dei file, maggiore \u00e8 la memoria RAM richiesta da Store Gateway e dal compattatore per memorizzare le metainformazioni. Thanos ha molti problemi relativi a questo. <noindex><a rel=\"nofollow\" href=\"https:\/\/github.com\/thanos-io\/thanos\/issues\/448\">Store Gateway e compattatore si bloccano con volumi medi di dati registrati.<\/a><\/noindex>.<\/p>\n<p><\/p>\n<p><img decoding=\"async\" alt=\"Scegliamo un sistema di archiviazione per Prometheus: Thanos vs VictoriaMetrics\" src=\"\/wp-content\/uploads\/2019\/12\/cf75315535439843c9bb32cf1175391b.jpg\" style=\"display:block;margin: 0 auto;\" \/><\/p>\n<p><\/p>\n<p>Thanos viene pubblicizzato come in grado di scalare all'infinito con il numero dei tuoi Prometheus. In realt\u00e0, non \u00e8 vero. Poich\u00e9 tutte le richieste passano attraverso il componente Query, che deve interpellare in parallelo tutti i componenti Store Gateway e tutti i componenti Sidecar, estrarre i dati da l\u00ec e poi pre-elaborarli. \u00c8 evidente che la velocit\u00e0 delle richieste \u00e8 limitata dal collegamento pi\u00f9 lento, ovvero il Store Gateway pi\u00f9 lento o il Sidecar pi\u00f9 lento. <\/p>\n<p><\/p>\n<p>Questi componenti possono essere caricati in modo non uniforme. Ad esempio, hai un Prometheus che raccoglie milioni di metriche al secondo. E c'\u00e8 un Prometheus in cui vengono raccolte migliaia di metriche al secondo. Prometheus, in cui vengono raccolti milioni di metriche al secondo, carica molto di pi\u00f9 il server su cui opera. Di conseguenza, il Sidecar qui funziona pi\u00f9 lentamente. E in generale, tutto qui funziona lentamente. E il componente Query estrarr\u00e0 i dati da l\u00ec molto lentamente. Pertanto, le prestazioni dell'intero cluster saranno limitate da questo Sidecar lento.<\/p>\n<p><\/p>\n<p><img decoding=\"async\" alt=\"Scegliamo un sistema di archiviazione per Prometheus: Thanos vs VictoriaMetrics\" src=\"\/wp-content\/uploads\/2019\/12\/68070f629821a54bfd8ed934d67344fd.jpg\" style=\"display:block;margin: 0 auto;\" \/><\/p>\n<p><\/p>\n<p>Di default, Thanos restituisce dati parziali se alcuni Sidecar o lo Store Gateway non sono disponibili. Ad esempio, se i tuoi Sidecar sono distribuiti in tutto il mondo in diversi data center, la probabilit\u00e0 di interruzione della connessione e indisponibilit\u00e0 dei componenti aumenta notevolmente. Di conseguenza, nella maggior parte dei casi, riceverai dati parziali senza nemmeno esserne consapevole.<\/p>\n<p><\/p>\n<p><img decoding=\"async\" alt=\"Scegliamo un sistema di archiviazione per Prometheus: Thanos vs VictoriaMetrics\" src=\"\/wp-content\/uploads\/2019\/12\/6a1dea50e739314c23b4370c569b44a4.jpg\" style=\"display:block;margin: 0 auto;\" \/><\/p>\n<p><\/p>\n<p>Anche VictoriaMetrics ha delle insidie. La prima insidia \u00e8 l'opzione che limita la quantit\u00e0 di memoria RAM utilizzata dalla cache di VictoriaMetrics. Per impostazione predefinita, essa \u00e8 pari al 60% della memoria RAM sulla macchina in cui \u00e8 in esecuzione VictoriaMetrics o al 60% della RAM del pod di VictoriaMetrics su Kubernetes.<\/p>\n<p><\/p>\n<p>Se questo valore viene modificato in modo errato, le prestazioni di VictoriaMetrics possono deteriorarsi. Ad esempio, se imposti un valore troppo basso, i dati potrebbero smettere di essere memorizzati nella cache di VictoriaMetrics. Questo comporterebbe un lavoro aggiuntivo e un carico sul processore e sul disco. Se imposti questo valore troppo alto, aumenta, in primo luogo, la probabilit\u00e0 che VictoriaMetrics vada in errore per out of memory, e, in secondo luogo, ci\u00f2 porter\u00e0 a una scarsit\u00e0 di memoria RAM riservata per la cache di file nell'operating system. VictoriaMetrics si basa sulla cache di file per le prestazioni. Se non \u00e8 sufficiente, il carico sul disco pu\u00f2 aumentare notevolmente. Pertanto, consiglio: non modificare il parametro senza estrema necessit\u00e0.<\/p>\n<p><\/p>\n<p><img decoding=\"async\" alt=\"Scegliamo un sistema di archiviazione per Prometheus: Thanos vs VictoriaMetrics\" src=\"\/wp-content\/uploads\/2019\/12\/f145833dcbe42c2b62545358cfb204e5.jpg\" style=\"display:block;margin: 0 auto;\" \/><\/p>\n<p><\/p>\n<p>La seconda opzione \u00e8 retentionPeriod \u2014 il periodo, che per impostazione predefinita \u00e8 impostato a 1 mese. Questo \u00e8 il tempo durante il quale VictoriaMetrics conserva i dati. Al termine di questo periodo, VictoriaMetrics elimina i dati.<\/p>\n<p><\/p>\n<p>Molti lanciano VictoriaMetrics senza questo parametro, registrando dati per un mese. E poi si chiedono: perch\u00e9 i dati sono scomparsi per il mese precedente? Perch\u00e9 il retentionPeriod per impostazione predefinita \u00e8 di 1 mese. Quindi \u00e8 necessario conoscere e impostare il retentionPeriod corretto. <\/p>\n<p><\/p>\n<p><img decoding=\"async\" alt=\"Scegliamo un sistema di archiviazione per Prometheus: Thanos vs VictoriaMetrics\" src=\"\/wp-content\/uploads\/2019\/12\/377e4e19b7dc5648dd16bff39f4f1651.jpg\" style=\"display:block;margin: 0 auto;\" \/><\/p>\n<p><\/p>\n<p>Analizziamo le opportunit\u00e0 uniche.<\/p>\n<p><\/p>\n<p><img decoding=\"async\" alt=\"Scegliamo un sistema di archiviazione per Prometheus: Thanos vs VictoriaMetrics\" src=\"\/wp-content\/uploads\/2019\/12\/bca5529a95e94ada650e67dba063ada6.jpg\" style=\"display:block;margin: 0 auto;\" \/><\/p>\n<p><\/p>\n<p>Thanos ha una funzionalit\u00e0 chiamata downsampling: intervalli di 5 minuti e orari, che spesso <noindex><a rel=\"nofollow\" href=\"https:\/\/github.com\/thanos-io\/thanos\/issues?utf8=%E2%9C%93&amp;q=is%3Aissue+is%3Aopen+downsampling\">non funzionano correttamente<\/a><\/noindex>. Se si fa una ricerca su Google e si guarda ai loro problemi su GitHub, ci sono molti problemi legati a questo downsampling, che a volte non funziona correttamente o funziona diversamente da come si aspettano gli utenti.<\/p>\n<p><\/p>\n<p><img decoding=\"async\" alt=\"Scegliamo un sistema di archiviazione per Prometheus: Thanos vs VictoriaMetrics\" src=\"\/wp-content\/uploads\/2019\/12\/84f116767826d1174286b45ccf60dfe7.jpg\" style=\"display:block;margin: 0 auto;\" \/><\/p>\n<p><\/p>\n<p>Thanos ha la deduplicazione dei dati per le coppie HA di Prometheus. Quando due Prometheus raccolgono le stesse metriche dagli stessi target, Thanos le accumula nell'Object Storage. Thanos \u00e8 in grado di deduplicare correttamente questi dati, a differenza di VictoriaMetrics.<\/p>\n<p><\/p>\n<p><img decoding=\"async\" alt=\"Scegliamo un sistema di archiviazione per Prometheus: Thanos vs VictoriaMetrics\" src=\"\/wp-content\/uploads\/2019\/12\/efd797cafcb339a4900f4d2cddd04638.jpg\" style=\"display:block;margin: 0 auto;\" \/><\/p>\n<p><\/p>\n<p>Thanos ha un componente di allerta, che era nello schema di Thanos. Ma non \u00e8 <noindex><a rel=\"nofollow\" href=\"https:\/\/github.com\/thanos-io\/thanos\/blob\/master\/docs\/components\/rule.md\">raccomandato per l'uso in produzione<\/a><\/noindex>.<\/p>\n<p><\/p>\n<p><img decoding=\"async\" alt=\"Scegliamo un sistema di archiviazione per Prometheus: Thanos vs VictoriaMetrics\" src=\"\/wp-content\/uploads\/2019\/12\/87d12ff7b3c33dae9a8eda7a2a95bce1.jpg\" style=\"display:block;margin: 0 auto;\" \/><\/p>\n<p><\/p>\n<p>Thanos ha il vantaggio che il codice di Thanos e Prometheus \u00e8 condiviso. Thanos e Prometheus sono sviluppati dagli stessi sviluppatori. Quando ci sono miglioramenti in Thanos o Prometheus, l'altra parte ne trae vantaggio.<\/p>\n<p><\/p>\n<p><img decoding=\"async\" alt=\"Scegliamo un sistema di archiviazione per Prometheus: Thanos vs VictoriaMetrics\" src=\"\/wp-content\/uploads\/2019\/12\/92435f15d58e83eb4d548a8bf5256c30.jpg\" style=\"display:block;margin: 0 auto;\" \/><\/p>\n<p><\/p>\n<p>La funzione principale di VictoriaMetrics \u00e8 MetricsQL. Questo \u00e8 un'estensione di VictoriaMetrics per PromQL, di cui ho parlato al precedente big monitoring meetup.<\/p>\n<p><\/p>\n<p><img decoding=\"async\" alt=\"Scegliamo un sistema di archiviazione per Prometheus: Thanos vs VictoriaMetrics\" src=\"\/wp-content\/uploads\/2019\/12\/43a1618a397badc3df9d4eded19be1ec.jpg\" style=\"display:block;margin: 0 auto;\" \/><\/p>\n<p><\/p>\n<p>VictoriaMetrics supporta l'inserimento dei dati attraverso molti protocolli diversi. VictoriaMetrics non solo pu\u00f2 ricevere dati da Prometheus, ma anche dai protocolli Influx, OpenTSDB e Graphite.<\/p>\n<p><\/p>\n<p><img decoding=\"async\" alt=\"Scegliamo un sistema di archiviazione per Prometheus: Thanos vs VictoriaMetrics\" src=\"\/wp-content\/uploads\/2019\/12\/b4bca4b255990f1af11a6ceaf42f46ef.jpg\" style=\"display:block;margin: 0 auto;\" \/><\/p>\n<p><\/p>\n<p>I dati di VictoriaMetrics occupano generalmente molto meno spazio rispetto a Thanos e Prometheus. <\/p>\n<p><\/p>\n<p>Se si registrano dati reali, gli utenti parlano di una riduzione da 2 a 5 volte della dimensione dei dati su disco rispetto a Prometheus e Thanos.<\/p>\n<p><\/p>\n<p><img decoding=\"async\" alt=\"Scegliamo un sistema di archiviazione per Prometheus: Thanos vs VictoriaMetrics\" src=\"\/wp-content\/uploads\/2019\/12\/6aeab3c42b45dbd620d328fc43ce4bec.jpg\" style=\"display:block;margin: 0 auto;\" \/><\/p>\n<p><\/p>\n<p>Un altro vantaggio di VictoriaMetrics \u00e8 che \u00e8 ottimizzata per la velocit\u00e0. <\/p>\n<p><\/p>\n<p><img decoding=\"async\" alt=\"Scegliamo un sistema di archiviazione per Prometheus: Thanos vs VictoriaMetrics\" src=\"\/wp-content\/uploads\/2019\/12\/89010a913f0d7b1388b6c62007c7835b.jpg\" style=\"display:block;margin: 0 auto;\" \/><\/p>\n<p><\/p>\n<p>Esploriamo il costo dell'infrastruttura. <\/p>\n<p><\/p>\n<p><img decoding=\"async\" alt=\"Scegliamo un sistema di archiviazione per Prometheus: Thanos vs VictoriaMetrics\" src=\"\/wp-content\/uploads\/2019\/12\/65bd322bb2a64ac4188e29b79e54763a.jpg\" style=\"display:block;margin: 0 auto;\" \/><\/p>\n<p><\/p>\n<p>Uno dei vantaggi di Thanos \u00e8 che salva i dati nell'object storage, che \u00e8 relativamente economico.<\/p>\n<p><\/p>\n<p>Quando si salvano dati nell'object storage, \u00e8 necessario pagare per le operazioni di scrittura e lettura dei dati (10$ per milione di operazioni). Quando si scrivono dati nell'object storage, si pagano le spese di hosting per caricare i dati su internet, se il proprio cluster non si trova in AWS \u2014 l\u00ec \u00e8 gratis. Quando si leggono dati, si pagano da 10$ a 230$ per 1TB. Questo pu\u00f2 essere significativo se si richiedono frequentemente dati storici dal cluster Thanos.<\/p>\n<p><\/p>\n<p><img decoding=\"async\" alt=\"Scegliamo un sistema di archiviazione per Prometheus: Thanos vs VictoriaMetrics\" src=\"\/wp-content\/uploads\/2019\/12\/7f1b32c75d49efa082201fa55b43f6bb.jpg\" style=\"display:block;margin: 0 auto;\" \/><\/p>\n<p><\/p>\n<p>Per il cluster Thanos \u00e8 necessario pagare i server per i componenti Compact, Store Gateway e Query, che richiedono molta memoria e CPU per gestire grandi volumi di dati.<\/p>\n<p><\/p>\n<p><img decoding=\"async\" alt=\"Scegliamo un sistema di archiviazione per Prometheus: Thanos vs VictoriaMetrics\" src=\"\/wp-content\/uploads\/2019\/12\/19c90f30760e77f57a658e67507f4f98.jpg\" style=\"display:block;margin: 0 auto;\" \/><\/p>\n<p><\/p>\n<p>Per VictoriaMetrics i costi sono i seguenti. Se si archiviano i dati su dischi GCE HDD, si ha un costo di $40 per 1TB. Per VictoriaMetrics sono sufficienti normali dischi HDD, non sono necessari SSD che costano cinque volte di pi\u00f9. VictoriaMetrics \u00e8 ottimizzata per gli HDD.<\/p>\n<p><\/p>\n<p><img decoding=\"async\" alt=\"Scegliamo un sistema di archiviazione per Prometheus: Thanos vs VictoriaMetrics\" src=\"\/wp-content\/uploads\/2019\/12\/c7e922b4d97f353218d6edad7cdea584.jpg\" style=\"display:block;margin: 0 auto;\" \/><\/p>\n<p><\/p>\n<p>Per VictoriaMetrics sono necessari server per i componenti: o Single-node o per componenti cluster, che a differenza dei componenti Thanos, richiedono molto meno CPU e RAM, quindi saranno pi\u00f9 economici. <\/p>\n<p><\/p>\n<p><img decoding=\"async\" alt=\"Scegliamo un sistema di archiviazione per Prometheus: Thanos vs VictoriaMetrics\" src=\"\/wp-content\/uploads\/2019\/12\/aaf63cad75238ba19efb825376cf356c.jpg\" style=\"display:block;margin: 0 auto;\" \/><\/p>\n<p><\/p>\n<p>Esempi di implementazione. <\/p>\n<p><\/p>\n<p><img decoding=\"async\" alt=\"Scegliamo un sistema di archiviazione per Prometheus: Thanos vs VictoriaMetrics\" src=\"\/wp-content\/uploads\/2019\/12\/53ce0a68724c339d88ad769c18a2e5f9.jpg\" style=\"display:block;margin: 0 auto;\" \/><\/p>\n<p><\/p>\n<p>Un esempio di implementazione di Thanos \u00e8 Gitlab. Gitlab funziona interamente su Thanos. Ma non \u00e8 tutto roseo. Se si guarda ai loro <noindex><a rel=\"nofollow\" href=\"https:\/\/gitlab.com\/gitlab-com\/gl-infra\/infrastructure\/issues\/8647\">issues<\/a><\/noindex>, si possono vedere che hanno continuamente problemi <noindex><a rel=\"nofollow\" href=\"https:\/\/gitlab.com\/gitlab-com\/gl-infra\/infrastructure\/issues\/8413\">operativi con Thanos<\/a><\/noindex>: manca memoria per i componenti Store Gateway o Query. Devono constantemente aumentare la quantit\u00e0 di memoria. <\/p>\n<p><\/p>\n<p>A causa di ci\u00f2, aumentano i costi per risolvere questi problemi. <\/p>\n<p><\/p>\n<p>La seconda implementazione, che potrebbe essere pi\u00f9 riuscita, \u00e8 l'azienda Improbable, che ha iniziato lo sviluppo di Thanos. Hanno pubblicato il codice sorgente di Thanos. Improbable \u00e8 un'azienda che sviluppa motori di gioco.<\/p>\n<p><\/p>\n<p><img decoding=\"async\" alt=\"Scegliamo un sistema di archiviazione per Prometheus: Thanos vs VictoriaMetrics\" src=\"\/wp-content\/uploads\/2019\/12\/3a1279cae3cfc7e94c2eccfc0972f06e.jpg\" style=\"display:block;margin: 0 auto;\" \/><\/p>\n<p><\/p>\n<p>Esempi pubblici di implementazione di VictoriaMetrics sono:<\/p>\n<p><\/p>\n<ul>\n<li>wix.com, costruttore di siti web<\/li>\n<li>Adidas implementa VictoriaMetrics e ha persino fatto una presentazione all'ultimo PromCon 2019<\/li>\n<li>TrafficStars \u2014 rete pubblicitaria<\/li>\n<li>Seznam.cz \u2014 motore di ricerca ceco popolare.<\/li>\n<\/ul>\n<p><\/p>\n<p>E poi ci sono aziende sconosciute che non posso nominare attualmente. Non hanno dato il consenso. <\/p>\n<p><\/p>\n<ul>\n<li>Un grande sviluppatore di giochi. Pi\u00f9 grande di Improbable.<\/li>\n<li>Un grande sviluppatore di software grafico.<\/li>\n<li>Una grande banca russa.<\/li>\n<li>Un produttore europeo di turbine eoliche che ha testato con successo VictoriaMetrics. Questo produttore implementa VictoriaMetrics per il monitoraggio dei dati ottenuti dalle turbine eoliche con una frequenza di 50 campioni al secondo per ogni sensore. Ogni turbina eolica ha diversi centinaia di sensori. Hanno diverse centinaia di turbine eoliche.<\/li>\n<li>Le compagnie aeree russe che vogliono implementare VictoriaMetrics, ma non ci riescono. Siamo con loro in fase di contratto.<\/li>\n<\/ul>\n<p><\/p>\n<p><img decoding=\"async\" alt=\"Scegliamo un sistema di archiviazione per Prometheus: Thanos vs VictoriaMetrics\" src=\"\/wp-content\/uploads\/2019\/12\/040affc4d56712783db61ee3b0ec509e.jpg\" style=\"display:block;margin: 0 auto;\" \/>Conclusioni.<\/p>\n<p><\/p>\n<p>VictoriaMetrics e Thanos affrontano problemi simili, ma in modi diversi:<\/p>\n<p><\/p>\n<ul>\n<li>Visualizzazione globale delle query<\/li>\n<li>scalabilit\u00e0 orizzontale <\/li>\n<li>retention arbitraria<\/li>\n<\/ul>\n<p><\/p>\n<p><img decoding=\"async\" alt=\"Scegliamo un sistema di archiviazione per Prometheus: Thanos vs VictoriaMetrics\" src=\"\/wp-content\/uploads\/2019\/12\/af6285e8f6f68f373da1ebc552104f51.jpg\" style=\"display:block;margin: 0 auto;\" \/><\/p>\n<p><\/p>\n<p>Grazie.<\/p>\n<p><\/p>\n<p>Vi aspettiamo sul nostro <noindex><a rel=\"nofollow\" href=\"https:\/\/t.me\/VictoriaMetrics_ru1\">canale telegram<\/a><\/noindex>.<\/p>\n<p><\/p>\n<p><img decoding=\"async\" alt=\"Scegliamo un sistema di archiviazione per Prometheus: Thanos vs VictoriaMetrics\" src=\"\/wp-content\/uploads\/2019\/12\/c45b2a3b6e541e7e6cd580629e418c35.jpg\" style=\"display:block;margin: 0 auto;\" \/><\/p>\n<p class=\"for_users_only_msg\">Solo gli utenti registrati possono partecipare al sondaggio. <noindex><a rel=\"nofollow\" href=\"https:\/\/habr.com\/ru\/auth\/login\/\">Accedi<\/a><\/noindex>, per favore.<\/p>\n<h2 class=\"default-block__polling-title\">Cosa usate come storage a lungo termine per Prometheus?<\/h2>\n<ul class=\"poll-result\">\n<li class=\"poll-result__item\">\n<p>                <strong class=\"poll-result__data-percent\">35,3%<\/strong>Thanos6<\/p>\n<\/li>\n<li class=\"poll-result__item\">\n<p>                <strong class=\"poll-result__data-percent\">0,0%<\/strong>Cortex0<\/p>\n<\/li>\n<li class=\"poll-result__item\">\n<p>                <strong class=\"poll-result__data-percent\">0,0%<\/strong>M3DB0<\/p>\n<\/li>\n<li class=\"poll-result__item\">\n<p>                <strong class=\"poll-result__data-percent  poll-result__data-percent_winner\">41,2%<\/strong>VictoriaMetrics7<\/p>\n<\/li>\n<li class=\"poll-result__item\">\n<p>                <strong class=\"poll-result__data-percent\">23,5%<\/strong>altro4<\/p>\n<\/li>\n<\/ul>\n<p>    Hanno votato 17 utenti. Si sono astenuti 16 utenti.<br \/>\n<br \/>Fonte: <a content=\"nofollow\" rel=\"nofollow\" href=\"https:\/\/habr.com\/ru\/post\/482272\/\">habr.com<\/a><\/p>","protected":false,"gt_translate_keys":[{"key":"rendered","format":"html"}]},"excerpt":{"rendered":"<p>\u0412\u0441\u0435\u043c \u043f\u0440\u0438\u0432\u0435\u0442. \u041d\u0438\u0436\u0435 \u043f\u0440\u0435\u0434\u0441\u0442\u0430\u0432\u043b\u0435\u043d\u0430 \u0440\u0430\u0441\u0448\u0438\u0444\u0440\u043e\u0432\u043a\u0430 \u0434\u043e\u043a\u043b\u0430\u0434\u0430 \u0441 Big Monitoring Meetup 4. Prometheus \u2013 \u0441\u0438\u0441\u0442\u0435\u043c\u0430 \u043c\u043e\u043d\u0438\u0442\u043e\u0440\u0438\u043d\u0433\u0430 \u0440\u0430\u0437\u043b\u0438\u0447\u043d\u044b\u0445 \u0441\u0438\u0441\u0442\u0435\u043c \u0438 \u0441\u0435\u0440\u0432\u0438\u0441\u043e\u0432, \u0441 \u043f\u043e\u043c\u043e\u0449\u044c\u044e \u043a\u043e\u0442\u043e\u0440\u043e\u0439 \u0441\u0438\u0441\u0442\u0435\u043c\u043d\u044b\u0435 \u0430\u0434\u043c\u0438\u043d\u0438\u0441\u0442\u0440\u0430\u0442\u043e\u0440\u044b \u043c\u043e\u0433\u0443\u0442 \u0441\u043e\u0431\u0438\u0440\u0430\u0442\u044c \u0438\u043d\u0444\u043e\u0440\u043c\u0430\u0446\u0438\u044e \u043e \u0442\u0435\u043a\u0443\u0449\u0438\u0445 \u043f\u0430\u0440\u0430\u043c\u0435\u0442\u0440\u0430\u0445 \u0441\u0438\u0441\u0442\u0435\u043c \u0438 \u043d\u0430\u0441\u0442\u0440\u0430\u0438\u0432\u0430\u0442\u044c \u043e\u043f\u043e\u0432\u0435\u0449\u0435\u043d\u0438\u044f \u0434\u043b\u044f \u043f\u043e\u043b\u0443\u0447\u0435\u043d\u0438\u044f \u0443\u0432\u0435\u0434\u043e\u043c\u043b\u0435\u043d\u0438\u0439 \u043e\u0431 \u043e\u0442\u043a\u043b\u043e\u043d\u0435\u043d\u0438\u044f\u0445 \u0432 \u0440\u0430\u0431\u043e\u0442\u0435 \u0441\u0438\u0441\u0442\u0435\u043c. \u0412 \u0434\u043e\u043a\u043b\u0430\u0434\u0435 \u0431\u0443\u0434\u0435\u0442 \u0441\u0440\u0430\u0432\u043d\u0435\u043d\u0438\u0435 Thanos \u0438 VictoriaMetrics \u2014 \u043f\u0440\u043e\u0435\u043a\u0442\u043e\u0432 \u0434\u043b\u044f \u0434\u043e\u043b\u0433\u043e\u0441\u0440\u043e\u0447\u043d\u043e\u0433\u043e \u0445\u0440\u0430\u043d\u0435\u043d\u0438\u044f \u043c\u0435\u0442\u0440\u0438\u043a [&hellip;]<\/p>\n","protected":false,"gt_translate_keys":[{"key":"rendered","format":"html"}]},"author":1,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[688],"tags":[],"class_list":["post-54601","post","type-post","status-publish","format-standard","hentry","category-administrirovanie"],"aioseo_notices":[],"aioseo_head":"\n\t\t<!-- All in One SEO 5.0.1.1 - aioseo.com -->\n\t<meta name=\"description\" content=\"\u0412\u0441\u0435\u043c \u043f\u0440\u0438\u0432\u0435\u0442.\" \/>\n\t<meta name=\"robots\" content=\"max-image-preview:large\" \/>\n\t<meta name=\"author\" content=\"Yuri Gagarin\"\/>\n\t<link rel=\"canonical\" href=\"https:\/\/prohoster.info\/it\/blog\/administrirovanie\/vybiraem-hranilishhe-dannyh-dlya-prometheus-thanos-vs-victoriametrics\" \/>\n\t<meta name=\"generator\" content=\"All in One SEO (AIOSEO) 5.0.1.1\" \/>\n\t\t<meta property=\"og:locale\" content=\"it_IT\" \/>\n\t\t<meta property=\"og:site_name\" content=\"ProHoster | \u041a\u0443\u043f\u0438\u0442\u044c \u043d\u0430\u0434\u0435\u0436\u043d\u044b\u0439 \u0445\u043e\u0441\u0442\u0438\u043d\u0433 \u0434\u043b\u044f \u0441\u0430\u0439\u0442\u043e\u0432 \u0441 \u0437\u0430\u0449\u0438\u0442\u043e\u0439 \u043e\u0442 DDoS, VPS VDS \u0441\u0435\u0440\u0432\u0435\u0440\u044b\" \/>\n\t\t<meta property=\"og:type\" content=\"article\" \/>\n\t\t<meta property=\"og:title\" content=\"\ud83e\udd47\u0412\u044b\u0431\u0438\u0440\u0430\u0435\u043c \u0445\u0440\u0430\u043d\u0438\u043b\u0438\u0449\u0435 \u0434\u0430\u043d\u043d\u044b\u0445 \u0434\u043b\u044f Prometheus: Thanos vs VictoriaMetrics | ProHoster\" \/>\n\t\t<meta property=\"og:description\" content=\"\u0412\u0441\u0435\u043c \u043f\u0440\u0438\u0432\u0435\u0442.\" \/>\n\t\t<meta property=\"og:url\" content=\"https:\/\/prohoster.info\/it\/blog\/administrirovanie\/vybiraem-hranilishhe-dannyh-dlya-prometheus-thanos-vs-victoriametrics\" \/>\n\t\t<meta property=\"og:image\" content=\"https:\/\/prohoster.info\/wp-content\/uploads\/2021\/11\/logo-350.jpg\" \/>\n\t\t<meta property=\"og:image:secure_url\" content=\"https:\/\/prohoster.info\/wp-content\/uploads\/2021\/11\/logo-350.jpg\" \/>\n\t\t<meta property=\"og:image:width\" content=\"350\" \/>\n\t\t<meta property=\"og:image:height\" content=\"350\" \/>\n\t\t<meta property=\"article:published_time\" content=\"2019-12-29T21:00:00+00:00\" \/>\n\t\t<meta property=\"article:modified_time\" content=\"2020-02-18T11:02:38+00:00\" \/>\n\t\t<meta property=\"article:publisher\" content=\"https:\/\/www.facebook.com\/prohoster\" \/>\n\t\t<meta property=\"article:author\" content=\"https:\/\/www.facebook.com\/prohoster\" \/>\n\t\t<!-- All in One SEO -->\n\n","aioseo_head_json":{"title":"\ud83e\udd47Scegliamo un sistema di archiviazione dati per Prometheus: Thanos vs VictoriaMetrics | ProHoster","description":"Ciao a tutti.","canonical_url":"https:\/\/prohoster.info\/it\/blog\/administrirovanie\/vybiraem-hranilishhe-dannyh-dlya-prometheus-thanos-vs-victoriametrics","robots":"max-image-preview:large","keywords":"","webmasterTools":{"miscellaneous":""},"schema":null,"og:locale":"it_IT","og:site_name":"ProHoster | \u041a\u0443\u043f\u0438\u0442\u044c \u043d\u0430\u0434\u0435\u0436\u043d\u044b\u0439 \u0445\u043e\u0441\u0442\u0438\u043d\u0433 \u0434\u043b\u044f \u0441\u0430\u0439\u0442\u043e\u0432 \u0441 \u0437\u0430\u0449\u0438\u0442\u043e\u0439 \u043e\u0442 DDoS, VPS VDS \u0441\u0435\u0440\u0432\u0435\u0440\u044b","og:type":"article","og:title":"\ud83e\udd47\u0412\u044b\u0431\u0438\u0440\u0430\u0435\u043c \u0445\u0440\u0430\u043d\u0438\u043b\u0438\u0449\u0435 \u0434\u0430\u043d\u043d\u044b\u0445 \u0434\u043b\u044f Prometheus: Thanos vs VictoriaMetrics | ProHoster","og:description":"\u0412\u0441\u0435\u043c \u043f\u0440\u0438\u0432\u0435\u0442.","og:url":"https:\/\/prohoster.info\/it\/blog\/administrirovanie\/vybiraem-hranilishhe-dannyh-dlya-prometheus-thanos-vs-victoriametrics","og:image":"https:\/\/prohoster.info\/wp-content\/uploads\/2021\/11\/logo-350.jpg","og:image:secure_url":"https:\/\/prohoster.info\/wp-content\/uploads\/2021\/11\/logo-350.jpg","og:image:width":350,"og:image:height":350,"article:published_time":"2019-12-29T21:00:00+00:00","article:modified_time":"2020-02-18T11:02:38+00:00","article:publisher":"https:\/\/www.facebook.com\/prohoster","article:author":"https:\/\/www.facebook.com\/prohoster"},"aioseo_meta_data":{"post_id":"54601","title":null,"description":null,"keywords":null,"keyphrases":null,"primary_term":null,"canonical_url":null,"og_title":null,"og_description":null,"og_object_type":"default","og_image_type":"default","og_image_url":null,"og_image_width":null,"og_image_height":null,"og_image_custom_url":null,"og_image_custom_fields":null,"og_video":null,"og_custom_url":null,"og_article_section":null,"og_article_tags":null,"twitter_use_og":false,"twitter_card":"default","twitter_image_type":"default","twitter_image_url":null,"twitter_image_custom_url":null,"twitter_image_custom_fields":null,"twitter_title":null,"twitter_description":null,"schema":{"blockGraphs":[],"customGraphs":[],"default":{"data":{"Article":[],"Course":[],"Dataset":[],"FAQPage":[],"Movie":[],"Person":[],"Product":[],"ProductReview":[],"Car":[],"Recipe":[],"Service":[],"SoftwareApplication":[],"WebPage":[]},"graphName":"","isEnabled":true},"graphs":[]},"schema_type":null,"schema_type_options":null,"pillar_content":false,"robots_default":true,"robots_noindex":false,"robots_noarchive":false,"robots_nosnippet":false,"robots_nofollow":false,"robots_noimageindex":false,"robots_noodp":false,"robots_notranslate":false,"robots_max_snippet":null,"robots_max_videopreview":null,"robots_max_imagepreview":"large","priority":null,"frequency":null,"local_seo":null,"seo_analyzer_scan_date":"2026-01-24 12:01:24","breadcrumb_settings":null,"limit_modified_date":false,"reviewed_by":null,"ai":null,"created":"2021-02-28 20:02:45","updated":"2026-01-24 12:01:24","focus_keyword":null,"additional_keywords":null,"truseo_locale":null},"gt_translate_keys":[{"key":"link","format":"url"}],"_links":{"self":[{"href":"https:\/\/prohoster.info\/it\/wp-json\/wp\/v2\/posts\/54601","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/prohoster.info\/it\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/prohoster.info\/it\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/prohoster.info\/it\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/prohoster.info\/it\/wp-json\/wp\/v2\/comments?post=54601"}],"version-history":[{"count":0,"href":"https:\/\/prohoster.info\/it\/wp-json\/wp\/v2\/posts\/54601\/revisions"}],"wp:attachment":[{"href":"https:\/\/prohoster.info\/it\/wp-json\/wp\/v2\/media?parent=54601"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/prohoster.info\/it\/wp-json\/wp\/v2\/categories?post=54601"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/prohoster.info\/it\/wp-json\/wp\/v2\/tags?post=54601"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}