[Operación y mantenimiento de TI] Introducción básica a Prometheus e implementación de la plataforma de monitoreo (Prometheus + Grafana)

1. Introducción básica a Prometeo

Prometheus (desarrollado por go language) es una combinación de bases de datos de monitoreo, alarmas y series temporales (ordenadas por tiempo) de código abierto. Porque la popularidad de Kubernetes (comúnmente conocido como k8s) ha impulsado el desarrollo de Prometheus. Puede monitorear hosts, servicios y contenedores, admite múltiples exportadores para recopilar datos y admite pushgateway para informes de datos. El rendimiento de Prometheus es suficiente para admitir decenas de miles de clústeres.
https://prometheus.io/docs/introduction/overview/

Datos de series de tiempo : los datos que registran cambios en el estado del sistema y del equipo en orden cronológico se denominan datos de series de tiempo. Este tipo de datos de series temporales se aplicará a muchos escenarios, como por ejemplo:

  • El más común es el registro en nuestro sistema.
  • La longitud, latitud, velocidad, dirección, distancia de objetos cercanos, etc. deben registrarse durante la operación del vehículo no tripulado. Los datos deben registrarse y analizarse en todo momento.
  • Datos de trayectoria de conducción y volumen de tráfico de cada vehículo en una zona determinada.
  • Datos de transacciones en tiempo real de la industria de valores tradicional
  • Datos de monitoreo de operación y mantenimiento en tiempo real, gráficos de tráfico de tarjetas de red, estado actual de los servicios y uso de recursos. Por ejemplo, si el contenido que está monitoreando tiene un aumento brusco, una caída abrupta o una desconexión, generalmente significa que hay es un problema, ya sea que suceda. Siempre que suceda, debe descubrir rápidamente qué salió mal.

1.1 Principales ventajas de la base de datos de series temporales

La base de datos de series de tiempo se utiliza principalmente para procesar datos con etiquetas de tiempo (cambiando el orden del tiempo, es decir, serialización de tiempo). Los datos con etiquetas de tiempo también se denominan datos de series de tiempo.

  • Buen rendimiento

Las bases de datos relacionales tienen un rendimiento deficiente en el procesamiento de datos a gran escala, lo que puede reflejarse claramente en la E/S. El uso de NOSQL puede manejar mejor datos a gran escala, pero aún no es tan bueno como una base de datos de series temporales.

  • Bajos costos de almacenamiento

Dado que adopta el método de almacenamiento de datos de métricas: clave = valor (etiqueta: palabra clave = valor) y utiliza un algoritmo de compresión eficiente, el costo de almacenamiento promedio es de aproximadamente 3,5 bytes, por lo que ahorra espacio de almacenamiento y puede reducir E/S de manera efectiva.

Prometheus tiene un método de almacenamiento de datos de series de tiempo muy eficiente. Cada dato muestreado solo ocupa alrededor de 3,5 bytes de espacio. Se recopilan millones de datos de series de tiempo cada 30 segundos y se retienen durante 60 días, ocupando alrededor de 200 G de espacio (del documento oficial datos)

1.2 Características principales de Prometheus

  1. El modelo de datos multidimensional puede modelar datos a través de múltiples dimensiones y consultar datos a través de múltiples dimensiones.

  2. Lenguaje de consulta flexible, proporciona un método de consulta PromQL flexible y también proporciona una interfaz de consulta HTTP, que se puede combinar fácilmente con Grafana y otros componentes para mostrar datos.

  3. No depende del almacenamiento distribuido y admite el almacenamiento local de un único nodo. A través de la base de datos de series de tiempo que viene con Prometheus, se puede completar el almacenamiento de datos de millones por segundo. Si es necesario almacenar una gran cantidad de datos históricos, también se puede conectar a una base de datos de series de tiempo de terceros.

  4. Usar HTTP para extraer datos de series temporales a través del modelo de extracción y proporcionar un estándar de datos de indicador abierto

  5. El modelo push también se puede admitir a través de la puerta de enlace intermedia
    . El monitoreo pull es en realidad monitoreo activo y pasivo. De forma predeterminada, está en modo pull, es decir, el host de monitoreo va al host monitoreado para obtener los datos. Si es para ser implementado El método push requiere el soporte de una puerta de enlace intermedia, que es simplemente diferente del nombre de zabbix.

  6. Descubra objetos de servicio de destino mediante el descubrimiento de servicios o la configuración estática

  7. Admite una variedad de gráficos y visualizaciones de interfaz, y puede utilizar herramientas de terceros para mostrar contenido, como Grafana

