additionalVictoriaMetricsMap: {}
| (object)deprecated. use extraRules instead |
alertmanager.annotations: {}
| (object)VMAlertmanager annotations |
alertmanager.config:
receivers:
- name: blackhole
route:
receiver: blackhole
| (object)VMAlertmanager configuration |
alertmanager.enabled: true
| (bool)Create VMAlertmanager CR |
alertmanager.ingress:
annotations: {}
enabled: false
extraPaths: []
hosts:
- alertmanager.domain.com
labels: {}
path: '{{ .Values.alertmanager.spec.routePrefix | default "/" }}'
pathType: Prefix
tls: []
| (object)VMAlertmanager ingress configuration |
alertmanager.labels: {}
| (object)VMAlertmanager labels |
alertmanager.monzoTemplate:
enabled: true
| (object)Better alert templates for slack source |
alertmanager.route:
annotations: {}
enabled: false
extraRules: []
filters: []
hostnames: []
labels: {}
matches:
- path:
type: PathPrefix
value: '{{ .Values.alertmanager.spec.routePrefix | default "/" }}'
parentRefs: []
port: '{{ .Values.alertmanager.spec.port }}'
| (object)VMAlertmanager route configuration |
alertmanager.route.annotations: {}
| (object)HTTPRoute annotations |
alertmanager.route.enabled: false
| (bool)Enable deployment of HTTPRoute for alertmanager component |
alertmanager.route.filters: []
| (list)Filters for a default rule in HTTPRoute |
alertmanager.route.hostnames: []
| (list)Array of hostnames |
alertmanager.route.labels: {}
| (object)HTTPRoute extra labels |
alertmanager.route.matches:
- path:
type: PathPrefix
value: '{{ .Values.alertmanager.spec.routePrefix | default "/" }}'
| (list)Matches for a default rule in HTTPRoute |
alertmanager.route.parentRefs: []
| (list)HTTPGateway objects refs |
alertmanager.route.port: '{{ .Values.alertmanager.spec.port }}'
| (string)Route port |
alertmanager.spec:
configSecret: ""
externalURL: ""
image:
tag: v0.32.1
port: "9093"
replicaCount: 1
routePrefix: /
selectAllByDefault: true
| (object)Full spec for VMAlertmanager CRD. Allowed values described here |
alertmanager.spec.configSecret: ""
| (string)If this one defined, it will be used for alertmanager configuration and config parameter will be ignored |
alertmanager.templateFiles: {}
| (object)Extra alert templates |
alertmanager.useManagedConfig: false
| (bool)enable storing .Values.alertmanager.config in VMAlertmanagerConfig instead of k8s Secret.
Note: VMAlertmanagerConfig and plain VMAlertmanager config structures are not equal.
If you’re migrating existing config, please make sure that .Values.alertmanager.config: - with
useManagedConfig: false has structure described here. - with
useManagedConfig: true has structure described here.
|
argocdReleaseOverride: ""
| (string)If this chart is used in “Argocd” with “releaseName” field then VMServiceScrapes couldn’t select the proper services. For correct working need set value ‘argocdReleaseOverride=$ARGOCD_APP_NAME’ |
coreDns.enabled: true
| (bool)Enabled CoreDNS metrics scraping |
coreDns.service.enabled: true
| (bool)Create service for CoreDNS metrics |
coreDns.service.labels: {}
| (object)CoreDNS service labels |
coreDns.service.port: 9153
| (int)CoreDNS service port |
coreDns.service.selector:
k8s-app: kube-dns
| (object)CoreDNS service pod selector |
coreDns.service.targetPort: 9153
| (int)CoreDNS service target port |
coreDns.vmScrape:
spec:
endpoints:
- bearerTokenFile: /var/run/secrets/kubernetes.io/serviceaccount/token
port: http-metrics
jobLabel: app.kubernetes.io/component
namespaceSelector:
matchNames: []
| (object)Spec for VMServiceScrape CRD is here |
defaultDashboards.annotations: {}
| (object)Additional annotations for dashboard resources |
defaultDashboards.dashboards:
alertmanager-overview:
enabled: '{{ .Values.alertmanager.enabled }}'
controller-manager:
enabled: '{{ .Values.kubeControllerManager.enabled }}'
grafana-overview:
enabled: '{{ .Values.grafana.enabled }}'
kubelet:
enabled: '{{ .Values.kubelet.enabled }}'
node-exporter-full:
clusterMetric: node_uname_info
enabled: true
proxy:
enabled: '{{ .Values.kubeProxy.enabled }}'
scheduler:
enabled: '{{ .Values.kubeScheduler.enabled }}'
victoriametrics-cluster:
clusterMetric: vm_app_version
victoriametrics-operator:
clusterMetric: vm_app_version
enabled: true
victoriametrics-single-node:
clusterMetric: vm_app_version
victoriametrics-vmagent:
clusterMetric: vm_app_version
victoriametrics-vmalert:
clusterMetric: vm_app_version
enabled: true
| (object)Per-dashboard configuration. Keys match dashboard names from JSON content. Set enabled: false to skip a dashboard. Set clusterMetric to patch the cluster variable query. |
defaultDashboards.enabled: true
| (bool)Enable dashboard sync via sync-job |
defaultDashboards.grafanaOperator.enabled: false
| (bool)Create GrafanaDashboard CRDs instead of ConfigMaps (requires grafana-operator) |
defaultDashboards.grafanaOperator.spec.allowCrossNamespaceImport: false
| (bool) |
defaultDashboards.grafanaOperator.spec.instanceSelector.matchLabels.dashboards: grafana
| (string) |
defaultDashboards.labels: {}
| (object)Additional labels for dashboard resources (ConfigMaps or GrafanaDashboard CRDs) |
defaultDashboards.sources:
etcd:
enabled: '{{ .Values.kubeEtcd.enabled }}'
url: https://raw.githubusercontent.com/monitoring-mixins/website/master/assets/etcd/dashboards/etcd.json
kube-prometheus:
url: https://raw.githubusercontent.com/prometheus-operator/kube-prometheus/main/manifests/grafana-dashboardDefinitions.yaml
kubernetes-system-api-server:
enabled: '{{ .Values.kubeApiServer.enabled }}'
url: https://raw.githubusercontent.com/dotdc/grafana-dashboards-kubernetes/master/dashboards/k8s-system-api-server.json
kubernetes-system-coredns:
enabled: '{{ .Values.coreDns.enabled }}'
url: https://raw.githubusercontent.com/dotdc/grafana-dashboards-kubernetes/master/dashboards/k8s-system-coredns.json
kubernetes-views-global:
url: https://raw.githubusercontent.com/dotdc/grafana-dashboards-kubernetes/master/dashboards/k8s-views-global.json
kubernetes-views-namespaces:
url: https://raw.githubusercontent.com/dotdc/grafana-dashboards-kubernetes/master/dashboards/k8s-views-namespaces.json
kubernetes-views-nodes:
url: https://raw.githubusercontent.com/dotdc/grafana-dashboards-kubernetes/master/dashboards/k8s-views-nodes.json
kubernetes-views-pods:
url: https://raw.githubusercontent.com/dotdc/grafana-dashboards-kubernetes/master/dashboards/k8s-views-pods.json
node-exporter-full:
enabled: '{{ index .Values "prometheus-node-exporter" "enabled" }}'
url: https://raw.githubusercontent.com/rfmoz/grafana-dashboards/master/prometheus/node-exporter-full.json
victoriametrics-backupmanager:
enabled: '{{ or (not (empty (dig "spec" "vmBackup" "destination" "" .Values.vmsingle))) (not (empty (dig "spec" "storage" "vmBackup" "destination" "" .Values.vmcluster))) }}'
url: https://raw.githubusercontent.com/VictoriaMetrics/VictoriaMetrics/master/dashboards/backupmanager.json
victoriametrics-cluster:
enabled: '{{ .Values.vmcluster.enabled }}'
url: https://raw.githubusercontent.com/VictoriaMetrics/VictoriaMetrics/master/dashboards/victoriametrics-cluster.json
victoriametrics-operator:
enabled: '{{ index .Values "victoria-metrics-operator" "enabled" }}'
url: https://raw.githubusercontent.com/VictoriaMetrics/VictoriaMetrics/master/dashboards/operator.json
victoriametrics-single-node:
enabled: '{{ .Values.vmsingle.enabled }}'
url: https://raw.githubusercontent.com/VictoriaMetrics/VictoriaMetrics/master/dashboards/victoriametrics.json
victoriametrics-vmagent:
enabled: '{{ .Values.vmagent.enabled }}'
url: https://raw.githubusercontent.com/VictoriaMetrics/VictoriaMetrics/master/dashboards/vmagent.json
victoriametrics-vmalert:
enabled: '{{ .Values.vmalert.enabled }}'
url: https://raw.githubusercontent.com/VictoriaMetrics/VictoriaMetrics/master/dashboards/vmalert.json
| (object)Dashboard sources. Set enabled: false on any entry to disable it. Add new keys to extend. |
defaultDatasources.alertmanager:
datasources:
- access: proxy
jsonData:
implementation: prometheus
name: Alertmanager
uid: Alertmanager
| (object)List of alertmanager datasources. VMAlertmanager generated url will be added to each datasource in template if alertmanager is enabled |
defaultDatasources.grafanaOperator.annotations: {}
| (object) |
defaultDatasources.grafanaOperator.enabled: false
| (bool)Create datasources as CRDs (requires grafana-operator to be installed) |
defaultDatasources.grafanaOperator.spec.allowCrossNamespaceImport: false
| (bool) |
defaultDatasources.grafanaOperator.spec.instanceSelector.matchLabels.dashboards: grafana
| (string) |
defaultDatasources.victoriametrics.datasources:
- access: proxy
isDefault: true
name: VictoriaMetrics
type: prometheus
uid: VictoriaMetrics
- access: proxy
isDefault: false
name: VictoriaMetrics (DS)
type: victoriametrics-metrics-datasource
uid: VictoriaMetricsDS
| (list)List of prometheus compatible datasource configurations. VM url will be added to each of them in templates. |
defaultRules:
alerting:
spec:
annotations: {}
labels: {}
annotations: {}
enabled: true
extraGroupByLabels: []
group:
spec: {}
groups:
alertmanager.rules:
rules: {}
etcd:
alerting: {}
enabled: true
recording: {}
rules: {}
general.rules:
rules: {}
k8s.rules.container_cpu_limits:
rules: {}
k8s.rules.container_cpu_requests:
rules: {}
k8s.rules.container_cpu_usage_seconds_total:
rules: {}
k8s.rules.container_memory_cache:
rules: {}
k8s.rules.container_memory_limits:
rules: {}
k8s.rules.container_memory_requests:
rules: {}
k8s.rules.container_memory_rss:
rules: {}
k8s.rules.container_memory_swap:
rules: {}
k8s.rules.container_memory_working_set_bytes:
rules: {}
k8s.rules.pod_owner:
rules: {}
kube-apiserver-burnrate.rules:
rules: {}
kube-apiserver-histogram.rules:
rules: {}
kube-apiserver-slos:
rules: {}
kube-prometheus-general.rules:
rules: {}
kube-prometheus-node-recording.rules:
rules: {}
kube-scheduler.rules:
rules: {}
kube-state-metrics:
rules: {}
kubelet.rules:
rules: {}
kubernetes-apps:
jobNamespaces:
kube-state-metrics: .*
rules: {}
kubernetes-resources:
rules: {}
kubernetes-storage:
jobNamespaces:
kubelet: .*
rules: {}
kubernetes-system:
rules: {}
kubernetes-system-apiserver:
rules: {}
kubernetes-system-controller-manager:
rules: {}
kubernetes-system-kubelet:
rules: {}
kubernetes-system-scheduler:
rules: {}
node-exporter:
rules: {}
node-exporter.rules:
rules: {}
node-network:
rules: {}
node.rules:
rules: {}
vm-health:
rules: {}
vmagent:
rules: {}
vmalert:
rules: {}
vmcluster:
rules: {}
vmoperator:
rules: {}
vmsingle:
rules: {}
jobNamespaces: {}
labels: {}
recording:
spec:
annotations: {}
labels: {}
rule:
spec:
annotations: {}
labels: {}
rules: {}
runbookUrl: https://runbooks.prometheus-operator.dev/runbooks
sources:
alertmanager:
enabled: '{{ .Values.alertmanager.enabled }}'
url: https://raw.githubusercontent.com/prometheus-operator/kube-prometheus/main/manifests/alertmanager-prometheusRule.yaml
etcd:
enabled: '{{ .Values.kubeEtcd.enabled }}'
url: https://raw.githubusercontent.com/monitoring-mixins/website/master/assets/etcd/alerts.yaml
kube-state-metrics:
enabled: '{{ index .Values "kube-state-metrics" "enabled" }}'
url: https://raw.githubusercontent.com/prometheus-operator/kube-prometheus/main/manifests/kubeStateMetrics-prometheusRule.yaml
kubernetes:
url: https://raw.githubusercontent.com/prometheus-operator/kube-prometheus/main/manifests/kubePrometheus-prometheusRule.yaml
kubernetes-control-plane:
url: https://raw.githubusercontent.com/prometheus-operator/kube-prometheus/main/manifests/kubernetesControlPlane-prometheusRule.yaml
node-exporter:
enabled: '{{ index .Values "prometheus-node-exporter" "enabled" }}'
url: https://raw.githubusercontent.com/prometheus-operator/kube-prometheus/main/manifests/nodeExporter-prometheusRule.yaml
vmagent:
enabled: '{{ .Values.vmagent.enabled }}'
url: https://raw.githubusercontent.com/VictoriaMetrics/VictoriaMetrics/master/deployment/docker/rules/alerts-vmagent.yml
vmalert:
enabled: '{{ .Values.vmalert.enabled }}'
url: https://raw.githubusercontent.com/VictoriaMetrics/VictoriaMetrics/master/deployment/docker/rules/alerts-vmalert.yml
vmcluster:
enabled: '{{ .Values.vmcluster.enabled }}'
url: https://raw.githubusercontent.com/VictoriaMetrics/VictoriaMetrics/master/deployment/docker/rules/alerts-cluster.yml
vmhealth:
enabled: '{{ or .Values.vmsingle.enabled .Values.vmcluster.enabled }}'
url: https://raw.githubusercontent.com/VictoriaMetrics/VictoriaMetrics/master/deployment/docker/rules/alerts-health.yml
vmoperator:
enabled: '{{ index .Values "victoria-metrics-operator" "enabled" }}'
url: https://raw.githubusercontent.com/VictoriaMetrics/operator/master/config/alerting/vmoperator-rules.yaml
vmsingle:
enabled: '{{ .Values.vmsingle.enabled }}'
url: https://raw.githubusercontent.com/VictoriaMetrics/VictoriaMetrics/master/deployment/docker/rules/alerts-single-node.yml
| (object)Create default rules for monitoring the cluster |
defaultRules.alerting:
spec:
annotations: {}
labels: {}
| (object)Common properties for VMRules alerts |
defaultRules.alerting.spec.annotations: {}
| (object)Additional annotations for VMRule alerts |
defaultRules.alerting.spec.labels: {}
| (object)Additional labels for VMRule alerts |
defaultRules.annotations: {}
| (object)Annotations for default rules |
defaultRules.group:
spec: {}
| (object)Common properties for VMRule groups |
defaultRules.groups:
alertmanager.rules:
rules: {}
etcd:
alerting: {}
enabled: true
recording: {}
rules: {}
general.rules:
rules: {}
k8s.rules.container_cpu_limits:
rules: {}
k8s.rules.container_cpu_requests:
rules: {}
k8s.rules.container_cpu_usage_seconds_total:
rules: {}
k8s.rules.container_memory_cache:
rules: {}
k8s.rules.container_memory_limits:
rules: {}
k8s.rules.container_memory_requests:
rules: {}
k8s.rules.container_memory_rss:
rules: {}
k8s.rules.container_memory_swap:
rules: {}
k8s.rules.container_memory_working_set_bytes:
rules: {}
k8s.rules.pod_owner:
rules: {}
kube-apiserver-burnrate.rules:
rules: {}
kube-apiserver-histogram.rules:
rules: {}
kube-apiserver-slos:
rules: {}
kube-prometheus-general.rules:
rules: {}
kube-prometheus-node-recording.rules:
rules: {}
kube-scheduler.rules:
rules: {}
kube-state-metrics:
rules: {}
kubelet.rules:
rules: {}
kubernetes-apps:
jobNamespaces:
kube-state-metrics: .*
rules: {}
kubernetes-resources:
rules: {}
kubernetes-storage:
jobNamespaces:
kubelet: .*
rules: {}
kubernetes-system:
rules: {}
kubernetes-system-apiserver:
rules: {}
kubernetes-system-controller-manager:
rules: {}
kubernetes-system-kubelet:
rules: {}
kubernetes-system-scheduler:
rules: {}
node-exporter:
rules: {}
node-exporter.rules:
rules: {}
node-network:
rules: {}
node.rules:
rules: {}
vm-health:
rules: {}
vmagent:
rules: {}
vmalert:
rules: {}
vmcluster:
rules: {}
vmoperator:
rules: {}
vmsingle:
rules: {}
| (object)Rule group properties. Keys must match upstream group names exactly. |
defaultRules.groups.etcd.alerting: {}
| (object)Common properties for all alerting rules in a group |
defaultRules.groups.etcd.enabled: true
| (bool)Enable/disable rule group |
defaultRules.groups.etcd.recording: {}
| (object)Common properties for all recording rules in a group |
defaultRules.groups.etcd.rules: {}
| (object)Common properties for all rules in a group |
defaultRules.jobNamespaces: {}
| (object)Inject namespace=~”” filter into metric selectors for metrics scraped by the given job. Merged with per-group jobNamespaces (per-group wins on conflict). Only use for jobs whose metrics are always namespace-scoped. |
defaultRules.labels: {}
| (object)Labels for default rules |
defaultRules.recording:
spec:
annotations: {}
labels: {}
| (object)Common properties for VMRules recording rules |
defaultRules.recording.spec.annotations: {}
| (object)Additional annotations for VMRule recording rules |
defaultRules.recording.spec.labels: {}
| (object)Additional labels for VMRule recording rules |
defaultRules.rule:
spec:
annotations: {}
labels: {}
| (object)Common properties for all VMRules |
defaultRules.rule.spec.annotations: {}
| (object)Additional annotations for all VMRules |
defaultRules.rule.spec.labels: {}
| (object)Additional labels for all VMRules |
defaultRules.rules: {}
| (object)Per rule properties |
defaultRules.runbookUrl: https://runbooks.prometheus-operator.dev/runbooks
| (string)Runbook url prefix for default rules |
defaultRules.sources:
alertmanager:
enabled: '{{ .Values.alertmanager.enabled }}'
url: https://raw.githubusercontent.com/prometheus-operator/kube-prometheus/main/manifests/alertmanager-prometheusRule.yaml
etcd:
enabled: '{{ .Values.kubeEtcd.enabled }}'
url: https://raw.githubusercontent.com/monitoring-mixins/website/master/assets/etcd/alerts.yaml
kube-state-metrics:
enabled: '{{ index .Values "kube-state-metrics" "enabled" }}'
url: https://raw.githubusercontent.com/prometheus-operator/kube-prometheus/main/manifests/kubeStateMetrics-prometheusRule.yaml
kubernetes:
url: https://raw.githubusercontent.com/prometheus-operator/kube-prometheus/main/manifests/kubePrometheus-prometheusRule.yaml
kubernetes-control-plane:
url: https://raw.githubusercontent.com/prometheus-operator/kube-prometheus/main/manifests/kubernetesControlPlane-prometheusRule.yaml
node-exporter:
enabled: '{{ index .Values "prometheus-node-exporter" "enabled" }}'
url: https://raw.githubusercontent.com/prometheus-operator/kube-prometheus/main/manifests/nodeExporter-prometheusRule.yaml
vmagent:
enabled: '{{ .Values.vmagent.enabled }}'
url: https://raw.githubusercontent.com/VictoriaMetrics/VictoriaMetrics/master/deployment/docker/rules/alerts-vmagent.yml
vmalert:
enabled: '{{ .Values.vmalert.enabled }}'
url: https://raw.githubusercontent.com/VictoriaMetrics/VictoriaMetrics/master/deployment/docker/rules/alerts-vmalert.yml
vmcluster:
enabled: '{{ .Values.vmcluster.enabled }}'
url: https://raw.githubusercontent.com/VictoriaMetrics/VictoriaMetrics/master/deployment/docker/rules/alerts-cluster.yml
vmhealth:
enabled: '{{ or .Values.vmsingle.enabled .Values.vmcluster.enabled }}'
url: https://raw.githubusercontent.com/VictoriaMetrics/VictoriaMetrics/master/deployment/docker/rules/alerts-health.yml
vmoperator:
enabled: '{{ index .Values "victoria-metrics-operator" "enabled" }}'
url: https://raw.githubusercontent.com/VictoriaMetrics/operator/master/config/alerting/vmoperator-rules.yaml
vmsingle:
enabled: '{{ .Values.vmsingle.enabled }}'
url: https://raw.githubusercontent.com/VictoriaMetrics/VictoriaMetrics/master/deployment/docker/rules/alerts-single-node.yml
| (object)Rule sources. Set enabled: false on any entry to disable it. Add new keys to extend. |
defaultScrapeService.namespace: kube-system
| (string) |
external.grafana.datasource: VictoriaMetrics
| (string)External Grafana datasource name |
external.grafana.host: ""
| (string)External Grafana host |
external.vm:
read:
url: ""
write:
url: ""
| (object)External VM read and write URLs |
fullnameOverride: ""
| (string)Resource full name override |
global.cluster.dnsDomain: cluster.local.
| (string)K8s cluster domain suffix, uses for building storage pods’ FQDN. Details are here |
global.clusterLabel: cluster
| (string)Cluster label to use for dashboards and rules |
global.license:
key: ""
keyRef: {}
| (object)Global license configuration |
grafana:
enabled: true
forceDeployDatasource: false
ingress:
annotations: {}
enabled: false
extraPaths: []
hosts:
- grafana.domain.com
labels: {}
path: /
pathType: Prefix
tls: []
sidecar:
dashboards:
defaultFolderName: default
enabled: true
folder: /var/lib/grafana/dashboards
label: grafana_dashboard
labelValue: "1"
multicluster: false
provider:
name: default
orgid: 1
datasources:
enabled: true
label: grafana_datasource
labelValue: "1"
vmScrape:
enabled: true
spec:
endpoints:
- port: '{{ .Values.grafana.service.portName }}'
selector:
matchLabels:
app.kubernetes.io/name: '{{ include "grafana.name" .Subcharts.grafana }}'
| (object)Grafana dependency chart configuration. For possible values refer here |
grafana.forceDeployDatasource: false
| (bool)Create datasource configmap even if grafana deployment has been disabled |
grafana.vmScrape:
enabled: true
spec:
endpoints:
- port: '{{ .Values.grafana.service.portName }}'
selector:
matchLabels:
app.kubernetes.io/name: '{{ include "grafana.name" .Subcharts.grafana }}'
| (object)Grafana VM scrape config |
grafana.vmScrape.spec:
endpoints:
- port: '{{ .Values.grafana.service.portName }}'
selector:
matchLabels:
app.kubernetes.io/name: '{{ include "grafana.name" .Subcharts.grafana }}'
| (object)Scrape configuration for Grafana |
kube-state-metrics:
enabled: true
vmScrape:
enabled: true
spec:
endpoints:
- honorLabels: true
metricRelabelConfigs:
- action: labeldrop
regex: (uid|container_id|image_id)
port: http
jobLabel: app.kubernetes.io/name
selector:
matchLabels:
app.kubernetes.io/instance: '{{ include "vm.release" . }}'
app.kubernetes.io/name: '{{ include "kube-state-metrics.name" (index .Subcharts "kube-state-metrics") }}'
| (object)kube-state-metrics dependency chart configuration. For possible values check here |
kube-state-metrics.vmScrape:
enabled: true
spec:
endpoints:
- honorLabels: true
metricRelabelConfigs:
- action: labeldrop
regex: (uid|container_id|image_id)
port: http
jobLabel: app.kubernetes.io/name
selector:
matchLabels:
app.kubernetes.io/instance: '{{ include "vm.release" . }}'
app.kubernetes.io/name: '{{ include "kube-state-metrics.name" (index .Subcharts "kube-state-metrics") }}'
| (object)Scrape configuration for Kube State Metrics |
kubeApiServer.enabled: true
| (bool)Enable Kube Api Server metrics scraping |
kubeApiServer.vmScrape:
spec:
endpoints:
- bearerTokenFile: /var/run/secrets/kubernetes.io/serviceaccount/token
port: https
scheme: https
tlsConfig:
caFile: /var/run/secrets/kubernetes.io/serviceaccount/ca.crt
serverName: kubernetes
jobLabel: component
namespaceSelector:
matchNames:
- default
selector:
matchLabels:
component: apiserver
provider: kubernetes
| (object)Spec for VMServiceScrape CRD is here |
kubeControllerManager.enabled: true
| (bool)Enable kube controller manager metrics scraping |
kubeControllerManager.endpoints: []
| (list)If your kube controller manager is not deployed as a pod, specify IPs it can be found on |
kubeControllerManager.service.enabled: true
| (bool)Create service for kube controller manager metrics scraping |
kubeControllerManager.service.labels: {}
| (object)Kube controller manager service labels |
kubeControllerManager.service.port: 10257
| (int)Kube controller manager service port |
kubeControllerManager.service.selector:
component: kube-controller-manager
| (object)Kube controller manager service pod selector |
kubeControllerManager.service.targetPort: 10257
| (int)Kube controller manager service target port |
kubeControllerManager.vmScrape:
spec:
endpoints:
- bearerTokenFile: /var/run/secrets/kubernetes.io/serviceaccount/token
port: http-metrics
scheme: https
tlsConfig:
caFile: /var/run/secrets/kubernetes.io/serviceaccount/ca.crt
serverName: kubernetes
jobLabel: app.kubernetes.io/component
namespaceSelector:
matchNames: []
| (object)Spec for VMServiceScrape CRD is here |
kubeDns.enabled: false
| (bool)Enabled KubeDNS metrics scraping |
kubeDns.service.enabled: false
| (bool)Create Service for KubeDNS metrics |
kubeDns.service.labels: {}
| (object)KubeDNS service labels |
kubeDns.service.ports:
dnsmasq:
port: 10054
targetPort: 10054
skydns:
port: 10055
targetPort: 10055
| (object)KubeDNS service ports |
kubeDns.service.selector:
k8s-app: kube-dns
| (object)KubeDNS service pods selector |
kubeDns.vmScrape:
spec:
endpoints:
- bearerTokenFile: /var/run/secrets/kubernetes.io/serviceaccount/token
port: http-metrics-dnsmasq
- bearerTokenFile: /var/run/secrets/kubernetes.io/serviceaccount/token
port: http-metrics-skydns
jobLabel: app.kubernetes.io/component
namespaceSelector:
matchNames: []
| (object)Spec for VMServiceScrape CRD is here |
kubeEtcd.enabled: true
| (bool)Enabled KubeETCD metrics scraping |
kubeEtcd.endpoints: []
| (list)If your etcd is not deployed as a pod, specify IPs it can be found on |
kubeEtcd.service.enabled: true
| (bool)Enable service for ETCD metrics scraping |
kubeEtcd.service.labels: {}
| (object)ETCD service labels |
kubeEtcd.service.port: 2379
| (int)ETCD service port |
kubeEtcd.service.selector:
component: etcd
| (object)ETCD service pods selector |
kubeEtcd.service.targetPort: 2379
| (int)ETCD service target port |
kubeEtcd.vmScrape:
spec:
endpoints:
- bearerTokenFile: /var/run/secrets/kubernetes.io/serviceaccount/token
port: http-metrics
scheme: https
tlsConfig:
caFile: /var/run/secrets/kubernetes.io/serviceaccount/ca.crt
jobLabel: app.kubernetes.io/component
namespaceSelector:
matchNames: []
| (object)Spec for VMServiceScrape CRD is here |
kubeProxy.enabled: false
| (bool)Enable kube proxy metrics scraping |
kubeProxy.endpoints: []
| (list)If your kube proxy is not deployed as a pod, specify IPs it can be found on |
kubeProxy.service.enabled: true
| (bool)Enable service for kube proxy metrics scraping |
kubeProxy.service.labels: {}
| (object)Kube proxy service labels |
kubeProxy.service.port: 10249
| (int)Kube proxy service port |
kubeProxy.service.selector:
k8s-app: kube-proxy
| (object)Kube proxy service pod selector |
kubeProxy.service.targetPort: 10249
| (int)Kube proxy service target port |
kubeProxy.vmScrape:
spec:
endpoints:
- bearerTokenFile: /var/run/secrets/kubernetes.io/serviceaccount/token
port: http-metrics
scheme: https
tlsConfig:
caFile: /var/run/secrets/kubernetes.io/serviceaccount/ca.crt
jobLabel: app.kubernetes.io/component
namespaceSelector:
matchNames: []
| (object)Spec for VMServiceScrape CRD is here |
kubeScheduler.enabled: true
| (bool)Enable KubeScheduler metrics scraping |
kubeScheduler.endpoints: []
| (list)If your kube scheduler is not deployed as a pod, specify IPs it can be found on |
kubeScheduler.service.enabled: true
| (bool)Enable service for KubeScheduler metrics scrape |
kubeScheduler.service.labels: {}
| (object)KubeScheduler service labels |
kubeScheduler.service.port: 10259
| (int)KubeScheduler service port |
kubeScheduler.service.selector:
component: kube-scheduler
| (object)KubeScheduler service pod selector |
kubeScheduler.service.targetPort: 10259
| (int)KubeScheduler service target port |
kubeScheduler.vmScrape:
spec:
endpoints:
- bearerTokenFile: /var/run/secrets/kubernetes.io/serviceaccount/token
port: http-metrics
scheme: https
tlsConfig:
caFile: /var/run/secrets/kubernetes.io/serviceaccount/ca.crt
jobLabel: app.kubernetes.io/component
namespaceSelector:
matchNames: []
| (object)Spec for VMServiceScrape CRD is here |
kubelet:
enabled: true
vmScrape:
kind: VMNodeScrape
spec:
bearerTokenFile: /var/run/secrets/kubernetes.io/serviceaccount/token
honorLabels: true
honorTimestamps: false
interval: 30s
metricRelabelConfigs:
- action: labeldrop
regex: (uid)
- action: labeldrop
regex: (id|name)
- action: drop
regex: (rest_client_request_duration_seconds_bucket|rest_client_request_duration_seconds_sum|rest_client_request_duration_seconds_count)
source_labels:
- __name__
relabelConfigs:
- action: labelmap
regex: __meta_kubernetes_node_label_(.+)
- sourceLabels:
- __metrics_path__
targetLabel: metrics_path
- replacement: kubelet
targetLabel: job
scheme: https
scrapeTimeout: 5s
tlsConfig:
caFile: /var/run/secrets/kubernetes.io/serviceaccount/ca.crt
insecureSkipVerify: true
vmScrapes:
cadvisor:
enabled: true
spec:
path: /metrics/cadvisor
kubelet:
spec: {}
probes:
enabled: true
spec:
path: /metrics/probes
resources:
enabled: true
spec:
path: /metrics/resource
| (object)Component scraping the kubelets |
kubelet.vmScrape:
kind: VMNodeScrape
spec:
bearerTokenFile: /var/run/secrets/kubernetes.io/serviceaccount/token
honorLabels: true
honorTimestamps: false
interval: 30s
metricRelabelConfigs:
- action: labeldrop
regex: (uid)
- action: labeldrop
regex: (id|name)
- action: drop
regex: (rest_client_request_duration_seconds_bucket|rest_client_request_duration_seconds_sum|rest_client_request_duration_seconds_count)
source_labels:
- __name__
relabelConfigs:
- action: labelmap
regex: __meta_kubernetes_node_label_(.+)
- sourceLabels:
- __metrics_path__
targetLabel: metrics_path
- replacement: kubelet
targetLabel: job
scheme: https
scrapeTimeout: 5s
tlsConfig:
caFile: /var/run/secrets/kubernetes.io/serviceaccount/ca.crt
insecureSkipVerify: true
| (object)Spec for VMNodeScrape CRD is here |
kubelet.vmScrapes.cadvisor:
enabled: true
spec:
path: /metrics/cadvisor
| (object)Enable scraping /metrics/cadvisor from kubelet’s service |
kubelet.vmScrapes.probes:
enabled: true
spec:
path: /metrics/probes
| (object)Enable scraping /metrics/probes from kubelet’s service |
kubelet.vmScrapes.resources:
enabled: true
spec:
path: /metrics/resource
| (object)Enabled scraping /metrics/resource from kubelet’s service |
nameOverride: ""
| (string)Override chart name |
prometheus-node-exporter:
enabled: true
extraArgs:
- --collector.filesystem.mount-points-exclude=^/(dev|proc|sys|var/lib/docker/.+|var/lib/kubelet/.+)($|/)
- --collector.filesystem.fs-types-exclude=^(autofs|binfmt_misc|bpf|cgroup2?|configfs|debugfs|devpts|devtmpfs|fusectl|hugetlbfs|iso9660|mqueue|nsfs|overlay|proc|procfs|pstore|rpc_pipefs|securityfs|selinuxfs|squashfs|erofs|sysfs|tracefs)$
service:
labels:
jobLabel: node-exporter
vmScrape:
enabled: true
spec:
endpoints:
- metricRelabelConfigs:
- action: drop
regex: /var/lib/kubelet/pods.+
source_labels:
- mountpoint
port: metrics
jobLabel: jobLabel
selector:
matchLabels:
app.kubernetes.io/name: '{{ include "prometheus-node-exporter.name" (index .Subcharts "prometheus-node-exporter") }}'
| (object)prometheus-node-exporter dependency chart configuration. For possible values check here |
prometheus-node-exporter.vmScrape:
enabled: true
spec:
endpoints:
- metricRelabelConfigs:
- action: drop
regex: /var/lib/kubelet/pods.+
source_labels:
- mountpoint
port: metrics
jobLabel: jobLabel
selector:
matchLabels:
app.kubernetes.io/name: '{{ include "prometheus-node-exporter.name" (index .Subcharts "prometheus-node-exporter") }}'
| (object)Node Exporter VM scrape config |
prometheus-node-exporter.vmScrape.spec:
endpoints:
- metricRelabelConfigs:
- action: drop
regex: /var/lib/kubelet/pods.+
source_labels:
- mountpoint
port: metrics
jobLabel: jobLabel
selector:
matchLabels:
app.kubernetes.io/name: '{{ include "prometheus-node-exporter.name" (index .Subcharts "prometheus-node-exporter") }}'
| (object)Scrape configuration for Node Exporter |
syncJob.affinity: {}
| (object)Affinity for sync-job Pod scheduling |
syncJob.backoffLimit: 3
| (int)Maximum number of retries before the Job is considered failed |
syncJob.containerSecurityContext: {}
| (object)Security context for the sync-job container |
syncJob.enabled: true
| (bool)Fetch dashboards and rules from upstream sources at deploy time. Creates ConfigMaps (for Grafana sidecar) or GrafanaDashboard CRDs and VMRules directly in the cluster. A new Job runs automatically whenever this config changes. |
syncJob.image.pullPolicy: IfNotPresent
| (string) |
syncJob.image.repository: ghcr.io/victoriametrics/sync-job
| (string) |
syncJob.image.tag: latest
| (string) |
syncJob.nodeSelector: {}
| (object) |
syncJob.podAnnotations: {}
| (object)Annotations to add to the sync-job Pod |
syncJob.podSecurityContext: {}
| (object)Security context for the sync-job Pod |
syncJob.prune: true
| (bool)Delete managed resources that are no longer in the current config |
syncJob.resourcePrefix: ""
| (string)Prefix for managed resource names (VMRules, ConfigMaps, GrafanaDashboards). Defaults to the Helm release name when empty. |
syncJob.resources: {}
| (object)Override multicluster mode for dashboard and rule patching. Falls back to grafana.sidecar.dashboards.multicluster when not set. multicluster: false |
syncJob.tolerations: []
| (list) |
syncJob.ttlSecondsAfterFinished: 600
| (int)Seconds to keep a finished job before automatic deletion |
tenant: "0"
| (string)Tenant to use for Grafana datasources and remote write |
victoria-metrics-operator:
admissionWebhooks:
policy: Ignore
crds:
cleanup:
enabled: true
image:
pullPolicy: IfNotPresent
repository: registry.k8s.io/kubectl
plain: true
enabled: true
operator:
disable_prometheus_converter: false
serviceMonitor:
enabled: true
| (object)VictoriaMetrics Operator dependency chart configuration. More values can be found here. Also checkout here possible ENV variables to configure operator behaviour |
victoria-metrics-operator.admissionWebhooks.policy: Ignore
| (string)Default the validating webhook failurePolicy to Ignore so the stack can be installed/upgraded in a single pass without races against the operator’s webhook server. Override to Fail for strict validation once the operator is in steady state. |
victoria-metrics-operator.operator.disable_prometheus_converter: false
| (bool)By default, operator converts prometheus-operator objects. |
vmagent.additionalRemoteWrites: []
| (list)Remote write configuration of VMAgent, allowed parameters defined in a spec |
vmagent.annotations: {}
| (object)VMAgent annotations |
vmagent.enabled: true
| (bool)Create VMAgent CR |
vmagent.ingress:
annotations: {}
enabled: false
extraPaths: []
hosts:
- vmagent.domain.com
labels: {}
path: ""
pathType: Prefix
tls: []
| (object)VMAgent ingress configuration |
vmagent.labels: {}
| (object)VMAgent labels |
vmagent.rbac.annotations: {}
| (object)Role/RoleBinding annotations |
vmagent.rbac.namespaced: true
| (bool)Defines if ClusterRole or Role with respective bindings should be created |
vmagent.rbac.rules: []
| (list)additional rules for a role |
vmagent.route:
annotations: {}
enabled: false
extraRules: []
filters: []
hostnames: []
labels: {}
matches:
- path:
type: PathPrefix
value: '{{ dig "spec" "extraArgs" "http.pathPrefix" "/" .Values.vmagent }}'
parentRefs: []
port: '{{ .Values.vmagent.spec.port }}'
| (object)VMAgent route configuration |
vmagent.route.annotations: {}
| (object)HTTPRoute annotations |
vmagent.route.enabled: false
| (bool)Enable deployment of HTTPRoute for vmagent component |
vmagent.route.filters: []
| (list)Filters for a default rule in HTTPRoute |
vmagent.route.hostnames: []
| (list)Array of hostnames |
vmagent.route.labels: {}
| (object)HTTPRoute extra labels |
vmagent.route.matches:
- path:
type: PathPrefix
value: '{{ dig "spec" "extraArgs" "http.pathPrefix" "/" .Values.vmagent }}'
| (list)Matches for a default rule in HTTPRoute |
vmagent.route.parentRefs: []
| (list)HTTPGateway objects refs |
vmagent.route.port: '{{ .Values.vmagent.spec.port }}'
| (string)Route port |
vmagent.spec:
externalLabels: {}
extraArgs:
promscrape.streamParse: "true"
port: "8429"
scrapeInterval: 20s
selectAllByDefault: true
| (object)Full spec for VMAgent CRD. Allowed values described here |
vmalert.additionalNotifierConfigs: {}
| (object)Allows to configure static notifiers, discover notifiers via Consul and DNS, see specification here. This configuration will be created as separate secret and mounted to VMAlert pod. |
vmalert.annotations: {}
| (object)VMAlert annotations |
vmalert.enabled: true
| (bool)Create VMAlert CR |
vmalert.ingress:
annotations: {}
enabled: false
extraPaths: []
hosts:
- vmalert.domain.com
labels: {}
path: ""
pathType: Prefix
tls: []
| (object)VMAlert ingress config |
vmalert.labels: {}
| (object)VMAlert labels |
vmalert.remoteWriteVMAgent: false
| (bool)Controls whether VMAlert should use VMAgent or VMInsert as a target for remotewrite |
vmalert.route:
annotations: {}
enabled: false
extraRules: []
filters: []
hostnames: []
labels: {}
matches:
- path:
type: PathPrefix
value: '{{ dig "spec" "extraArgs" "http.pathPrefix" "/" .Values.vmalert }}'
parentRefs: []
port: '{{ .Values.vmalert.spec.port }}'
| (object)VMAlert route configuration |
vmalert.route.annotations: {}
| (object)HTTPRoute annotations |
vmalert.route.enabled: false
| (bool)Enable deployment of HTTPRoute for vmalert component |
vmalert.route.filters: []
| (list)Filters for a default rule in HTTPRoute |
vmalert.route.hostnames: []
| (list)Array of hostnames |
vmalert.route.labels: {}
| (object)HTTPRoute extra labels |
vmalert.route.matches:
- path:
type: PathPrefix
value: '{{ dig "spec" "extraArgs" "http.pathPrefix" "/" .Values.vmalert }}'
| (list)Matches for a default rule in HTTPRoute |
vmalert.route.parentRefs: []
| (list)HTTPGateway objects refs |
vmalert.route.port: '{{ .Values.vmalert.spec.port }}'
| (string)Route port |
vmalert.spec:
evaluationInterval: 20s
externalLabels: {}
extraArgs:
http.pathPrefix: /
port: "8080"
selectAllByDefault: true
| (object)Full spec for VMAlert CRD. Allowed values described here |
vmalert.templateFiles: {}
| (object)Extra VMAlert annotation templates |
vmauth.annotations: {}
| (object)VMAuth annotations |
vmauth.enabled: false
| (bool)Enable VMAuth CR |
vmauth.labels: {}
| (object)VMAuth labels |
vmauth.spec:
port: "8427"
unauthorizedUserAccessSpec:
disabled: false
discover_backend_ips: true
url_map:
- src_paths:
- '{{ .vm.read.path }}/.*'
url_prefix:
- '{{ urlJoin (omit .vm.read "path") }}/'
- src_paths:
- '{{ .vm.write.path }}/.*'
url_prefix:
- '{{ urlJoin (omit .vm.write "path") }}/'
| (object)Full spec for VMAuth CRD. Allowed values described here It’s possible to use given below predefined variables in spec: * {{ .vm.read }} - parsed vmselect, vmsingle or external.vm.read URL * {{ .vm.write }} - parsed vminsert, vmsingle or external.vm.write URL |
vmauth.spec.unauthorizedUserAccessSpec.disabled: false
| (bool)Flag, that allows to disable default VMAuth unauthorized user access config |
vmcluster.annotations: {}
| (object)VMCluster annotations |
vmcluster.enabled: false
| (bool)Create VMCluster CR |
vmcluster.ingress.insert.annotations: {}
| (object)Ingress annotations |
vmcluster.ingress.insert.enabled: false
| (bool)Enable deployment of ingress for server component |
vmcluster.ingress.insert.hosts: []
| (list)Array of host objects |
vmcluster.ingress.insert.ingressClassName: ""
| (string)Ingress controller class name |
vmcluster.ingress.insert.labels: {}
| (object)Ingress extra labels |
vmcluster.ingress.insert.path: '{{ dig "extraArgs" "http.pathPrefix" "/" .Values.vmcluster.spec.vminsert }}'
| (string)Ingress default path |
vmcluster.ingress.insert.pathType: Prefix
| (string)Ingress path type |
vmcluster.ingress.insert.tls: []
| (list)Array of TLS objects |
vmcluster.ingress.select.annotations: {}
| (object)Ingress annotations |
vmcluster.ingress.select.enabled: false
| (bool)Enable deployment of ingress for server component |
vmcluster.ingress.select.hosts: []
| (list)Array of host objects |
vmcluster.ingress.select.ingressClassName: ""
| (string)Ingress controller class name |
vmcluster.ingress.select.labels: {}
| (object)Ingress extra labels |
vmcluster.ingress.select.path: '{{ dig "extraArgs" "http.pathPrefix" "/" .Values.vmcluster.spec.vmselect }}'
| (string)Ingress default path |
vmcluster.ingress.select.pathType: Prefix
| (string)Ingress path type |
vmcluster.ingress.select.tls: []
| (list)Array of TLS objects |
vmcluster.ingress.storage.annotations: {}
| (object)Ingress annotations |
vmcluster.ingress.storage.enabled: false
| (bool)Enable deployment of ingress for server component |
vmcluster.ingress.storage.hosts: []
| (list)Array of host objects |
vmcluster.ingress.storage.ingressClassName: ""
| (string)Ingress controller class name |
vmcluster.ingress.storage.labels: {}
| (object)Ingress extra labels |
vmcluster.ingress.storage.path: ""
| (string)Ingress default path |
vmcluster.ingress.storage.pathType: Prefix
| (string)Ingress path type |
vmcluster.ingress.storage.tls: []
| (list)Array of TLS objects |
vmcluster.labels: {}
| (object)VMCluster labels |
vmcluster.route.insert.annotations: {}
| (object)HTTPRoute annotations |
vmcluster.route.insert.enabled: false
| (bool)Enable deployment of HTTPRoute for insert component |
vmcluster.route.insert.filters: []
| (list)Filters for a default rule in HTTPRoute |
vmcluster.route.insert.hostnames: []
| (list)Array of hostnames |
vmcluster.route.insert.labels: {}
| (object)HTTPRoute extra labels |
vmcluster.route.insert.matches:
- path:
type: PathPrefix
value: '{{ dig "extraArgs" "http.pathPrefix" "/" .Values.vmcluster.spec.vminsert }}'
| (list)Matches for a default rule in HTTPRoute |
vmcluster.route.insert.parentRefs: []
| (list)HTTPGateway objects refs |
vmcluster.route.insert.port: '{{ .Values.vmcluster.spec.vminsert.port }}'
| (string)Route port |
vmcluster.route.select.annotations: {}
| (object)HTTPRoute annotations |
vmcluster.route.select.enabled: false
| (bool)Enable deployment of HTTPRoute for select component |
vmcluster.route.select.filters: []
| (list)Filters for a default rule in HTTPRoute |
vmcluster.route.select.hostnames: []
| (list)Array of hostnames |
vmcluster.route.select.labels: {}
| (object)HTTPRoute extra labels |
vmcluster.route.select.matches:
- path:
type: PathPrefix
value: '{{ dig "extraArgs" "http.pathPrefix" "/" .Values.vmcluster.spec.vmselect }}'
| (list)Matches for a default rule in HTTPRoute |
vmcluster.route.select.parentRefs: []
| (list)HTTPGateway objects refs |
vmcluster.route.select.port: '{{ .Values.vmcluster.spec.vmselect.port }}'
| (string)Route port |
vmcluster.route.storage.annotations: {}
| (object)HTTPRoute annotations |
vmcluster.route.storage.enabled: false
| (bool)Enable deployment of HTTPRoute for storage component |
vmcluster.route.storage.filters: []
| (list)Filters for a default rule in HTTPRoute |
vmcluster.route.storage.hostnames: []
| (list)Array of hostnames |
vmcluster.route.storage.labels: {}
| (object)HTTPRoute extra labels |
vmcluster.route.storage.matches:
- path:
type: PathPrefix
value: '{{ dig "extraArgs" "http.pathPrefix" "/" .Values.vmcluster.spec.vmstorage }}'
| (list)Matches for a default rule in HTTPRoute |
vmcluster.route.storage.parentRefs: []
| (list)HTTPGateway objects refs |
vmcluster.route.storage.port: '{{ .Values.vmcluster.spec.vmstorage.port }}'
| (string)Route port |
vmcluster.spec:
replicationFactor: 2
retentionPeriod: "1"
vminsert:
enabled: true
extraArgs: {}
port: "8480"
replicaCount: 2
resources: {}
vmselect:
cacheMountPath: /select-cache
enabled: true
extraArgs: {}
port: "8481"
replicaCount: 2
resources: {}
storage:
volumeClaimTemplate:
spec:
resources:
requests:
storage: 2Gi
vmstorage:
replicaCount: 2
resources: {}
storage:
volumeClaimTemplate:
spec:
resources:
requests:
storage: 10Gi
storageDataPath: /vm-data
| (object)Full spec for VMCluster CRD. Allowed values described here |
vmcluster.spec.retentionPeriod: "1"
| (string)Data retention period. Possible units character: h(ours), d(ays), w(eeks), y(ears), if no unit character specified - month. The minimum retention period is 24h. See these docs |
vmcluster.spec.vminsert.enabled: true
| (bool)Set this value to false to disable VMInsert |
vmcluster.spec.vmselect.enabled: true
| (bool)Set this value to false to disable VMSelect |
vmdistributed.annotations: {}
| (object)VMDistributed annotations |
vmdistributed.enabled: false
| (bool)Create VMDistributed CR |
vmdistributed.labels: {}
| (object)VMDistributed labels |
vmdistributed.spec:
vmauth:
spec:
port: "8427"
zoneCommon:
vmcluster:
spec:
vminsert:
replicaCount: 2
vmselect:
cacheMountPath: /select-cache
replicaCount: 2
storage:
volumeClaimTemplate:
spec:
resources:
requests:
storage: 2Gi
vmstorage:
replicaCount: 2
storage:
volumeClaimTemplate:
spec:
resources:
requests:
storage: 10Gi
storageDataPath: /vm-data
zones:
- name: us-east-1
| (object)Full spec for VMDistributed CRD. Allowed values described here |
vmsingle.annotations: {}
| (object)VMSingle annotations |
vmsingle.enabled: true
| (bool)Create VMSingle CR |
vmsingle.ingress.annotations: {}
| (object)Ingress annotations |
vmsingle.ingress.enabled: false
| (bool)Enable deployment of ingress for server component |
vmsingle.ingress.hosts: []
| (list)Array of host objects |
vmsingle.ingress.ingressClassName: ""
| (string)Ingress controller class name |
vmsingle.ingress.labels: {}
| (object)Ingress extra labels |
vmsingle.ingress.path: ""
| (string)Ingress default path |
vmsingle.ingress.pathType: Prefix
| (string)Ingress path type |
vmsingle.ingress.tls: []
| (list)Array of TLS objects |
vmsingle.labels: {}
| (object)VMSingle labels |
vmsingle.route.annotations: {}
| (object)HTTPRoute annotations |
vmsingle.route.enabled: false
| (bool)Enable deployment of HTTPRoute for server component |
vmsingle.route.filters: []
| (list)Filters for a default rule in HTTPRoute |
vmsingle.route.hostnames: []
| (list)Array of hostnames |
vmsingle.route.labels: {}
| (object)HTTPRoute extra labels |
vmsingle.route.matches:
- path:
type: PathPrefix
value: '{{ dig "spec" "extraArgs" "http.pathPrefix" "/" .Values.vmsingle }}'
| (list)Matches for a default rule in HTTPRoute |
vmsingle.route.parentRefs: []
| (list)HTTPGateway objects refs |
vmsingle.route.port: '{{ .Values.vmsingle.spec.port }}'
| (string)Route port |
vmsingle.spec:
extraArgs: {}
port: "8428"
replicaCount: 1
retentionPeriod: "1"
storage:
accessModes:
- ReadWriteOnce
resources:
requests:
storage: 20Gi
| (object)Full spec for VMSingle CRD. Allowed values describe here |
vmsingle.spec.retentionPeriod: "1"
| (string)Data retention period. Possible units character: h(ours), d(ays), w(eeks), y(ears), if no unit character specified - month. The minimum retention period is 24h. See these docs |