feat(mon/victoria-logs): add log storage with Grafana datasource

This commit is contained in:
2026-06-19 15:09:38 +03:00
parent 74b85e0f42
commit 268fa1c5af
3 changed files with 65 additions and 0 deletions
@@ -0,0 +1,17 @@
apiVersion: v1
kind: ConfigMap
metadata:
name: victoria-logs-grafana-datasource
namespace: monitoring
labels:
# Picked up automatically by the Grafana datasource sidecar (vmstack chart).
grafana_datasource: "1"
data:
victoria-logs-datasource.yaml: |
apiVersion: 1
datasources:
- name: VictoriaLogs
type: victoriametrics-logs-datasource
access: proxy
url: http://victoria-logs.monitoring.svc:9428
isDefault: false
@@ -0,0 +1,43 @@
apiVersion: helm.toolkit.fluxcd.io/v2
kind: HelmRelease
metadata:
name: victoria-logs-single
namespace: flux-system
spec:
chart:
spec:
chart: victoria-logs-single
version: 0.13.8
reconcileStrategy: ChartVersion
sourceRef:
kind: HelmRepository
name: victoria-metrics
namespace: flux-system
targetNamespace: monitoring
interval: 30m
install:
remediation:
retries: 3
upgrade:
remediation:
retries: 3
values:
server:
fullnameOverride: victoria-logs
retentionPeriod: "30d"
persistentVolume:
enabled: true
storageClassName: local-path
size: 20Gi
# NodePort so an external Alloy (e.g. the Talos DaemonSet) can push logs
# by IP, independent of DNS. In-cluster Grafana uses the ClusterIP DNS name.
service:
type: NodePort
nodePort: 30429
clusterIP: ""
resources:
requests:
cpu: 50m
memory: 128Mi
limits:
memory: 512Mi
@@ -66,6 +66,11 @@ spec:
grafana:
enabled: true
# VictoriaLogs datasource plugin (signed, from Grafana catalog).
# The datasource itself is provisioned via a sidecar-labelled ConfigMap
# (configmap-logs-datasource.yaml).
plugins:
- victoriametrics-logs-datasource
# Native Grafana login — independent of Authelia (which lives in Talos).
admin:
existingSecret: grafana-admin