# 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: false vminsert: # -- Enable deployment of vminsert component. Deployment is used enabled: true # -- IDs of vmstorage nodes to exclude from writing excludeStorageIDs: [] # -- Override default `app` label name name: vminsert # -- VMInsert strategy strategy: {} # rollingUpdate: # maxSurge: 25% # maxUnavailable: 25% # type: RollingUpdate image: # -- Image registry registry: "" # -- Image repository repository: asia-southeast1-docker.pkg.dev/meesho-devops-admin-0622/admin/sre/vminsert # -- Image tag # override Chart.AppVersion tag: v1.107.0-cluster # -- Variant of the image to use. # e.g. cluster, enterprise-cluster variant: cluster # -- Image pull policy pullPolicy: IfNotPresent # -- Specify pod lifecycle lifecycle: {} ports: # -- VMInsert http port name name: "http" # -- Name of Priority Class priorityClassName: "" # -- Overrides the full name of vminsert component fullnameOverride: vm-insert-demand-prd # -- Extra command line arguments for vminsert component extraArgs: envflag.enable: true envflag.prefix: VM_ loggerFormat: json httpListenAddr: :8480 maxLabelsPerTimeseries: 40 replicationFactor: 1 loggerTimezone: "Asia/Kolkata" storageNode: - "vm-storage-demand-prd-0.vm-storage-demand-prd.victoriametrics.svc:8400" - "vm-storage-demand-prd-1.vm-storage-demand-prd.victoriametrics.svc:8400" - "vm-storage-demand-prd-2.vm-storage-demand-prd.victoriametrics.svc:8400" - "vm-storage-demand-prd-3.vm-storage-demand-prd.victoriametrics.svc:8400" - "vm-storage-demand-prd-4.vm-storage-demand-prd.victoriametrics.svc:8400" # -- StatefulSet/Deployment annotations annotations: prometheus.io/scrape: "true" prometheus.io/port: "8480" # -- StatefulSet/Deployment additional labels extraLabels: bu: "demand" team: "demand-sre" service: "vm-insert-demand-prd" env: "prd" priority: "p0" type: "vminsert" # -- Pod's additional labels podLabels: bu: "demand" team: "demand-sre" service: "vm-insert-demand-prd" env: "prd" priority: "p0" type: "vminsert" terminationGracePeriodSeconds: 30 # -- 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 # -- Suppress rendering `--storageNode` FQDNs based on `vmstorage.replicaCount` value. If true suppress rendering `--storageNodes`, they can be re-defined in extraArgs suppressStorageFQDNsRender: false # -- Readiness & Liveness probes probe: # -- VMInsert readiness probe readiness: httpGet: {} initialDelaySeconds: 5 periodSeconds: 15 timeoutSeconds: 5 failureThreshold: 3 # -- VMInsert liveness probe liveness: tcpSocket: {} initialDelaySeconds: 5 periodSeconds: 15 timeoutSeconds: 5 failureThreshold: 3 # -- VMInsert startup probe startup: {} # -- Relabel configuration relabel: enabled: false config: [] # -- Use existing configmap if specified # otherwise .config values will be used. Relabel config **should** reside under `relabel.yml` key configMap: "" # Horizontal Pod Autoscaling horizontalPodAutoscaler: # -- Use HPA for vminsert component enabled: true # -- Maximum replicas for HPA to use to to scale the vminsert component maxReplicas: 30 # -- Minimum replicas for HPA to use to scale the vminsert component minReplicas: 7 # -- Metric for HPA to use to scale the vminsert component metrics: - type: Resource resource: name: cpu target: type: Utilization averageUtilization: 40 # -- Behavior settings for scaling by the HPA behavior: {} # -- 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 vminsert extraContainers: [] # - name: config-reloader # image: reloader-image # -- Init containers for vminsert 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: enabled: false # 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: "vminsert-mds" effect: "NoSchedule" # -- Pod's node selector. Details are [here](https://kubernetes.io/docs/concepts/scheduling-eviction/assign-pod-node/#nodeselector) nodeSelector: dedicated: "vminsert-mds" # -- Pod affinity affinity: {} # -- Pod topologySpreadConstraints topologySpreadConstraints: - maxSkew: 1 topologyKey: topology.kubernetes.io/zone whenUnsatisfiable: ScheduleAnyway labelSelector: matchLabels: type: vminsert - maxSkew: 1 topologyKey: kubernetes.io/hostname whenUnsatisfiable: DoNotSchedule labelSelector: matchLabels: type: vminsert # -- Pod's annotations podAnnotations: prometheus.io/scrape: "true" prometheus.io/port: "8480" # -- Count of vminsert 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: 20 memory: 10Gi # -- 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 service: # -- Create VMInsert 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: 8480 # -- Target port targetPort: http # -- Service type type: ClusterIP # -- Enable UDP port. used if you have `spec.opentsdbListenAddr` specified # Make sure that service is not type `LoadBalancer`, as it requires `MixedProtocolLBService` feature gate. Check [here](https://kubernetes.io/docs/reference/command-line-tools-reference/feature-gates/) for details udp: false # -- 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 vminsert 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-insert-demand-prd.meeshogcp.in path: / port: http # -- Array of TLS objects tls: [] # - secretName: vminsert-ingress-tls # hosts: # - vminsert.local # -- Ingress controller class name ingressClassName: nginx-internal # -- Ingress path type pathType: Prefix route: # -- Enable deployment of HTTPRoute for insert 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" "/insert" .Values.vminsert }}' serviceMonitor: # -- Enable deployment of Service Monitor for vminsert 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 vminsert component # interval: 15s # Commented. Prometheus pre-scrape timeout for vminsert 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: [] vmauth: # -- Enable deployment of vmauth component. enabled: false vmstorage: # -- Enable deployment of vmstorage component. StatefulSet is used enabled: false # -- Enterprise license key configuration for VictoriaMetrics enterprise. # Required only for VictoriaMetrics enterprise. Check docs [here](https://docs.victoriametrics.com/victoriametrics/enterprise/), # for more information, visit [site](https://victoriametrics.com/products/enterprise/). # Request a trial license [here](https://victoriametrics.com/products/enterprise/trial/) # Supported starting from VictoriaMetrics v1.94.0 license: # -- License key key: "" # -- Use existing secret with license key secret: # -- Existing secret name name: "" # -- Key in secret with license key key: ""