Files
devops-infra-helm-charts-gcp/helm-overrides/k8s-admin-prd-ase1/victoriametrics-select/custom-values.yaml
T
2026-08-26 03:39:42 +05:30

469 lines
15 KiB
YAML

# Default values for victoria-metrics.
# This is a YAML-formatted file.
# Declare variables to be passed into your templates.
global:
# -- Image pull secrets, that can be shared across multiple helm charts
imagePullSecrets: []
image:
# -- Image registry, that can be shared across multiple helm charts
registry: ""
vm:
# -- Image tag for all vm charts
tag: ""
# -- Openshift security context compatibility configuration
compatibility:
openshift:
adaptSecurityContext: "auto"
# -- k8s cluster domain suffix, uses for building storage pods' FQDN. Details are [here](https://kubernetes.io/docs/tasks/administer-cluster/dns-custom-nameservers/)
cluster:
dnsDomain: cluster.local.
# -- Print information after deployment
printNotes: true
# -- use SRV discovery for storageNode and selectNode flags for enterprise version
autoDiscovery: false
common:
# -- common for all components image configuration
image:
tag: ""
serviceAccount:
# -- Specifies whether a service account should be created
create: true
# -- The name of the service account to use.
# If not set and create is true, a name is generated using the fullname template
name:
# -- Service account labels
extraLabels: {}
# -- Service account annotations
annotations: {}
# -- mount API token to pod directly
automountToken: true
# -- Override chart name
nameOverride: ""
extraSecrets:
[]
# - name: secret-remote-storage-keys
# annotations: []
# labels: []
# data: |
# credentials: b64_encoded_str
# -- Add extra specs dynamically to this chart
extraObjects: []
vmselect:
# -- Enable deployment of vmselect component. Can be deployed as Deployment(default) or StatefulSet
enabled: true
splitService: true
externalService:
enabled: true
name: vmselect-infra-prd-test-proxy
clusternativeService:
enabled: false
# -- Override default `app` label name
name: ""
image:
# -- Image registry
registry: ""
# -- Image repository
repository: asia-southeast1-docker.pkg.dev/meesho-devops-admin-0622/admin/sre/vmselect
# override Chart.AppVersion
tag: v1.133.0-cluster
# -- Image pull policy
pullPolicy: IfNotPresent
# -- Variant of the image to use.
# e.g. cluster, enterprise-cluster
variant: cluster
# -- Specify pod lifecycle
lifecycle: {}
ports:
# -- VMSelect http port name
name: "http"
# -- Name of Priority Class
priorityClassName: ""
# -- Overrides the full name of vmselect component
fullnameOverride: vm-select-infra-prd
# -- Suppress rendering `--storageNode` FQDNs based on `vmstorage.replicaCount` value. If true suppress rendering `--storageNodes`, they can be re-defined in extraArgs
suppressStorageFQDNsRender: false
# -- Pod's termination grace period in seconds
terminationGracePeriodSeconds: 60
# -- Extra command line arguments for vmselect component
extraArgs:
envflag.enable: true
envflag.prefix: VM_
loggerFormat: json
httpListenAddr: :8481
clusternativeListenAddr: ":8401"
dedup.minScrapeInterval: 60s
search.maxSamplesPerQuery: "1000000000000"
search.maxQueryDuration: 300s
search.maxQueueDuration: 60s
search.maxSeries: "10000000000"
search.maxExportSeries: "1000000000"
search.maxUniqueTimeseries: "1000000000000"
search.maxQueryLen: "1000000"
loggerTimezone: "Asia/Kolkata"
storageNode:
- "vm-storage-infra-prd-0.vm-storage-infra-prd.victoriametrics.svc:8401"
- "vm-storage-infra-prd-1.vm-storage-infra-prd.victoriametrics.svc:8401"
- "vm-storage-infra-prd-2.vm-storage-infra-prd.victoriametrics.svc:8401"
- "vm-storage-infra-prd-3.vm-storage-infra-prd.victoriametrics.svc:8401"
- "vm-storage-infra-prd-4.vm-storage-infra-prd.victoriametrics.svc:8401"
- "vmselect-mqkafka-prd-clusternative.victoriametrics.svc.clusterset.local:8401"
# - "vm-select-central-prd-cluster-tcp.victoriametrics.svc.clusterset.local:8401"
- "vm-select-central-a-prd-cluster-tcp.victoriametrics.svc.clusterset.local:8401"
# - "vm-select-demand-prd-cluster-tcp.victoriametrics.svc.clusterset.local:8401"
- "vm-select-demand-a-prd-cluster-tcp.victoriametrics.svc.clusterset.local:8401"
- "vm-select-datascience-prd-cluster-tcp.victoriametrics.svc.clusterset.local:8401"
# - "vm-select-dataengg-prd-cluster-tcp.victoriametrics.svc.clusterset.local:8401"
- "vm-select-dataengg-a-prd-cluster-tcp.victoriametrics.svc.clusterset.local:8401"
# - "vm-select-farmiso-prd-cluster-tcp.victoriametrics.svc.clusterset.local:8401"
- "vm-select-farmiso-a-prd-cluster-tcp.victoriametrics.svc.clusterset.local:8401"
# - "vm-select-supply-prd-cluster-tcp.victoriametrics.svc.clusterset.local:8401"
- "vm-select-supply-a-prd-cluster-tcp.victoriametrics.svc.clusterset.local:8401"
# - "vm-select-dsgpu-prd-cluster-tcp.victoriametrics.svc.clusterset.local:8401"
- "vm-select-dsgpu-a-prd-cluster-tcp.victoriametrics.svc.clusterset.local:8401"
# -- StatefulSet/Deployment annotations
annotations:
prometheus.io/scrape: "true"
prometheus.io/port: "8481"
# -- StatefulSet/Deployment additional labels
extraLabels:
bu: "infra"
team: "infra-sre"
service: "vm-select-infra-prd"
env: "prd"
priority: "p0"
type: "vmselect"
# -- Pod's additional labels
podLabels:
bu: "infra"
team: "infra-sre"
service: "vm-select-infra-prd"
env: "prd"
priority: "p0"
type: "vmselect"
# -- Additional environment variables (ex.: secret tokens, flags). Check [here](https://docs.victoriametrics.com/victoriametrics/#environment-variables) for details.
env: []
# -- Specify alternative source for env variables
envFrom: []
#- configMapRef:
# name: special-config
# -- Readiness & Liveness probes
probe:
# -- VMSelect readiness probe
readiness:
httpGet: {}
initialDelaySeconds: 5
periodSeconds: 15
timeoutSeconds: 5
failureThreshold: 3
# -- VMSelect liveness probe
liveness:
tcpSocket: {}
initialDelaySeconds: 5
periodSeconds: 15
timeoutSeconds: 5
failureThreshold: 3
# -- VMSelect startup probe
startup: {}
horizontalPodAutoscaler:
# -- Use HPA for vmselect component
enabled: true
# -- Maximum replicas for HPA to use to to scale the vmselect component
maxReplicas: 80
# -- Minimum replicas for HPA to use to scale the vmselect component
minReplicas: 10
# -- Metric for HPA to use to scale the vmselect component
metrics:
- type: Resource
resource:
name: cpu
target:
type: Utilization
averageUtilization: 60
- type: Resource
resource:
name: memory
target:
type: Utilization
averageUtilization: 60
# -- Behavior settings for scaling by the HPA
behavior: {}
# -- Additional hostPath mounts
extraHostPathMounts:
[]
# - name: certs-dir
# mountPath: /etc/kubernetes/certs
# subPath: ""
# hostPath: /etc/kubernetes/certs
# readOnly: true
# -- Extra Volumes for the pod
extraVolumes:
[]
# - name: example
# configMap:
# name: example
# -- Extra Volume Mounts for the container
extraVolumeMounts:
[]
# - name: example
# mountPath: /example
# -- Extra containers to run in a pod with vmselect
extraContainers:
[]
# - name: config-reloader
# image: reloader-image
# -- Init containers for vmselect
initContainers:
[]
# - name: example
# image: example-image
# -- See `kubectl explain poddisruptionbudget.spec` for more. Details are [here](https://kubernetes.io/docs/tasks/run-application/configure-pdb/)
podDisruptionBudget:
# -- See `kubectl explain poddisruptionbudget.spec` for more. Details are [here](https://kubernetes.io/docs/tasks/run-application/configure-pdb/)
enabled: true
minAvailable: 1
# maxUnavailable: 1
labels: {}
# -- Array of tolerations object. Details are [here](https://kubernetes.io/docs/concepts/configuration/assign-pod-node/)
tolerations:
- key: "dedicated"
operator: "Equal"
value: "vmselect-c3"
effect: "NoSchedule"
# -- Pod's node selector. Details are [here](https://kubernetes.io/docs/concepts/scheduling-eviction/assign-pod-node/#nodeselector)
nodeSelector:
dedicated: "vmselect-c3"
# -- Pod affinity
affinity: {}
# -- Pod topologySpreadConstraints
topologySpreadConstraints:
- maxSkew: 1
topologyKey: topology.kubernetes.io/zone
whenUnsatisfiable: ScheduleAnyway
labelSelector:
matchLabels:
type: vmselect
- maxSkew: 1
topologyKey: kubernetes.io/hostname
whenUnsatisfiable: ScheduleAnyway
labelSelector:
matchLabels:
type: vmselect
# -- Pod's annotations
podAnnotations:
prometheus.io/scrape: "true"
prometheus.io/port: "8481"
# -- Count of vmselect pods
replicaCount: 2
# -- Container workdir
containerWorkingDir: ""
# -- Resource object. Details are [here](https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/)
resources:
# limits:
# cpu: 50m
# memory: 64Mi
requests:
cpu: 80
memory: 315Gi
# -- Pod's security context. Details are [here](https://kubernetes.io/docs/tasks/configure-pod-container/security-context/)
securityContext:
enabled: false
# -- Pod's security context. Details are [here](https://kubernetes.io/docs/tasks/configure-pod-container/security-context/)
podSecurityContext:
enabled: false
# -- Cache root folder
cacheMountPath: /cache
service:
# -- Create VMSelect service
enabled: true
# -- Service annotations
annotations: {}
# -- Service labels
labels: {}
# -- Service ClusterIP
clusterIP: ""
# -- Service external IPs. Details are [here](https://kubernetes.io/docs/concepts/services-networking/service/#external-ips)
externalIPs: []
# -- Extra service ports
extraPorts: []
# -- Service load balancer IP
loadBalancerIP: ""
# -- Load balancer source range
loadBalancerSourceRanges: []
# -- Service port
servicePort: 8481
# -- Target port
targetPort: http
# -- Service type
type: ClusterIP
# -- Health check node port for a service. Check [here](https://kubernetes.io/docs/tasks/access-application-cluster/create-external-load-balancer/#preserving-the-client-source-ip) for details
healthCheckNodePort: ""
# -- Service external traffic policy. Check [here](https://kubernetes.io/docs/tasks/access-application-cluster/create-external-load-balancer/#preserving-the-client-source-ip) for details
externalTrafficPolicy: ""
# -- Service IP family policy. Check [here](https://kubernetes.io/docs/concepts/services-networking/dual-stack/#services) for details.
ipFamilyPolicy: ""
# -- List of service IP families. Check [here](https://kubernetes.io/docs/concepts/services-networking/dual-stack/#services) for details.
ipFamilies: []
# -- Traffic Distribution. Check [Traffic distribution](https://kubernetes.io/docs/concepts/services-networking/service/#traffic-distribution)
trafficDistribution: ""
ingress:
# -- Enable deployment of ingress for vmselect component
enabled: false
# -- Ingress annotations
annotations:
nginx.ingress.kubernetes.io/force-ssl-redirect: "false"
nginx.ingress.kubernetes.io/ssl-redirect: "false"
# -- Ingress extra labels
extraLabels: {}
# -- Array of host objects
hosts:
- name: vm-select-infra.prd.meesho.int
path: /
port: http
# -- Array of TLS objects
tls: []
# - secretName: vmselect-ingress-tls
# hosts:
# - vmselect.local
# -- Ingress controller class name
ingressClassName: contour-internal-0
# -- Ingress path type
pathType: Prefix
route:
# -- Enable deployment of HTTPRoute for select component
enabled: false
# -- HTTPRoute annotations
annotations: {}
# -- HTTPRoute extra labels
labels: {}
# -- HTTPGateway objects refs
parentRefs: []
# -- Array of hostnames
hostnames: []
# -- Extra rules to prepend to route. This is useful when working with annotation based services.
extraRules: []
# -- Filters for a default rule in HTTPRoute
filters: []
# -- Matches for a default rule in HTTPRoute
matches:
- path:
type: PathPrefix
value: '{{ dig "extraArgs" "http.pathPrefix" "/select" .Values.vmselect }}'
# -- vmselect mode: deployment, daemonSet
mode: deployment
# -- [K8s Deployment](https://kubernetes.io/docs/concepts/workloads/controllers/deployment/) specific variables
deployment:
spec:
# -- VMSelect strategy
strategy: {}
# rollingUpdate:
# maxSurge: 25%
# maxUnavailable: 25%
# type: RollingUpdate
# -- [K8s StatefulSet](https://kubernetes.io/docs/concepts/workloads/controllers/statefulset/) specific variables
statefulSet:
enabled: false
spec:
# -- Deploy order policy for StatefulSet pods
podManagementPolicy: OrderedReady
# -- Empty dir configuration if persistence is disabled
emptyDir: {}
persistentVolume:
# -- Create/use Persistent Volume Claim for vmselect component. Empty dir if false. If true, vmselect will create/use a Persistent Volume Claim
enabled: false
# -- Override Persistent Volume Claim name
name: ""
# -- Array of access mode. Must match those of existing PV or dynamic provisioner. Details are [here](https://kubernetes.io/docs/concepts/storage/persistent-volumes/)
accessModes:
- ReadWriteOnce
# -- Persistent volume annotations
annotations: {}
# -- Persistent volume extra labels
extraLabels: {}
# -- Existing Claim name. Requires vmselect.persistentVolume.enabled: true. If defined, PVC must be created manually before volume will be bound
existingClaim: ""
# -- Size of the volume. Better to set the same as resource limit memory property
size: 2Gi
# -- Mount subpath
subPath: ""
serviceMonitor:
# -- Enable deployment of Service Monitor for vmselect component. This is Prometheus operator object
enabled: false
# -- Target namespace of ServiceMonitor manifest
namespace: ""
# -- Service Monitor labels
extraLabels: {}
# -- Service Monitor annotations
annotations: {}
# -- Basic auth params for Service Monitor
basicAuth: {}
# Commented. Prometheus scare interval for vmselect component
# interval: 15s
# Commented. Prometheus pre-scrape timeout for vmselect component
# scrapeTimeout: 5s
# -- Commented. HTTP scheme to use for scraping.
# scheme: https
# -- Commented. TLS configuration to use when scraping the endpoint
# tlsConfig:
# insecureSkipVerify: true
# -- Service Monitor relabelings
relabelings: []
# -- Service Monitor metricRelabelings
metricRelabelings: []
vminsert:
# -- Enable deployment of vminsert component. Deployment is used
enabled: false
vmauth:
# -- Enable deployment of vmauth component.
enabled: false
vmstorage:
# -- Enable deployment of vmstorage component. StatefulSet is used
enabled: false