Monitoreo visual de Prometheus + Grafana [estado de Redis]

1. Instale Docker

Nota: Utilizo el script que escribí antes para instalar Docker. Si ya tiene Docker, omita este paso. Docker se instala para facilitar la implementación de la base de datos Redis. Si ya tiene una base de datos, puede omitir los dos primeros pasos.

Haga clic para obtener el script de instalación sin conexión de Docker

tar zxf docker20.10.14Install.tar.gz
cd docker20.10.14Install
bash install.sh

Verifique el estado de Docker como se muestra a continuación, lo que significa que no hay ningún problema:

systemctl status docker

Insertar descripción de la imagen aquí

2. Instale la base de datos de Redis (modo contenedor Docker)

1. Preparación previa:

docker pull redis:6.2.6
mkdir /home/software/redis/{
    
    data,logs} -p
chmod 777 /home/software/redis/logs

systemctl stop firewalld
systemctl disable firewalld
iptables -F

2. Crear archivo de configuración

cat > /home/software/redis/data/redis.conf << EOF
bind 0.0.0.0
port 6379
requirepass 123456
logfile /tmp/redis.log
save 60 1
EOF

2. Ejecute el contenedor:

docker run -itd --name redis \
	-v /home/software/redis/data:/data \
	-v /home/software/redis/logs:/tmp \
	-v /etc/localtime:/etc/localtime \
	-p 6379:6379  --restart=always \
	 redis:6.2.6 redis.conf

3. Pruebe si el contenedor se puede conectar.

docker exec -it redis redis-cli

127.0.0.1:6379> AUTH 123456
OK

Después de conectarse a la base de datos de Redis, ingrese la contraseña que configuramos y la conexión demuestra que no hay ningún problema, como se muestra a continuación:
Insertar descripción de la imagen aquí

3. Instale Prometeo

1. Sincronización de hora y zona horaria

timedatectl set-timezone Asia/Shanghai
yum -y install ntpdate
/usr/sbin/ntpdate -u ntp1.aliyun.com

Configurar el tiempo de sincronización de tareas programadas

echo "0 5 * * * /usr/sbin/ntpdate -u ntp1.aliyun.com >/dev/null &" >> /var/spool/cron/root
crontab -l

2. Instale Prometeo

wget https://github.com/prometheus/prometheus/releases/download/v2.42.0/prometheus-2.42.0.linux-amd64.tar.gz

tar zxf prometheus-2.42.0.linux-amd64.tar.gz 
mv prometheus-2.42.0.linux-amd64 /usr/local/prometheus

3. Configurar la gestión del sistema

cat > /usr/lib/systemd/system/prometheus.service << EOF
[Unit]

[Service]
ExecStart=/usr/local/prometheus/prometheus --config.file=/usr/local/prometheus/prometheus.yml
ExecReload=/bin/kill -HUP \$MAINPID

[Install]
WantedBy=multi-user.target
Alias=dbus-org.fedoraproject.FirewallD1.service
EOF

4. Inicie y configure el inicio automático al arrancar

systemctl enable prometheus --now
systemctl status prometheus

Insertar descripción de la imagen aquí
La pantalla es como se muestra arriba, lo que significa que no hay ningún problema con Prometheus. El puerto predeterminado es 9090. Podemos acceder a él con un navegador. Haga clic en > para ver las
métricas Statuspropias Targetsde Prometheus como se muestra a continuación:
Insertar descripción de la imagen aquí

4. Instale Grafana

1. Instalar Grafana

wget https://dl.grafana.com/enterprise/release/grafana-enterprise-9.4.1-1.x86_64.rpm
sudo yum install grafana-enterprise-9.4.1-1.x86_64.rpm -y

systemctl enable grafana-server.service --now

2. Verificación de la página WEB.
El puerto predeterminado es 3000. Cuando visite por primera vez, se le pedirá que restablezca la contraseña, como se muestra a continuación:
Insertar descripción de la imagen aquí
Insertar descripción de la imagen aquí

5. Proneteo y Grafana están relacionados

Insertar descripción de la imagen aquí
Insertar descripción de la imagen aquí
Insertar descripción de la imagen aquí

6. Instale redis_exporter

1. Instale redis_exporter

wget https://github.com/oliver006/redis_exporter/releases/download/v1.48.0/redis_exporter-v1.48.0.linux-amd64.tar.gz
tar zxf redis_exporter-v1.48.0.linux-amd64.tar.gz -C /usr/local
cd /usr/local
mv redis_exporter-v1.48.0.linux-amd64 redis_exporter

2. Configurar la gestión de systemd

cat > /usr/lib/systemd/system/redis_exporter.service << EOF
[Unit]
Description=redis_exporter Service
After=network.target

[Service]
Type=simple
# 注意指定Redis 主机+密码(根据当前环境指定)
ExecStart=/usr/local/redis_exporter/redis_exporter -redis.addr  16.32.15.115 -redis.password 123456
ExecReload=/bin/kill -HUP \$MAINPID
Restart=on-failure
RestartSec=30s

[Install]
WantedBy=multi-user.target
EOF

Iniciar y unirse al inicio automático al arrancar

systemctl enable redis_exporter --now
systemctl status  redis_exporter

Insertar descripción de la imagen aquí

El puerto predeterminado es 9121

netstat -anput |grep  9121

4. Especifique la información de redis_exporter en el archivo de configuración de Prometheus.

vim /usr/local/prometheus/prometheus.yml

  - job_name: "Redis_115"
    static_configs:
      - targets: ["16.32.15.115:9121"]

Después de agregar el archivo de configuración, use el comando para probar si hay algún problema con el formato.

cd  /usr/local/prometheus/
./promtool check config prometheus.yml

Reiniciar Prometeo

systemctl restart prometheus.service

7. Grafana agrega la plantilla de monitoreo de Redis

Aquí se utiliza el ID de plantilla de Redis: 11835,
haga clic 下方红圈地方>>import输入模板ID

Insertar descripción de la imagen aquí
Insertar descripción de la imagen aquí

La representación final es la siguiente:

Insertar descripción de la imagen aquí

Supongo que te gusta

Origin blog.csdn.net/weixin_45310323/article/details/132891038
Recomendado
Clasificación