Skip to content
Community

logo

VictoriaMetrics#

Chart Name Version App version
victoriametrics 0.30.0 v1.135.0

VictoriaMetrics is a fast, cost-effective and scalable monitoring solution and time series database.

It is designed to collect, store, and process real-time metrics, making it an excellent choice for monitoring applications, infrastructure, and business metrics. VictoriaMetrics can be used as a long-term remote storage for Prometheus or as a drop-in replacement for Prometheus with better performance and lower resource usage.

Key features: - High performance and resource efficiency - Excellent compression for time series data - Easy to operate and maintain - Horizontal scalability - Global query view - Long-term storage - Prometheus compatibility

Storage Configuration:

The example deployment uses emptyDir storage for universal compatibility. Data will be lost on pod restart.

For production use, configure persistent storage:

victoriametrics:
  victoria-metrics-single:
    server:
      persistentVolume:
        enabled: true
        size: 100Gi
        storageClass: "your-storage-class"

For additional configuration options including authentication, retention settings, and performance tuning, refer to the official VictoriaMetrics Helm chart documentation.


Looking for Commercial Support? LEARN MORE

Storage Requirements:

  • Testing/Evaluation: Uses emptyDir storage (data lost on restart) - works on any cluster
  • Production: Requires persistent volumes with a configured StorageClass

Network Access:

  • LoadBalancer service type is used for external access
  • Port 8428 for VictoriaMetrics HTTP API and web interface

Install template to k0rdent#

helm upgrade --install victoriametrics oci://ghcr.io/k0rdent/catalog/charts/kgst --set "chart=victoriametrics:0.30.0" -n kcm-system

Verify service template#

kubectl get servicetemplates -A
# NAMESPACE    NAME                            VALID
# kcm-system   victoriametrics-0-30-0          true

Deploy service template#

apiVersion: k0rdent.mirantis.com/v1beta1
kind: MultiClusterService
metadata:
  name: victoriametrics
spec:
  clusterSelector:
    matchLabels:
      group: demo
  serviceSpec:
    services:
    - template: victoriametrics-0-30-0
      name: victoriametrics
      namespace: victoriametrics
      values: |
        victoriametrics:
          victoria-metrics-single:
            server:
              service:
                type: LoadBalancer
                port: 8428

              # Disable persistent storage for universal compatibility
              # Data will be lost on pod restart - configure persistentVolume for production
              persistentVolume:
                enabled: false

              # Use emptyDir by default (data is ephemeral)
              emptyDir: {}

              resources:
                limits:
                  cpu: 500m
                  memory: 512Mi
                requests:
                  cpu: 200m
                  memory: 256Mi

              extraArgs:
                retentionPeriod: "7d"
                envflag.enable: "true"
                envflag.prefix: VM_
                loggerFormat: json