VictoriaMetrics

지원 버전: VictoriaMetrics 1.x 마지막 업데이트: 2026년 2월 20일

목차

소개

VictoriaMetrics는 고성능, 비용 효율적인 시계열 데이터베이스 및 모니터링 솔루션입니다. Prometheus와 완벽하게 호환되면서도 더 나은 압축률, 쿼리 성능, 확장성을 제공합니다.

주요 특징

특징
설명

높은 압축률

Prometheus 대비 최대 7배 더 효율적인 데이터 압축

빠른 쿼리 성능

복잡한 쿼리에서 Prometheus보다 최대 20배 빠른 성능

수평적 확장

클러스터 모드에서 무제한 확장 가능

낮은 운영 오버헤드

단일 바이너리로 배포, 최소한의 설정

Prometheus 호환

PromQL, Remote Write/Read API 완벽 지원

멀티테넌시

여러 팀/프로젝트를 위한 격리된 환경

장기 저장

효율적인 장기 메트릭 저장 및 다운샘플링

VictoriaMetrics vs Prometheus

spinner
항목
Prometheus
VictoriaMetrics

아키텍처

단일 노드

단일/클러스터

수평 확장

Thanos/Cortex 필요

네이티브 지원

디스크 사용량

기준

~70% 절감

쿼리 속도

기준

2-20x 빠름

메모리 사용량

높음

낮음

카디널리티 한계

~10M 시계열

~100M+ 시계열

쿼리 언어

PromQL

MetricsQL (상위 호환)

아키텍처 옵션

VictoriaMetrics는 두 가지 배포 모드를 제공합니다:

선택 가이드

spinner

단일 노드 모드

단일 노드 모드(vmsingle)는 소규모~중규모 환경에 적합합니다.

특징

  • 단일 바이너리로 모든 기능 제공

  • 설정 및 운영이 간단

  • 초당 수백만 샘플 처리 가능

  • 수십억 개의 활성 시계열 지원

StatefulSet 배포

주요 엔드포인트

엔드포인트
설명

/api/v1/write

Prometheus Remote Write

/api/v1/query

인스턴트 쿼리

/api/v1/query_range

범위 쿼리

/api/v1/series

시리즈 메타데이터

/api/v1/labels

레이블 목록

/api/v1/label/{name}/values

레이블 값 목록

/vmui

내장 UI

/metrics

자체 메트릭

클러스터 모드

대규모 환경을 위한 확장 가능한 클러스터 구성입니다.

아키텍처

spinner

구성 요소

구성 요소
역할
확장 방법

vminsert

쓰기 요청 라우팅

수평 확장 (Deployment)

vmstorage

데이터 저장

수평 확장 (StatefulSet)

vmselect

쿼리 처리

수평 확장 (Deployment)

vmstorage 배포

vminsert 배포

vmselect 배포

vmagent

vmagent는 메트릭 수집 및 전달을 위한 경량 에이전트입니다.

주요 기능

  • Prometheus scrape 설정 호환

  • 여러 Remote Write 대상 지원

  • 데이터 버퍼링 및 재전송

  • 낮은 리소스 사용량

  • 레이블 재작성 및 필터링

배포

vmagent 샤딩

대규모 환경에서 vmagent 간 스크랩 대상을 분산합니다:

vmalert

vmalert는 알림 규칙을 평가하고 알림을 생성하는 구성 요소입니다.

배포

MetricsQL

MetricsQL은 VictoriaMetrics의 쿼리 언어로, PromQL의 상위 호환입니다.

PromQL 호환성

모든 PromQL 쿼리는 MetricsQL에서 동작합니다:

MetricsQL 확장 기능

유용한 MetricsQL 쿼리

Helm 설치

victoria-metrics-k8s-stack

values.yaml (단일 노드)

values.yaml (클러스터)

장기 저장소 구성

보존 기간 설정

객체 스토리지 백업

다운샘플링

VictoriaMetrics Enterprise에서는 다운샘플링을 지원합니다. 오픈소스 버전에서는 기록 규칙을 사용합니다.

기록 규칙을 사용한 다운샘플링

성능 최적화

메모리 최적화

쿼리 최적화

쓰기 최적화

모범 사례

프로덕션 체크리스트

  1. 리소스 할당

  2. 고가용성

    • 클러스터 모드에서 replicationFactor=2 설정

    • vmselect, vminsert 최소 2개 복제본

    • vmstorage 최소 3개 복제본

  3. 모니터링

  4. 백업

    • vmbackup으로 정기 백업

    • 스냅샷 기능 활용

마이그레이션 가이드

Prometheus에서 VictoriaMetrics로 마이그레이션:

문제 해결

일반적인 문제

1. 높은 메모리 사용량

2. 느린 쿼리

3. 디스크 공간 부족

디버깅 명령어

참고 자료

퀴즈

이 장에서 배운 내용을 테스트하려면 VictoriaMetrics 퀴즈를 풀어보세요.

마지막 업데이트