Saltar al contenido

Uso de Beats para visualizar el monitoreo de Redis en Alibaba Cloud Elasticsearch

4 de enero de 2021

Este artículo proporciona instrucciones paso a paso para instalar y usar el complemento Beats proporcionado por Alibaba Cloud para implementar el monitoreo de Redis usando Alibaba Cloud Elasticsearch.

Publicado por ELK Geek

Por Liu Xiaoguo, un evangelista de la comunidad Elasticsearch en China, y editado por Lettie y Dayu

Redis se usa ampliamente por su facilidad de uso. Sin embargo, la administración del clúster y el servidor Redis podría ser un desafío. Por ejemplo, los fallos del disco o la memoria insuficiente pueden provocar fallos. Tales escenarios requieren la recopilación, el análisis y la supervisión de registros de Redis para administrar los servidores de Redis de manera eficaz.

Redis, la base de datos más popular

Redis es un almacenamiento de datos NoSQL muy rápido. Aunque se utiliza principalmente para el almacenamiento en caché, Redis también se aplica en una amplia gama de escenarios, incluida la representación gráfica y la búsqueda. Una biblioteca de cliente para Redis está disponible en los principales lenguajes de programación y se ofrece como un servicio administrado por los principales proveedores de servicios en la nube. En los últimos años, los desarrolladores de Stack Overflow han calificado a Redis como la base de datos más popular.

Preparación

Este artículo describe cómo recopilar los registros del servidor de Redis mediante el complemento Beats proporcionado por Alibaba Cloud e implementar el monitoreo visualizado a través del servicio Kibana de Alibaba Cloud Elasticsearch. Esto le dará una mejor comprensión de cómo funciona Redis.

Instale el servidor Redis en el entorno ECS de la nube de Alibaba

El repositorio de Remi proporciona la última versión de Redis. Por lo tanto, instale la última versión de Redis a través de YUM del repositorio de Remi.

Nota: El puerto predeterminado del servidor Redis es 6379. Antes de usarlo, habilite el grupo de seguridad en la instancia de ECS.

#####Install the Remi source by using the EPEL source#####
# yum -y install epel-release
# yum -y install http://rpms.remirepo.net/enterprise/remi-release-7.rpm
#####Install the Redis server by specifying --enablerepo
# yum --enablerepo=remi install -y redis

#####View the Redis server version########
# redis-cli --version
redis-cli 5.0.9

####Start the Redis server #######
# systemctl start redis
####Enable auto start upon system startup######
# systemctl enable redis
# systemctl status redis

####Perform a ping test###
# redis-cli ping
PONG
####View the Redis process####
# ps -ef | grep redis
redis    20777     1  0 11:18 ?        00:00:00 /usr/bin/redis-server 127.0.0.1:6379
root     20805 20430  0 11:23 pts/0    00:00:00 grep --color=auto redis

Instalar y configurar la ruta de recopilación de registros de Redis

La ruta predeterminada del archivo de configuración es /etc/redis.conf si Redis se instala a través de YUM. Ejecute el siguiente comando para definir el nombre de archivo de los registros de Redis:

bind 127.0.0.1
logfile /var/log/redis/redis-server.log

Notas:

Recomendado:  Inteligencia artificial, aprendizaje de máquinas, aprendizaje profundo y más

bind: la dirección IP de escucha de Redis.

logfile: el nombre del archivo de registro de Redis. Configúrelo en redis-server.log.

Ejecute el siguiente comando para reiniciar Redis:

 systemctl restart redis

Ejecute los siguientes comandos para probar Redis:

# redis-cli
127.0.0.1:6379> set name dayu
OK
127.0.0.1:6379> get name
"dayu"
127.0.0.1:6379> del  name
(integer) 1

Ejecute los comandos anteriores para establecer el valor de la clave denominada «dayu» en 1, recuperar el valor y luego eliminarlo. Presione Ctrl + C para salir de redis-cli.

Instalar Filebeat

El módulo Redis de Filebeat entrega registros de Redis a Elasticsearch y los visualiza en Kibana. Establece la configuración predeterminada para Filebeat (incluida la ruta del archivo de registro y el punto final del servidor de Redis), establece la canalización de extracción para resolver automáticamente los registros de Redis en los campos de Elasticsearch e implementa capacidades de visualización y paneles para facilitar el análisis de registros en Kibana.

Acceda a la consola de Kibana y haga clic en el icono de Kibana en la esquina superior izquierda.

1

Haga clic en «Agregar datos de registro».

2

Comienza el proceso de instalación. Ejecute los comandos que se muestran en la figura para instalar Filebeat.

 curl -L -O https://artifacts.elastic.co/downloads/beats/filebeat/filebeat-6.7.0-x86_64.rpm
# sudo rpm -vi filebeat-6.7.0-x86_64.rpm

Configure el archivo filebeat.yml.