1.3 Principio de seguimiento de Prometeo

  1. Prometheus Server es responsable de capturar periódicamente datos de métricas en el objetivo.
  2. Cada objetivo de rastreo [host, servicio] debe exponer una interfaz de servicio HTTP para el rastreo programado de Prometheus. Es decir, Prometheus empaquetará los datos de monitoreo obtenidos en una página web accesible y determinará el estado del host accediendo a la URL especificada.

La ventaja del método pull es que puede realizar automáticamente el monitoreo ascendente y el monitoreo horizontal, requiere menos configuración, es más fácil de expandir, más flexible y más fácil de lograr una alta disponibilidad. En pocas palabras, el método Pull puede reducir el acoplamiento. Porque en el sistema push, es fácil causar el problema de parálisis del sistema monitoreado debido a que no se envían datos al sistema de monitoreo. Porque si hay muchos hosts monitoreados enviando datos al host de monitoreo al mismo tiempo, es muy probable que el host de monitoreo no pueda procesarlos, por lo que a través del método Pull, el extremo recopilado no necesita ser consciente de la existencia de el sistema de monitoreo y es completamente independiente del sistema de monitoreo, de modo que la recopilación de datos está completamente controlada por el sistema de monitoreo.

1.4 El significado de las seis secciones de configuración principales del archivo de configuración de Prometheus

  • Cada sección de configuración grande del archivo de configuración de Prometheus

    • scrape_configs recopila segmentos de configuración como recopilador
    • alarma rule_files, segmento de archivo de configuración de agregación previa
    • segmento de consulta remota remote_read
    • segmento de escritura remota remote_write
    • alerta: segmento de información de Alertmanager
  • La siguiente imagen muestra la arquitectura de Prometheus y cómo cada componente interactúa y colabora.

Insertar descripción de la imagen aquí

  • La mayoría de los proyectos de código abierto excelentes son modulares, lo que permite a los usuarios decidir qué configuraciones habilitar en función de los escenarios comerciales.
La sección de configuración correspondiente. usar
Sección de configuración de colección Sea un recopilador y guarde los datos localmente
Sección de configuración de colección + sección de escritura remota Trabaja como recolector + transmisor, y los datos se guardan localmente + se almacenan de forma remota
sección de consulta remota Sea un consultador para consultar datos de almacenamiento remoto
Sección de configuración de colección + sección de consulta remota Sea un recopilador + consultador, consulte datos locales + datos de almacenamiento remoto
Sección de configuración de recopilación + sección de información de Alertmanager + sección de archivo de configuración de alertas Haga un recopilador + disparador de alarma, consulte datos locales, genere alarmas y envíelas a Alertmanager
Sección de consulta remota + sección de información de Alertmanager + sección de archivo de configuración de alertas Cree un disparador de alarma remoto, consulte datos remotos, genere una alarma y envíela a Alertmanager
Segmento de consulta remota + segmento de escritura remota + segmento de archivo de configuración preagregado Preagregar indicadores y escribir los indicadores del conjunto de resultados generados en el almacenamiento remoto
  • formato de configuración específico de yaml
# 全局配置段
global:
  # 采集间隔 
  scrape_interval:     15s # Set the scrape interval to every 15 seconds. Default is every 1 minute.
  # 计算报警和预聚合间隔
  evaluation_interval: 15s # Evaluate rules every 15 seconds. The default is every 1 minute.
  # 采集超时时间
  scrape_timeout: 10s 
  # 查询日志,包含各阶段耗时统计
  query_log_file: /opt/logs/prometheus_query_log
  # 全局标签组
  # 通过本实例采集的数据都会叠加下面的标签
  external_labels:
    account: 'huawei-main'
    region: 'node1'

# Alertmanager信息段
alerting:
  alertmanagers:
  - scheme: http
    static_configs:
    - targets:
      - "localhost:9090"

