Lanzamiento de Pigsty v2.2: una importante actualización del sistema de monitoreo

Pigsty v2.2 ya está disponible , lo que marca el comienzo de una gran actualización épica. Basado en la nueva versión completa de Grafana v10, eleva la observabilidad de PG a una nueva etapa y brinda una nueva experiencia de usuario. Demostración : http://demo.pigsty.cc .

Además, Pigsty v2.2 también proporciona una plantilla de sandbox de entorno de simulación de producción de 42 nodos, es compatible con Citus 12, PG 16beta2, proporciona una plantilla errante que utiliza una máquina virtual KVM y proporciona un Pigsty Yum dedicado para fuente de paquetes RPM dispersos/fuera de la pared , y es compatible con el sistema operativo nacional de Xinchuang, Tongxin UOS20.

Reelaboración del sistema de vigilancia: coincidencia visual de colores

En Pigsty v2.2, el panel de monitoreo se ha rediseñado por completo, aprovechando al máximo las nuevas funciones de Grafana v10 para brindar a los usuarios una experiencia visual refrescante .

El cambio más intuitivo es el color. Pigsty v2.2 adopta un nuevo esquema de color Tomando el panel de descripción general de PGSQL como ejemplo, el nuevo esquema de color reduce la saturación y la experiencia visual general es más coordinada y hermosa que la versión anterior. 

Pigsty v2.0 utiliza el esquema de color altamente saturado predeterminado de Grafana

Pigsty v2.2: la instancia fallida está marcada en negro, haga clic para ir directamente al sitio de la falla

En  el panel de monitoreo de Pigsty v2.2, PG blue , Nginx green, Red is red, Python yellow, Grafana orange y otros colores se utilizan como puntos de referencia . Este esquema de colores está inspirado en este artículo: SCI, pero "Weathering Son" ~Cuando las ilustraciones de los papeles SCI se encuentran con la combinación de colores del hijo del clima de Xin Haicheng https://zhuanlan.zhihu.com/p/619556088. 

Reelaboración del sistema de vigilancia: Navegación enjambre

Por supuesto, además de la combinación de colores, v2.2 también ha rediseñado la disposición y el diseño del contenido . Por ejemplo, una gran cantidad de navegaciones tabulares se reemplazan por estadísticas de bloques de colores  Stats  , de modo que los servicios problemáticos se pueden ver de un vistazo en la primera pantalla. Haga clic en el bloque de color anormal para ir directamente al sitio de la falla.

Por supuesto, la tabla de navegación a la antigua puede proporcionar información más rica y no se eliminó, sino que se movió a la columna Instancias/Miembros dedicada. Tomemos como ejemplo el panel de clúster PGSQL más utilizado:

La primera pantalla se basa en la navegación de elementos gráficos basada en bloques de colores, que muestra el estado de supervivencia de los componentes del clúster y la disponibilidad del servicio, los indicadores principales, los niveles de carga y los diagramas de eventos de alarma. Y proporciona una navegación rápida a los recursos internos del clúster: instancias, grupos de conexiones, balanceadores de carga, servicios, bases de datos.

Navegación tabular para el clúster PGSQL

Remake del sistema de vigilancia: ejemplos

PGSQL Instance muestra el estado detallado de una instancia, también modificado en v2.2. El principio de diseño más básico es: no es el estado azul/verde el que necesita atención. De esta manera, a través de la codificación visual de colores, los usuarios pueden localizar rápidamente la causa raíz de una falla en la instancia de la base de datos durante el análisis de accidentes.

La tabla de recursos de clúster específica se encuentra en la segunda columna para obtener detalles. Al cooperar con la columna indicadora y la columna de registro en la parte posterior, presenta completamente el estado central de un clúster de base de datos PostgreSQL.

Otras instancias, nodos host, ETCD, MinIO y Redis también usan diseños similares, por ejemplo, la primera pantalla de Instancia de nodo es así.

La sección de métricas de Instancia de nodo sigue siendo prácticamente la misma, pero la sección de descripción general de la parte superior de la página se ha modificado. Lo mismo ocurre con la descripción general de MinIO.

Etcd Overview utiliza State Timeline para visualizar el estado de disponibilidad de los servicios DCS. Por ejemplo, la siguiente figura muestra una escena de falla simulada de etcd: En un clúster de etcd de 5 nodos, cada instancia se apaga por turno. El clúster puede tolerar fallas de dos nodos, pero tres fallas de nodo harán que el servicio etcd general no esté disponible (la barra amarilla cambia a azul oscuro, lo que significa que el servicio ETCD no está disponible en su totalidad).

