새소식

반응형
Redis

[Redis][MSA] Redis-Exporter를 통한 모니터링(Grafana, Prometheus)

  • -
반응형

 

출처 :https://www.linkedin.com/posts/zeinab-tizkar_redis-redisabrexporter-exporter-activity-7166142794481233921-0YiJ?utm_source=share&utm_medium=member_desktop

 

서비스 모니터링은 서비스를 운영하는데 매우 중요한 요소이다.

Redis는 캐시 용도로 사용되기도 하지만, 빠른 접근이 필요하지만 다소 중요하지 않는 정보를 저장하는 저장소로도 사용이 될 수 있다.

이러한 경우에는 데이터가 저장되기 때문에 redis 장애 시 시스템에 문제가 생길 수도 있다.

이러한 상황을 빠르게 탐지하고, 사전에 차단하기 위해서는 모니터링 시스템이 필요하다.

 

기본 구성은 Prometheus, Grafana를 활용한다. 

 

Redis Exporter 설치

prometheus doc의 다양한 exporter : https://prometheus.io/docs/instrumenting/exporters/

redis-exporter : https://github.com/oliver006/redis_exporter

 

바이너리 다운 및 준비

wget https://github.com/oliver006/redis_exporter/releases/download/v1.24.0/redis_exporter-v1.24.0.linux-amd64.tar.gz # Redis Exporter gzip 파일
tar -zxvf redis_exporter-v1.24.0.linux-amd64.tar.gz # 압축해제
ln -s ./redis_exporter-v1.24.0.linux-amd64/ redis_exporter # 폴더명 수정

 

서비스 등록

/etc/systemd/system/redis_exporter.service

[Unit]
Description=Redis Exporter
Wants=network-online.target
After=network-online.target

[Service]
User=root
Group=root
Type=simple
ExecStart={{$PATH}}/redis_exporter/redis_exporter \
    -web.listen-address ":9121" \
    -redis.addr "redis://localhost:6379" \
    -redis.password "redis-pas"

[Install]
WantedBy=multi-user.target

 

 

실행 명령어

sudo systemctl daemon-reload
sudo systemctl start redis_exporter
sudo systemctl status redis_exporter
sudo systemctl enable redis_exporter

 

 

Prometheus target 등록

각 환경에 맞는 ip 주소 입력 

scrape_configs:
  ## config for the multiple Redis targets that the exporter will scrape
  - job_name: 'redis_exporter_targets'
    static_configs:
      - targets:
        - redis://localhost:6379
        - redis://127.0.0.2:6379
        - redis://localhost:6380
        - redis://localhost:6381
    metrics_path: /scrape
    relabel_configs:
      - source_labels: [__address__]
        target_label: __param_target
      - source_labels: [__param_target]
        target_label: instance
      - target_label: __address__
        replacement: localhost:9121

 

grafana datasource 등록

redis의 정보를 prometheus를 통해서 가져와서 화면을 구성하는 dashboard가 있고(위에 케이스)

추가적으로 grafana에 등록된 redis 정보를 가져와 화면을 구성하는 dashboard가 있다(아래 케이스)

 

아래의 단계를 거쳐서 할 수 있다. 

  • grafana redis plugin 설치
  • grafana redis datasource 추가

 

반응형

'Redis' 카테고리의 다른 글

[Redis] bulk insert(lua script, pipeline)  (0) 2024.08.30
[Redis] Redis - Cache  (0) 2024.04.26
[Redis] Redis 기본 개념  (0) 2024.03.31
[Redis] Redis 환경 구성(서버 설정 변경)  (0) 2024.03.19
[Redis] Redis 설치(in Linux)  (0) 2024.03.15
Contents

포스팅 주소를 복사했습니다

이 글이 도움이 되었다면 공감 부탁드립니다.