# 告警、预聚合配置文件段
rule_files:
    - /etc/prometheus/rules/record.yml
    - /etc/prometheus/rules/alert.yml

# 采集配置段
scrape_configs:
  # The job name is added as a label `job=<job_name>` to any timeseries scraped from this config.
  - job_name: 'prometheus'

    # metrics_path defaults to '/metrics'
    # scheme defaults to 'http'.

    static_configs:
    - targets: ['localhost:9090']

# 远程查询段
remote_read:
  # prometheus 
  - url: http://prometheus/v1/read
    read_recent: true

  # m3db 
  - url: "http://m3coordinator-read:7201/api/v1/prom/remote/read"
    read_recent: true

# 远程写入段
remote_write:
  - url: "http://m3coordinator-write:7201/api/v1/prom/remote/write"
    queue_config:
      capacity: 10000
      max_samples_per_send: 60000
    write_relabel_configs:
      - source_labels: [__name__]
        separator: ;
        # 标签key前缀匹配到的drop
        regex: '(kubelet_|apiserver_|container_fs_).*'
        replacement: $1
        action: drop

2. Implementar la plataforma de monitoreo Prometheus

  • Instalar e implementar el terminal de monitoreo de servicios Prometheus
  • Monitorear una máquina remota
  • Monitorear un servicio: mysql
prometheus 主程序包:wget https://github.com/prometheus/prometheus/releases/download/v2.11.1/prometheus-2.16.0.linux-amd64.tar.gz

远端主机监控插件(类似于zabbix-agent): wget  https://github.com/prometheus/node_exporter/releases/download/v0.18.1/node_exporter-1.0.0-rc.0linux-amd64.tar.gz

mysql业务监控插件: wget   https://github.com/prometheus/mysqld_exporter/releases/download/v0.12.0/mysqld_exporter-0.12.1.linux-amd64.tar.gz
  • Diagrama de topología experimental
    diagrama experimental de prometheus.png

2.1 Implementar terminal de monitoreo de servicios Prometheus

[root@node1 ~]# tar xf prometheus-2.11.1.linux-amd64.tar.gz -C /usr/local/
[root@node1 ~]# cd /usr/local/prometheus-2.11.1.linux-amd64/
[root@node1 prometheus-2.11.1.linux-amd64]# ./prometheus --config.file=prometheus.yml &

Empezar a probar
Prometeo_1.png

Ver esta página muestra que Prometheus se ha iniciado correctamente y se ha monitoreado a sí mismo de forma predeterminada. Echemos un vistazo al estado de monitoreo de esta máquina.
Prometeo_2.png

Haga clic en objetivos de estado para ver las máquinas o recursos monitoreados
Prometeo_3.png

Después de ver esta máquina, también puede ingresar http://IP o nombre de dominio:9090/metrics en el navegador de acuerdo con las indicaciones para ver los datos de monitoreo.

显示监控数据
http://192.168.98.201:9090/metrics

Prometheus_node1_metrics4.png

Si puede ver esta información, significa que el sistema de monitoreo ha obtenido los datos, una vez obtenidos los datos se pueden mostrar normalmente. A través de esta URL, podemos saber que Prometheus almacena todos los datos monitoreados juntos y luego genera una página web. Los usuarios pueden ver datos relevantes a través de la página web. Estos datos siguen el formato de la base de datos de series de tiempo, es decir, en la forma de clave = valor. Estos datos son nuestros indicadores de seguimiento, pero aún no hay forma de analizarlos. Necesitamos utilizar una visualización gráfica para que sea más fácil de leer.

La pantalla de Prometheus también proporciona gráficos. Puede ver intuitivamente el estado de los elementos de monitoreo a través de los gráficos, pero los gráficos integrados en realidad no son muy atractivos.

Haga clic en Gráfico para mostrar los siguientes gráficos. Ingrese palabras clave en la barra de búsqueda que coincidan con los elementos de monitoreo que desea ver.

imagen20200225140312916.png
La entrada aquí es proceso_cpu_segundos_total, y aparecerá la tabla de estado de uso de la CPU. Preste atención al botón Gráfico en la esquina superior izquierda del gráfico. El valor predeterminado está en la página del botón de la consola.

