{"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\/es\/blog\/administrirovanie\/vybiraem-hranilishhe-dannyh-dlya-prometheus-thanos-vs-victoriametrics","title":{"rendered":"En los archivos de c\u00f3digo fuente del n\u00facleo de Linux hay alrededor de 4,000 comentarios que describen tareas pendientes.","gt_translate_keys":[{"key":"rendered","format":"text"}]},"content":{"rendered":"<p>Hola a todos. A continuaci\u00f3n se presenta la transcripci\u00f3n <noindex><a rel=\"nofollow\" href=\"https:\/\/www.youtube.com\/watch?v=HyOXAdQE0Pk\">de la charla del 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 de monitoreo de diversos sistemas y servicios, que permite a los administradores de sistemas recopilar informaci\u00f3n sobre los par\u00e1metros actuales de los sistemas y configurar alertas para recibir notificaciones sobre desviaciones en el funcionamiento de los sistemas.<\/p>\n<p><\/p>\n<p>En la charla se realizar\u00e1 una comparaci\u00f3n <noindex><a rel=\"nofollow\" href=\"https:\/\/github.com\/thanos-io\/thanos\">Thanos<\/a><\/noindex> y <noindex><a rel=\"nofollow\" href=\"https:\/\/github.com\/VictoriaMetrics\/VictoriaMetrics\">VictoriaMetrics<\/a><\/noindex> \u2013 proyectos para el almacenamiento a largo plazo de m\u00e9tricas de Prometheus.<\/p>\n<p><noindex><a rel=\"nofollow\" name=\"habracut\"><\/a><\/noindex><\/p>\n<p><img decoding=\"async\" alt=\"En los archivos de c\u00f3digo fuente del n\u00facleo de Linux hay alrededor de 4,000 comentarios que describen tareas pendientes.\" 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=\"Reproducir 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=\"En los archivos de c\u00f3digo fuente del n\u00facleo de Linux hay alrededor de 4,000 comentarios que describen tareas pendientes.\" src=\"\/wp-content\/uploads\/2019\/12\/dc3c90711a8102d3e70b972ca47ec152.jpg\" style=\"display:block;margin: 0 auto;\" \/><\/p>\n<p><\/p>\n<p>Primero, hablar\u00e9 sobre Prometheus. Es un sistema de monitoreo que recolecta m\u00e9tricas de los targets especificados y las almacena en un almacenamiento local. Prometheus puede registrar m\u00e9tricas en un almacenamiento remoto, generar alertas y reglas de grabaci\u00f3n. <\/p>\n<p><\/p>\n<p><img decoding=\"async\" alt=\"En los archivos de c\u00f3digo fuente del n\u00facleo de Linux hay alrededor de 4,000 comentarios que describen tareas pendientes.\" src=\"\/wp-content\/uploads\/2019\/12\/e9852597e74c675d2216d971f19857c2.jpg\" style=\"display:block;margin: 0 auto;\" \/><\/p>\n<p><\/p>\n<h3 id=\"ogranicheniya-prometheus\">Limitaciones de Prometheus:<\/h3>\n<p><\/p>\n<ul>\n<li>No tiene vista de consulta global. Esto ocurre cuando tienes varias instancias independientes de Prometheus. Recopilan m\u00e9tricas y deseas realizar una consulta sobre todas estas m\u00e9tricas, recopiladas de diferentes instancias de Prometheus. Prometheus no permite esto.<\/li>\n<li>En Prometheus, el rendimiento est\u00e1 limitado a un solo servidor. Prometheus no puede escalar autom\u00e1ticamente a varios servidores. Solo puedes dividir manualmente tus targets entre varios Prometheus.<\/li>\n<li>El volumen de m\u00e9tricas en Prometheus tambi\u00e9n est\u00e1 limitado a un solo servidor por la misma raz\u00f3n por la cual no puede escalar autom\u00e1ticamente sobre varios servidores.<\/li>\n<li>No es tan f\u00e1cil organizar la persistencia de datos en Prometheus.<\/li>\n<\/ul>\n<p><\/p>\n<p><img decoding=\"async\" alt=\"En los archivos de c\u00f3digo fuente del n\u00facleo de Linux hay alrededor de 4,000 comentarios que describen tareas pendientes.\" src=\"\/wp-content\/uploads\/2019\/12\/c140d41f1fe39d33e1fc84f5cc111481.jpg\" style=\"display:block;margin: 0 auto;\" \/><\/p>\n<p><\/p>\n<h3 id=\"resheniya-etih-problemzadach\">\u00bfSoluciones para estos problemas\/tareas?<\/h3>\n<p><\/p>\n<p>Las soluciones son las siguientes:<\/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>Todas estas soluciones son para almacenamiento remoto de datos recopilados por Prometheus. Abordan el problema del almacenamiento remoto del anterior diapositiva de diferentes maneras. En esta presentaci\u00f3n solo hablar\u00e9 sobre las dos primeras soluciones: <noindex><a rel=\"nofollow\" href=\"https:\/\/github.com\/thanos-io\/thanos\">Thanos<\/a><\/noindex> y <noindex><a rel=\"nofollow\" href=\"https:\/\/github.com\/VictoriaMetrics\/VictoriaMetrics\">VictoriaMetrics<\/a><\/noindex>.<\/p>\n<p><\/p>\n<p>Por primera vez, la informaci\u00f3n sobre <noindex><a rel=\"nofollow\" href=\"https:\/\/github.com\/thanos-io\/thanos\">Thanos<\/a><\/noindex> apareci\u00f3 en <noindex><a rel=\"nofollow\" href=\"https:\/\/improbable.io\/blog\/thanos-prometheus-at-scale\">este enlace<\/a><\/noindex>. Ah\u00ed se describe la arquitectura <noindex><a rel=\"nofollow\" href=\"https:\/\/github.com\/thanos-io\/thanos\">Thanos<\/a><\/noindex> y c\u00f3mo funciona.<\/p>\n<p><\/p>\n<p><img decoding=\"async\" alt=\"En los archivos de c\u00f3digo fuente del n\u00facleo de Linux hay alrededor de 4,000 comentarios que describen tareas pendientes.\" src=\"\/wp-content\/uploads\/2019\/12\/317db6bb4c3cd69d8742addb2bae16a4.jpg\" style=\"display:block;margin: 0 auto;\" \/><\/p>\n<p><\/p>\n<p>Thanos toma los datos que Prometheus ha guardado en el disco local y los copia en S3, en <noindex><a rel=\"nofollow\" href=\"https:\/\/cloud.google.com\/storage\/\">GCS<\/a><\/noindex> o en otro almacenamiento de objetos.<\/p>\n<p><\/p>\n<p><img decoding=\"async\" alt=\"En los archivos de c\u00f3digo fuente del n\u00facleo de Linux hay alrededor de 4,000 comentarios que describen tareas pendientes.\" src=\"\/wp-content\/uploads\/2019\/12\/7cf5f99dc5ce78f22c5956373812c0aa.jpg\" style=\"display:block;margin: 0 auto;\" \/><\/p>\n<p><\/p>\n<p>As\u00ed, Thanos proporciona una vista global de la consulta. Puedes solicitar los datos almacenados en el almacenamiento de objetos desde varias instancias de Prometheus.<\/p>\n<p><\/p>\n<p><img decoding=\"async\" alt=\"En los archivos de c\u00f3digo fuente del n\u00facleo de Linux hay alrededor de 4,000 comentarios que describen tareas pendientes.\" src=\"\/wp-content\/uploads\/2019\/12\/286cf441fe18fb756c2708086872d8d8.jpg\" style=\"display:block;margin: 0 auto;\" \/><\/p>\n<p><\/p>\n<p>Thanos es compatible con PromQL y <noindex><a rel=\"nofollow\" href=\"https:\/\/prometheus.io\/docs\/prometheus\/latest\/querying\/api\/\">la API de consulta de Prometheus.<\/a><\/noindex>.<\/p>\n<p><\/p>\n<p><img decoding=\"async\" alt=\"En los archivos de c\u00f3digo fuente del n\u00facleo de Linux hay alrededor de 4,000 comentarios que describen tareas pendientes.\" src=\"\/wp-content\/uploads\/2019\/12\/6a750070d76414370501a8153cd48007.jpg\" style=\"display:block;margin: 0 auto;\" \/><\/p>\n<p><\/p>\n<p>Thanos utiliza el c\u00f3digo de Prometheus para almacenar datos.<\/p>\n<p><\/p>\n<p><img decoding=\"async\" alt=\"En los archivos de c\u00f3digo fuente del n\u00facleo de Linux hay alrededor de 4,000 comentarios que describen tareas pendientes.\" src=\"\/wp-content\/uploads\/2019\/12\/ba0ca17154f9407900efc336f213ba07.jpg\" style=\"display:block;margin: 0 auto;\" \/><\/p>\n<p><\/p>\n<p>Thanos es desarrollado por los mismos desarrolladores que Prometheus.<\/p>\n<p><\/p>\n<p>Sobre <noindex><a rel=\"nofollow\" href=\"https:\/\/github.com\/VictoriaMetrics\/VictoriaMetrics\">VictoriaMetrics<\/a><\/noindex>. Aqu\u00ed es <noindex><a rel=\"nofollow\" href=\"https:\/\/medium.com\/faun\/victoriametrics-creating-the-best-remote-storage-for-prometheus-5d92d66787ac\">enlace<\/a><\/noindex>, donde hablamos por primera vez sobre <noindex><a rel=\"nofollow\" href=\"https:\/\/github.com\/VictoriaMetrics\/VictoriaMetrics\">VictoriaMetrics<\/a><\/noindex>.<\/p>\n<p><\/p>\n<p><img decoding=\"async\" alt=\"En los archivos de c\u00f3digo fuente del n\u00facleo de Linux hay alrededor de 4,000 comentarios que describen tareas pendientes.\" src=\"\/wp-content\/uploads\/2019\/12\/a901d016e6e58c40c6c7c96b1cd5a8c9.jpg\" style=\"display:block;margin: 0 auto;\" \/><\/p>\n<p><\/p>\n<p>VictoriaMetrics recopila datos de varios Prometheus a trav\u00e9s del <noindex><a rel=\"nofollow\" href=\"https:\/\/prometheus.io\/docs\/practices\/remote_write\/\">API de escritura remota<\/a><\/noindex> protocolo soportado por Prometheus.<\/p>\n<p><\/p>\n<p><img decoding=\"async\" alt=\"En los archivos de c\u00f3digo fuente del n\u00facleo de Linux hay alrededor de 4,000 comentarios que describen tareas pendientes.\" src=\"\/wp-content\/uploads\/2019\/12\/24798414102cc63a1a1062c5ae327f4c.jpg\" style=\"display:block;margin: 0 auto;\" \/><\/p>\n<p><\/p>\n<p>VictoriaMetrics proporciona una vista de consulta global, ya que m\u00faltiples instancias de Prometheus pueden escribir datos en una \u00fanica VictoriaMetrics. Por lo tanto, puede realizar consultas sobre todos esos datos.<\/p>\n<p><\/p>\n<p><img decoding=\"async\" alt=\"En los archivos de c\u00f3digo fuente del n\u00facleo de Linux hay alrededor de 4,000 comentarios que describen tareas pendientes.\" src=\"\/wp-content\/uploads\/2019\/12\/a717855dbdf1df859927a75557ee2573.jpg\" style=\"display:block;margin: 0 auto;\" \/><\/p>\n<p><\/p>\n<p>VictoriaMetrics tambi\u00e9n soporta, al igual que Thanos, PromQL y la API de consulta de Prometheus.<\/p>\n<p><\/p>\n<p><img decoding=\"async\" alt=\"En los archivos de c\u00f3digo fuente del n\u00facleo de Linux hay alrededor de 4,000 comentarios que describen tareas pendientes.\" src=\"\/wp-content\/uploads\/2019\/12\/84daf1b7e160e6f9d8a53a83329f2436.jpg\" style=\"display:block;margin: 0 auto;\" \/><\/p>\n<p><\/p>\n<p>A diferencia de Thanos, el c\u00f3digo fuente de VictoriaMetrics se escribi\u00f3 desde cero y est\u00e1 optimizado para rapidez y consumo de recursos. <\/p>\n<p><\/p>\n<p><img decoding=\"async\" alt=\"En los archivos de c\u00f3digo fuente del n\u00facleo de Linux hay alrededor de 4,000 comentarios que describen tareas pendientes.\" src=\"\/wp-content\/uploads\/2019\/12\/371dee8d4705438f560245c4e5e7444f.jpg\" style=\"display:block;margin: 0 auto;\" \/><\/p>\n<p><\/p>\n<p>VictoriaMetrics, a diferencia de Thanos, se escala tanto vertical como horizontalmente. Hay <noindex><a rel=\"nofollow\" href=\"https:\/\/github.com\/VictoriaMetrics\/VictoriaMetrics\/blob\/master\/README.md\">una versi\u00f3n de nodo \u00fanico<\/a><\/noindex>, que se escala verticalmente. Puede comenzar con un procesador y 1 GB de RAM y crecer gradualmente hasta cientos de procesadores y 1 TB de RAM. VictoriaMetrics puede utilizar todos esos recursos. Su rendimiento aumentar\u00e1 aproximadamente 100 veces en comparaci\u00f3n con un sistema de un solo n\u00facleo. <\/p>\n<p><\/p>\n<p><img decoding=\"async\" alt=\"En los archivos de c\u00f3digo fuente del n\u00facleo de Linux hay alrededor de 4,000 comentarios que describen tareas pendientes.\" src=\"\/wp-content\/uploads\/2019\/12\/697e77546cda492f8512e7e761c0300f.jpg\" style=\"display:block;margin: 0 auto;\" \/><\/p>\n<p><\/p>\n<p>La historia de Thanos comenz\u00f3 en noviembre de 2017, cuando se realiz\u00f3 el primer commit p\u00fablico. Antes de eso, Thanos se desarroll\u00f3 internamente en la empresa <noindex><a rel=\"nofollow\" href=\"https:\/\/improbable.io\">improbable.io<\/a><\/noindex>. <\/p>\n<p><\/p>\n<p><img decoding=\"async\" alt=\"En los archivos de c\u00f3digo fuente del n\u00facleo de Linux hay alrededor de 4,000 comentarios que describen tareas pendientes.\" src=\"\/wp-content\/uploads\/2019\/12\/610a81cfb98082bb61b7ae28b00d2c78.jpg\" style=\"display:block;margin: 0 auto;\" \/><\/p>\n<p><\/p>\n<p>En junio de 2019, se lanz\u00f3 una versi\u00f3n emblem\u00e1tica 0.5.0, en la que <noindex><a rel=\"nofollow\" href=\"https:\/\/thanos.io\/proposals\/201809_gossip-removal.md\/\">eliminaron<\/a><\/noindex> <noindex><a rel=\"nofollow\" href=\"https:\/\/en.wikipedia.org\/wiki\/Gossip_protocol\">el protocolo<\/a><\/noindex> gossip. Se elimin\u00f3 de Thanos porque mostr\u00f3 un rendimiento deficiente. A menudo, el cl\u00faster de Thanos no funcionaba correctamente y los nodos se conectaban incorrectamente debido al protocolo gossip. Por lo tanto, decidieron eliminarlo. Creo que fue la decisi\u00f3n correcta. <\/p>\n<p><\/p>\n<p><img decoding=\"async\" alt=\"En los archivos de c\u00f3digo fuente del n\u00facleo de Linux hay alrededor de 4,000 comentarios que describen tareas pendientes.\" src=\"\/wp-content\/uploads\/2019\/12\/d7ecf0105d46464aadc4c46147edf9dc.jpg\" style=\"display:block;margin: 0 auto;\" \/><\/p>\n<p><\/p>\n<p>En junio de 2019, tambi\u00e9n enviaron la solicitud n\u00famero <noindex><a rel=\"nofollow\" href=\"https:\/\/github.com\/cncf\/toc\/pull\/256\">256<\/a><\/noindex> en <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=\"En los archivos de c\u00f3digo fuente del n\u00facleo de Linux hay alrededor de 4,000 comentarios que describen tareas pendientes.\" src=\"\/wp-content\/uploads\/2019\/12\/a8685a616bbdc619009c570e28c9f15b.jpg\" style=\"display:block;margin: 0 auto;\" \/><\/p>\n<p><\/p>\n<p>Y a los pocos meses, Thanos fue aceptado en <noindex><a rel=\"nofollow\" href=\"https:\/\/www.cncf.io\/\">Cloud Native Computing Foundation<\/a><\/noindex>, que incluye Prometheus, Kubernetes y otros proyectos populares.<\/p>\n<p><\/p>\n<p><img decoding=\"async\" alt=\"En los archivos de c\u00f3digo fuente del n\u00facleo de Linux hay alrededor de 4,000 comentarios que describen tareas pendientes.\" src=\"\/wp-content\/uploads\/2019\/12\/90c64c519aa283b13ce64b96da5ac945.jpg\" style=\"display:block;margin: 0 auto;\" \/><\/p>\n<p><\/p>\n<p>En enero de 2018 comenz\u00f3 el desarrollo de VictoriaMetrics.<\/p>\n<p><\/p>\n<p><img decoding=\"async\" alt=\"En los archivos de c\u00f3digo fuente del n\u00facleo de Linux hay alrededor de 4,000 comentarios que describen tareas pendientes.\" src=\"\/wp-content\/uploads\/2019\/12\/c2243e3e0a8d00715644d7c84627c5cb.jpg\" style=\"display:block;margin: 0 auto;\" \/><\/p>\n<p><\/p>\n<p>En septiembre de 2018 mencion\u00e9 p\u00fablicamente por primera vez a VictoriaMetrics.<\/p>\n<p><\/p>\n<p><img decoding=\"async\" alt=\"En los archivos de c\u00f3digo fuente del n\u00facleo de Linux hay alrededor de 4,000 comentarios que describen tareas pendientes.\" src=\"\/wp-content\/uploads\/2019\/12\/66feecad1783c36651cdf2a19e6d0d70.jpg\" style=\"display:block;margin: 0 auto;\" \/><\/p>\n<p><\/p>\n<p>En diciembre de 2018, publicamos la versi\u00f3n de nodo \u00fanico.<\/p>\n<p><\/p>\n<p><img decoding=\"async\" alt=\"En los archivos de c\u00f3digo fuente del n\u00facleo de Linux hay alrededor de 4,000 comentarios que describen tareas pendientes.\" src=\"\/wp-content\/uploads\/2019\/12\/aacf5d683c7d639df7a9f05e297f08c4.jpg\" style=\"display:block;margin: 0 auto;\" \/><\/p>\n<p><\/p>\n<p>En mayo de 2019 <noindex><a rel=\"nofollow\" href=\"https:\/\/blog.usejournal.com\/open-sourcing-victoriametrics-f31e34485c2b\">se publicaron<\/a><\/noindex> los c\u00f3digos fuente tanto de la versi\u00f3n de nodo \u00fanico como de la versi\u00f3n de cl\u00faster. <\/p>\n<p><\/p>\n<p><img decoding=\"async\" alt=\"En los archivos de c\u00f3digo fuente del n\u00facleo de Linux hay alrededor de 4,000 comentarios que describen tareas pendientes.\" src=\"\/wp-content\/uploads\/2019\/12\/6da160c13c87133b1994ef32f86db077.jpg\" style=\"display:block;margin: 0 auto;\" \/><\/p>\n<p><\/p>\n<p>En junio de 2019, al igual que Thanos, enviamos una solicitud a la fundaci\u00f3n CNCF bajo el n\u00famero <noindex><a rel=\"nofollow\" href=\"https:\/\/github.com\/cncf\/toc\/pull\/255\">255<\/a><\/noindex>. Enviamos la solicitud un d\u00eda antes que Thanos. <\/p>\n<p><\/p>\n<p><img decoding=\"async\" alt=\"En los archivos de c\u00f3digo fuente del n\u00facleo de Linux hay alrededor de 4,000 comentarios que describen tareas pendientes.\" src=\"\/wp-content\/uploads\/2019\/12\/12c281eae67b3cec5a66fab41aee1fdb.jpg\" style=\"display:block;margin: 0 auto;\" \/><\/p>\n<p><\/p>\n<p>Pero, lamentablemente, a\u00fan no nos han aceptado. Necesitamos la ayuda de la comunidad.<\/p>\n<p><\/p>\n<p><img decoding=\"async\" alt=\"En los archivos de c\u00f3digo fuente del n\u00facleo de Linux hay alrededor de 4,000 comentarios que describen tareas pendientes.\" src=\"\/wp-content\/uploads\/2019\/12\/ab7b20661c3cfa01209cd742eb71a898.jpg\" style=\"display:block;margin: 0 auto;\" \/><\/p>\n<p><\/p>\n<p>Veamos las diapositivas m\u00e1s importantes que muestran la arquitectura de Thanos y VictoriaMetrics.<\/p>\n<p><\/p>\n<p><img decoding=\"async\" alt=\"En los archivos de c\u00f3digo fuente del n\u00facleo de Linux hay alrededor de 4,000 comentarios que describen tareas pendientes.\" src=\"\/wp-content\/uploads\/2019\/12\/a268b600bcd0cebfd9c5069d2d911a9d.jpg\" style=\"display:block;margin: 0 auto;\" \/><\/p>\n<p><\/p>\n<p>Empecemos con Thanos. Los componentes amarillos son los componentes de Prometheus. Todo lo dem\u00e1s son componentes de Thanos. Comencemos con el componente m\u00e1s importante. Thanos Sidecar es un componente que se instala junto a cada Prometheus. Se encarga de cargar los datos de Prometheus desde el almacenamiento local a S3 o a otro objeto de almacenamiento. <\/p>\n<p><\/p>\n<p>Hay un componente llamado Thanos Store Gateway, que puede leer estos datos desde Object Storage al recibir consultas de Thanos Query. Thanos Query implementa PromQL y la API de Prometheus. Es decir, desde afuera se presenta como Prometheus. Recibe consultas PromQL, las env\u00eda a Thanos Store Gateway, y este extrae los datos necesarios de Object Storage y los devuelve.<\/p>\n<p><\/p>\n<p>Sin embargo, en nuestro Object Storage se almacenan los datos sin las \u00faltimas dos horas debido a las caracter\u00edsticas de implementaci\u00f3n de Thanos Sidecar, que no puede cargar las \u00faltimas dos horas en el Object Storage S3, ya que Prometheus no ha creado archivos en el almacenamiento local para esas dos horas.<\/p>\n<p><\/p>\n<p>\u00bfC\u00f3mo se logr\u00f3 solucionar esto? Thanos Query, adem\u00e1s de las consultas en Thanos Store Gateway, env\u00eda consultas paralelas a cada Thanos Sidecar que se encuentra cerca de Prometheus. <\/p>\n<p><\/p>\n<p>Y Thanos Sidecar, a su vez, reenv\u00eda las consultas a Prometheus, y extrae los datos de las \u00faltimas dos horas.<\/p>\n<p><\/p>\n<p>Adem\u00e1s de estos componentes, hay un componente opcional sin el cual Thanos no funcionar\u00e1 adecuadamente. Este es Thanos Compact, que se encarga de fusionar peque\u00f1os archivos en el Object Storage en archivos m\u00e1s grandes que han sido subidos all\u00ed por los Thanos Sidecars. Thanos Sidecar carga archivos con datos de las \u00faltimas dos horas. Si estos archivos no se fusionan en archivos m\u00e1s grandes, su cantidad puede crecer considerablemente. Cuantos m\u00e1s archivos haya, m\u00e1s memoria necesita el Thanos Store Gateway, m\u00e1s recursos se requieren para la transferencia de datos y metadatos. El trabajo del Thanos Store Gateway se vuelve ineficiente. Por lo tanto, es necesario ejecutar Thanos Compact, que fusiona archivos peque\u00f1os en archivos m\u00e1s grandes, reduciendo la cantidad de estos archivos y el overhead en el Thanos Store Gateway.<\/p>\n<p><\/p>\n<p>Tambi\u00e9n hay un componente llamado Thanos Ruler. Este ejecuta las reglas de alerta de Prometheus y puede calcular las reglas de grabaci\u00f3n de Prometheus para registrar datos nuevamente en Object Storage. Pero se recomienda no usar este componente, ya que <noindex><a rel=\"nofollow\" href=\"https:\/\/github.com\/thanos-io\/thanos\/blob\/master\/docs\/components\/rule.md#risk\">tiende a devolver datos incompletos.<\/a><\/noindex>.<\/p>\n<p><\/p>\n<p>As\u00ed es el esquema simple de Thanos. <\/p>\n<p><\/p>\n<p><img decoding=\"async\" alt=\"En los archivos de c\u00f3digo fuente del n\u00facleo de Linux hay alrededor de 4,000 comentarios que describen tareas pendientes.\" src=\"\/wp-content\/uploads\/2019\/12\/3f7cd77a1c056bf7ac245c774d05ea34.jpg\" style=\"display:block;margin: 0 auto;\" \/><\/p>\n<p><\/p>\n<p>Ahora comparemos con el esquema de VictoriaMetrics.<\/p>\n<p><\/p>\n<p>VictoriaMetrics tiene 2 versiones: Single-node y versi\u00f3n en cl\u00faster. Single-node funciona en una sola computadora. En Single-node no hay estos componentes, solo un binario. Este binario en la diapositiva se presenta como un cuadrado. Todo lo que est\u00e1 dentro del cuadrado es el contenido del archivo binario para la versi\u00f3n Single-node. No es necesario que lo conozcas. Simplemente ejecutas el binario y todo funciona. <\/p>\n<p><\/p>\n<p>La versi\u00f3n en cl\u00faster es m\u00e1s compleja. Dentro de ella hay tres componentes diferentes: vmselect, vminsert y vmstorage. Por su nombre, deber\u00eda ser evidente cu\u00e1l es la funci\u00f3n de cada uno. El componente Insert acepta datos en diferentes formatos: desde la API remote write de Prometheus, el protocolo en l\u00ednea de Influx, el protocolo de Graphite y desde el protocolo de OpenTSDB. El componente Insert los recibe, los analiza y los distribuye entre los componentes de almacenamiento disponibles, donde los datos se guardan. <noindex><a rel=\"nofollow\" href=\"https:\/\/medium.com\/@valyala\/promql-tutorial-for-beginners-9ab455142085\">PromQL<\/a><\/noindex>, as\u00ed como la API de consulta de Prometheus, y puede ser usado como reemplazo de Prometheus en Grafana u otros clientes de API de Prometheus. Select acepta consultas PromQL, las analiza, lee los datos necesarios para ejecutar dicha consulta desde los nodos de almacenamiento, procesa estos datos y devuelve la respuesta.<\/p>\n<p><\/p>\n<p><img decoding=\"async\" alt=\"En los archivos de c\u00f3digo fuente del n\u00facleo de Linux hay alrededor de 4,000 comentarios que describen tareas pendientes.\" src=\"\/wp-content\/uploads\/2019\/12\/5b4f1ec2504c1bea423e58ced26570bd.jpg\" style=\"display:block;margin: 0 auto;\" \/><\/p>\n<p><\/p>\n<p>Compararemos la complejidad de instalaci\u00f3n de Thanos y VictoriaMetrics.<\/p>\n<p><\/p>\n<p><img decoding=\"async\" alt=\"En los archivos de c\u00f3digo fuente del n\u00facleo de Linux hay alrededor de 4,000 comentarios que describen tareas pendientes.\" src=\"\/wp-content\/uploads\/2019\/12\/39b293fc911b2987a191cc5d98b1c9f7.jpg\" style=\"display:block;margin: 0 auto;\" \/><\/p>\n<p><\/p>\n<p>Comencemos con Thanos. Antes de comenzar a trabajar con Thanos, es necesario crear un bucket en un almacenamiento de objetos, como S3 o GCS, para que el Thanos Sidecar pueda escribir datos all\u00ed. <\/p>\n<p><\/p>\n<p><img decoding=\"async\" alt=\"En los archivos de c\u00f3digo fuente del n\u00facleo de Linux hay alrededor de 4,000 comentarios que describen tareas pendientes.\" src=\"\/wp-content\/uploads\/2019\/12\/7a59c36c4453f1747067c79d9a9b8e2a.jpg\" style=\"display:block;margin: 0 auto;\" \/><\/p>\n<p><\/p>\n<p>Luego, para cada Prometheus, se debe instalar Thanos Sidecar. Antes de eso, no olvide desactivar la compactaci\u00f3n de datos en Prometheus. La compactaci\u00f3n de datos comprime peri\u00f3dicamente los datos en el almacenamiento local de Prometheus para reducir el consumo de recursos.<\/p>\n<p><\/p>\n<p>Cuando instalas Thanos Sidecar en tus Prometheus, debes desactivar esta compactaci\u00f3n de datos, porque Thanos Sidecar no puede funcionar correctamente con la compactaci\u00f3n de datos activada. Esto significa que tu Prometheus comienza a guardar datos en bloques de dos horas y deja de fusionar estos bloques en archivos m\u00e1s grandes. En consecuencia, si realizas consultas que superan la duraci\u00f3n de las \u00faltimas dos horas, no funcionar\u00e1n tan eficientemente en comparaci\u00f3n con c\u00f3mo podr\u00edan hacerlo si la compactaci\u00f3n de datos estuviera activada.<\/p>\n<p><\/p>\n<p><img decoding=\"async\" alt=\"En los archivos de c\u00f3digo fuente del n\u00facleo de Linux hay alrededor de 4,000 comentarios que describen tareas pendientes.\" src=\"\/wp-content\/uploads\/2019\/12\/825b70ede9edd1de6658576e2b824cd1.jpg\" style=\"display:block;margin: 0 auto;\" \/><\/p>\n<p><\/p>\n<p>Por eso, Thanos recomienda reducir el tiempo de retenci\u00f3n de datos en el almacenamiento local a entre 6 y 8 horas, para disminuir la sobrecarga causada por una gran cantidad de peque\u00f1os bloques.<\/p>\n<p><\/p>\n<p>Despu\u00e9s de haber instalado Thanos Sidecar, debes instalar dos componentes para cada bucket de almacenamiento de objetos. Estos son Thanos Compactor y Thanos Store Gateway. <\/p>\n<p><\/p>\n<p><img decoding=\"async\" alt=\"En los archivos de c\u00f3digo fuente del n\u00facleo de Linux hay alrededor de 4,000 comentarios que describen tareas pendientes.\" src=\"\/wp-content\/uploads\/2019\/12\/77575d65a75bfd9af8d7dedf0cc5c922.jpg\" style=\"display:block;margin: 0 auto;\" \/><\/p>\n<p><\/p>\n<p>Despu\u00e9s de eso, necesitas instalar Thanos Query y configurarlo para que pueda conectarse a todos los Thanos Store Gateway que tienes, as\u00ed como a todos los Thanos Sidecar.<\/p>\n<p><\/p>\n<p>Aqu\u00ed puede haber un peque\u00f1o problema. <\/p>\n<p><\/p>\n<p><img decoding=\"async\" alt=\"En los archivos de c\u00f3digo fuente del n\u00facleo de Linux hay alrededor de 4,000 comentarios que describen tareas pendientes.\" src=\"\/wp-content\/uploads\/2019\/12\/6eddee956c58991ccee52891b368f10f.jpg\" style=\"display:block;margin: 0 auto;\" \/><\/p>\n<p><\/p>\n<p>Necesitas configurar una conexi\u00f3n confiable y segura desde Thanos Query a estos componentes. Y si tus Prometheus est\u00e1n en diferentes centros de datos o en diferentes VPC, las conexiones externas est\u00e1n prohibidas. Pero para que Thanos Query funcione, necesitas configurar una conexi\u00f3n all\u00ed, y debes encontrar una manera de hacerlo.<\/p>\n<p><\/p>\n<p>Si tiene muchos centros de datos, la confiabilidad de todo el sistema disminuye. Esto se debe a que Thanos Query debe mantener conexiones constantes con todos los Thanos Sidecar ubicados en diferentes centros de datos. Cada vez que se recibe una solicitud, enviar\u00e1 consultas a todos los Thanos Sidecar. Si la conexi\u00f3n se interrumpe, obtendr\u00e1 un conjunto de datos incompleto o recibir\u00e1 la respuesta \u00abel cl\u00faster no est\u00e1 funcionando\u00bb. <\/p>\n<p><\/p>\n<p><img decoding=\"async\" alt=\"En los archivos de c\u00f3digo fuente del n\u00facleo de Linux hay alrededor de 4,000 comentarios que describen tareas pendientes.\" src=\"\/wp-content\/uploads\/2019\/12\/13c3765871568ac0db4014964cb5d752.jpg\" style=\"display:block;margin: 0 auto;\" \/><\/p>\n<p><\/p>\n<p>En VictoriaMetrics todo es un poco m\u00e1s sencillo. Para la versi\u00f3n de nodo \u00fanico, simplemente necesitas ejecutar un binario y todo funcionar\u00e1. <\/p>\n<p><\/p>\n<p><img decoding=\"async\" alt=\"En los archivos de c\u00f3digo fuente del n\u00facleo de Linux hay alrededor de 4,000 comentarios que describen tareas pendientes.\" src=\"\/wp-content\/uploads\/2019\/12\/1edf992a6404f5dea1ae2bd4f4d2d8fd.jpg\" style=\"display:block;margin: 0 auto;\" \/><\/p>\n<p><\/p>\n<p>En la versi\u00f3n en cl\u00faster, solo necesitas ejecutar los tres tipos de componentes mencionados anteriormente en cualquier cantidad que necesites, o utilizar <noindex><a rel=\"nofollow\" href=\"https:\/\/github.com\/VictoriaMetrics\/helm-charts\/\">helm chart<\/a><\/noindex> para automatizar el lanzamiento de los componentes en Kubernetes. Tambi\u00e9n planeamos crear un operador de Kubernetes. El helm chart no cubre algunos casos y puede permitirte dispararte en el pie. Por ejemplo, permite reducir la cantidad de nodos de almacenamiento, lo que provocar\u00e1 la p\u00e9rdida de datos.<\/p>\n<p><\/p>\n<p><img decoding=\"async\" alt=\"En los archivos de c\u00f3digo fuente del n\u00facleo de Linux hay alrededor de 4,000 comentarios que describen tareas pendientes.\" src=\"\/wp-content\/uploads\/2019\/12\/ad4249222cb5e591d7e7bd0b7f1708c0.jpg\" style=\"display:block;margin: 0 auto;\" \/><\/p>\n<p><\/p>\n<p>Despu\u00e9s de que hayas lanzado un binario o la versi\u00f3n en cl\u00faster, solo necesitas agregar a la configuraci\u00f3n de Prometheus <noindex><a rel=\"nofollow\" href=\"https:\/\/github.com\/VictoriaMetrics\/VictoriaMetrics\/blob\/master\/README.md#prometheus-setup\">la configuraci\u00f3n para el URL de escritura remota<\/a><\/noindex>, para que comience a registrar datos de manera paralela en el almacenamiento local y en el almacenamiento remoto. Como puede notar, esta configuraci\u00f3n deber\u00eda funcionar con mucha m\u00e1s confiabilidad en comparaci\u00f3n con la configuraci\u00f3n de Thanos. No necesitamos mantener una conexi\u00f3n desde VictoriaMetrics a todos los Prometheus, ya que los Prometheus se conectan solos a VictoriaMetrics y env\u00edan datos. <\/p>\n<p><\/p>\n<p><img decoding=\"async\" alt=\"En los archivos de c\u00f3digo fuente del n\u00facleo de Linux hay alrededor de 4,000 comentarios que describen tareas pendientes.\" src=\"\/wp-content\/uploads\/2019\/12\/465ffc6cd77b2ca022b2541851a7ddbc.jpg\" style=\"display:block;margin: 0 auto;\" \/><\/p>\n<p><\/p>\n<p>Consideremos el soporte de Thanos y VictoriaMetrics.<\/p>\n<p><\/p>\n<p><img decoding=\"async\" alt=\"En los archivos de c\u00f3digo fuente del n\u00facleo de Linux hay alrededor de 4,000 comentarios que describen tareas pendientes.\" src=\"\/wp-content\/uploads\/2019\/12\/6043f0d3d99cb3e49837f03d3e6bbb9b.jpg\" style=\"display:block;margin: 0 auto;\" \/><\/p>\n<p><\/p>\n<p>Thanos necesita monitorear el Sidecar para asegurarse de que no detenga la carga de datos en el Object Storage. Ellos pueden interrumpir esta carga de datos debido a errores de carga, por ejemplo, si su conexi\u00f3n a la red con el Object Storage se interrumpe temporalmente o si el Object Storage no est\u00e1 disponible temporalmente. En ese momento, el Thanos Sidecar notar\u00e1 esto, reportar\u00e1 un error, puede fallar y despu\u00e9s dejar de funcionar. Si no lo monitorea, dejar\u00e1 de transferir datos al Object Storage. Si se supera el tiempo de retenci\u00f3n (6-8 horas recomendado), perder\u00e1 datos que no llegaron al Object Storage.<\/p>\n<p><\/p>\n<p><img decoding=\"async\" alt=\"En los archivos de c\u00f3digo fuente del n\u00facleo de Linux hay alrededor de 4,000 comentarios que describen tareas pendientes.\" src=\"\/wp-content\/uploads\/2019\/12\/7c6556fecdee4ca4986931c2eebf9895.jpg\" style=\"display:block;margin: 0 auto;\" \/><\/p>\n<p><\/p>\n<p>Los compactores de Thanos pueden dejar de funcionar debido a <noindex><a rel=\"nofollow\" href=\"https:\/\/github.com\/thanos-io\/thanos\/issues\/1919\">carreras con Sidecar<\/a><\/noindex>. Los Compactor toman datos del Object Storage y los fusionan en piezas m\u00e1s grandes de datos. Dado que los compactores no est\u00e1n sincronizados con los Sidecar, puede ocurrir lo siguiente: el Sidecar no ha terminado de escribir el bloque y el Compactor decide que este bloque est\u00e1 completamente registrado. El Compactor comienza a leerlo. Lee el bloque de manera incompleta y deja de funcionar. Vea los detalles <noindex><a rel=\"nofollow\" href=\"https:\/\/thanos.io\/proposals\/201901-read-write-operations-bucket.md\/\">aqu\u00ed<\/a><\/noindex>.<\/p>\n<p><\/p>\n<p><img decoding=\"async\" alt=\"En los archivos de c\u00f3digo fuente del n\u00facleo de Linux hay alrededor de 4,000 comentarios que describen tareas pendientes.\" src=\"\/wp-content\/uploads\/2019\/12\/7fd00e243009763781b54043dec1e94b.jpg\" style=\"display:block;margin: 0 auto;\" \/><\/p>\n<p><\/p>\n<p>El Store Gateway puede ofrecer datos inconsistentes debido a carreras entre el Compactor y los Sidecar. Aqu\u00ed ocurre lo mismo, ya que el Store Gateway no est\u00e1 sincronizado de ninguna manera con los compactores y sidecars. Por lo tanto, pueden producirse condiciones de carrera en las que el Store Gateway no ve parte de los datos o ve datos adicionales.<\/p>\n<p><\/p>\n<p><img decoding=\"async\" alt=\"En los archivos de c\u00f3digo fuente del n\u00facleo de Linux hay alrededor de 4,000 comentarios que describen tareas pendientes.\" src=\"\/wp-content\/uploads\/2019\/12\/85fcc811173dda1a42ac8d4e3b212f5e.jpg\" style=\"display:block;margin: 0 auto;\" \/><\/p>\n<p><\/p>\n<p>El componente de consulta en Thanos por defecto devuelve resultados parciales si algunos Sidecars o el Store Gateway no est\u00e1n disponibles en ese momento. Obtendr\u00e1 parte de los datos y ni siquiera sabr\u00e1 que no recibi\u00f3 todos los datos. As\u00ed es como funciona por defecto. En una situaci\u00f3n similar, VictoriaMetrics devuelve los datos marcados como parciales. <\/p>\n<p><\/p>\n<p><img decoding=\"async\" alt=\"En los archivos de c\u00f3digo fuente del n\u00facleo de Linux hay alrededor de 4,000 comentarios que describen tareas pendientes.\" src=\"\/wp-content\/uploads\/2019\/12\/a9e5a70bdcafae9b98545514ca7a7ff3.jpg\" style=\"display:block;margin: 0 auto;\" \/><\/p>\n<p><\/p>\n<p>A diferencia de Thanos, VictoriaMetrics rara vez pierde datos. Incluso si se interrumpe la conexi\u00f3n de Prometheus con VictoriaMetrics, no es un problema, ya que Prometheus sigue escribiendo los nuevos datos entrantes en el Write Ahead Log, que tiene un tama\u00f1o de 2 horas. Si recupera la conexi\u00f3n con VictoriaMetrics dentro de dos horas, los datos no se perder\u00e1n. Prometheus <noindex><a rel=\"nofollow\" href=\"https:\/\/grafana.com\/blog\/2019\/03\/25\/whats-new-in-prometheus-2.8-wal-based-remote-write\/\">puede seguir escribiendo datos despu\u00e9s de restaurar la conexi\u00f3n con VictoriaMetrics.<\/a><\/noindex>.<\/p>\n<p><\/p>\n<p><img decoding=\"async\" alt=\"En los archivos de c\u00f3digo fuente del n\u00facleo de Linux hay alrededor de 4,000 comentarios que describen tareas pendientes.\" src=\"\/wp-content\/uploads\/2019\/12\/fa4be02056f7338416029bfd8f9d0214.jpg\" style=\"display:block;margin: 0 auto;\" \/><\/p>\n<p><\/p>\n<p>A diferencia de Thanos, que registra datos en el almacenamiento de objetos solo despu\u00e9s de dos horas, Prometheus replica autom\u00e1ticamente los datos a trav\u00e9s del protocolo remote write en el almacenamiento remoto, como VictoriaMetrics. No tienes que preocuparte por la p\u00e9rdida del almacenamiento local en Prometheus. Si de repente pierde el almacenamiento local, en el peor de los casos, solo perder\u00e1s los \u00faltimos segundos de datos que no se han registrado en el almacenamiento remoto.<\/p>\n<p><\/p>\n<p><img decoding=\"async\" alt=\"En los archivos de c\u00f3digo fuente del n\u00facleo de Linux hay alrededor de 4,000 comentarios que describen tareas pendientes.\" src=\"\/wp-content\/uploads\/2019\/12\/a6e9b2322eb9b3e145603a6b9db1002d.jpg\" style=\"display:block;margin: 0 auto;\" \/><\/p>\n<p><\/p>\n<p>Kubernetes gestiona autom\u00e1ticamente el cl\u00faster a diferencia de Thanos. Todos los componentes de Thanos son dif\u00edciles de encajar en un solo cl\u00faster de Kubernetes, a diferencia de los componentes en cl\u00faster de VictoriaMetrics.<\/p>\n<p><\/p>\n<p><img decoding=\"async\" alt=\"En los archivos de c\u00f3digo fuente del n\u00facleo de Linux hay alrededor de 4,000 comentarios que describen tareas pendientes.\" src=\"\/wp-content\/uploads\/2019\/12\/5b3d1586fe461a0c6f34de09fdd12845.jpg\" style=\"display:block;margin: 0 auto;\" \/><\/p>\n<p><\/p>\n<p>Actualizar VictoriaMetrics a una nueva versi\u00f3n es muy sencillo. Simplemente detienes VictoriaMetrics, actualizas los binarios y vuelves a iniciar. Al detenerlo mediante la se\u00f1al SIGINT, todos los binarios de VictoriaMetrics realizan un cierre limpio. Guardan correctamente los datos necesarios y cierran adecuadamente las conexiones entrantes para no perder nada. Por lo tanto, no perder\u00e1s nada durante la actualizaci\u00f3n. <\/p>\n<p><\/p>\n<p><img decoding=\"async\" alt=\"En los archivos de c\u00f3digo fuente del n\u00facleo de Linux hay alrededor de 4,000 comentarios que describen tareas pendientes.\" src=\"\/wp-content\/uploads\/2019\/12\/96a52e2f0696172159919536efb68ad3.jpg\" style=\"display:block;margin: 0 auto;\" \/><\/p>\n<p><\/p>\n<p>Es muy f\u00e1cil expandir el cl\u00faster de VictoriaMetrics. Simplemente agregas los componentes necesarios y contin\u00faas trabajando. <\/p>\n<p><\/p>\n<p><img decoding=\"async\" alt=\"En los archivos de c\u00f3digo fuente del n\u00facleo de Linux hay alrededor de 4,000 comentarios que describen tareas pendientes.\" src=\"\/wp-content\/uploads\/2019\/12\/5f5e6ef78b322bb278e618a526f05e26.jpg\" style=\"display:block;margin: 0 auto;\" \/><\/p>\n<p><\/p>\n<p>Sobre las trampas de Thanos y VictoriaMetrics.<\/p>\n<p><\/p>\n<p><img decoding=\"async\" alt=\"En los archivos de c\u00f3digo fuente del n\u00facleo de Linux hay alrededor de 4,000 comentarios que describen tareas pendientes.\" src=\"\/wp-content\/uploads\/2019\/12\/17808bc76a16e571b7e4fa1655964201.jpg\" style=\"display:block;margin: 0 auto;\" \/><\/p>\n<p><\/p>\n<p>Thanos tiene las siguientes trampas. Prometheus debe almacenar datos de las \u00faltimas dos horas. Si se pierden, los perder\u00e1s por completo, ya que a\u00fan no se han registrado en el almacenamiento de objetos, como S3. <\/p>\n<p><\/p>\n<p><img decoding=\"async\" alt=\"En los archivos de c\u00f3digo fuente del n\u00facleo de Linux hay alrededor de 4,000 comentarios que describen tareas pendientes.\" src=\"\/wp-content\/uploads\/2019\/12\/81ca9135d2d97b95e9731dd1f5501859.jpg\" style=\"display:block;margin: 0 auto;\" \/><\/p>\n<p><\/p>\n<p>El componente Store Gateway y el componente compactor pueden requerir mucha memoria para trabajar con grandes almacenes de objetos, si all\u00ed se almacenan muchos archivos peque\u00f1os. Cuanto mayor sea la cantidad y el tama\u00f1o de los archivos, m\u00e1s memoria RAM necesitar\u00e1n el Store Gateway y el compactor para almacenar la metainformaci\u00f3n. Thanos tiene muchos problemas relacionados con que <noindex><a rel=\"nofollow\" href=\"https:\/\/github.com\/thanos-io\/thanos\/issues\/448\">El Store Gateway y el compactor fallan con vol\u00famenes promedio de datos escritos.<\/a><\/noindex>.<\/p>\n<p><\/p>\n<p><img decoding=\"async\" alt=\"En los archivos de c\u00f3digo fuente del n\u00facleo de Linux hay alrededor de 4,000 comentarios que describen tareas pendientes.\" src=\"\/wp-content\/uploads\/2019\/12\/cf75315535439843c9bb32cf1175391b.jpg\" style=\"display:block;margin: 0 auto;\" \/><\/p>\n<p><\/p>\n<p>Thanos se publicita como si pudiera escalar indefinidamente en la cantidad de tus Prometheus. En realidad, esto no es cierto. Dado que todas las consultas pasan a trav\u00e9s del componente Query, que debe consultar en paralelo todos los componentes Store Gateway y todos los componentes Sidecar, extraer los datos de all\u00ed y luego preprocesarlos. Es evidente que la velocidad de las consultas est\u00e1 limitada por el eslab\u00f3n m\u00e1s lento, ya sea el Store Gateway m\u00e1s lento o el Sidecar m\u00e1s lento. <\/p>\n<p><\/p>\n<p>Estos componentes pueden estar cargados de manera desigual. Por ejemplo, tienes un Prometheus que recolecta millones de m\u00e9tricas por segundo. Y hay otro Prometheus en el que se recolectan miles de m\u00e9tricas por segundo. El Prometheus que recolecta millones de m\u00e9tricas por segundo carga mucho m\u00e1s el servidor en el que opera. Por lo tanto, el Sidecar all\u00ed funciona m\u00e1s lentamente. En general, todo funciona m\u00e1s lento all\u00ed. Y el componente Query extraer\u00e1 datos de all\u00ed muy lentamente. Como resultado, el rendimiento de todo tu cl\u00faster estar\u00e1 limitado por este Sidecar lento.<\/p>\n<p><\/p>\n<p><img decoding=\"async\" alt=\"En los archivos de c\u00f3digo fuente del n\u00facleo de Linux hay alrededor de 4,000 comentarios que describen tareas pendientes.\" src=\"\/wp-content\/uploads\/2019\/12\/68070f629821a54bfd8ed934d67344fd.jpg\" style=\"display:block;margin: 0 auto;\" \/><\/p>\n<p><\/p>\n<p>Por defecto, Thanos devuelve datos parciales si algunos Sidecar o el Store Gateway no est\u00e1n disponibles. Por ejemplo, si sus Sidecar est\u00e1n distribuidos por todo el mundo en diferentes centros de datos, la probabilidad de interrupci\u00f3n de la conexi\u00f3n y la falta de disponibilidad de componentes aumenta considerablemente. En consecuencia, en la mayor\u00eda de los casos, recibir\u00e1 datos parciales sin siquiera saberlo.<\/p>\n<p><\/p>\n<p><img decoding=\"async\" alt=\"En los archivos de c\u00f3digo fuente del n\u00facleo de Linux hay alrededor de 4,000 comentarios que describen tareas pendientes.\" src=\"\/wp-content\/uploads\/2019\/12\/6a1dea50e739314c23b4370c569b44a4.jpg\" style=\"display:block;margin: 0 auto;\" \/><\/p>\n<p><\/p>\n<p>VictoriaMetrics tambi\u00e9n tiene sus trampas. La primera trampa es una opci\u00f3n que limita la cantidad de memoria RAM utilizada para la cach\u00e9 de VictoriaMetrics. Por defecto, es del 60% de la memoria RAM en la m\u00e1quina donde est\u00e1 ejecutado VictoriaMetrics, o el 60% de la RAM del pod de VictoriaMetrics en Kubernetes.<\/p>\n<p><\/p>\n<p>Si se cambia incorrectamente este valor, se puede perjudicar el rendimiento de VictoriaMetrics. Por ejemplo, si se establece un valor demasiado bajo, los datos podr\u00edan dejar de caber en la cach\u00e9 de VictoriaMetrics. Esto implicar\u00eda que tendr\u00eda que realizar trabajo adicional y cargar el procesador con el disco. Si configuras esta opci\u00f3n demasiado alta, aumentar\u00e1, en primer lugar, la probabilidad de que VictoriaMetrics se cierre con un error de falta de memoria, y, en segundo lugar, dejar\u00e1 muy poca memoria RAM en el sistema operativo para la cach\u00e9 de archivos. Y VictoriaMetrics depende de la cach\u00e9 de archivos para su rendimiento. Si no hay suficiente, la carga en el disco puede aumentar significativamente. Por eso, el consejo es: no cambies este par\u00e1metro sin necesidad extrema.<\/p>\n<p><\/p>\n<p><img decoding=\"async\" alt=\"En los archivos de c\u00f3digo fuente del n\u00facleo de Linux hay alrededor de 4,000 comentarios que describen tareas pendientes.\" src=\"\/wp-content\/uploads\/2019\/12\/f145833dcbe42c2b62545358cfb204e5.jpg\" style=\"display:block;margin: 0 auto;\" \/><\/p>\n<p><\/p>\n<p>La segunda opci\u00f3n es retentionPeriod, que por defecto est\u00e1 configurado en 1 mes. Este es el tiempo durante el cual VictoriaMetrics almacena los datos. Una vez transcurrido este plazo, VictoriaMetrics elimina los datos.<\/p>\n<p><\/p>\n<p>Muchos inician VictoriaMetrics sin este par\u00e1metro, registran datos durante un mes. Y luego preguntan: \u00bfpor qu\u00e9 se perdieron los datos del mes anterior? Porque el retentionPeriod por defecto es de 1 mes. Por eso es necesario conocer y establecer el retentionPeriod correcto. <\/p>\n<p><\/p>\n<p><img decoding=\"async\" alt=\"En los archivos de c\u00f3digo fuente del n\u00facleo de Linux hay alrededor de 4,000 comentarios que describen tareas pendientes.\" src=\"\/wp-content\/uploads\/2019\/12\/377e4e19b7dc5648dd16bff39f4f1651.jpg\" style=\"display:block;margin: 0 auto;\" \/><\/p>\n<p><\/p>\n<p>Repasemos las caracter\u00edsticas \u00fanicas.<\/p>\n<p><\/p>\n<p><img decoding=\"async\" alt=\"En los archivos de c\u00f3digo fuente del n\u00facleo de Linux hay alrededor de 4,000 comentarios que describen tareas pendientes.\" src=\"\/wp-content\/uploads\/2019\/12\/bca5529a95e94ada650e67dba063ada6.jpg\" style=\"display:block;margin: 0 auto;\" \/><\/p>\n<p><\/p>\n<p>Thanos tiene una funci\u00f3n llamada downsampling: intervalos de 5 minutos y de una hora, que a menudo <noindex><a rel=\"nofollow\" href=\"https:\/\/github.com\/thanos-io\/thanos\/issues?utf8=%E2%9C%93&amp;q=is%3Aissue+is%3Aopen+downsampling\">no funcionan correctamente<\/a><\/noindex>. Si buscas en Google y miras sus problemas en GitHub, hay muchos problemas relacionados con este downsampling, que a veces no funciona correctamente, o no lo hace como esperan los usuarios.<\/p>\n<p><\/p>\n<p><img decoding=\"async\" alt=\"En los archivos de c\u00f3digo fuente del n\u00facleo de Linux hay alrededor de 4,000 comentarios que describen tareas pendientes.\" src=\"\/wp-content\/uploads\/2019\/12\/84f116767826d1174286b45ccf60dfe7.jpg\" style=\"display:block;margin: 0 auto;\" \/><\/p>\n<p><\/p>\n<p>Thanos tiene deduplicaci\u00f3n de datos para pares de Prometheus HA. Cuando dos Prometheus recopilan las mismas m\u00e9tricas de los mismos targets, Thanos las almacena en el Object Storage. Thanos puede deduplicar correctamente estos datos, a diferencia de VictoriaMetrics.<\/p>\n<p><\/p>\n<p><img decoding=\"async\" alt=\"En los archivos de c\u00f3digo fuente del n\u00facleo de Linux hay alrededor de 4,000 comentarios que describen tareas pendientes.\" src=\"\/wp-content\/uploads\/2019\/12\/efd797cafcb339a4900f4d2cddd04638.jpg\" style=\"display:block;margin: 0 auto;\" \/><\/p>\n<p><\/p>\n<p>Thanos tiene un componente de alertas, que estaba en el esquema de Thanos. Pero no <noindex><a rel=\"nofollow\" href=\"https:\/\/github.com\/thanos-io\/thanos\/blob\/master\/docs\/components\/rule.md\">se recomienda usar en producci\u00f3n<\/a><\/noindex>.<\/p>\n<p><\/p>\n<p><img decoding=\"async\" alt=\"En los archivos de c\u00f3digo fuente del n\u00facleo de Linux hay alrededor de 4,000 comentarios que describen tareas pendientes.\" src=\"\/wp-content\/uploads\/2019\/12\/87d12ff7b3c33dae9a8eda7a2a95bce1.jpg\" style=\"display:block;margin: 0 auto;\" \/><\/p>\n<p><\/p>\n<p>Thanos tiene la ventaja de que el c\u00f3digo de Thanos y de Prometheus es com\u00fan. Thanos y Prometheus fueron desarrollados por los mismos desarrolladores. Al mejorar en Thanos o Prometheus, la otra parte se beneficia.<\/p>\n<p><\/p>\n<p><img decoding=\"async\" alt=\"En los archivos de c\u00f3digo fuente del n\u00facleo de Linux hay alrededor de 4,000 comentarios que describen tareas pendientes.\" src=\"\/wp-content\/uploads\/2019\/12\/92435f15d58e83eb4d548a8bf5256c30.jpg\" style=\"display:block;margin: 0 auto;\" \/><\/p>\n<p><\/p>\n<p>La principal caracter\u00edstica de VictoriaMetrics es MetricsQL. Esta es la extensi\u00f3n de VictoriaMetrics para PromQL, sobre la que habl\u00e9 en el \u00faltimo gran encuentro de monitoreo.<\/p>\n<p><\/p>\n<p><img decoding=\"async\" alt=\"En los archivos de c\u00f3digo fuente del n\u00facleo de Linux hay alrededor de 4,000 comentarios que describen tareas pendientes.\" src=\"\/wp-content\/uploads\/2019\/12\/43a1618a397badc3df9d4eded19be1ec.jpg\" style=\"display:block;margin: 0 auto;\" \/><\/p>\n<p><\/p>\n<p>VictoriaMetrics admite la carga de datos a trav\u00e9s de muchos protocolos diferentes. VictoriaMetrics no solo puede recibir datos de Prometheus, sino tambi\u00e9n a trav\u00e9s de los protocolos Influx, OpenTSDB y Graphite.<\/p>\n<p><\/p>\n<p><img decoding=\"async\" alt=\"En los archivos de c\u00f3digo fuente del n\u00facleo de Linux hay alrededor de 4,000 comentarios que describen tareas pendientes.\" src=\"\/wp-content\/uploads\/2019\/12\/b4bca4b255990f1af11a6ceaf42f46ef.jpg\" style=\"display:block;margin: 0 auto;\" \/><\/p>\n<p><\/p>\n<p>Los datos de VictoriaMetrics ocupan normalmente mucho menos espacio en comparaci\u00f3n con Thanos y Prometheus. <\/p>\n<p><\/p>\n<p>Si se registran datos reales, los usuarios mencionan una reducci\u00f3n de 2 a 5 veces en el tama\u00f1o de los datos en disco en comparaci\u00f3n con Prometheus y Thanos.<\/p>\n<p><\/p>\n<p><img decoding=\"async\" alt=\"En los archivos de c\u00f3digo fuente del n\u00facleo de Linux hay alrededor de 4,000 comentarios que describen tareas pendientes.\" src=\"\/wp-content\/uploads\/2019\/12\/6aeab3c42b45dbd620d328fc43ce4bec.jpg\" style=\"display:block;margin: 0 auto;\" \/><\/p>\n<p><\/p>\n<p>Otra ventaja de VictoriaMetrics es que est\u00e1 optimizada para la velocidad. <\/p>\n<p><\/p>\n<p><img decoding=\"async\" alt=\"En los archivos de c\u00f3digo fuente del n\u00facleo de Linux hay alrededor de 4,000 comentarios que describen tareas pendientes.\" src=\"\/wp-content\/uploads\/2019\/12\/89010a913f0d7b1388b6c62007c7835b.jpg\" style=\"display:block;margin: 0 auto;\" \/><\/p>\n<p><\/p>\n<p>Hablemos sobre el costo de la infraestructura. <\/p>\n<p><\/p>\n<p><img decoding=\"async\" alt=\"En los archivos de c\u00f3digo fuente del n\u00facleo de Linux hay alrededor de 4,000 comentarios que describen tareas pendientes.\" src=\"\/wp-content\/uploads\/2019\/12\/65bd322bb2a64ac4188e29b79e54763a.jpg\" style=\"display:block;margin: 0 auto;\" \/><\/p>\n<p><\/p>\n<p>Una de las ventajas de Thanos es que guarda los datos en object storage, que es relativamente barato.<\/p>\n<p><\/p>\n<p>Al guardar datos en object storage, debes pagar por las operaciones de escritura y lectura de datos ($10 por mill\u00f3n de operaciones). Cuando escribes datos en object storage, pagas los costos de tu hosting por cargar datos a Internet, si tu cl\u00faster no est\u00e1 en AWS, donde es gratuito. Al leer datos, pagas entre $10 y $230 por 1TB. Esto puede ser significativo si solicitas frecuentemente datos hist\u00f3ricos del cl\u00faster de Thanos.<\/p>\n<p><\/p>\n<p><img decoding=\"async\" alt=\"En los archivos de c\u00f3digo fuente del n\u00facleo de Linux hay alrededor de 4,000 comentarios que describen tareas pendientes.\" src=\"\/wp-content\/uploads\/2019\/12\/7f1b32c75d49efa082201fa55b43f6bb.jpg\" style=\"display:block;margin: 0 auto;\" \/><\/p>\n<p><\/p>\n<p>Para el cl\u00faster de Thanos, se deben pagar servidores para los componentes Compact, Store Gateway y Query, que requieren mucha memoria y CPU para grandes vol\u00famenes de datos.<\/p>\n<p><\/p>\n<p><img decoding=\"async\" alt=\"En los archivos de c\u00f3digo fuente del n\u00facleo de Linux hay alrededor de 4,000 comentarios que describen tareas pendientes.\" src=\"\/wp-content\/uploads\/2019\/12\/19c90f30760e77f57a658e67507f4f98.jpg\" style=\"display:block;margin: 0 auto;\" \/><\/p>\n<p><\/p>\n<p>Los gastos para VictoriaMetrics son los siguientes. Si se almacenan los datos en discos HDD de GCE, el costo es de $40 por 1TB. Para VictoriaMetrics, son suficientes discos HDD comunes, no se necesitan SSD, que son cinco veces m\u00e1s caros. VictoriaMetrics est\u00e1 optimizada para HDD.<\/p>\n<p><\/p>\n<p><img decoding=\"async\" alt=\"En los archivos de c\u00f3digo fuente del n\u00facleo de Linux hay alrededor de 4,000 comentarios que describen tareas pendientes.\" src=\"\/wp-content\/uploads\/2019\/12\/c7e922b4d97f353218d6edad7cdea584.jpg\" style=\"display:block;margin: 0 auto;\" \/><\/p>\n<p><\/p>\n<p>Para VictoriaMetrics se necesitan servidores para componentes: ya sea Single-node o para componentes de cl\u00faster, que, a diferencia de los componentes de Thanos, requieren mucho menos CPU y RAM, lo que resultar\u00e1 en un costo menor. <\/p>\n<p><\/p>\n<p><img decoding=\"async\" alt=\"En los archivos de c\u00f3digo fuente del n\u00facleo de Linux hay alrededor de 4,000 comentarios que describen tareas pendientes.\" src=\"\/wp-content\/uploads\/2019\/12\/aaf63cad75238ba19efb825376cf356c.jpg\" style=\"display:block;margin: 0 auto;\" \/><\/p>\n<p><\/p>\n<p>Ejemplos de implementaci\u00f3n. <\/p>\n<p><\/p>\n<p><img decoding=\"async\" alt=\"En los archivos de c\u00f3digo fuente del n\u00facleo de Linux hay alrededor de 4,000 comentarios que describen tareas pendientes.\" src=\"\/wp-content\/uploads\/2019\/12\/53ce0a68724c339d88ad769c18a2e5f9.jpg\" style=\"display:block;margin: 0 auto;\" \/><\/p>\n<p><\/p>\n<p>Un ejemplo de implementaci\u00f3n de Thanos es Gitlab. Gitlab funciona completamente con Thanos. Sin embargo, no todo es tan simple. Si se revisan sus <noindex><a rel=\"nofollow\" href=\"https:\/\/gitlab.com\/gitlab-com\/gl-infra\/infrastructure\/issues\/8647\">issues<\/a><\/noindex>, se puede ver que constantemente enfrentan algunos <noindex><a rel=\"nofollow\" href=\"https:\/\/gitlab.com\/gitlab-com\/gl-infra\/infrastructure\/issues\/8413\">problemas operativos con Thanos<\/a><\/noindex>: les falta memoria para los componentes Store Gateway o Query. Constantemente tienen que aumentar la capacidad de memoria. <\/p>\n<p><\/p>\n<p>Debido a esto, aumentan los gastos para resolver estos problemas. <\/p>\n<p><\/p>\n<p>Una segunda implementaci\u00f3n, que puede ser m\u00e1s exitosa, es la empresa Improbable, que comenz\u00f3 el desarrollo de Thanos. Publicaron el c\u00f3digo fuente de Thanos. Improbable es una empresa que se dedica al desarrollo de motores de juego.<\/p>\n<p><\/p>\n<p><img decoding=\"async\" alt=\"En los archivos de c\u00f3digo fuente del n\u00facleo de Linux hay alrededor de 4,000 comentarios que describen tareas pendientes.\" src=\"\/wp-content\/uploads\/2019\/12\/3a1279cae3cfc7e94c2eccfc0972f06e.jpg\" style=\"display:block;margin: 0 auto;\" \/><\/p>\n<p><\/p>\n<p>Los ejemplos p\u00fablicos de implementaci\u00f3n de VictoriaMetrics son:<\/p>\n<p><\/p>\n<ul>\n<li>wix.com, un constructor de sitios web<\/li>\n<li>Adidas implementa VictoriaMetrics e incluso dio una presentaci\u00f3n en el \u00faltimo PromCon 2019<\/li>\n<li>TrafficStars, una red publicitaria<\/li>\n<li>Seznam.cz, un popular buscador checo.<\/li>\n<\/ul>\n<p><\/p>\n<p>Y luego est\u00e1n las empresas sin nombre que no puedo mencionar ahora. No dieron su consentimiento. <\/p>\n<p><\/p>\n<ul>\n<li>Un gran desarrollador de videojuegos. M\u00e1s grande que Improbable.<\/li>\n<li>Un gran desarrollador de software gr\u00e1fico.<\/li>\n<li>Un gran banco ruso.<\/li>\n<li>Un fabricante europeo de turbinas e\u00f3licas que ha probado con \u00e9xito VictoriaMetrics. Este fabricante implementa VictoriaMetrics para monitorear los datos obtenidos de las turbinas e\u00f3licas a una tasa de 50 muestras por segundo por cada sensor. En cada turbina e\u00f3lica hay varios cientos de sensores. Tienen varias centenas de turbinas e\u00f3licas.<\/li>\n<li>Aerol\u00edneas rusas que quieren implementar VictoriaMetrics, pero no pueden hacerlo a\u00fan. Estamos en la etapa del contrato con ellos.<\/li>\n<\/ul>\n<p><\/p>\n<p><img decoding=\"async\" alt=\"En los archivos de c\u00f3digo fuente del n\u00facleo de Linux hay alrededor de 4,000 comentarios que describen tareas pendientes.\" src=\"\/wp-content\/uploads\/2019\/12\/040affc4d56712783db61ee3b0ec509e.jpg\" style=\"display:block;margin: 0 auto;\" \/>Conclusiones.<\/p>\n<p><\/p>\n<p>VictoriaMetrics y Thanos abordan problemas similares, pero de diferentes maneras:<\/p>\n<p><\/p>\n<ul>\n<li>Vista global de consulta<\/li>\n<li>escalado horizontal <\/li>\n<li>retenci\u00f3n arbitraria<\/li>\n<\/ul>\n<p><\/p>\n<p><img decoding=\"async\" alt=\"En los archivos de c\u00f3digo fuente del n\u00facleo de Linux hay alrededor de 4,000 comentarios que describen tareas pendientes.\" src=\"\/wp-content\/uploads\/2019\/12\/af6285e8f6f68f373da1ebc552104f51.jpg\" style=\"display:block;margin: 0 auto;\" \/><\/p>\n<p><\/p>\n<p>Gracias.<\/p>\n<p><\/p>\n<p>Los esperamos en nuestro <noindex><a rel=\"nofollow\" href=\"https:\/\/t.me\/VictoriaMetrics_ru1\">canal de telegram<\/a><\/noindex>.<\/p>\n<p><\/p>\n<p><img decoding=\"async\" alt=\"En los archivos de c\u00f3digo fuente del n\u00facleo de Linux hay alrededor de 4,000 comentarios que describen tareas pendientes.\" src=\"\/wp-content\/uploads\/2019\/12\/c45b2a3b6e541e7e6cd580629e418c35.jpg\" style=\"display:block;margin: 0 auto;\" \/><\/p>\n<p class=\"for_users_only_msg\">Solo los usuarios registrados pueden participar en la encuesta. <noindex><a rel=\"nofollow\" href=\"https:\/\/habr.com\/ru\/auth\/login\/\">Inicie sesi\u00f3n<\/a><\/noindex>, por favor.<\/p>\n<h2 class=\"default-block__polling-title\">\u00bfQu\u00e9 utilizas como almacenamiento a largo plazo para Prometheus?<\/h2>\n<ul class=\"poll-result\">\n<li class=\"poll-result__item\">\n<p>                <strong class=\"poll-result__data-percent\">35,3%<\/strong>Thanos<\/p>\n<\/li>\n<li class=\"poll-result__item\">\n<p>                <strong class=\"poll-result__data-percent\">0,0%<\/strong>Cortex<\/p>\n<\/li>\n<li class=\"poll-result__item\">\n<p>                <strong class=\"poll-result__data-percent\">0,0%<\/strong>M3DB<\/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>VictoriaMetrics<\/p>\n<\/li>\n<li class=\"poll-result__item\">\n<p>                <strong class=\"poll-result__data-percent\">23,5%<\/strong>otro<\/p>\n<\/li>\n<\/ul>\n<p>    17 usuarios votaron. 16 usuarios se abstuvieron.<br \/>\n<br \/>Fuente: <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.2 - 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\/es\/blog\/administrirovanie\/vybiraem-hranilishhe-dannyh-dlya-prometheus-thanos-vs-victoriametrics\" \/>\n\t<meta name=\"generator\" content=\"All in One SEO (AIOSEO) 5.0.2\" \/>\n\t\t<meta property=\"og:locale\" content=\"es_ES\" \/>\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\/es\/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\udd47Eligiendo almacenamiento de datos para Prometheus: Thanos vs VictoriaMetrics | ProHoster","description":"Hola a todos.","canonical_url":"https:\/\/prohoster.info\/es\/blog\/administrirovanie\/vybiraem-hranilishhe-dannyh-dlya-prometheus-thanos-vs-victoriametrics","robots":"max-image-preview:large","keywords":"","webmasterTools":{"miscellaneous":""},"schema":null,"og:locale":"es_ES","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\/es\/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\/es\/wp-json\/wp\/v2\/posts\/54601","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/prohoster.info\/es\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/prohoster.info\/es\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/prohoster.info\/es\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/prohoster.info\/es\/wp-json\/wp\/v2\/comments?post=54601"}],"version-history":[{"count":0,"href":"https:\/\/prohoster.info\/es\/wp-json\/wp\/v2\/posts\/54601\/revisions"}],"wp:attachment":[{"href":"https:\/\/prohoster.info\/es\/wp-json\/wp\/v2\/media?parent=54601"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/prohoster.info\/es\/wp-json\/wp\/v2\/categories?post=54601"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/prohoster.info\/es\/wp-json\/wp\/v2\/tags?post=54601"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}