Cuando el DCS falla, el clúster de PostgreSQL que depende de ETCD para alta disponibilidad habilitará FailSafeMode de forma predeterminada: con la premisa de confirmar que se puede acceder a todos los miembros del clúster, no a él mismo sino a la falla de DCS, se puede evitar la falla de la degradación de la biblioteca principal. . Y esto también se verá reflejado en el seguimiento de PG

Remake del sistema de vigilancia: Servicios

Otra parte rediseñada es Servicio y Proxy. El panel Servicio ahora agrega información importante sobre el servicio: SLI A través de la tira Statetimeline, los usuarios pueden ver visualmente las interrupciones del servicio, obtener indicadores de disponibilidad del servicio y comprender el estado del balanceador de carga y el servidor de base de datos real back-end.

En este ejemplo, se vacían los cuatro HAProxy del clúster pg-test, se establece la operación de estado de mantenimiento y se apaga el servidor de la base de datos back-end. Solo cuando todas las instancias de un clúster estén fuera de línea, el servicio de solo lectura pg-test-replica pasará al estado no disponible.

Este es el panel de monitoreo del balanceador de carga HAProxy número 1 en el clúster pg-test, en él se listará cada servicio alojado por él, mostrando el estado del servidor backend y calculando el SLI. El estado y la supervisión de HAProxy en sí se colocan en el panel de supervisión de Node Haproxy.

En la descripción general, puede ver la línea de tiempo del estado general y los indicadores SLI de todos los servicios de base de datos en Pigsty.

Reelaboración del sistema de vigilancia: estadísticas de la base de datos

En Pigsty, además de monitorear el servidor de la base de datos, también monitoreará los objetos lógicos transportados por el servidor de la base de datos: base de datos, tabla, consulta, índice y otra lógica.

PGSQL Databases muestra estadísticas de bases de datos a nivel de clúster. Por ejemplo, hay 4 instancias de base de datos en el clúster pg-test y una prueba de base de datos, y aquí está la comparación de nivel de los indicadores de base de datos de estas 4 instancias.

Los usuarios pueden profundizar más en las estadísticas internas de una única instancia de base de datos, es decir, el panel Base de datos PGSQL. Este panel proporciona algunas métricas clave sobre la base de datos y el grupo de conexiones, pero lo más importante es que el panel Base de datos PGSQL proporciona un índice de las tablas y consultas más activas y llamativas en la base de datos : estos son los dos tipos más importantes de objetos de biblioteca. .

Remake del sistema de vigilancia: Catálogo del sistema

En Pigsty, además de los datos del indicador recopilados por pg exporter, se utilizará otro tipo de datos complementarios importantes opcionales : el catálogo del sistema. Esto es también lo que hace el Dashboard de la serie PGCAT. La Instancia PGCAT accederá directamente al catálogo del sistema de la base de datos (usando hasta 8 conexiones de monitoreo de solo lectura), obtendrá y presentará la información requerida.

Por ejemplo, puede obtener las actividades en ejecución actuales de la base de datos, ubicar y analizar consultas lentas, índices inútiles y exploraciones de tablas completas en la base de datos de acuerdo con varios indicadores. Verifique el rol de la base de datos, la sesión, el estado de replicación, el estado de modificación de la configuración, los detalles de uso de la memoria, la copia de seguridad y los detalles de persistencia.

Si la instancia de PGCAT se enfoca en el servidor de la base de datos en sí, entonces la base de datos de PGCAT presta más atención a los detalles del objeto dentro de una sola base de datos: como esquema, tabla, índice, expansión, Top SQL, Top Table, etc.

Se puede hacer clic en cada esquema, tabla e índice para profundizar e ingresar a un panel dedicado más detallado. Por ejemplo, PGCAT Schema revela aún más los detalles del objeto en un modelo arquitectónico.

Las consultas en la base de datos también se agregan de acuerdo con el plan de ejecución, lo cual es conveniente para que los usuarios encuentren problemas de SQL y localicen rápidamente problemas de consultas lentas .

Retrabajo del Sistema de Monitoreo: Tablas y Consultas

En Pigsty, puede buscar todos los aspectos de una tabla. El panel Tabla de PGCAT le permite ver los metadatos de la tabla, sus índices, las estadísticas de cada columna y las consultas relacionadas.

Por supuesto, también puede usar el panel Tabla PGSQL para ver los indicadores clave de una tabla en cualquier período de tiempo histórico desde la dimensión de los indicadores. Haga clic en el nombre de la tabla para cambiar fácilmente entre las dos perspectivas.

En consecuencia, también puede obtener información detallada de la misma clase de SQL ( con el mismo plan de ejecución ) .