2.2 Monitorear una máquina comercial remota

a. Instalar el cliente de monitoreo

[root@node2 ~]# tar xf node_exporter-0.18.1.linux-amd64.tar.gz -C /usr/local/
[root@node2 ~]# cd /usr/local/node_exporter-0.18.1.linux-amd64/
[root@node2 node_exporter-0.18.1.linux-amd64]# ls
LICENSE  node_exporter  NOTICE

#后台启动
[root@node2 node_exporter-0.18.1.linux-amd64]# nohup /usr/local/node_exporter-0.18.1.linux-amd64/node_exporter &
[1] 7281
[root@node2 node_exporter-0.18.1.linux-amd64]# nohup: 忽略输入并把输出追加到"nohup.out"


#业务机器监控插件服务端口
[root@node2 node_exporter-0.18.1.linux-amd64]# lsof -i :9100
COMMAND    PID USER   FD   TYPE DEVICE SIZE/OFF NODE NAME
node_expo 7281 root    3u  IPv6  42486      0t0  TCP *:jetdirect (LISTEN)

#验证  http://被监控机名称:9100/metrics
http://192.168.98.202:9100/metrics
现在这台机器上的数据被打包成了一个可以访问的页面,所以可以使用浏览器去访问这个页面,看下能否获取到相关的数据,如果能够获取的话就表示没有问题了。 

B. Agregar información de monitoreo en Prometheus.

#被监控主机设置完成之后,需要在prometeus主配置文件中添加被监控机信息
[root@node1 prometheus-2.11.1.linux-amd64]# tail -4  prometheus.yml 

  - job_name: 'node2'	#定义名称
    static_configs:#定义具体配置
    - targets: ['192.168.98.202:9100']#定义目标
 
 ####注意缩进  两个空格
     
 #重启服务    
[root@node1 prometheus-2.11.1.linux-amd64]# pkill prometheus
[root@node1 prometheus-2.11.1.linux-amd64]# ./prometheus --config.file=prometheus.yml &


注意:prometheus启动报错
**lock DB directory: resource temporarily unavailable"** 
原因:prometheus没有正常关闭,锁文件存在
rm $prometheus_dir/data/lock

C. Verificación de la prueba

Después de la configuración, vea la página de Prometheus.
Prometeo_6.png

Después de ver la página Estado-Objetivos, puede ver que el nodo2 de la máquina monitoreada (192.168.98.202) ya está en la lista de monitoreo y puede ver sus datos de monitoreo a través del navegador.

Prometheus_node2_metrics5.png

Ingrese http://192.168.98.202:9100/metrics en el navegador para ver los datos

2.3 Monitorear un servicio: mysql

Para monitorear mysql, se requieren dos condiciones: una es que haya mysql en el sistema y la otra es que haya un complemento de monitoreo. Ahora que el complemento de monitoreo se ha descargado, por lo que primero debemos instalar mysql. y luego realice la autorización correspondiente para que el complemento pueda obtener toda la información Información requerida, luego configure los complementos relevantes y modifique el archivo de configuración de Prometheus

A. Implementar negocio mysql

[root@node2 node_exporter-0.18.1.linux-amd64]# dnf -y install mariadb-server mariadb
[root@node2 mysqld_exporter-0.12.0.linux-amd64]# systemctl enable mariadb
Created symlink from /etc/systemd/system/multi-user.target.wants/mariadb.service to /usr/lib/systemd/system/mariadb.service.
[root@node2 mysqld_exporter-0.12.0.linux-amd64]# systemctl start mariadb

#创建监控用户
MariaDB [(none)]> grant select,replication client,process on *.* to 'hello'@'localhost' identified by '123456';
Query OK, 0 rows affected (0.00 sec)

MariaDB [(none)]> flush privileges;
Query OK, 0 rows affected (0.00 sec)

B. Implementar el complemento de monitoreo

[root@node2 ~]# tar xf mysqld_exporter-0.12.1.linux-amd64.tar.gz -C /usr/local
[root@node2 ~]# vim /usr/local/mysqld_exporter-0.12.1.linux-amd64/.my.cnf
[root@node2 ~]# cat /usr/local/mysqld_exporter-0.12.1.linux-amd64/.my.cnf
[client]
user=hello
password=123456

