{"id":94153,"date":"2020-09-13T19:42:30","date_gmt":"2020-09-13T17:42:30","guid":{"rendered":"https:\/\/prohoster.info\/blog\/administrirovanie\/victoriametrics-i-monitoring-privatnyh-oblakov-pavel-kolobaev"},"modified":"2020-09-13T19:42:30","modified_gmt":"2020-09-13T17:42:30","slug":"victoriametrics-i-monitoring-privatnyh-oblakov-pavel-kolobaev","status":"publish","type":"post","link":"https:\/\/prohoster.info\/es\/blog\/administrirovanie\/victoriametrics-i-monitoring-privatnyh-oblakov-pavel-kolobaev","title":{"rendered":"VictoriaMetrics y la monitorizaci\u00f3n de nubes privadas. Pavel Kolobaev","gt_translate_keys":[{"key":"rendered","format":"text"}]},"content":{"rendered":"<p><img decoding=\"async\" alt=\"VictoriaMetrics y la monitorizaci\u00f3n de nubes privadas. Pavel Kolobaev\" src=\"\/wp-content\/uploads\/2020\/09\/d84a6783fbf35e9d96afd263b5cd4578.jpg\" style=\"display:block;margin: 0 auto;\" \/><\/p>\n<p><\/p>\n<p>VictoriaMetrics: una base de datos r\u00e1pida y escalable para el almacenamiento y procesamiento de datos en forma de series temporales (una entrada consiste en un tiempo y un conjunto de valores correspondientes a ese tiempo, por ejemplo, obtenidos a trav\u00e9s de la supervisi\u00f3n peri\u00f3dica del estado de los sensores o la recolecci\u00f3n de m\u00e9tricas).<\/p>\n<p><noindex><a rel=\"nofollow\" name=\"habracut\"><\/a><\/noindex><br \/>\n<center><div class=\"youtube-placeholder\" data-id=\"74swsWqf0Uc\" onclick=\"loadVideo(this)\">\r\n        <img decoding=\"async\" src=\"https:\/\/img.youtube.com\/vi\/74swsWqf0Uc\/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=\"VictoriaMetrics y la monitorizaci\u00f3n de nubes privadas. Pavel Kolobaev\" src=\"\/wp-content\/uploads\/2020\/09\/df849870a0432a863e34eb11387c9fab.jpg\" style=\"display:block;margin: 0 auto;\" \/><\/p>\n<p><\/p>\n<p>Me llamo Pavel Kolobayev. DevOps, SRE, LeroyMerlin, todo como c\u00f3digo - esto es de lo que se trata: de m\u00ed y de otros empleados de LeroyMerlin.<\/p>\n<p><\/p>\n<p><img decoding=\"async\" alt=\"VictoriaMetrics y la monitorizaci\u00f3n de nubes privadas. Pavel Kolobaev\" src=\"\/wp-content\/uploads\/2020\/09\/b7b63999cef8d80148bf666c2bce335a.jpg\" style=\"display:block;margin: 0 auto;\" \/><\/p>\n<p><\/p>\n<p><noindex><a rel=\"nofollow\" href=\"https:\/\/bit.ly\/3jf1fIK\">https:\/\/bit.ly\/3jf1fIK<\/a><\/noindex><\/p>\n<p><\/p>\n<p>Hay un nube basada en OpenStack. Aqu\u00ed hay un peque\u00f1o enlace al radar tecnol\u00f3gico. <\/p>\n<p><\/p>\n<p><img decoding=\"async\" alt=\"VictoriaMetrics y la monitorizaci\u00f3n de nubes privadas. Pavel Kolobaev\" src=\"\/wp-content\/uploads\/2020\/09\/e99d4aeab2a62bc46cfa9aaadb9590af.jpg\" style=\"display:block;margin: 0 auto;\" \/><\/p>\n<p><\/p>\n<p>Est\u00e1 construido sobre hardware de Kubernetes, as\u00ed como en todos los servicios asociados a OpenStack y registro. <\/p>\n<p><\/p>\n<p><img decoding=\"async\" alt=\"VictoriaMetrics y la monitorizaci\u00f3n de nubes privadas. Pavel Kolobaev\" src=\"\/wp-content\/uploads\/2020\/09\/c19c24b9006162eaf79f8f9bdc5aa14a.jpg\" style=\"display:block;margin: 0 auto;\" \/><\/p>\n<p><\/p>\n<p>El esquema que ten\u00edamos durante el desarrollo era el siguiente. Cuando desarroll\u00e1bamos todo esto, ten\u00edamos un operador Prometheus que almacenaba datos dentro del propio cl\u00faster de K8s. Autom\u00e1ticamente encuentra lo que necesita ser rastreado y lo almacena, por as\u00ed decirlo. <\/p>\n<p><\/p>\n<p><img decoding=\"async\" alt=\"VictoriaMetrics y la monitorizaci\u00f3n de nubes privadas. Pavel Kolobaev\" src=\"\/wp-content\/uploads\/2020\/09\/ebaf6b3d32483c405a1ae69d0ea7e3ea.jpg\" style=\"display:block;margin: 0 auto;\" \/><\/p>\n<p><\/p>\n<p>Todos los datos deben ser extra\u00eddos del cl\u00faster de Kubernetes, porque si algo sucede, debemos entender qu\u00e9 y d\u00f3nde. <\/p>\n<p><\/p>\n<p><img decoding=\"async\" alt=\"VictoriaMetrics y la monitorizaci\u00f3n de nubes privadas. Pavel Kolobaev\" src=\"\/wp-content\/uploads\/2020\/09\/36f921aa715ed00b9ac26ae3861a73b8.jpg\" style=\"display:block;margin: 0 auto;\" \/><\/p>\n<p><\/p>\n<p>La primera soluci\u00f3n es que utilizamos federation, cuando tenemos un Prometheus externo, al que accedemos al cl\u00faster de Kubernetes a trav\u00e9s del mecanismo de federation.<\/p>\n<p><\/p>\n<p><img decoding=\"async\" alt=\"VictoriaMetrics y la monitorizaci\u00f3n de nubes privadas. Pavel Kolobaev\" src=\"\/wp-content\/uploads\/2020\/09\/11033de585d88cfaee1edeec908da55a.jpg\" style=\"display:block;margin: 0 auto;\" \/><\/p>\n<p><\/p>\n<p>Pero aqu\u00ed surgen peque\u00f1os problemas. En nuestro caso, los problemas comenzaron cuando ten\u00edamos 250,000 m\u00e9tricas, y cuando llegamos a 400,000 m\u00e9tricas, nos dimos cuenta de que no pod\u00edamos trabajar as\u00ed. Aumentamos el scrape_timeout a 25 segundos.<\/p>\n<p><\/p>\n<p>\u00bfPor qu\u00e9 tuvimos que hacer esto? Prometheus comienza a contar el tiempo de espera desde el inicio de la recolecci\u00f3n. Y no importa que los datos todav\u00eda se est\u00e9n transmitiendo. Si en ese intervalo de tiempo especificado no se han transmitido datos y la sesi\u00f3n no se ha cerrado por http, se considera que la sesi\u00f3n fall\u00f3 y los datos no llegan a Prometheus.<\/p>\n<p><\/p>\n<p><img decoding=\"async\" alt=\"VictoriaMetrics y la monitorizaci\u00f3n de nubes privadas. Pavel Kolobaev\" src=\"\/wp-content\/uploads\/2020\/09\/c5d8f034cbf80638775ecc68b6ad8f21.jpg\" style=\"display:block;margin: 0 auto;\" \/><\/p>\n<p><\/p>\n<p>Todos conocen las gr\u00e1ficas que obtenemos cuando faltan algunos datos. Las gr\u00e1ficas est\u00e1n rotas y eso no nos satisface. <\/p>\n<p><\/p>\n<p><img decoding=\"async\" alt=\"VictoriaMetrics y la monitorizaci\u00f3n de nubes privadas. Pavel Kolobaev\" src=\"\/wp-content\/uploads\/2020\/09\/8caa1939ac95d26163e98ed2bd12fd6a.jpg\" style=\"display:block;margin: 0 auto;\" \/><\/p>\n<p><\/p>\n<p>La siguiente opci\u00f3n es el sharding basado en dos Prometheus diferentes a trav\u00e9s del mismo mecanismo de federation.<\/p>\n<p><\/p>\n<p>Por ejemplo, simplemente tomar y hacer sharding por nombre. Esto tambi\u00e9n se puede usar, pero decidimos avanzar m\u00e1s. <\/p>\n<p><\/p>\n<p><img decoding=\"async\" alt=\"VictoriaMetrics y la monitorizaci\u00f3n de nubes privadas. Pavel Kolobaev\" src=\"\/wp-content\/uploads\/2020\/09\/c5715365ac494689194ad4d305a7be08.jpg\" style=\"display:block;margin: 0 auto;\" \/><\/p>\n<p><\/p>\n<p>Ahora tendremos que procesar estos shards de alguna manera. Se puede utilizar promxy, que accede al \u00e1rea del shard, multiplica los datos. Funciona con dos shards como un \u00fanico punto de entrada. Esto se puede implementar a trav\u00e9s de promxy, pero por ahora es demasiado complicado. <\/p>\n<p><\/p>\n<p><img decoding=\"async\" alt=\"VictoriaMetrics y la monitorizaci\u00f3n de nubes privadas. Pavel Kolobaev\" src=\"\/wp-content\/uploads\/2020\/09\/672984d1ca13743acb4b8102b74d0eb2.jpg\" style=\"display:block;margin: 0 auto;\" \/><\/p>\n<p><\/p>\n<p>La primera opci\u00f3n es que queremos deshacernos del mecanismo de federation, porque es muy lento. <\/p>\n<p><\/p>\n<p>Los desarrolladores de Prometheus dicen claramente: \u00abChicos, usen otras TimescaleDB, porque no vamos a soportar un almacenamiento prolongado de m\u00e9tricas\u00bb. No es su tarea. <img decoding=\"async\" alt=\"VictoriaMetrics y la monitorizaci\u00f3n de nubes privadas. Pavel Kolobaev\" src=\"\/wp-content\/uploads\/2020\/09\/dfc59949ec16fe731d339d7bf477edff.jpg\" style=\"display:block;margin: 0 auto;\" \/><\/p>\n<p><\/p>\n<p>Anotamos en papel que necesitamos una exportaci\u00f3n externa para no almacenar todo en un solo lugar. <\/p>\n<p><\/p>\n<p><img decoding=\"async\" alt=\"VictoriaMetrics y la monitorizaci\u00f3n de nubes privadas. Pavel Kolobaev\" src=\"\/wp-content\/uploads\/2020\/09\/a0e566b89c15df9c17c0750ce8512044.jpg\" style=\"display:block;margin: 0 auto;\" \/><\/p>\n<p><\/p>\n<p>El segundo inconveniente es el consumo de memoria. S\u00ed, entiendo que muchos dir\u00e1n que en 2020 un par de gigabytes de memoria es barato, pero aun as\u00ed. <\/p>\n<p><\/p>\n<p>Ahora tenemos un entorno de desarrollo y producci\u00f3n. En desarrollo, ocupamos alrededor de 9 gigabytes para 350,000 m\u00e9tricas. En producci\u00f3n, son 14 gigabytes con un poco m\u00e1s para 780,000 m\u00e9tricas. Adem\u00e1s, nuestro tiempo de retenci\u00f3n es de solo 30 minutos. Eso es un problema, y voy a explicar por qu\u00e9.<\/p>\n<p><\/p>\n<p><img decoding=\"async\" alt=\"VictoriaMetrics y la monitorizaci\u00f3n de nubes privadas. Pavel Kolobaev\" src=\"\/wp-content\/uploads\/2020\/09\/35ad6d2792fd4dbf68b15851f24eb047.jpg\" style=\"display:block;margin: 0 auto;\" \/><\/p>\n<p><\/p>\n<p>Hacemos un c\u00e1lculo, es decir, con un mill\u00f3n y medio de m\u00e9tricas, que ya estamos alcanzando, en la etapa de dise\u00f1o obtenemos 35-37 gigabytes de memoria. Pero ya para 4 millones de m\u00e9tricas se necesitan alrededor de 90 gigabytes de memoria. Es decir, esto fue calculado seg\u00fan la f\u00f3rmula que proporcionan los desarrolladores de Prometheus. Observamos la correlaci\u00f3n y entendimos que no queremos pagar un par de millones por un servidor solo para monitorear. <\/p>\n<p><\/p>\n<p>No solo aumentar\u00e1 la cantidad de m\u00e1quinas, sino que tambi\u00e9n monitoreamos las propias m\u00e1quinas virtuales. Por lo tanto, cuanto m\u00e1s virtuales sean las m\u00e1quinas, m\u00e1s m\u00e9tricas de diferentes tipos habr\u00e1, etc. Tendremos un crecimiento especial de nuestro cl\u00faster en t\u00e9rminos de m\u00e9tricas.<\/p>\n<p><\/p>\n<p><img decoding=\"async\" alt=\"VictoriaMetrics y la monitorizaci\u00f3n de nubes privadas. Pavel Kolobaev\" src=\"\/wp-content\/uploads\/2020\/09\/d0aa8f00c7bd511b128bfa38cd280d03.jpg\" style=\"display:block;margin: 0 auto;\" \/><\/p>\n<p><\/p>\n<p>En cuanto al espacio en disco, aqu\u00ed no est\u00e1 tan mal, pero nos gustar\u00eda mejorarlo. En 15 d\u00edas, hemos acumulado 120 gigabytes, de los cuales 100 son datos comprimidos y 20 son datos sin comprimir, pero siempre queremos menos. <\/p>\n<p><\/p>\n<p><img decoding=\"async\" alt=\"VictoriaMetrics y la monitorizaci\u00f3n de nubes privadas. Pavel Kolobaev\" src=\"\/wp-content\/uploads\/2020\/09\/04dcc202029ce2433ae5cfb379c51181.jpg\" style=\"display:block;margin: 0 auto;\" \/><\/p>\n<p><\/p>\n<p>Por lo tanto, anotamos otro punto: es un alto consumo de recursos, que queremos seguir economizando, porque no queremos que nuestro cl\u00faster de monitoreo consuma m\u00e1s recursos que nuestro cl\u00faster que gestiona OpenStack.<\/p>\n<p><\/p>\n<p><img decoding=\"async\" alt=\"VictoriaMetrics y la monitorizaci\u00f3n de nubes privadas. Pavel Kolobaev\" src=\"\/wp-content\/uploads\/2020\/09\/1708dcd413d890f18149414616f6264e.jpg\" style=\"display:block;margin: 0 auto;\" \/><\/p>\n<p><\/p>\n<p>Hay otro inconveniente con Prometheus que hemos identificado: hay alguna limitaci\u00f3n en la memoria. Con Prometheus es mucho peor, porque no tiene tales configuraciones. Usar limitaciones en Docker tampoco es una opci\u00f3n. Si su RAF falla y hay 20-30 gigabytes, tardar\u00e1 mucho en levantarse. <\/p>\n<p><\/p>\n<p><img decoding=\"async\" alt=\"VictoriaMetrics y la monitorizaci\u00f3n de nubes privadas. Pavel Kolobaev\" src=\"\/wp-content\/uploads\/2020\/09\/95a19ff217d1601e9ee8dbe1f1b11ba2.jpg\" style=\"display:block;margin: 0 auto;\" \/><\/p>\n<p><\/p>\n<p>Esta es otra raz\u00f3n por la que Prometheus no nos sirve, es decir, no se puede limitar el consumo de memoria. <\/p>\n<p><\/p>\n<p><img decoding=\"async\" alt=\"VictoriaMetrics y la monitorizaci\u00f3n de nubes privadas. Pavel Kolobaev\" src=\"\/wp-content\/uploads\/2020\/09\/77280b358370327e4285c90795833a23.jpg\" style=\"display:block;margin: 0 auto;\" \/><\/p>\n<p><\/p>\n<p>Se podr\u00eda llegar a un esquema as\u00ed. Este esquema lo necesitamos para organizar un cl\u00faster HA. Queremos que nuestras m\u00e9tricas est\u00e9n disponibles siempre y en cualquier lugar, incluso en caso de ca\u00edda del servidor que almacena estas m\u00e9tricas. Por lo tanto, tendremos que construir un esquema as\u00ed. <\/p>\n<p><\/p>\n<p>Este esquema indica que tendremos duplicaci\u00f3n de shards y, por ende, duplicaci\u00f3n de los recursos consumidos. Se puede escalar horizontalmente casi, pero a\u00fan as\u00ed el consumo de recursos ser\u00e1 enorme. <\/p>\n<p><\/p>\n<p><img decoding=\"async\" alt=\"VictoriaMetrics y la monitorizaci\u00f3n de nubes privadas. Pavel Kolobaev\" src=\"\/wp-content\/uploads\/2020\/09\/461a4c163693af4700d69a0667aea667.jpg\" style=\"display:block;margin: 0 auto;\" \/><\/p>\n<p><\/p>\n<p>Los inconvenientes en el orden que los hemos enumerado son:<\/p>\n<p><\/p>\n<ul>\n<li>Es necesario exportar m\u00e9tricas hacia el exterior.<\/li>\n<li>Alto consumo de recursos.<\/li>\n<li>No se puede limitar el consumo de memoria.<\/li>\n<li>Implementaci\u00f3n de HA complicada y que consume muchos recursos.<\/li>\n<\/ul>\n<p><\/p>\n<p><img decoding=\"async\" alt=\"VictoriaMetrics y la monitorizaci\u00f3n de nubes privadas. Pavel Kolobaev\" src=\"\/wp-content\/uploads\/2020\/09\/d748b9c51767e37b9248e77871172d77.jpg\" style=\"display:block;margin: 0 auto;\" \/><\/p>\n<p><\/p>\n<p>Hemos decidido abandonar Prometheus como soluci\u00f3n de almacenamiento. <\/p>\n<p><\/p>\n<p>Hemos identificado algunos requisitos adicionales que necesitamos. Son:<\/p>\n<p><\/p>\n<ul>\n<li>Soporte para promql, ya que hay muchas cosas escritas para Prometheus: consultas, alertas. <\/li>\n<li>Y luego tenemos Grafana, que tambi\u00e9n est\u00e1 escrita para Prometheus como backend. No queremos reescribir los paneles. <\/li>\n<li>Queremos construir una arquitectura HA adecuada. <\/li>\n<li>Queremos reducir el consumo de cualquier recurso. <\/li>\n<li>Hay un peque\u00f1o matiz. No podemos utilizar varios tipos de sistemas de recolecci\u00f3n de m\u00e9tricas en la nube. No sabemos qu\u00e9 se perder\u00e1 en estas m\u00e9tricas por el momento. Y dado que puede ir cualquier cosa, tenemos que limitarnos a una implementaci\u00f3n local. <\/li>\n<\/ul>\n<p><\/p>\n<p><img decoding=\"async\" alt=\"VictoriaMetrics y la monitorizaci\u00f3n de nubes privadas. Pavel Kolobaev\" src=\"\/wp-content\/uploads\/2020\/09\/53bf7dd09cec6fbd42569702b800cf08.jpg\" style=\"display:block;margin: 0 auto;\" \/><\/p>\n<p><\/p>\n<p>La elecci\u00f3n fue peque\u00f1a. Recopilamos todo lo que ten\u00edamos experiencia. Miramos la p\u00e1gina de Prometheus en la secci\u00f3n de integraci\u00f3n, le\u00edmos un mont\u00f3n de art\u00edculos, observamos qu\u00e9 hay en general. Y para nosotros elegimos VictoriaMetrics como reemplazo de Prometheus.<\/p>\n<p><\/p>\n<p>\u00bfPor qu\u00e9? Porque:<\/p>\n<p><\/p>\n<ul>\n<li>Soporta promql.<\/li>\n<li>Tiene una arquitectura modular. <\/li>\n<li>No requiere cambios en Grafana.<\/li>\n<li>Y lo m\u00e1s importante, tal vez proporcionemos almacenamiento de m\u00e9tricas dentro de nuestra empresa como un servicio, por lo que miramos de antemano hacia limitaciones de varios tipos, para que los usuarios puedan usar todos los recursos del cl\u00faster de alguna manera limitada, ya que hay una posibilidad de que sea multitenancy.<\/li>\n<\/ul>\n<p><\/p>\n<p><img decoding=\"async\" alt=\"VictoriaMetrics y la monitorizaci\u00f3n de nubes privadas. Pavel Kolobaev\" src=\"\/wp-content\/uploads\/2020\/09\/137a425e463ce524e873c962c0bc27f7.jpg\" style=\"display:block;margin: 0 auto;\" \/><\/p>\n<p><\/p>\n<p>Hacemos la primera comparaci\u00f3n. Tomamos el mismo Prometheus dentro del cl\u00faster, y va a un Prometheus externo. Agregamos a trav\u00e9s de remoteWrite VictoriaMetrics.<\/p>\n<p><\/p>\n<p><img decoding=\"async\" alt=\"VictoriaMetrics y la monitorizaci\u00f3n de nubes privadas. Pavel Kolobaev\" src=\"\/wp-content\/uploads\/2020\/09\/5357d81a4fc38a2178cd589f36fce063.jpg\" style=\"display:block;margin: 0 auto;\" \/><\/p>\n<p><\/p>\n<p>De inmediato aclaro que aqu\u00ed hemos observado un peque\u00f1o aumento en el consumo de CPU por parte de VictoriaMetrics. En la wiki de VictoriaMetrics se indica qu\u00e9 par\u00e1metros son m\u00e1s adecuados. Los hemos comprobado. Reducen muy bien el consumo espec\u00edficamente de CPU.<\/p>\n<p><\/p>\n<p>En nuestro caso, el consumo de memoria de Prometheus, que se encuentra en el cl\u00faster de Kubernetes, ha aumentado de manera poco significativa. <\/p>\n<p><\/p>\n<p><img decoding=\"async\" alt=\"VictoriaMetrics y la monitorizaci\u00f3n de nubes privadas. Pavel Kolobaev\" src=\"\/wp-content\/uploads\/2020\/09\/7c70bfb0a50bcbd1e0976b70ae5b7b3a.jpg\" style=\"display:block;margin: 0 auto;\" \/><\/p>\n<p><\/p>\n<p>Comparamos dos fuentes de datos de la misma informaci\u00f3n. En Prometheus vemos todos esos datos faltantes. En VictoriaMetrics todo est\u00e1 bien. <\/p>\n<p><\/p>\n<p><img decoding=\"async\" alt=\"VictoriaMetrics y la monitorizaci\u00f3n de nubes privadas. Pavel Kolobaev\" src=\"\/wp-content\/uploads\/2020\/09\/b2d7f9b451f87366e186b25450cb52fa.jpg\" style=\"display:block;margin: 0 auto;\" \/><\/p>\n<p><\/p>\n<p>Resultados de las pruebas con el espacio en disco. En Prometheus obtuvimos un total de 120 gigabytes. En VictoriaMetrics obtenemos ya 4 gigabytes por d\u00eda. All\u00ed hay un mecanismo un poco diferente al que acostumbramos ver en Prometheus. Es decir, los datos ya se comprimen bastante bien en un d\u00eda, en media hora. Se han comprimido bien en un d\u00eda, en media hora, a pesar de que luego se fusionar\u00e1n los datos. Al final, hemos ahorrado en espacio en disco.<\/p>\n<p><\/p>\n<p><img decoding=\"async\" alt=\"VictoriaMetrics y la monitorizaci\u00f3n de nubes privadas. Pavel Kolobaev\" src=\"\/wp-content\/uploads\/2020\/09\/ce1f6edf70595aac40aeaae70c286bed.jpg\" style=\"display:block;margin: 0 auto;\" \/><\/p>\n<p><\/p>\n<p>Tambi\u00e9n estamos ahorrando en el consumo de recursos de memoria. En el momento de las pruebas, Prometheus estaba desplegado en una m\u00e1quina virtual con 8 n\u00facleos y 24 gigabytes. Prometheus consume pr\u00e1cticamente todo. Se cay\u00f3 por el OOM Killer. En \u00e9l hab\u00eda aproximadamente 900,000 m\u00e9tricas activas. Eso es alrededor de 25,000-27,000 m\u00e9tricas por segundo. <\/p>\n<p><\/p>\n<p>VictoriaMetrics se ejecut\u00f3 en una m\u00e1quina virtual de dos n\u00facleos con 8 gigabytes de RAM. Logramos hacer que VictoriaMetrics funcionara bien ajustando algunas cosas en la m\u00e1quina de 8 gigabytes. Al final, nos mantuvimos en 7 gigabytes. Al mismo tiempo, obtuvimos una velocidad de entrega de contenido, es decir, m\u00e9tricas, incluso superior a la de Prometheus. <\/p>\n<p><\/p>\n<p><img decoding=\"async\" alt=\"VictoriaMetrics y la monitorizaci\u00f3n de nubes privadas. Pavel Kolobaev\" src=\"\/wp-content\/uploads\/2020\/09\/e4c175aee859bc95a4ee08e8b3fdcc22.jpg\" style=\"display:block;margin: 0 auto;\" \/><\/p>\n<p><\/p>\n<p>El rendimiento de CPU es mucho mejor en comparaci\u00f3n con Prometheus. Aqu\u00ed Prometheus consume 2.5 n\u00facleos, mientras que VictoriaMetrics solo consume 0.25 n\u00facleos. Al inicio, consume 0.5 n\u00facleos. A medida que se fusiona, llega a un n\u00facleo, pero esto es extremadamente raro.<\/p>\n<p><\/p>\n<p><img decoding=\"async\" alt=\"VictoriaMetrics y la monitorizaci\u00f3n de nubes privadas. Pavel Kolobaev\" src=\"\/wp-content\/uploads\/2020\/09\/dcdbc7d70642130949b0c65b43a58f7f.jpg\" style=\"display:block;margin: 0 auto;\" \/><\/p>\n<p><\/p>\n<p>En nuestro caso, la elecci\u00f3n recay\u00f3 en VictoriaMetrics por razones evidentes, quer\u00edamos ahorrar y lo hemos logrado. <\/p>\n<p><\/p>\n<p><img decoding=\"async\" alt=\"VictoriaMetrics y la monitorizaci\u00f3n de nubes privadas. Pavel Kolobaev\" src=\"\/wp-content\/uploads\/2020\/09\/457576073885b9153041589bb2f53ee4.jpg\" style=\"display:block;margin: 0 auto;\" \/><\/p>\n<p><\/p>\n<p>De inmediato descartamos dos puntos: la exportaci\u00f3n de m\u00e9tricas y el alto consumo de recursos. Y nos queda resolver dos puntos que a\u00fan dejamos pendientes. <\/p>\n<p><\/p>\n<p><img decoding=\"async\" alt=\"VictoriaMetrics y la monitorizaci\u00f3n de nubes privadas. Pavel Kolobaev\" src=\"\/wp-content\/uploads\/2020\/09\/9ee296c7838abd243a893c8e34b60711.jpg\" style=\"display:block;margin: 0 auto;\" \/><\/p>\n<p><\/p>\n<p>Aqu\u00ed aclaro de inmediato que consideramos a VictoriaMetrics como el almacenamiento de m\u00e9tricas. Pero como probablemente proporcionaremos VictoriaMetrics como almacenamiento para todo Leroy, necesitamos limitar a quienes utilizar\u00e1n este cl\u00faster para evitar que lo colapsen. <\/p>\n<p><\/p>\n<p>Hay un par\u00e1metro excelente que permite limitar el tiempo, el volumen de datos y el tiempo de ejecuci\u00f3n. <\/p>\n<p><\/p>\n<p>Tambi\u00e9n hay una gran opci\u00f3n que permite limitar el consumo de memoria, de modo que podamos encontrar ese equilibrio que nos proporcione una velocidad de trabajo adecuada y un consumo de recursos razonable. <\/p>\n<p><\/p>\n<p><img decoding=\"async\" alt=\"VictoriaMetrics y la monitorizaci\u00f3n de nubes privadas. Pavel Kolobaev\" src=\"\/wp-content\/uploads\/2020\/09\/039d8b7f24e50a2e62211eef30ef0812.jpg\" style=\"display:block;margin: 0 auto;\" \/><\/p>\n<p><\/p>\n<p>Se tacha otro punto, es decir, no se puede limitar el consumo de memoria.<\/p>\n<p><\/p>\n<p><img decoding=\"async\" alt=\"VictoriaMetrics y la monitorizaci\u00f3n de nubes privadas. Pavel Kolobaev\" src=\"\/wp-content\/uploads\/2020\/09\/7444f68188a835392f8c6ad82c3c26d1.jpg\" style=\"display:block;margin: 0 auto;\" \/><\/p>\n<p><\/p>\n<p>En las primeras iteraciones, probamos VictoriaMetrics Single Node. Luego pasamos a la versi\u00f3n de cl\u00faster de VictoriaMetrics.<\/p>\n<p><\/p>\n<p>Aqu\u00ed tenemos libertad para distribuir diferentes servicios en VictoriaMetrics dependiendo de qu\u00e9 recursos consumir\u00e1n y en qu\u00e9 se ejecutar\u00e1n. Es una soluci\u00f3n muy flexible y conveniente. Lo hemos utilizado personalmente. <\/p>\n<p><\/p>\n<p><img decoding=\"async\" alt=\"VictoriaMetrics y la monitorizaci\u00f3n de nubes privadas. Pavel Kolobaev\" src=\"\/wp-content\/uploads\/2020\/09\/4bcadbd80d7efcdbcbda6c79929ab279.jpg\" style=\"display:block;margin: 0 auto;\" \/><\/p>\n<p><\/p>\n<p>Los componentes principales de la versi\u00f3n de cl\u00faster de VictoriaMetrics son vmstorage. Puede haber una cantidad N de ellos. En nuestro caso, por ahora hay 2. <\/p>\n<p><\/p>\n<p>Y est\u00e1 vminsert. Este es un servidor proxy que nos permite: establecer el sharding entre todos los storages que le hemos indicado, y tambi\u00e9n permite hacer r\u00e9plicas, es decir, tendr\u00e1s tanto sharding como r\u00e9plicas. <\/p>\n<p><\/p>\n<p>Vminsert soporta los protocolos OpenTSDB, Graphite, InfluxDB y remoteWrite de Prometheus.<\/p>\n<p><\/p>\n<p><img decoding=\"async\" alt=\"VictoriaMetrics y la monitorizaci\u00f3n de nubes privadas. Pavel Kolobaev\" src=\"\/wp-content\/uploads\/2020\/09\/6b4ac44513d7bfa7e0b234aa0f2fa3f5.jpg\" style=\"display:block;margin: 0 auto;\" \/><\/p>\n<p><\/p>\n<p>Tambi\u00e9n existe vmselect. Su tarea principal es consultar vmstorage, obtener los datos de ellos, deduplicar esos datos y entregarlos al cliente. <\/p>\n<p><\/p>\n<p><img decoding=\"async\" alt=\"VictoriaMetrics y la monitorizaci\u00f3n de nubes privadas. Pavel Kolobaev\" src=\"\/wp-content\/uploads\/2020\/09\/768db0f7dbd17223b7057d33ceccd12d.jpg\" style=\"display:block;margin: 0 auto;\" \/><\/p>\n<p><\/p>\n<p>Hay una herramienta maravillosa llamada vmagent. Nos gusta mucho. Permite configurarse exactamente como Prometheus y hacer todo de la misma manera que Prometheus, es decir, recopila m\u00e9tricas de diferentes entidades y servicios y las env\u00eda a vminsert. Despu\u00e9s, todo depende de ti.<\/p>\n<p><\/p>\n<p><img decoding=\"async\" alt=\"VictoriaMetrics y la monitorizaci\u00f3n de nubes privadas. Pavel Kolobaev\" src=\"\/wp-content\/uploads\/2020\/09\/429caa4d3296810c688e7c972ab6d35c.jpg\" style=\"display:block;margin: 0 auto;\" \/><\/p>\n<p><\/p>\n<p>Otro servicio asombroso es vmalert, que permite utilizar VictoriaMetrics como backend, recibir datos de vminsert y enviarlos a vmselect para su procesamiento. Procesa tanto las alertas como las reglas. En caso de alertas, recibimos la alerta a trav\u00e9s de alertmanager.<\/p>\n<p><\/p>\n<p><img decoding=\"async\" alt=\"VictoriaMetrics y la monitorizaci\u00f3n de nubes privadas. Pavel Kolobaev\" src=\"\/wp-content\/uploads\/2020\/09\/67d6264ffd5e061e168261586b4e6369.jpg\" style=\"display:block;margin: 0 auto;\" \/><\/p>\n<p><\/p>\n<p>Hay un componente llamado wmauth. Tal vez lo utilicemos, o tal vez no (a\u00fan no hemos decidido) como sistema de autorizaci\u00f3n para las versiones multitenancy de los cl\u00fasteres. Soporta remoteWrite para Prometheus y puede autorizar seg\u00fan la URL, m\u00e1s concretamente, la segunda parte de la misma, donde se puede o no escribir. <\/p>\n<p><\/p>\n<p><img decoding=\"async\" alt=\"VictoriaMetrics y la monitorizaci\u00f3n de nubes privadas. Pavel Kolobaev\" src=\"\/wp-content\/uploads\/2020\/09\/2a6a97eedc36ce71d660e44e0b736581.jpg\" style=\"display:block;margin: 0 auto;\" \/><\/p>\n<p><\/p>\n<p>Tambi\u00e9n hay vmbackup y vmrestore. Esto, en esencia, es la recuperaci\u00f3n y el backup de todos los datos. Soporta S3, GCS y archivos.<\/p>\n<p><\/p>\n<p><img decoding=\"async\" alt=\"VictoriaMetrics y la monitorizaci\u00f3n de nubes privadas. Pavel Kolobaev\" src=\"\/wp-content\/uploads\/2020\/09\/ec11f7a981bb80daaf6891001d80a1c9.jpg\" style=\"display:block;margin: 0 auto;\" \/><\/p>\n<p><\/p>\n<p>La primera iteraci\u00f3n de nuestro cl\u00faster se realiz\u00f3 durante la cuarentena. En ese momento no hab\u00eda r\u00e9plica, as\u00ed que nuestra iteraci\u00f3n consist\u00eda en dos cl\u00fasteres diferentes e independientes, de los cuales recib\u00edamos datos a trav\u00e9s de remoteWrite. <\/p>\n<p><\/p>\n<p><img decoding=\"async\" alt=\"VictoriaMetrics y la monitorizaci\u00f3n de nubes privadas. Pavel Kolobaev\" src=\"\/wp-content\/uploads\/2020\/09\/2a76181fc6c0ffb6b09ad5bcdb33909c.jpg\" style=\"display:block;margin: 0 auto;\" \/><\/p>\n<p><\/p>\n<p>Aqu\u00ed aclaro que, cuando migramos de VictoriaMetrics Single Node a VictoriaMetrics Cluster Version, seguimos utilizando los mismos recursos consumidos, es decir, la principal es la memoria. As\u00ed es como se distribuyeron nuestros datos, es decir, el consumo de recursos.<\/p>\n<p><\/p>\n<p><img decoding=\"async\" alt=\"VictoriaMetrics y la monitorizaci\u00f3n de nubes privadas. Pavel Kolobaev\" src=\"\/wp-content\/uploads\/2020\/09\/2d22446669e71b490226a789294707fc.jpg\" style=\"display:block;margin: 0 auto;\" \/><\/p>\n<p><\/p>\n<p>Aqu\u00ed ya se hab\u00eda a\u00f1adido una r\u00e9plica. Unimos todo esto en un cl\u00faster relativamente grande. Todos nuestros datos se fragmentan y se replican. <\/p>\n<p><\/p>\n<p>Todo el cl\u00faster tiene N puntos de entrada, es decir, Prometheus puede a\u00f1adir datos a trav\u00e9s de HAPROXY. Este es nuestro punto de entrada. A trav\u00e9s de este punto de entrada se puede acceder desde Grafana. <\/p>\n<p><\/p>\n<p><img decoding=\"async\" alt=\"VictoriaMetrics y la monitorizaci\u00f3n de nubes privadas. Pavel Kolobaev\" src=\"\/wp-content\/uploads\/2020\/09\/4a797ed22c57cab7c10b2635f53941df.jpg\" style=\"display:block;margin: 0 auto;\" \/><\/p>\n<p><\/p>\n<p>En nuestro caso, HAPROXY es el \u00fanico puerto que proxies select, insert y otros servicios dentro de este cl\u00faster. No pudimos crear una sola direcci\u00f3n, tuvimos que hacer varios puntos de entrada, porque las m\u00e1quinas virtuales que ejecutan el cl\u00faster de VictoriaMetrics se encuentran en diferentes zonas de un mismo proveedor de nube, es decir, no dentro de nuestra nube, sino afuera. <\/p>\n<p><\/p>\n<p><img decoding=\"async\" alt=\"VictoriaMetrics y la monitorizaci\u00f3n de nubes privadas. Pavel Kolobaev\" src=\"\/wp-content\/uploads\/2020\/09\/76bd7e59b58795ceada54977a933fb6d.jpg\" style=\"display:block;margin: 0 auto;\" \/><\/p>\n<p><\/p>\n<p>Tenemos alertas. Las utilizamos. Usamos alertmanager de Prometheus. Como canal de entrega de alertas utilizamos Opsgenie y Telegram. En Telegram llegan alertas de dev, quiz\u00e1s algo de prod, pero sobre todo datos estad\u00edsticos que son \u00fatiles para los ingenieros. Opsgenie es cr\u00edtico. Estas son llamadas, gesti\u00f3n de incidentes. <\/p>\n<p><\/p>\n<p><img decoding=\"async\" alt=\"VictoriaMetrics y la monitorizaci\u00f3n de nubes privadas. Pavel Kolobaev\" src=\"\/wp-content\/uploads\/2020\/09\/b06abbf9eac39450a290e1a776df415f.jpg\" style=\"display:block;margin: 0 auto;\" \/><\/p>\n<p><\/p>\n<p>La eterna pregunta: \"\u00bfQui\u00e9n monitorea el monitoreo?\". En nuestro caso, el monitoreo monitorea a s\u00ed mismo, porque usamos vmagent en cada nodo. Y dado que nuestros nodos est\u00e1n distribuidos en diferentes centros de datos de un proveedor, cada centro de datos tiene su propio canal, son independientes y, incluso si ocurre un split brain, a\u00fan as\u00ed recibiremos alertas. S\u00ed, ser\u00e1n m\u00e1s, pero es mejor recibir m\u00e1s alertas que ninguna. <\/p>\n<p><\/p>\n<p><img decoding=\"async\" alt=\"VictoriaMetrics y la monitorizaci\u00f3n de nubes privadas. Pavel Kolobaev\" src=\"\/wp-content\/uploads\/2020\/09\/20e94b612f00619015da7e6ebc1e6afb.jpg\" style=\"display:block;margin: 0 auto;\" \/><\/p>\n<p><\/p>\n<p>Concluimos nuestra lista con la implementaci\u00f3n de HA.<\/p>\n<p><\/p>\n<p><img decoding=\"async\" alt=\"VictoriaMetrics y la monitorizaci\u00f3n de nubes privadas. Pavel Kolobaev\" src=\"\/wp-content\/uploads\/2020\/09\/f7cac236b8f99d8f2f12288e565c7de0.jpg\" style=\"display:block;margin: 0 auto;\" \/><\/p>\n<p><\/p>\n<p>Y me gustar\u00eda resaltar la experiencia de interactuar con la comunidad de VictoriaMetrics. Ha sido muy positiva. Los chicos son muy atentos. Intentan entender cada caso que se presenta. <\/p>\n<p><\/p>\n<p>He abierto incidencias en GitHub. Fueron resueltas muy r\u00e1pidamente. Hay un par de incidencias que no est\u00e1n completamente cerradas, pero ya veo por el c\u00f3digo que el trabajo en esta direcci\u00f3n est\u00e1 en marcha. <\/p>\n<p><\/p>\n<p>El principal problema durante las iteraciones para m\u00ed era que si apago un nodo, durante los primeros 30 segundos vminsert no pod\u00eda entender que el backend no estaba disponible. Ahora esto ya se ha resuelto. En tan solo uno o dos segundos, los datos se recogen de todos los nodos restantes, y la solicitud deja de esperar al nodo que falta. <\/p>\n<p><\/p>\n<p><img decoding=\"async\" alt=\"VictoriaMetrics y la monitorizaci\u00f3n de nubes privadas. Pavel Kolobaev\" src=\"\/wp-content\/uploads\/2020\/09\/722ad280977c2f377c5afe36eb309c96.jpg\" style=\"display:block;margin: 0 auto;\" \/><\/p>\n<p><\/p>\n<p>En alg\u00fan momento quer\u00edamos un operador de VictoriaMetrics. Ya lo tenemos. Actualmente estamos en la fase activa de construir un envoltorio sobre el operador de VictoriaMetrics para tomar todas las reglas de pre-c\u00e1lculo, etc., de Prometheus, ya que usamos activamente las reglas que vienen con el operador de Prometheus.<\/p>\n<p><\/p>\n<p>Hay sugerencias para mejorar la implementaci\u00f3n del cl\u00faster. Las expuse anteriormente. <\/p>\n<p><\/p>\n<p>Tambi\u00e9n deseo mucho el downsampling. En nuestro caso, el downsampling se necesita exclusivamente para visualizar tendencias. Bastar\u00eda con una sola m\u00e9trica durante el d\u00eda. Estas tendencias son necesarias para un a\u00f1o, tres, cinco o diez a\u00f1os. Y un solo valor de m\u00e9trica es m\u00e1s que suficiente.<br \/>\n<img decoding=\"async\" alt=\"VictoriaMetrics y la monitorizaci\u00f3n de nubes privadas. Pavel Kolobaev\" src=\"\/wp-content\/uploads\/2020\/09\/01073d8f9b16e1094daef3e36dd97e44.jpg\" style=\"display:block;margin: 0 auto;\" \/><\/p>\n<p><\/p>\n<ul>\n<li>Conocimos el dolor, al igual que algunos de nuestros colegas, al usar Prometheus.<\/li>\n<li>Elegimos VictoriaMetrics. <\/li>\n<li>Se escala bastante bien tanto vertical como horizontalmente. <\/li>\n<li>Podemos distribuir diferentes componentes en diversos nodos dentro del cl\u00faster, limitarlos por volumen de memoria, a\u00f1adir memoria, etc. <\/li>\n<\/ul>\n<p><\/p>\n<p>Usaremos VictoriaMetrics, porque nos gust\u00f3 mucho. As\u00ed era y as\u00ed es ahora. <\/p>\n<p><\/p>\n<p><img decoding=\"async\" alt=\"VictoriaMetrics y la monitorizaci\u00f3n de nubes privadas. Pavel Kolobaev\" src=\"\/wp-content\/uploads\/2020\/09\/e04b66e5e2b765143797d3c983d4029c.jpg\" style=\"display:block;margin: 0 auto;\" \/><\/p>\n<p><\/p>\n<p><noindex><a rel=\"nofollow\" href=\"https:\/\/t.me\/VictoriaMetrics_ru1\">https:\/\/t.me\/VictoriaMetrics_ru1<\/a><\/noindex><\/p>\n<p><\/p>\n<p>Un par de c\u00f3digos qr para el chat de VictoriaMetrics, mis contactos, radar t\u00e9cnico de LeroyMerlin.<\/p>\n<p>Fuente: <a content=\"nofollow\" rel=\"nofollow\" href=\"https:\/\/habr.com\/ru\/post\/518680\/\">habr.com<\/a> <\/p>","protected":false,"gt_translate_keys":[{"key":"rendered","format":"html"}]},"excerpt":{"rendered":"<p>VictoriaMetrics \u2014 \u0431\u044b\u0441\u0442\u0440\u0430\u044f \u0438 \u043c\u0430\u0441\u0448\u0442\u0430\u0431\u0438\u0440\u0443\u0435\u043c\u0430\u044f \u0421\u0423\u0411\u0414 \u0434\u043b\u044f \u0445\u0440\u0430\u043d\u0435\u043d\u0438\u044f \u0438 \u043e\u0431\u0440\u0430\u0431\u043e\u0442\u043a\u0438 \u0434\u0430\u043d\u043d\u044b\u0445 \u0432 \u0444\u043e\u0440\u043c\u0435 \u0432\u0440\u0435\u043c\u0435\u043d\u043d\u043e\u0433\u043e \u0440\u044f\u0434\u0430 (\u0437\u0430\u043f\u0438\u0441\u044c \u043e\u0431\u0440\u0430\u0437\u0443\u0435\u0442 \u0432\u0440\u0435\u043c\u044f \u0438 \u043d\u0430\u0431\u043e\u0440 \u0441\u043e\u043e\u0442\u0432\u0435\u0442\u0441\u0442\u0432\u0443\u044e\u0449\u0438\u0445 \u044d\u0442\u043e\u043c\u0443 \u0432\u0440\u0435\u043c\u0435\u043d\u0438 \u0437\u043d\u0430\u0447\u0435\u043d\u0438\u0439, \u043d\u0430\u043f\u0440\u0438\u043c\u0435\u0440, \u043f\u043e\u043b\u0443\u0447\u0435\u043d\u043d\u044b\u0445 \u0447\u0435\u0440\u0435\u0437 \u043f\u0435\u0440\u0438\u043e\u0434\u0438\u0447\u0435\u0441\u043a\u0438\u0439 \u043e\u043f\u0440\u043e\u0441 \u0441\u043e\u0441\u0442\u043e\u044f\u043d\u0438\u044f \u0434\u0430\u0442\u0447\u0438\u043a\u043e\u0432 \u0438\u043b\u0438 \u0441\u0431\u043e\u0440 \u043c\u0435\u0442\u0440\u0438\u043a). \u041c\u0435\u043d\u044f \u0437\u043e\u0432\u0443\u0442 \u041a\u043e\u043b\u043e\u0431\u0430\u0435\u0432 \u041f\u0430\u0432\u0435\u043b. DevOps, SRE, LeroyMerlin, \u0432\u0441\u0435 \u043a\u0430\u043a \u043a\u043e\u0434 \u2013 \u044d\u0442\u043e \u0432\u0441\u0435 \u043f\u0440\u043e \u043d\u0430\u0441: \u043f\u0440\u043e \u043c\u0435\u043d\u044f \u0438 \u043f\u0440\u043e \u0434\u0440\u0443\u0433\u0438\u0445 \u0441\u043e\u0442\u0440\u0443\u0434\u043d\u0438\u043a\u043e\u0432 [&hellip;]<\/p>\n","protected":false,"gt_translate_keys":[{"key":"rendered","format":"html"}]},"author":1,"featured_media":94154,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[688],"tags":[],"class_list":["post-94153","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-administrirovanie"],"aioseo_notices":[],"aioseo_head":"\n\t\t<!-- All in One SEO 5.0.2 - aioseo.com -->\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\/victoriametrics-i-monitoring-privatnyh-oblakov-pavel-kolobaev\" \/>\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\udd47VictoriaMetrics \u0438 \u043c\u043e\u043d\u0438\u0442\u043e\u0440\u0438\u043d\u0433 \u043f\u0440\u0438\u0432\u0430\u0442\u043d\u044b\u0445 \u043e\u0431\u043b\u0430\u043a\u043e\u0432. \u041f\u0430\u0432\u0435\u043b \u041a\u043e\u043b\u043e\u0431\u0430\u0435\u0432 | ProHoster\" \/>\n\t\t<meta property=\"og:url\" content=\"https:\/\/prohoster.info\/es\/blog\/administrirovanie\/victoriametrics-i-monitoring-privatnyh-oblakov-pavel-kolobaev\" \/>\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=\"2020-09-13T17:42:30+00:00\" \/>\n\t\t<meta property=\"article:modified_time\" content=\"2020-09-13T17:42:30+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\udd47VictoriaMetrics y monitoreo de nubes privadas. Pavel Kolobaev | ProHoster","description":"","canonical_url":"https:\/\/prohoster.info\/es\/blog\/administrirovanie\/victoriametrics-i-monitoring-privatnyh-oblakov-pavel-kolobaev","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\udd47VictoriaMetrics \u0438 \u043c\u043e\u043d\u0438\u0442\u043e\u0440\u0438\u043d\u0433 \u043f\u0440\u0438\u0432\u0430\u0442\u043d\u044b\u0445 \u043e\u0431\u043b\u0430\u043a\u043e\u0432. \u041f\u0430\u0432\u0435\u043b \u041a\u043e\u043b\u043e\u0431\u0430\u0435\u0432 | ProHoster","og:url":"https:\/\/prohoster.info\/es\/blog\/administrirovanie\/victoriametrics-i-monitoring-privatnyh-oblakov-pavel-kolobaev","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":"2020-09-13T17:42:30+00:00","article:modified_time":"2020-09-13T17:42:30+00:00","article:publisher":"https:\/\/www.facebook.com\/prohoster","article:author":"https:\/\/www.facebook.com\/prohoster"},"aioseo_meta_data":{"post_id":"94153","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":null,"breadcrumb_settings":null,"limit_modified_date":false,"reviewed_by":null,"ai":null,"created":"2021-02-28 11:32:22","updated":"2022-09-28 11:09:52","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\/94153","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=94153"}],"version-history":[{"count":0,"href":"https:\/\/prohoster.info\/es\/wp-json\/wp\/v2\/posts\/94153\/revisions"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/prohoster.info\/es\/wp-json\/wp\/v2\/media\/94154"}],"wp:attachment":[{"href":"https:\/\/prohoster.info\/es\/wp-json\/wp\/v2\/media?parent=94153"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/prohoster.info\/es\/wp-json\/wp\/v2\/categories?post=94153"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/prohoster.info\/es\/wp-json\/wp\/v2\/tags?post=94153"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}