Computer >> 컴퓨터 >  >> 프로그래밍 >> Redis

Redis Enterprise 모니터링 옵션 총정리: 내장 기능부터 Prometheus, REST API까지

새 직장에 입사한 첫날, 용량 계획(capacity planning), DNS 이슈, 지리적 분산(geo-distribution), .NET 개발까지 이틀 치 계획을 꼼꼼히 준비하고 첫 고객 미팅에 나갔는데, 첫 질문이 "클러스터와 데이터베이스를 어떻게 효율적으로 모니터링할 수 있나요?"였다면 어떤 기분일까요?

16년의 운영 경력을 가진 저 역시 충분히 준비되어 있다고 생각했습니다. 하지만 현실은 달랐죠. "배우면 배울수록 내가 얼마나 모르는지 깨닫게 된다"는 말처럼요. 이제 새로운 소프트웨어를 접할 때마다 가장 먼저 떠오르는 질문은 "이 소프트웨어가 프로덕션 환경에서 제대로 작동하는지 어떻게 보장할 수 있을까?"입니다. 다시 말해, 어떻게 모니터링해야 하는가 하는 것입니다.

이런 관점에서 Redis Enterprise의 모니터링 옵션을 정리해 보았습니다. 시스템에 내장된 모니터링 기능부터 많은 조직에 최적의 선택인 Prometheus Metrics Exporter, 그리고 서드파티 모니터링 시스템과 가장 유연하게 통합할 수 있는 REST API까지 다룹니다. 이 글은 단순히 Redis Enterprise를 운영하는 데 그치지 않고, 그 완벽한 성능을 온전히 누리고 싶은 모든 운영 담당자분들께 바칩니다.

Redis Enterprise의 내장 모니터링 기능

Redis 모니터링을 시작하기에 가장 좋은 출발점은 Redis Enterprise 클러스터 관리 UI의 모니터링 콘솔입니다. 시각적으로 뛰어나고 별도의 설치나 설정이 필요 없기 때문입니다. '분(minute)' 단위 간격으로 거의 실시간에 가까운 확인이 가능하며, 5분, 1시간, 하루, 일주일, 한 달, 1년 단위로도 전환할 수 있습니다. UI는 클러스터 전체, 각 클러스터 노드, 각 데이터베이스별 지표를 각각 별도 화면에서 제공합니다.

Redis Enterprise 모니터링 옵션 총정리: 내장 기능부터 Prometheus, REST API까지

Redis Enterprise 클러스터 관리 UI 모니터링 콘솔은 클러스터, 노드, 데이터베이스 지표를 각각 별도 화면에서 제공합니다.

또한 Redis Enterprise는 알림(Alert) 메커니즘도 갖추고 있습니다. 클러스터와 각 데이터베이스에 대해 개별적으로 알림을 설정할 수 있으며, 알림은 관리 UI의 해당 페이지에 표시됩니다(클러스터 알림은 Cluster 페이지에 표시되는 식). 아래 그림과 같이 SMTP를 통해 이메일로 알림을 받도록 설정할 수도 있습니다.

Redis Enterprise 모니터링 옵션 총정리: 내장 기능부터 Prometheus, REST API까지

제공되는 지표와 알림 세트에는 주요 핵심 지표들이 모두 포함되어 있어, 설치를 마친 후 몇 분 만에 Redis Enterprise 모니터링을 시작할 수 있습니다. 하지만 더 많은 것이 필요하다면 어떻게 해야 할까요? 특히 회사의 기존 모니터링 인프라와 통합하고 싶다면? 바로 그 지점에서 Prometheus와 Grafana가 등장합니다.

Prometheus Metrics Exporter

PrometheusGrafana는 세계적으로 유명한 조합으로, 함께 현대적인 모니터링 도구 중 가장 신뢰할 수 있는 솔루션을 만들어냅니다. Redis Enterprise 클러스터 소프트웨어에는 Prometheus 메트릭 익스포터(exporter)가 포함되어 있어, 모든 모니터링 통합에서 가장 어려운 작업인 적절한 메트릭 수집이 자동으로 처리됩니다.

덕분에 Prometheus와 Grafana의 설치 및 구성도 빠르고 간편합니다. Redis 공식 문서에는 Prometheus 연동 방법, 내보내지는 메트릭의 전체 목록, 기본 Grafana 대시보드에 대한 안내가 포함되어 있습니다. 메트릭은 노드, 데이터베이스, 샤드(shard), 프록시 수준에서 노출되며, 알림은 Prometheus AlertManager에서 설정하여 이메일, Slack, PagerDuty 등 다양한 채널로 편리하게 전달할 수 있습니다.

Redis Enterprise 모니터링 옵션 총정리: 내장 기능부터 Prometheus, REST API까지

많은 기업에게 Prometheus와 Grafana는 Redis를 모니터링하는 최선의 방법이자, 다양한 현대적 하드웨어와 소프트웨어를 모니터링하는 데에도 탁월한 선택입니다.

더욱 중요한 점은, Prometheus Metrics Exporter를 사용하면 Prometheus 익스포터에서 메트릭을 스크랩(scrape)할 수 있는 다양한 모니터링 플랫폼을 Redis Enterprise에 연결할 수 있다는 것입니다. 예를 들어 New Relic은 최근 New Relic과 Prometheus 익스포터를 통합하는 방법을 다룬 블로그 게시물을 발행했습니다.

REST API

더 높은 유연성이 필요한 기업이라면 Redis Enterprise REST API가 좋은 선택입니다. REST API는 통계 지표와 알림을 조회하는 기능을 비롯해 폭넓은 기능을 제공합니다. 사내 표준이든 업계 표준이든, 서드파티 모니터링 시스템과 통합하는 가장 범용적이고 유연한 방법입니다. REST API 문서는 Redis Enterprise 소프트웨어가 설치된 각 노드의 usr/share/doc/redis/rlec_rest_api.tar.gz 디렉터리에서 확인할 수 있습니다.

Redis Enterprise 모니터링 옵션 총정리: 내장 기능부터 Prometheus, REST API까지

REST API 활용의 좋은 예로는 Splunk 마켓플레이스에서 제공되는 Redis Enterprise Add-On for Splunk가 있으며, AppDynamics Exchange에서 제공되는 AppDynamics 플러그인도 훌륭한 사례입니다.

결론

종합해 보면, Redis Enterprise는 강력한 모니터링 기능을 갖추고 있어 고객이 상황에 맞는 모니터링 솔루션을 자유롭게 선택할 수 있습니다.

개인적으로는 내장 모니터링 기능만으로 부족하다면 Prometheus와 Grafana 조합이 최선의 선택이라고 생각합니다. 널리 사용되는 다양한 엔터프라이즈 모니터링 시스템과 연동할 수 있기 때문입니다. 만약 이 방식이 조직에 적합하지 않다면 REST API를 활용해 사실상 모든 서드파티 모니터링 시스템과 통합할 수 있습니다. 그마저도 어렵다면, 이제 창의력을 발휘할 때입니다!