#启动
[root@node2 ~]# nohup /usr/local/mysqld_exporter-0.12.1.linux-amd64/mysqld_exporter --config.my-cnf=/usr/local/mysqld_exporter-0.12.1.linux-amd64/.my.cnf &

[root@node2 ~]# lsof -i :9104
COMMAND    PID USER   FD   TYPE DEVICE SIZE/OFF NODE NAME
mysqld_ex 7698 root    3u  IPv6  46415      0t0  TCP *:peerwire (LISTEN)

C. Agregar monitoreo en el archivo de configuración principal de Prometheus

#
[root@node1 prometheus-2.11.1.linux-amd64]# tail -10 prometheus.yml 
    static_configs:
    - targets: ['localhost:9090']

  - job_name: 'node2'
    static_configs:
    - targets: ['192.168.98.202:9100']
  
  - job_name: 'mariadb'
    static_configs:
    - targets: ['192.168.98.202:9104']

D. Reinicie el servicio Prometheus.

[root@node1 prometheus-2.11.1.linux-amd64]# pkill prometheus
[root@node1 prometheus-2.11.1.linux-amd64]# ./prometheus --config.file=prometheus.yml &

e. Ver servicios a través de la página de monitoreo

Prometeo_nodo2_mysql9.png

Consulte gráficos relacionados a través de la página de gráficos

Prometeo_nodo2_mysql8.png

Puede marcar apilado para mostrar el gráfico en forma apilada.

3. Visualización de datos y alarma de Prometheus Grafana

La interfaz de visualización del software de monitoreo Prometheus es realmente fea, así que cambiemos el método de visualización: Grafana. Grafana es una herramienta de visualización y análisis de medición de código abierto (sin función de monitoreo). Puede analizar, consultar y luego visualizar los datos recopilados. y puede lograr la alarma.

3.1 Implementar grafana

a.instalación de grafana

Obtenga el paquete de software del
sitio web oficial: grafana: https://grafana.com/

Instalación del paquete

[root@manage01 ~]# dnf -y localinstall grafana-6.6.1-1.x86_64...

Inicio del servicio

#服务启动
[root@manage01 ~]# systemctl enable grafana-server
Created symlink from /etc/systemd/system/multi-user.target.wants/grafana-server.service to /usr/lib/systemd/system/grafana-server.service.
[root@manage01 ~]# systemctl start grafana-server

#验证启动
[root@manage01 ~]# lsof -i :3000
COMMAND     PID    USER   FD   TYPE DEVICE SIZE/OFF NODE NAME
grafana-s 17154 grafana    8u  IPv6  53939      0t0  TCP *:hbci (LISTEN)

Una vez que grafana se haya iniciado correctamente, podrá acceder a la página de grafana a través de la página

Ingrese http://IP o nombre de dominio:3000 en el navegador

grafana1.png
Requiere contraseña de cuenta: admin/admin (predeterminada)

Cuando vea esta página, significa que grafana se ha instalado correctamente y está funcionando.

Cuando ingresa su cuenta y contraseña para iniciar sesión, dado que es la primera vez que inicia sesión, debe cambiar su contraseña por razones de seguridad antes de poder iniciar sesión. Después de ingresar la nueva contraseña
grafana2.png
dos veces, haga clic en guardar para iniciar sesión.

B. Configuración de la página de Grafana: agregar fuente de datos de Prometheus

Después de iniciar sesión correctamente, la página le proporcionará una línea de orientación de uso. Configure de acuerdo con los requisitos de la orientación, principalmente configurando la fuente de datos para grafana.

imagen20200225145354437.png

Como se puede ver en el ícono, debemos configurar la fuente de datos (mostrar el panel) y agregar estas operaciones de usuario.
Haga clic en Agregar fuente de datos para agregar una fuente de datos

imagen20200225145454014.png

Seleccione Prometheus para continuar con el siguiente paso.

imagen20200225153536052.png

La configuración de la parte de autenticación se usa principalmente junto con HTTPS. Si usa https, necesita certificados, autenticación, etc., y debe realizar algunas configuraciones para esta parte.