setup.kibana:

  # Kibana Host
  # Scheme and port can be left out and will be set to the default (http and 5601)
  # In case you specify and additional path, the scheme is required: http://localhost:5601/path
  # IPv6 addresses should always be defined as: https://[2001:db8::1]:5601
  host: "https://es-cn-0pp19tb17****jc8p.kibana.elasticsearch.aliyuncs.com:5601"

output.elasticsearch:
  # Array of hosts to connect to.
  hosts: ["es-cn-0pp19tb17****jc8p.elasticsearch.aliyuncs.com:9200"]

  # Enabled ilm (beta) to use index lifecycle management instead daily indices.
  #ilm.enabled: false

  # Optional protocol and basic auth credentials.
  #protocol: "https"
  username: "elastic"
  password: "Elastic@432"

Monitoreo completo de Redis sin ningún trabajo de configuración. Si necesita personalizar la configuración, ejecute el siguiente comando para habilitar y configurar el módulo Redis:

# sudo filebeat modules enable redis
Enabled redis

En Alibaba Cloud, ejecute los siguientes comandos para iniciar Filebeat.

Recomendado:  Cómo Big Data está cambiando la industria de la gestión de eventos

Nota: Al instalar o actualizar Filebeat o después de habilitar un nuevo módulo, ejecute el comando de configuración.

# sudo filebeat setup
# sudo service filebeat start
Starting filebeat (via systemctl):                         [  OK  ]

Vea los registros de Redis en el panel de Kibana.

3

La siguiente figura muestra la interfaz de descripción general de Redis.

4

Instalar Metricbeat

Utilice el módulo Redis de Metricbeat para recopilar datos periódicamente del servidor Redis.

Metricbeat consta de módulos y conjuntos de métricas. Los módulos de Metricbeat definen la lógica básica para recopilar datos de servicios específicos, como Redis y MySQL. El módulo de Redis especifica los detalles del servicio, como la conexión del servicio, la frecuencia de recopilación de métricas y las métricas que se recopilarán.

Cada módulo tiene uno o más conjuntos de métricas que utiliza para adquirir y construir datos. En lugar de recopilar cada métrica como un evento separado, un conjunto de métricas recupera una lista de múltiples métricas relacionadas en una sola solicitud que realiza a un sistema remoto. Por ejemplo, el módulo de Redis proporciona un conjunto de métricas de información que recopila información y estadísticas de Redis ejecutando el comando INFO y analizando la salida.

5

Instale Metricbeat. Primero, inicie Kibana.

6

Haga clic en Agregar datos de métricas y realice las operaciones que se indican en la siguiente figura.

7

Ejecute los siguientes comandos para instalar Metricbeat:

# curl -L -O https://artifacts.elastic.co/downloads/beats/metricbeat/metricbeat-6.7.0-x86_64.rpm
# sudo rpm -vi metricbeat-6.7.0-x86_64.rpm

Si es necesario, ejecute los siguientes comandos para configurar el módulo Redis de Metricbeat:

# vim /etc/metricbeat/metricbeat.yml
setup.kibana:

   host: "https://es-cn-4591jumei****1zp5.kibana.elasticsearch.aliyuncs.com:5601"
output.elasticsearch:
  # Array of hosts to connect to.
  hosts: ["es-cn-4591jumei****1zp5.elasticsearch.aliyuncs.com:9200"]

  # Enabled ilm (beta) to use index lifecycle management instead daily indices.
  #ilm.enabled: false
  #protocol: "https"
  username: "elastic"
  password: "Elastic@432"

Inicie el módulo de Redis.

# sudo metricbeat modules enable redis
Enabled redis

#####Start the Metricbeat service########
# sudo metricbeat setup
# sudo service metricbeat start

Vaya al panel de Kibana para ver las métricas de Redis.

Recomendado:  Las principales tendencias de análisis de datos que regirán en la próxima década

8

Resumen

Redis es una parte importante de muchos sistemas empresariales. Los ingenieros de DevOps deben asegurarse de que funcione correctamente. La información de análisis de métricas obtenida de los registros de Redis mejora las capacidades de resolución de problemas, por ejemplo, al resolver alertas mediante configuraciones. Más importante aún, estas métricas ayudan a los empleados a comprender fácilmente los problemas clave que afectan la estabilidad de la aplicación.

Cuando un problema clave afecta la estabilidad de la aplicación, los registros se transmiten a Alibaba Cloud Elastic Stack para un análisis rápido. Esto permite una rápida resolución de problemas y restaura el sistema con una mínima interrupción de la aplicación.

Declaración: Este artículo es una revisión autorizada del artículo «Beats: Use Elastic Stack para monitorear Redis» basado en el entorno de servicio de Alibaba Cloud.

Fuente: (en chino) https://elasticstack.blog.csdn.net/

9

Alibaba Cloud Elastic Stack es completamente compatible con Elasticsearch de código abierto y tiene nueve capacidades únicas.