Instale Prometheus Grafana en Ubuntu para monitorear mysql, redis

Como dice el refrán, un sistema sin monitoreo está funcionando desnudo, y un buen monitoreo es la tercera mano y el tercer ojo del personal de operación y mantenimiento. Este artículo usará prometheus y Grafana para construir un sistema de monitoreo para monitorear el host y la base de datos ( MySQL , Redis ).

1. Ropa interior Grafana

Grafana es un panel de visualización (Dashboard), con un gráfico y una pantalla de diseño muy hermosos, un panel de medición y un editor de gráficos con todas las funciones, compatible con Graphite, zabbix, InfluxDB, Prometheus y otras fuentes de datos.

1.1 Descargar e instalar

Enlace de descarga: https://grafana.com/grafana/download

Después de la descarga, puede instalarlo:

sudo dpkg -i grafana_5.0.4_amd64.deb

Empiece a ver el estado:

sudo systemctl start grafana-server
sudo systemctl status grafana-server

 

 A continuación, configure el usuario y el directorio de prometheus:

vagrant@vagrant:/htdocs/share$ sudo useradd --no-create-home --shell /bin/false prometheus
vagrant@vagrant:/htdocs/share$ sudo useradd --no-create-home --shell /bin/false node_exporter
vagrant@vagrant:/htdocs/share$ sudo mkdir /etc/prometheus
vagrant@vagrant:/htdocs/share$ sudo mkdir /var/lib/prometheus
vagrant@vagrant:/htdocs/share$ sudo chown prometheus:prometheus /etc/prometheus
vagrant@vagrant:/htdocs/share$ sudo chown prometheus:prometheus /var/lib/prometheus

Siguiente descarga prometheus:

vagrant @ vagrant: / htdocs / share $ cd 
vagrant @ vagrant: ~ $ curl -LO https://github.com/prometheus/prometheus/releases/download/v2.0.0/prometheus-2.0.0.linux-amd64.tar .gz

 Descomprima e ingrese al directorio:

vagrant @ vagrant: / htdocs / share $ sudo cp prometheus-2.0.0.linux-amd64 / prometheus / usr / local / bin /
vagrant @ vagrant: / htdocs / share $ sudo cp prometheus-2.0.0.linux-amd64 / promtool / usr / local / bin /
vagrant @ vagrant: / htdocs / share $ sudo chown prometheus: prometheus / usr / local / bin / prometheus
vagrant @ vagrant: / htdocs / share $ sudo chown prometheus: prometheus / usr / local / bin / promtool vagrant
@ vagrant : / htdocs / share $ sudo cp -r prometheus-2.0.0.linux-amd64 / consoles / etc / prometheus
vagrant @ vagrant: / htdocs / share $ sudo cp -r prometheus-2.0.0.linux -amd64 / console_libraries / etc / prometheus
vagrant @ vagrant: / htdocs / share $ sudo chown -R prometheus: prometheus / etc / prometheus / consoles
vagrant @ vagrant: / htdocs / share $ sudo chown -R prometheus: prometheus / etc / prometheus / console_libraries

 

 Agregar tarea de monitoreo:

 El contenido de /etc/prometheus/prometheus.yml es el siguiente:

global:
  scrape_interval: 15s

scrape_configs:
  - job_name: 'prometheus'
    scrape_interval: 5s
    static_configs:
      - objetivos: ['localhost: 9090']
  - job_name: 'Mysql'
    static_configs:
      - objetivos: ['192.168.0.200:9104']
        etiquetas:
          instancia: '192.168. 0.200 '
  - nombre_trabajo:' redis '
    static_configs:
      - destinos: [' 192.168.0.200:9121 ']
        etiquetas:
          instancia:' 127.0.0.1 '


 

 El contenido de /etc/systemd/system/prometheus.service es el siguiente:

[Unidad]
Descripción = Prometheus
Wants = network-online.target
Después = network-online.target

[Servicio]
Usuario = prometheus
Grupo = prometheus
Tipo = simple
ExecStart = / usr / local / bin / prometheus \
    --config.file /etc/prometheus/prometheus.yml \
    --storage.tsdb.path / var / lib / prometheus / \
    --web.console.templates = / etc / prometheus / consoles \
    --web.console.libraries = / etc / prometheus / console_libraries

[Instalar]
WantedBy = multi-user.target
 

Guarde la configuración de reinicio:

vagrant @ vagrant: / htdocs / share $ sudo systemctl daemon-reload

vagrant @ vagrant: / htdocs / share $ sudo systemctl iniciar prometheus vagrant
@ vagrant: / htdocs / share $ sudo systemctl habilitar prometheus

 Abra la página de inicio: http://192.168.0.200:3000

Contraseña predeterminada: admin / admin

 http://192.168.0.200:9090/graph

 Agregar fuente de datos:

 Importe la plantilla Kanban por separado:

 

wget https://github.com/prometheus/mysqld_exporter/releases/download/v0.11.0/mysqld_exporter-0.11.0.linux-amd64.tar.gz

$ tar xvfz mysqld_exporter-0.11.0.linux-amd64.tar.gz

$ cd mysqld_exporter-0.11.0.linux-amd64/

$ sudo vim my.cnf

El contenido es el siguiente:

[cliente]
usuario =
contraseña de exportador = 123456
puerto = 3306

Después de guardar, ejecute:

nohup ./mysqld_exporter --config.my-cnf = "my.cnf" &


descargar:

wget https://github.com/oliver006/redis_exporter/releases/download/v0.13/redis_exporter-v0.13.l

Abrir la cremallera:

tar -xvf  redis_exporter-v0.13.linux-amd64.tar.gz

Descargue la plantilla prometheus-redis_rev1.json de redis de grafana:

wget  https://grafana.com/api/dashboards/763/revisions/1/download

Importe la plantilla json en grafana:

 

Inicie redis_exporter:

## 无密码
./redis_exporter redis//192.168.0.200:6379 &
## 有密码
./redis_exporter  -redis.addr 192.168.0.200:6379  -redis.password 123456 

 

Descarga my2.sql:

clon de git  https://github.com/john1337/my2Collector.git 

Una vez completada la descarga, importe la base de datos.

 Puede ver estos monitores en Kanban:

 

 

Supongo que te gusta

Origin blog.csdn.net/lchmyhua88/article/details/107664342
Recomendado
Clasificación