Simplemente complete la información correspondiente de acuerdo con los requisitos de la página, generalmente los errores son causados ​​por errores de entrada. Haga clic en Guardar y probar y guarde correctamente.

grafana6.png

Puede ver la fuente de datos que acaba de agregar a través de Fuente de datos en el menú desplegable del ícono de ajustes en la barra de navegación izquierda.

3.2 Dibujar gráficos

A. Gestión del panel de control

grafica7.png

Después de agregar la fuente de datos, puede continuar agregando un panel para que podamos ver los datos en forma de gráfico. Continúe haciendo clic en Nuevo panel

grafana8.png

La imagen muestra que puede agregar un gráfico al tablero y también puede elegir un ícono de estilo.

Puedes elegir cualquiera aquí. No sé qué piensa el autor sobre esta versión. De hecho, se pueden realizar todas las funciones.

Seleccione la primera consulta Agregar aquí

grafana9.png

Después de ingresar a la página, hay cuatro logotipos en el lado izquierdo, a saber

fuente de datos
imagen20200225154121203.png

cuadro
imagen20200225154146665.png

configuración
imagen20200225154213541.png

Alarma
imagen20200225154254663.png

Primero sigamos los pasos del ícono para configurar la fuente de datos.

Como se muestra arriba, en el elemento A, haga coincidir sus elementos de monitoreo de acuerdo con sus necesidades. Si hay varios elementos, puede agregarlos mediante la consulta Agregar en la esquina superior derecha. Una vez completada la configuración, puede configurar el estilo del gráfico. Haga clic en en el gráfico.

grafana10.png

El gráfico habla principalmente sobre el estilo del gráfico y se explican los elementos principales:

  • El primer modo de dibujo se refiere al método de visualización de la imagen en el gráfico. Hay tres tipos: franjas, líneas y puntos.
  • Las segundas Opciones de modo hablan del grosor de la línea en el gráfico de transparencia de sombra de relleno del gráfico.
  • Si el último activa el apilamiento de gráficos y muestra porcentajes

Una vez completada la configuración, mire el ícono de configuración.

Esta página se utiliza principalmente para configurar el nombre del gráfico y los comentarios.

grafana11_1.png

Después de configurarlo, la configuración de nuestro gráfico será así por el momento. Discutiremos la configuración de alarma en detalle para alarmas posteriores.

Haga clic en Guardar para guardar el gráfico.

grafana11.png

Al guardar el gráfico, se le pedirá que ingrese un nombre para el panel. Ingrese al Nodo2 aquí

grafana12.png

Después de confirmar que todo está correcto, haga clic en Guardar

grafana13.png

El tablero está listo y nuestros gráficos también son visibles.

A continuación, se debe configurar el usuario. Este usuario se agrega mediante un mecanismo de invitación, lo que significa que debemos generar un enlace de invitación y enviarlo al usuario correspondiente. Luego, la otra parte visita el enlace correspondiente para registrarse. De esta manera, el usuario se puede agregar correctamente y haga clic en el botón Agregar usuarios.

grafana14.png

Agregue un usuario según sea necesario

grafana15.png

Haga clic para invitar a los usuarios

imagen20200225161454447.png

Ingrese el nombre de usuario, la función de usuario y haga clic en Invitar.

imagen20200225161653564.png

Después de hacer clic en la invitación, debe enviar el enlace de invitación al usuario o abrirlo en el navegador para confirmar la invitación,
cambiar a otro host y abrirlo en el navegador.

imagen20200225162223119.png

Introduzca su dirección de correo electrónico y contraseña de usuario y haga clic en Registrarse

imagen20200225162409462.png

Regrese al host donde usa la cuenta de administrador para iniciar sesión en grafana. Después de actualizar, podrá ver el usuario recién registrado. También puede eliminar el usuario y modificar los permisos.

B. Configuración de grafana: agregue gráficos para monitorear la carga de la CPU

Haga clic en la barra lateral izquierda: ➕—Elija Visualización

Seleccionar estilo de gráfico

Introduzca los elementos de datos según sea necesario:

  • node_load1 Carga promedio de CPU en un minuto
  • node_load5 CPU carga promedio de cinco minutos
  • node_load15 Carga promedio de CPU en quince minutos