En Pigsty, también hay muchos paneles sobre temas específicos. Debido a limitaciones de espacio, esta es la introducción al sistema de monitoreo. La forma más intuitiva de experimentarlo es visitar la demostración pública proporcionada por Pigsty: http://demo.pigsty.cc y jugarlo usted mismo. Aunque este es solo un entorno simple de cuatro máquinas virtuales 1C, es suficiente para demostrar las capacidades más básicas del sistema de monitoreo de Pigsty.

Gran entorno de simulación

Pigsty proporciona un entorno de espacio aislado basado en Vagrant y Virtualbox, que puede ejecutarse en su computadora portátil/Mac. Hay una versión mínima de 1 nodo y una versión completa de 4 nodos para demostración y aprendizaje, y ahora v2.2 ha agregado un  42  -Sandbox de simulación de producción de nodos.

Todos los detalles del sandbox de producción están descritos por prod.yml, un archivo de configuración con menos de líneas 500. Puede ejecutarse fácilmente en una máquina física de servidor común, y el proceso de extracción es el mismo que 4 nodos: hacer prod instalar y ya está.

Pigsty v2.2 proporciona una plantilla Vagrantfile basada en libvirt Solo necesita ajustar la lista de máquinas en la configuración anterior para crear la máquina virtual requerida con un solo clic. Todo puede funcionar fácilmente en una  máquina física Dell R730 48C  256G, y el precio de segunda mano es inferior a 3000 yuanes. Por supuesto , aún puede usar la plantilla Pigsty Terraform para abrir una máquina virtual en un proveedor de nube con un solo clic.

Una vez completada la instalación, el entorno es el siguiente, incluida la infraestructura de monitoreo de dos nodos, uno maestro y uno de respaldo. Un clúster etcd dedicado de 5 nodos, un clúster MinIO de muestra de 3 nodos que proporciona servicios de almacenamiento de objetos para almacenar copias de seguridad de PG y un clúster HAProxy dedicado de dos nodos que puede proporcionar equilibrio de carga de manera uniforme para los servicios de base de datos.

Además de esto, hay 3 conjuntos de clústeres de bases de datos de Redis y 10 conjuntos de clústeres de bases de datos de PostgreSQL de diferentes , incluido un conjunto de clústeres de PostgreSQL distribuidos Citus 12 de 5 fragmentos listos para usar.

Esta configuración es un ejemplo de referencia para que las empresas medianas y grandes ejecuten y administren clústeres de bases de datos a gran escala, y puede completar el inicio con un solo clic en un solo servidor físico en media hora.

Un proceso de construcción más fluido

Cuando elige descargar el software requerido por Pigsty directamente desde Internet, puede encontrarse con la molestia de Kungfu.com. Por ejemplo, las descargas de fuentes predeterminadas de Grafana/Prometheus Yum son extremadamente lentas. Además, hay algunos paquetes RPM dispersos que deben descargarse a través de la URL web en lugar del RPM de repotrack.

En Pigsty v2.2, este problema está resuelto. Pigsty proporciona una fuente oficial de yum: http://get.pigsty.cc y está configurada como una de las fuentes ascendentes predeterminadas. Todos los RPM dispersos y RPM que deben pasar por encima de la pared se colocan en él, lo que puede acelerar efectivamente la instalación/construcción en línea.

Además, Pigsty también brinda soporte para el sistema operativo de Xinchuang, Tongxin UOS 1050e uel20 en v2.2, para satisfacer las necesidades especiales de algunos clientes especiales. Pigsty ha recompilado paquetes RPM relacionados con PG para estos sistemas a fin de brindar soporte a los clientes que lo necesitan.

Instalar

A partir de v2.2, el comando de instalación de Pigsty se convierte en:

bash -c "$(curl -fsSL http://get.pigsty.cc/latest)"

Pigsty se puede instalar completamente en una máquina nueva con una línea de comando. Si desea probar la versión beta, simplemente reemplace la última con beta. Para entornos especiales sin acceso a Internet, también puede usar el siguiente enlace para descargar Pigsty, así como un instalador fuera de línea empaquetado con todo el software:

  • http://get.pocilga.cc/v2.2.0/pocilga-v2.2.0.tgz
  • http://get.pocilga.cc/v2.2.0/pocilga-pkg-v2.2.0.el7.x86_64.tgz
  • http://get.pocilga.cc/v2.2.0/pocilga-pkg-v2.2.0.el8.x86_64.tgz
  • http://get.pocilga.cc/v2.2.0/pocilga-pkg-v2.2.0.el9.x86_64.tgz

Los anteriores son los cambios provocados por Pigsty v2.2. Para obtener más detalles, consulte la documentación oficial de Pigsty y la Nota de publicación de Github .

Supongo que te gusta

Origin www.oschina.net/news/252434/pigsty-v2-2-released
Recomendado
Clasificación