Nota: Si se monitorean varias máquinas al mismo tiempo, el gráfico mostrará todas las máquinas. Si solo desea mostrar una determinada máquina, puede utilizar la coincidencia de monitoreo.

El método de entrada es el siguiente:

Elemento de monitoreo {instancia="IP de la máquina monitoreada: puerto"}

Como se muestra abajo

imagen20200225163828382.png

Esto mostrará una máquina.

C. Configuración de grafana: use gráficos de plantilla para mostrar el monitoreo de MySQL

Descarga de la plantilla de monitoreo de MySQL
https://github.com/percona/grafana-dashboards

Configuración de plantilla

#在grafana配置文件中添加插件信息
[root@manage01 ~]# vim /etc/grafana/grafana.ini 
[root@manage01 grafana]# tail -3 /etc/grafana/grafana.ini 
[dashboards.json]
enabled = true
path = /var/lib/grafana/dashboards

#下载插件
[root@manage01 ~]# unzip grafana-dashboards-master.zip 


#拷贝插件到指定位置
[root@manage01 ~]# cd grafana-dashboards-master/
[root@manage01 grafana-dashboards-master]# cp -r dashboards /var/lib/grafana/
[root@manage01 dashboards]# vim /var/lib/grafana/dashboards/MySQL_Overview.json
#搜索pmm-singlestat-panel替换为singlestat
#重启生效
[root@manage01 grafana]# systemctl restart grafana-server.service 

Importar plantillas a través de la interfaz web

grafana20.png

Seleccione el menú de la izquierda—➕—Importar

Seleccione el archivo json correspondiente e impórtelo

grafana21.png

Puedes ver la imagen después de hacer clic en Importar.

imagen20200225171755015.png

3.3 Alarma Grafana

Configurar el canal de alarma de grafana.

imagen20200225174606552.png

Haga clic en el gráfico de campana a la izquierda—canales de notificación—Agregar canal

imagen20200225175559736.png

  • Parte del nombre: complete un nombre
  • Escriba parte: seleccione el método de webhook
  • Enviar todas las alertas: Si está marcado, significa que todas las alarmas se enviarán a través de este canal de forma predeterminada.
  • Incluir imagen: si está marcado, significa que las capturas de pantalla se enviarán al mismo tiempo que ocurre la alarma. Debido a que la notificación de alarma actual no admite imágenes, no es necesario marcarlo aquí.
  • Desactivar Resolver Mensaje: Si está marcado, significa que cuando el estado vuelva a la normalidad desde la alarma, no se enviarán más mensajes, es decir, no se dará ninguna notificación para volver a la normalidad, no es necesario marcar aquí.
  • Enviar recordatorios: Si está marcado, significa que además de enviar un mensaje de alarma cuando el estado cambia por primera vez a alarma, de vez en cuando, si todavía está en el estado de alarma, se enviará una alarma repetida.
  • Enviar recordatorio cada: Indica con qué frecuencia enviar alarmas repetidas, el valor predeterminado aquí es 30 minutos.
  • URL: servidor oficial de alarma del servidor
  • Método HTTP: seleccione PUBLICAR

Una vez completada la configuración, haga clic en enviar prueba para verificar el correo electrónico de alarma en la dirección de correo electrónico utilizada al registrar la cuenta.

imagen20200225175125898.png

Después de configurar el canal y completar la verificación, configure alarmas para el gráfico

onealter7.png

Seleccione el gráfico y haga clic en el menú desplegable del nombre del gráfico: editar para ingresar al menú de edición.

onealter8.png

Seleccione el gráfico de campana: cree una alerta para configurar la alerta del gráfico

onealter9.png

La configuración del umbral de alarma aquí es tomar la carga promedio de la CPU. Debido a que es un experimento, el valor de alerta temprana es 0,5 para facilitar la prueba de las alarmas.

onealter10.png

Una vez completada la configuración, aparece una línea de advertencia temprana en el gráfico, haga clic en Guardar

A continuación, aumente la carga de la CPU en el nodo 2.

imagen20200225220905872.png

imagen20200225222218919.png

Alarma completada.

Supongo que te gusta

Origin blog.csdn.net/qq_45277554/article/details/130917620
Recomendado
Clasificación