mirror of
https://github.com/VictoriaMetrics/VictoriaMetrics.git
synced 2024-12-22 16:36:27 +01:00
73206473ff
Automated changes by [create-pull-request](https://github.com/peter-evans/create-pull-request) GitHub action Signed-off-by: Github Actions <133988544+victoriametrics-bot@users.noreply.github.com> Co-authored-by: AndrewChubatiuk <3162380+AndrewChubatiuk@users.noreply.github.com>
1873 lines
49 KiB
Markdown
1873 lines
49 KiB
Markdown
![Type: application](https://img.shields.io/badge/Type-application-informational?style=flat-square) ![Version: 0.11.1](https://img.shields.io/badge/Version-0.11.1-informational?style=flat-square)
|
|
[![Artifact Hub](https://img.shields.io/endpoint?url=https://artifacthub.io/badge/repository/victoriametrics)](https://artifacthub.io/packages/helm/victoriametrics/victoria-metrics-alert)
|
|
[![Slack](https://img.shields.io/badge/join%20slack-%23victoriametrics-brightgreen.svg)](https://slack.victoriametrics.com/)
|
|
|
|
Victoria Metrics Alert - executes a list of given MetricsQL expressions (rules) and sends alerts to Alert Manager.
|
|
|
|
## Prerequisites
|
|
|
|
* Install the follow packages: ``git``, ``kubectl``, ``helm``, ``helm-docs``. See this [tutorial](../../REQUIREMENTS.md).
|
|
|
|
## How to install
|
|
|
|
Access a Kubernetes cluster.
|
|
|
|
### Setup chart repository (can be omitted for OCI repositories)
|
|
|
|
Add a chart helm repository with follow commands:
|
|
|
|
```console
|
|
helm repo add vm https://victoriametrics.github.io/helm-charts/
|
|
|
|
helm repo update
|
|
```
|
|
List versions of `vm/victoria-metrics-alert` chart available to installation:
|
|
|
|
```console
|
|
helm search repo vm/victoria-metrics-alert -l
|
|
```
|
|
|
|
### Install `victoria-metrics-alert` chart
|
|
|
|
Export default values of `victoria-metrics-alert` chart to file `values.yaml`:
|
|
|
|
- For HTTPS repository
|
|
|
|
```console
|
|
helm show values vm/victoria-metrics-alert > values.yaml
|
|
```
|
|
- For OCI repository
|
|
|
|
```console
|
|
helm show values oci://ghcr.io/victoriametrics/helm-charts/victoria-metrics-alert > values.yaml
|
|
```
|
|
|
|
Change the values according to the need of the environment in ``values.yaml`` file.
|
|
|
|
Test the installation with command:
|
|
|
|
- For HTTPS repository
|
|
|
|
```console
|
|
helm install vma vm/victoria-metrics-alert -f values.yaml -n NAMESPACE --debug --dry-run
|
|
```
|
|
|
|
- For OCI repository
|
|
|
|
```console
|
|
helm install vma oci://ghcr.io/victoriametrics/helm-charts/victoria-metrics-alert -f values.yaml -n NAMESPACE --debug --dry-run
|
|
```
|
|
|
|
Install chart with command:
|
|
|
|
- For HTTPS repository
|
|
|
|
```console
|
|
helm install vma vm/victoria-metrics-alert -f values.yaml -n NAMESPACE
|
|
```
|
|
|
|
- For OCI repository
|
|
|
|
```console
|
|
helm install vma oci://ghcr.io/victoriametrics/helm-charts/victoria-metrics-alert -f values.yaml -n NAMESPACE
|
|
```
|
|
|
|
Get the pods lists by running this commands:
|
|
|
|
```console
|
|
kubectl get pods -A | grep 'vma'
|
|
```
|
|
|
|
Get the application by running this command:
|
|
|
|
```console
|
|
helm list -f vma -n NAMESPACE
|
|
```
|
|
|
|
See the history of versions of `vma` application with command.
|
|
|
|
```console
|
|
helm history vma -n NAMESPACE
|
|
```
|
|
|
|
## HA configuration for Alertmanager
|
|
|
|
There is no option on this chart to set up Alertmanager with [HA mode](https://github.com/prometheus/alertmanager#high-availability).
|
|
To enable the HA configuration, you can use:
|
|
- [VictoriaMetrics Operator](https://docs.victoriametrics.com/operator/)
|
|
- official [Alertmanager Helm chart](https://github.com/prometheus-community/helm-charts/tree/main/charts/alertmanager)
|
|
|
|
## How to uninstall
|
|
|
|
Remove application with command.
|
|
|
|
```console
|
|
helm uninstall vma -n NAMESPACE
|
|
```
|
|
|
|
## Documentation of Helm Chart
|
|
|
|
Install ``helm-docs`` following the instructions on this [tutorial](../../REQUIREMENTS.md).
|
|
|
|
Generate docs with ``helm-docs`` command.
|
|
|
|
```bash
|
|
cd charts/victoria-metrics-alert
|
|
|
|
helm-docs
|
|
```
|
|
|
|
The markdown generation is entirely go template driven. The tool parses metadata from charts and generates a number of sub-templates that can be referenced in a template file (by default ``README.md.gotmpl``). If no template file is provided, the tool has a default internal template that will generate a reasonably formatted README.
|
|
|
|
## Parameters
|
|
|
|
The following tables lists the configurable parameters of the chart and their default values.
|
|
|
|
Change the values according to the need of the environment in ``victoria-metrics-alert/values.yaml`` file.
|
|
|
|
<table class="helm-vars">
|
|
<thead>
|
|
<th class="helm-vars-key">Key</th>
|
|
<th class="helm-vars-type">Type</th>
|
|
<th class="helm-vars-default">Default</th>
|
|
<th class="helm-vars-description">Description</th>
|
|
</thead>
|
|
<tbody>
|
|
<tr>
|
|
<td>alertmanager.baseURL</td>
|
|
<td>string</td>
|
|
<td><pre class="helm-vars-default-value" language-yaml" lang="">
|
|
<code class="language-yaml">""
|
|
</code>
|
|
</pre>
|
|
</td>
|
|
<td><p>External URL, that alertmanager will expose to receivers</p>
|
|
</td>
|
|
</tr>
|
|
<tr>
|
|
<td>alertmanager.baseURLPrefix</td>
|
|
<td>string</td>
|
|
<td><pre class="helm-vars-default-value" language-yaml" lang="">
|
|
<code class="language-yaml">""
|
|
</code>
|
|
</pre>
|
|
</td>
|
|
<td><p>External URL Prefix, Prefix for the internal routes of web endpoints</p>
|
|
</td>
|
|
</tr>
|
|
<tr>
|
|
<td>alertmanager.config</td>
|
|
<td>object</td>
|
|
<td><pre class="helm-vars-default-value" language-yaml" lang="plaintext">
|
|
<code class="language-yaml">global:
|
|
resolve_timeout: 5m
|
|
receivers:
|
|
- name: devnull
|
|
route:
|
|
group_by:
|
|
- alertname
|
|
group_interval: 10s
|
|
group_wait: 30s
|
|
receiver: devnull
|
|
repeat_interval: 24h
|
|
</code>
|
|
</pre>
|
|
</td>
|
|
<td><p>Alertmanager configuration</p>
|
|
</td>
|
|
</tr>
|
|
<tr>
|
|
<td>alertmanager.configMap</td>
|
|
<td>string</td>
|
|
<td><pre class="helm-vars-default-value" language-yaml" lang="">
|
|
<code class="language-yaml">""
|
|
</code>
|
|
</pre>
|
|
</td>
|
|
<td><p>Use existing configmap if specified otherwise .config values will be used</p>
|
|
</td>
|
|
</tr>
|
|
<tr>
|
|
<td>alertmanager.emptyDir</td>
|
|
<td>object</td>
|
|
<td><pre class="helm-vars-default-value" language-yaml" lang="plaintext">
|
|
<code class="language-yaml">{}
|
|
</code>
|
|
</pre>
|
|
</td>
|
|
<td><p>Empty dir configuration if persistence is disabled for Alertmanager</p>
|
|
</td>
|
|
</tr>
|
|
<tr>
|
|
<td>alertmanager.enabled</td>
|
|
<td>bool</td>
|
|
<td><pre class="helm-vars-default-value" language-yaml" lang="">
|
|
<code class="language-yaml">false
|
|
</code>
|
|
</pre>
|
|
</td>
|
|
<td><p>Create alertmanager resources</p>
|
|
</td>
|
|
</tr>
|
|
<tr>
|
|
<td>alertmanager.envFrom</td>
|
|
<td>list</td>
|
|
<td><pre class="helm-vars-default-value" language-yaml" lang="plaintext">
|
|
<code class="language-yaml">[]
|
|
</code>
|
|
</pre>
|
|
</td>
|
|
<td><p>Specify alternative source for env variables</p>
|
|
</td>
|
|
</tr>
|
|
<tr>
|
|
<td>alertmanager.extraArgs</td>
|
|
<td>object</td>
|
|
<td><pre class="helm-vars-default-value" language-yaml" lang="plaintext">
|
|
<code class="language-yaml">{}
|
|
</code>
|
|
</pre>
|
|
</td>
|
|
<td><p>Extra command line arguments for container of component</p>
|
|
</td>
|
|
</tr>
|
|
<tr>
|
|
<td>alertmanager.extraContainers</td>
|
|
<td>list</td>
|
|
<td><pre class="helm-vars-default-value" language-yaml" lang="plaintext">
|
|
<code class="language-yaml">[]
|
|
</code>
|
|
</pre>
|
|
</td>
|
|
<td><p>Extra containers to run in a pod with alertmanager</p>
|
|
</td>
|
|
</tr>
|
|
<tr>
|
|
<td>alertmanager.extraHostPathMounts</td>
|
|
<td>list</td>
|
|
<td><pre class="helm-vars-default-value" language-yaml" lang="plaintext">
|
|
<code class="language-yaml">[]
|
|
</code>
|
|
</pre>
|
|
</td>
|
|
<td><p>Additional hostPath mounts</p>
|
|
</td>
|
|
</tr>
|
|
<tr>
|
|
<td>alertmanager.extraVolumeMounts</td>
|
|
<td>list</td>
|
|
<td><pre class="helm-vars-default-value" language-yaml" lang="plaintext">
|
|
<code class="language-yaml">[]
|
|
</code>
|
|
</pre>
|
|
</td>
|
|
<td><p>Extra Volume Mounts for the container</p>
|
|
</td>
|
|
</tr>
|
|
<tr>
|
|
<td>alertmanager.extraVolumes</td>
|
|
<td>list</td>
|
|
<td><pre class="helm-vars-default-value" language-yaml" lang="plaintext">
|
|
<code class="language-yaml">[]
|
|
</code>
|
|
</pre>
|
|
</td>
|
|
<td><p>Extra Volumes for the pod</p>
|
|
</td>
|
|
</tr>
|
|
<tr>
|
|
<td>alertmanager.image</td>
|
|
<td>object</td>
|
|
<td><pre class="helm-vars-default-value" language-yaml" lang="plaintext">
|
|
<code class="language-yaml">registry: ""
|
|
repository: prom/alertmanager
|
|
tag: v0.25.0
|
|
</code>
|
|
</pre>
|
|
</td>
|
|
<td><p>Alertmanager image configuration</p>
|
|
</td>
|
|
</tr>
|
|
<tr>
|
|
<td>alertmanager.imagePullSecrets</td>
|
|
<td>list</td>
|
|
<td><pre class="helm-vars-default-value" language-yaml" lang="plaintext">
|
|
<code class="language-yaml">[]
|
|
</code>
|
|
</pre>
|
|
</td>
|
|
<td><p>Image pull secrets</p>
|
|
</td>
|
|
</tr>
|
|
<tr>
|
|
<td>alertmanager.ingress.annotations</td>
|
|
<td>object</td>
|
|
<td><pre class="helm-vars-default-value" language-yaml" lang="plaintext">
|
|
<code class="language-yaml">{}
|
|
</code>
|
|
</pre>
|
|
</td>
|
|
<td><p>Ingress annotations</p>
|
|
</td>
|
|
</tr>
|
|
<tr>
|
|
<td>alertmanager.ingress.enabled</td>
|
|
<td>bool</td>
|
|
<td><pre class="helm-vars-default-value" language-yaml" lang="">
|
|
<code class="language-yaml">false
|
|
</code>
|
|
</pre>
|
|
</td>
|
|
<td><p>Enable deployment of ingress for alertmanager component</p>
|
|
</td>
|
|
</tr>
|
|
<tr>
|
|
<td>alertmanager.ingress.extraLabels</td>
|
|
<td>object</td>
|
|
<td><pre class="helm-vars-default-value" language-yaml" lang="plaintext">
|
|
<code class="language-yaml">{}
|
|
</code>
|
|
</pre>
|
|
</td>
|
|
<td><p>Ingress extra labels</p>
|
|
</td>
|
|
</tr>
|
|
<tr>
|
|
<td>alertmanager.ingress.hosts</td>
|
|
<td>list</td>
|
|
<td><pre class="helm-vars-default-value" language-yaml" lang="plaintext">
|
|
<code class="language-yaml">[]
|
|
</code>
|
|
</pre>
|
|
</td>
|
|
<td><p>Array of host objects</p>
|
|
</td>
|
|
</tr>
|
|
<tr>
|
|
<td>alertmanager.ingress.ingressClassName</td>
|
|
<td>string</td>
|
|
<td><pre class="helm-vars-default-value" language-yaml" lang="">
|
|
<code class="language-yaml">""
|
|
</code>
|
|
</pre>
|
|
</td>
|
|
<td><p>Ingress controller class name</p>
|
|
</td>
|
|
</tr>
|
|
<tr>
|
|
<td>alertmanager.ingress.pathType</td>
|
|
<td>string</td>
|
|
<td><pre class="helm-vars-default-value" language-yaml" lang="">
|
|
<code class="language-yaml">Prefix
|
|
</code>
|
|
</pre>
|
|
</td>
|
|
<td><p>Ingress path type</p>
|
|
</td>
|
|
</tr>
|
|
<tr>
|
|
<td>alertmanager.ingress.tls</td>
|
|
<td>list</td>
|
|
<td><pre class="helm-vars-default-value" language-yaml" lang="plaintext">
|
|
<code class="language-yaml">[]
|
|
</code>
|
|
</pre>
|
|
</td>
|
|
<td><p>Array of TLS objects</p>
|
|
</td>
|
|
</tr>
|
|
<tr>
|
|
<td>alertmanager.initContainers</td>
|
|
<td>list</td>
|
|
<td><pre class="helm-vars-default-value" language-yaml" lang="plaintext">
|
|
<code class="language-yaml">[]
|
|
</code>
|
|
</pre>
|
|
</td>
|
|
<td><p>Additional initContainers to initialize the pod</p>
|
|
</td>
|
|
</tr>
|
|
<tr>
|
|
<td>alertmanager.listenAddress</td>
|
|
<td>string</td>
|
|
<td><pre class="helm-vars-default-value" language-yaml" lang="">
|
|
<code class="language-yaml">0.0.0.0:9093
|
|
</code>
|
|
</pre>
|
|
</td>
|
|
<td><p>Alertmanager listen address</p>
|
|
</td>
|
|
</tr>
|
|
<tr>
|
|
<td>alertmanager.nodeSelector</td>
|
|
<td>object</td>
|
|
<td><pre class="helm-vars-default-value" language-yaml" lang="plaintext">
|
|
<code class="language-yaml">{}
|
|
</code>
|
|
</pre>
|
|
</td>
|
|
<td><p>Pod’s node selector. Details are <a href="https://kubernetes.io/docs/user-guide/node-selection/" target="_blank">here</a></p>
|
|
</td>
|
|
</tr>
|
|
<tr>
|
|
<td>alertmanager.persistentVolume.accessModes</td>
|
|
<td>list</td>
|
|
<td><pre class="helm-vars-default-value" language-yaml" lang="plaintext">
|
|
<code class="language-yaml">- ReadWriteOnce
|
|
</code>
|
|
</pre>
|
|
</td>
|
|
<td><p>Array of access modes. Must match those of existing PV or dynamic provisioner. Details are <a href="http://kubernetes.io/docs/user-guide/persistent-volumes/" target="_blank">here</a></p>
|
|
</td>
|
|
</tr>
|
|
<tr>
|
|
<td>alertmanager.persistentVolume.annotations</td>
|
|
<td>object</td>
|
|
<td><pre class="helm-vars-default-value" language-yaml" lang="plaintext">
|
|
<code class="language-yaml">{}
|
|
</code>
|
|
</pre>
|
|
</td>
|
|
<td><p>Persistant volume annotations</p>
|
|
</td>
|
|
</tr>
|
|
<tr>
|
|
<td>alertmanager.persistentVolume.enabled</td>
|
|
<td>bool</td>
|
|
<td><pre class="helm-vars-default-value" language-yaml" lang="">
|
|
<code class="language-yaml">false
|
|
</code>
|
|
</pre>
|
|
</td>
|
|
<td><p>Create/use Persistent Volume Claim for alertmanager component. Empty dir if false</p>
|
|
</td>
|
|
</tr>
|
|
<tr>
|
|
<td>alertmanager.persistentVolume.existingClaim</td>
|
|
<td>string</td>
|
|
<td><pre class="helm-vars-default-value" language-yaml" lang="">
|
|
<code class="language-yaml">""
|
|
</code>
|
|
</pre>
|
|
</td>
|
|
<td><p>Existing Claim name. If defined, PVC must be created manually before volume will be bound</p>
|
|
</td>
|
|
</tr>
|
|
<tr>
|
|
<td>alertmanager.persistentVolume.mountPath</td>
|
|
<td>string</td>
|
|
<td><pre class="helm-vars-default-value" language-yaml" lang="">
|
|
<code class="language-yaml">/data
|
|
</code>
|
|
</pre>
|
|
</td>
|
|
<td><p>Mount path. Alertmanager data Persistent Volume mount root path.</p>
|
|
</td>
|
|
</tr>
|
|
<tr>
|
|
<td>alertmanager.persistentVolume.size</td>
|
|
<td>string</td>
|
|
<td><pre class="helm-vars-default-value" language-yaml" lang="">
|
|
<code class="language-yaml">50Mi
|
|
</code>
|
|
</pre>
|
|
</td>
|
|
<td><p>Size of the volume. Better to set the same as resource limit memory property.</p>
|
|
</td>
|
|
</tr>
|
|
<tr>
|
|
<td>alertmanager.persistentVolume.storageClassName</td>
|
|
<td>string</td>
|
|
<td><pre class="helm-vars-default-value" language-yaml" lang="">
|
|
<code class="language-yaml">""
|
|
</code>
|
|
</pre>
|
|
</td>
|
|
<td><p>StorageClass to use for persistent volume. Requires alertmanager.persistentVolume.enabled: true. If defined, PVC created automatically</p>
|
|
</td>
|
|
</tr>
|
|
<tr>
|
|
<td>alertmanager.persistentVolume.subPath</td>
|
|
<td>string</td>
|
|
<td><pre class="helm-vars-default-value" language-yaml" lang="">
|
|
<code class="language-yaml">""
|
|
</code>
|
|
</pre>
|
|
</td>
|
|
<td><p>Mount subpath</p>
|
|
</td>
|
|
</tr>
|
|
<tr>
|
|
<td>alertmanager.podMetadata</td>
|
|
<td>object</td>
|
|
<td><pre class="helm-vars-default-value" language-yaml" lang="plaintext">
|
|
<code class="language-yaml">annotations: {}
|
|
labels: {}
|
|
</code>
|
|
</pre>
|
|
</td>
|
|
<td><p>Alertmanager Pod metadata</p>
|
|
</td>
|
|
</tr>
|
|
<tr>
|
|
<td>alertmanager.podSecurityContext</td>
|
|
<td>object</td>
|
|
<td><pre class="helm-vars-default-value" language-yaml" lang="plaintext">
|
|
<code class="language-yaml">enabled: false
|
|
</code>
|
|
</pre>
|
|
</td>
|
|
<td><p>Pod’s security context. Details are <a href="https://kubernetes.io/docs/tasks/configure-pod-container/security-context/" target="_blank">here</a></p>
|
|
</td>
|
|
</tr>
|
|
<tr>
|
|
<td>alertmanager.priorityClassName</td>
|
|
<td>string</td>
|
|
<td><pre class="helm-vars-default-value" language-yaml" lang="">
|
|
<code class="language-yaml">""
|
|
</code>
|
|
</pre>
|
|
</td>
|
|
<td><p>Name of Priority Class</p>
|
|
</td>
|
|
</tr>
|
|
<tr>
|
|
<td>alertmanager.probe.liveness</td>
|
|
<td>object</td>
|
|
<td><pre class="helm-vars-default-value" language-yaml" lang="plaintext">
|
|
<code class="language-yaml">httpGet:
|
|
path: '{{ ternary "" .baseURLPrefix (empty .baseURLPrefix) }}/-/healthy'
|
|
port: web
|
|
</code>
|
|
</pre>
|
|
</td>
|
|
<td><p>Liveness probe</p>
|
|
</td>
|
|
</tr>
|
|
<tr>
|
|
<td>alertmanager.probe.readiness</td>
|
|
<td>object</td>
|
|
<td><pre class="helm-vars-default-value" language-yaml" lang="plaintext">
|
|
<code class="language-yaml">httpGet:
|
|
path: '{{ ternary "" .baseURLPrefix (empty .baseURLPrefix) }}/-/ready'
|
|
port: web
|
|
</code>
|
|
</pre>
|
|
</td>
|
|
<td><p>Readiness probe</p>
|
|
</td>
|
|
</tr>
|
|
<tr>
|
|
<td>alertmanager.probe.startup</td>
|
|
<td>object</td>
|
|
<td><pre class="helm-vars-default-value" language-yaml" lang="plaintext">
|
|
<code class="language-yaml">httpGet:
|
|
path: '{{ ternary "" .baseURLPrefix (empty .baseURLPrefix) }}/-/ready'
|
|
port: web
|
|
</code>
|
|
</pre>
|
|
</td>
|
|
<td><p>Startup probe</p>
|
|
</td>
|
|
</tr>
|
|
<tr>
|
|
<td>alertmanager.resources</td>
|
|
<td>object</td>
|
|
<td><pre class="helm-vars-default-value" language-yaml" lang="plaintext">
|
|
<code class="language-yaml">{}
|
|
</code>
|
|
</pre>
|
|
</td>
|
|
<td><p>Resource object. Details are <a href="http://kubernetes.io/docs/user-guide/compute-resources/" target="_blank">here</a></p>
|
|
</td>
|
|
</tr>
|
|
<tr>
|
|
<td>alertmanager.retention</td>
|
|
<td>string</td>
|
|
<td><pre class="helm-vars-default-value" language-yaml" lang="">
|
|
<code class="language-yaml">120h
|
|
</code>
|
|
</pre>
|
|
</td>
|
|
<td><p>Alertmanager retention</p>
|
|
</td>
|
|
</tr>
|
|
<tr>
|
|
<td>alertmanager.securityContext</td>
|
|
<td>object</td>
|
|
<td><pre class="helm-vars-default-value" language-yaml" lang="plaintext">
|
|
<code class="language-yaml">enabled: false
|
|
</code>
|
|
</pre>
|
|
</td>
|
|
<td><p>Security context to be added to server pods</p>
|
|
</td>
|
|
</tr>
|
|
<tr>
|
|
<td>alertmanager.service.annotations</td>
|
|
<td>object</td>
|
|
<td><pre class="helm-vars-default-value" language-yaml" lang="plaintext">
|
|
<code class="language-yaml">{}
|
|
</code>
|
|
</pre>
|
|
</td>
|
|
<td><p>Service annotations</p>
|
|
</td>
|
|
</tr>
|
|
<tr>
|
|
<td>alertmanager.service.clusterIP</td>
|
|
<td>string</td>
|
|
<td><pre class="helm-vars-default-value" language-yaml" lang="">
|
|
<code class="language-yaml">""
|
|
</code>
|
|
</pre>
|
|
</td>
|
|
<td><p>Service ClusterIP</p>
|
|
</td>
|
|
</tr>
|
|
<tr>
|
|
<td>alertmanager.service.externalIPs</td>
|
|
<td>list</td>
|
|
<td><pre class="helm-vars-default-value" language-yaml" lang="plaintext">
|
|
<code class="language-yaml">[]
|
|
</code>
|
|
</pre>
|
|
</td>
|
|
<td><p>Service external IPs. Check <a href="https://kubernetes.io/docs/user-guide/services/#external-ips" target="_blank">here</a> for details</p>
|
|
</td>
|
|
</tr>
|
|
<tr>
|
|
<td>alertmanager.service.externalTrafficPolicy</td>
|
|
<td>string</td>
|
|
<td><pre class="helm-vars-default-value" language-yaml" lang="">
|
|
<code class="language-yaml">""
|
|
</code>
|
|
</pre>
|
|
</td>
|
|
<td><p>Service external traffic policy. Check <a href="https://kubernetes.io/docs/tasks/access-application-cluster/create-external-load-balancer/#preserving-the-client-source-ip" target="_blank">here</a> for details</p>
|
|
</td>
|
|
</tr>
|
|
<tr>
|
|
<td>alertmanager.service.healthCheckNodePort</td>
|
|
<td>string</td>
|
|
<td><pre class="helm-vars-default-value" language-yaml" lang="">
|
|
<code class="language-yaml">""
|
|
</code>
|
|
</pre>
|
|
</td>
|
|
<td><p>Health check node port for a service. Check <a href="https://kubernetes.io/docs/tasks/access-application-cluster/create-external-load-balancer/#preserving-the-client-source-ip" target="_blank">here</a> for details</p>
|
|
</td>
|
|
</tr>
|
|
<tr>
|
|
<td>alertmanager.service.ipFamilies</td>
|
|
<td>list</td>
|
|
<td><pre class="helm-vars-default-value" language-yaml" lang="plaintext">
|
|
<code class="language-yaml">[]
|
|
</code>
|
|
</pre>
|
|
</td>
|
|
<td><p>List of service IP families. Check <a href="https://kubernetes.io/docs/concepts/services-networking/dual-stack/#services" target="_blank">here</a> for details.</p>
|
|
</td>
|
|
</tr>
|
|
<tr>
|
|
<td>alertmanager.service.ipFamilyPolicy</td>
|
|
<td>string</td>
|
|
<td><pre class="helm-vars-default-value" language-yaml" lang="">
|
|
<code class="language-yaml">""
|
|
</code>
|
|
</pre>
|
|
</td>
|
|
<td><p>Service IP family policy. Check <a href="https://kubernetes.io/docs/concepts/services-networking/dual-stack/#services" target="_blank">here</a> for details.</p>
|
|
</td>
|
|
</tr>
|
|
<tr>
|
|
<td>alertmanager.service.labels</td>
|
|
<td>object</td>
|
|
<td><pre class="helm-vars-default-value" language-yaml" lang="plaintext">
|
|
<code class="language-yaml">{}
|
|
</code>
|
|
</pre>
|
|
</td>
|
|
<td><p>Service labels</p>
|
|
</td>
|
|
</tr>
|
|
<tr>
|
|
<td>alertmanager.service.loadBalancerIP</td>
|
|
<td>string</td>
|
|
<td><pre class="helm-vars-default-value" language-yaml" lang="">
|
|
<code class="language-yaml">""
|
|
</code>
|
|
</pre>
|
|
</td>
|
|
<td><p>Service load balacner IP</p>
|
|
</td>
|
|
</tr>
|
|
<tr>
|
|
<td>alertmanager.service.loadBalancerSourceRanges</td>
|
|
<td>list</td>
|
|
<td><pre class="helm-vars-default-value" language-yaml" lang="plaintext">
|
|
<code class="language-yaml">[]
|
|
</code>
|
|
</pre>
|
|
</td>
|
|
<td><p>Load balancer source range</p>
|
|
</td>
|
|
</tr>
|
|
<tr>
|
|
<td>alertmanager.service.servicePort</td>
|
|
<td>int</td>
|
|
<td><pre class="helm-vars-default-value" language-yaml" lang="">
|
|
<code class="language-yaml">8880
|
|
</code>
|
|
</pre>
|
|
</td>
|
|
<td><p>Service port</p>
|
|
</td>
|
|
</tr>
|
|
<tr>
|
|
<td>alertmanager.service.type</td>
|
|
<td>string</td>
|
|
<td><pre class="helm-vars-default-value" language-yaml" lang="">
|
|
<code class="language-yaml">ClusterIP
|
|
</code>
|
|
</pre>
|
|
</td>
|
|
<td><p>Service type</p>
|
|
</td>
|
|
</tr>
|
|
<tr>
|
|
<td>alertmanager.templates</td>
|
|
<td>object</td>
|
|
<td><pre class="helm-vars-default-value" language-yaml" lang="plaintext">
|
|
<code class="language-yaml">{}
|
|
</code>
|
|
</pre>
|
|
</td>
|
|
<td><p>Alertmanager extra templates</p>
|
|
</td>
|
|
</tr>
|
|
<tr>
|
|
<td>alertmanager.tolerations</td>
|
|
<td>list</td>
|
|
<td><pre class="helm-vars-default-value" language-yaml" lang="plaintext">
|
|
<code class="language-yaml">[]
|
|
</code>
|
|
</pre>
|
|
</td>
|
|
<td><p>Node tolerations for server scheduling to nodes with taints. Details are <a href="https://kubernetes.io/docs/concepts/configuration/assign-pod-node/" target="_blank">here</a></p>
|
|
</td>
|
|
</tr>
|
|
<tr>
|
|
<td>extraObjects</td>
|
|
<td>list</td>
|
|
<td><pre class="helm-vars-default-value" language-yaml" lang="plaintext">
|
|
<code class="language-yaml">[]
|
|
</code>
|
|
</pre>
|
|
</td>
|
|
<td><p>Add extra specs dynamically to this chart</p>
|
|
</td>
|
|
</tr>
|
|
<tr>
|
|
<td>global.compatibility</td>
|
|
<td>object</td>
|
|
<td><pre class="helm-vars-default-value" language-yaml" lang="plaintext">
|
|
<code class="language-yaml">openshift:
|
|
adaptSecurityContext: auto
|
|
</code>
|
|
</pre>
|
|
</td>
|
|
<td><p>Openshift security context compatibility configuration</p>
|
|
</td>
|
|
</tr>
|
|
<tr>
|
|
<td>global.image.registry</td>
|
|
<td>string</td>
|
|
<td><pre class="helm-vars-default-value" language-yaml" lang="">
|
|
<code class="language-yaml">""
|
|
</code>
|
|
</pre>
|
|
</td>
|
|
<td><p>Image registry, that can be shared across multiple helm charts</p>
|
|
</td>
|
|
</tr>
|
|
<tr>
|
|
<td>global.imagePullSecrets</td>
|
|
<td>list</td>
|
|
<td><pre class="helm-vars-default-value" language-yaml" lang="plaintext">
|
|
<code class="language-yaml">[]
|
|
</code>
|
|
</pre>
|
|
</td>
|
|
<td><p>Image pull secrets, that can be shared across multiple helm charts</p>
|
|
</td>
|
|
</tr>
|
|
<tr>
|
|
<td>license</td>
|
|
<td>object</td>
|
|
<td><pre class="helm-vars-default-value" language-yaml" lang="plaintext">
|
|
<code class="language-yaml">key: ""
|
|
secret:
|
|
key: ""
|
|
name: ""
|
|
</code>
|
|
</pre>
|
|
</td>
|
|
<td><p>Enterprise license key configuration for VictoriaMetrics enterprise. Required only for VictoriaMetrics enterprise. Check docs <a href="https://docs.victoriametrics.com/enterprise" target="_blank">here</a>, for more information, visit <a href="https://victoriametrics.com/products/enterprise/" target="_blank">site</a>. Request a trial license <a href="https://victoriametrics.com/products/enterprise/trial/" target="_blank">here</a> Supported starting from VictoriaMetrics v1.94.0</p>
|
|
</td>
|
|
</tr>
|
|
<tr>
|
|
<td>license.key</td>
|
|
<td>string</td>
|
|
<td><pre class="helm-vars-default-value" language-yaml" lang="">
|
|
<code class="language-yaml">""
|
|
</code>
|
|
</pre>
|
|
</td>
|
|
<td><p>License key</p>
|
|
</td>
|
|
</tr>
|
|
<tr>
|
|
<td>license.secret</td>
|
|
<td>object</td>
|
|
<td><pre class="helm-vars-default-value" language-yaml" lang="plaintext">
|
|
<code class="language-yaml">key: ""
|
|
name: ""
|
|
</code>
|
|
</pre>
|
|
</td>
|
|
<td><p>Use existing secret with license key</p>
|
|
</td>
|
|
</tr>
|
|
<tr>
|
|
<td>license.secret.key</td>
|
|
<td>string</td>
|
|
<td><pre class="helm-vars-default-value" language-yaml" lang="">
|
|
<code class="language-yaml">""
|
|
</code>
|
|
</pre>
|
|
</td>
|
|
<td><p>Key in secret with license key</p>
|
|
</td>
|
|
</tr>
|
|
<tr>
|
|
<td>license.secret.name</td>
|
|
<td>string</td>
|
|
<td><pre class="helm-vars-default-value" language-yaml" lang="">
|
|
<code class="language-yaml">""
|
|
</code>
|
|
</pre>
|
|
</td>
|
|
<td><p>Existing secret name</p>
|
|
</td>
|
|
</tr>
|
|
<tr>
|
|
<td>rbac.annotations</td>
|
|
<td>object</td>
|
|
<td><pre class="helm-vars-default-value" language-yaml" lang="plaintext">
|
|
<code class="language-yaml">{}
|
|
</code>
|
|
</pre>
|
|
</td>
|
|
<td><p>Role/RoleBinding annotations</p>
|
|
</td>
|
|
</tr>
|
|
<tr>
|
|
<td>rbac.create</td>
|
|
<td>bool</td>
|
|
<td><pre class="helm-vars-default-value" language-yaml" lang="">
|
|
<code class="language-yaml">true
|
|
</code>
|
|
</pre>
|
|
</td>
|
|
<td><p>Enables Role/RoleBinding creation</p>
|
|
</td>
|
|
</tr>
|
|
<tr>
|
|
<td>rbac.extraLabels</td>
|
|
<td>object</td>
|
|
<td><pre class="helm-vars-default-value" language-yaml" lang="plaintext">
|
|
<code class="language-yaml">{}
|
|
</code>
|
|
</pre>
|
|
</td>
|
|
<td><p>Role/RoleBinding labels</p>
|
|
</td>
|
|
</tr>
|
|
<tr>
|
|
<td>rbac.namespaced</td>
|
|
<td>bool</td>
|
|
<td><pre class="helm-vars-default-value" language-yaml" lang="">
|
|
<code class="language-yaml">false
|
|
</code>
|
|
</pre>
|
|
</td>
|
|
<td><p>If true and <code>rbac.enabled</code>, will deploy a Role/RoleBinding instead of a ClusterRole/ClusterRoleBinding</p>
|
|
</td>
|
|
</tr>
|
|
<tr>
|
|
<td>server.affinity</td>
|
|
<td>object</td>
|
|
<td><pre class="helm-vars-default-value" language-yaml" lang="plaintext">
|
|
<code class="language-yaml">{}
|
|
</code>
|
|
</pre>
|
|
</td>
|
|
<td><p>Pod affinity</p>
|
|
</td>
|
|
</tr>
|
|
<tr>
|
|
<td>server.annotations</td>
|
|
<td>object</td>
|
|
<td><pre class="helm-vars-default-value" language-yaml" lang="plaintext">
|
|
<code class="language-yaml">{}
|
|
</code>
|
|
</pre>
|
|
</td>
|
|
<td><p>Annotations to be added to the deployment</p>
|
|
</td>
|
|
</tr>
|
|
<tr>
|
|
<td>server.config</td>
|
|
<td>object</td>
|
|
<td><pre class="helm-vars-default-value" language-yaml" lang="plaintext">
|
|
<code class="language-yaml">alerts:
|
|
groups: []
|
|
</code>
|
|
</pre>
|
|
</td>
|
|
<td><p>VMAlert configuration</p>
|
|
</td>
|
|
</tr>
|
|
<tr>
|
|
<td>server.configMap</td>
|
|
<td>string</td>
|
|
<td><pre class="helm-vars-default-value" language-yaml" lang="">
|
|
<code class="language-yaml">""
|
|
</code>
|
|
</pre>
|
|
</td>
|
|
<td><p>VMAlert alert rules configuration configuration. Use existing configmap if specified</p>
|
|
</td>
|
|
</tr>
|
|
<tr>
|
|
<td>server.datasource</td>
|
|
<td>object</td>
|
|
<td><pre class="helm-vars-default-value" language-yaml" lang="plaintext">
|
|
<code class="language-yaml">basicAuth:
|
|
password: ""
|
|
username: ""
|
|
bearer:
|
|
token: ""
|
|
tokenFile: ""
|
|
url: ""
|
|
</code>
|
|
</pre>
|
|
</td>
|
|
<td><p>VMAlert reads metrics from source, next section represents its configuration. It can be any service which supports MetricsQL or PromQL.</p>
|
|
</td>
|
|
</tr>
|
|
<tr>
|
|
<td>server.datasource.basicAuth</td>
|
|
<td>object</td>
|
|
<td><pre class="helm-vars-default-value" language-yaml" lang="plaintext">
|
|
<code class="language-yaml">password: ""
|
|
username: ""
|
|
</code>
|
|
</pre>
|
|
</td>
|
|
<td><p>Basic auth for datasource</p>
|
|
</td>
|
|
</tr>
|
|
<tr>
|
|
<td>server.datasource.bearer.token</td>
|
|
<td>string</td>
|
|
<td><pre class="helm-vars-default-value" language-yaml" lang="">
|
|
<code class="language-yaml">""
|
|
</code>
|
|
</pre>
|
|
</td>
|
|
<td><p>Token with Bearer token. You can use one of token or tokenFile. You don’t need to add “Bearer” prefix string</p>
|
|
</td>
|
|
</tr>
|
|
<tr>
|
|
<td>server.datasource.bearer.tokenFile</td>
|
|
<td>string</td>
|
|
<td><pre class="helm-vars-default-value" language-yaml" lang="">
|
|
<code class="language-yaml">""
|
|
</code>
|
|
</pre>
|
|
</td>
|
|
<td><p>Token Auth file with Bearer token. You can use one of token or tokenFile</p>
|
|
</td>
|
|
</tr>
|
|
<tr>
|
|
<td>server.enabled</td>
|
|
<td>bool</td>
|
|
<td><pre class="helm-vars-default-value" language-yaml" lang="">
|
|
<code class="language-yaml">true
|
|
</code>
|
|
</pre>
|
|
</td>
|
|
<td><p>Create vmalert component</p>
|
|
</td>
|
|
</tr>
|
|
<tr>
|
|
<td>server.env</td>
|
|
<td>list</td>
|
|
<td><pre class="helm-vars-default-value" language-yaml" lang="plaintext">
|
|
<code class="language-yaml">[]
|
|
</code>
|
|
</pre>
|
|
</td>
|
|
<td><p>Additional environment variables (ex.: secret tokens, flags). Check <a href="https://docs.victoriametrics.com/#environment-variables" target="_blank">here</a> for details.</p>
|
|
</td>
|
|
</tr>
|
|
<tr>
|
|
<td>server.envFrom</td>
|
|
<td>list</td>
|
|
<td><pre class="helm-vars-default-value" language-yaml" lang="plaintext">
|
|
<code class="language-yaml">[]
|
|
</code>
|
|
</pre>
|
|
</td>
|
|
<td><p>Specify alternative source for env variables</p>
|
|
</td>
|
|
</tr>
|
|
<tr>
|
|
<td>server.extraArgs</td>
|
|
<td>object</td>
|
|
<td><pre class="helm-vars-default-value" language-yaml" lang="plaintext">
|
|
<code class="language-yaml">envflag.enable: "true"
|
|
envflag.prefix: VM_
|
|
loggerFormat: json
|
|
</code>
|
|
</pre>
|
|
</td>
|
|
<td><p>Extra command line arguments for container of component</p>
|
|
</td>
|
|
</tr>
|
|
<tr>
|
|
<td>server.extraContainers</td>
|
|
<td>list</td>
|
|
<td><pre class="helm-vars-default-value" language-yaml" lang="plaintext">
|
|
<code class="language-yaml">[]
|
|
</code>
|
|
</pre>
|
|
</td>
|
|
<td><p>Additional containers to run in the same pod</p>
|
|
</td>
|
|
</tr>
|
|
<tr>
|
|
<td>server.extraHostPathMounts</td>
|
|
<td>list</td>
|
|
<td><pre class="helm-vars-default-value" language-yaml" lang="plaintext">
|
|
<code class="language-yaml">[]
|
|
</code>
|
|
</pre>
|
|
</td>
|
|
<td><p>Additional hostPath mounts</p>
|
|
</td>
|
|
</tr>
|
|
<tr>
|
|
<td>server.extraVolumeMounts</td>
|
|
<td>list</td>
|
|
<td><pre class="helm-vars-default-value" language-yaml" lang="plaintext">
|
|
<code class="language-yaml">[]
|
|
</code>
|
|
</pre>
|
|
</td>
|
|
<td><p>Extra Volume Mounts for the container</p>
|
|
</td>
|
|
</tr>
|
|
<tr>
|
|
<td>server.extraVolumes</td>
|
|
<td>list</td>
|
|
<td><pre class="helm-vars-default-value" language-yaml" lang="plaintext">
|
|
<code class="language-yaml">[]
|
|
</code>
|
|
</pre>
|
|
</td>
|
|
<td><p>Extra Volumes for the pod</p>
|
|
</td>
|
|
</tr>
|
|
<tr>
|
|
<td>server.fullnameOverride</td>
|
|
<td>string</td>
|
|
<td><pre class="helm-vars-default-value" language-yaml" lang="">
|
|
<code class="language-yaml">""
|
|
</code>
|
|
</pre>
|
|
</td>
|
|
<td><p>Full name prefix override</p>
|
|
</td>
|
|
</tr>
|
|
<tr>
|
|
<td>server.image</td>
|
|
<td>object</td>
|
|
<td><pre class="helm-vars-default-value" language-yaml" lang="plaintext">
|
|
<code class="language-yaml">pullPolicy: IfNotPresent
|
|
registry: ""
|
|
repository: victoriametrics/vmalert
|
|
tag: ""
|
|
variant: ""
|
|
</code>
|
|
</pre>
|
|
</td>
|
|
<td><p>VMAlert image configuration</p>
|
|
</td>
|
|
</tr>
|
|
<tr>
|
|
<td>server.imagePullSecrets</td>
|
|
<td>list</td>
|
|
<td><pre class="helm-vars-default-value" language-yaml" lang="plaintext">
|
|
<code class="language-yaml">[]
|
|
</code>
|
|
</pre>
|
|
</td>
|
|
<td><p>Image pull secrets</p>
|
|
</td>
|
|
</tr>
|
|
<tr>
|
|
<td>server.ingress.annotations</td>
|
|
<td>object</td>
|
|
<td><pre class="helm-vars-default-value" language-yaml" lang="plaintext">
|
|
<code class="language-yaml">{}
|
|
</code>
|
|
</pre>
|
|
</td>
|
|
<td><p>Ingress annotations</p>
|
|
</td>
|
|
</tr>
|
|
<tr>
|
|
<td>server.ingress.enabled</td>
|
|
<td>bool</td>
|
|
<td><pre class="helm-vars-default-value" language-yaml" lang="">
|
|
<code class="language-yaml">false
|
|
</code>
|
|
</pre>
|
|
</td>
|
|
<td><p>Enable deployment of ingress for vmalert component</p>
|
|
</td>
|
|
</tr>
|
|
<tr>
|
|
<td>server.ingress.extraLabels</td>
|
|
<td>object</td>
|
|
<td><pre class="helm-vars-default-value" language-yaml" lang="plaintext">
|
|
<code class="language-yaml">{}
|
|
</code>
|
|
</pre>
|
|
</td>
|
|
<td><p>Ingress extra labels</p>
|
|
</td>
|
|
</tr>
|
|
<tr>
|
|
<td>server.ingress.hosts</td>
|
|
<td>list</td>
|
|
<td><pre class="helm-vars-default-value" language-yaml" lang="plaintext">
|
|
<code class="language-yaml">[]
|
|
</code>
|
|
</pre>
|
|
</td>
|
|
<td><p>Array of host objects</p>
|
|
</td>
|
|
</tr>
|
|
<tr>
|
|
<td>server.ingress.ingressClassName</td>
|
|
<td>string</td>
|
|
<td><pre class="helm-vars-default-value" language-yaml" lang="">
|
|
<code class="language-yaml">""
|
|
</code>
|
|
</pre>
|
|
</td>
|
|
<td><p>Ingress controller class name</p>
|
|
</td>
|
|
</tr>
|
|
<tr>
|
|
<td>server.ingress.pathType</td>
|
|
<td>string</td>
|
|
<td><pre class="helm-vars-default-value" language-yaml" lang="">
|
|
<code class="language-yaml">Prefix
|
|
</code>
|
|
</pre>
|
|
</td>
|
|
<td><p>Ingress path type</p>
|
|
</td>
|
|
</tr>
|
|
<tr>
|
|
<td>server.ingress.tls</td>
|
|
<td>list</td>
|
|
<td><pre class="helm-vars-default-value" language-yaml" lang="plaintext">
|
|
<code class="language-yaml">[]
|
|
</code>
|
|
</pre>
|
|
</td>
|
|
<td><p>Array of TLS objects</p>
|
|
</td>
|
|
</tr>
|
|
<tr>
|
|
<td>server.initContainers</td>
|
|
<td>list</td>
|
|
<td><pre class="helm-vars-default-value" language-yaml" lang="plaintext">
|
|
<code class="language-yaml">[]
|
|
</code>
|
|
</pre>
|
|
</td>
|
|
<td><p>Additional initContainers to initialize the pod</p>
|
|
</td>
|
|
</tr>
|
|
<tr>
|
|
<td>server.labels</td>
|
|
<td>object</td>
|
|
<td><pre class="helm-vars-default-value" language-yaml" lang="plaintext">
|
|
<code class="language-yaml">{}
|
|
</code>
|
|
</pre>
|
|
</td>
|
|
<td><p>Labels to be added to the deployment</p>
|
|
</td>
|
|
</tr>
|
|
<tr>
|
|
<td>server.minReadySeconds</td>
|
|
<td>int</td>
|
|
<td><pre class="helm-vars-default-value" language-yaml" lang="">
|
|
<code class="language-yaml">0
|
|
</code>
|
|
</pre>
|
|
</td>
|
|
<td><p>Specifies the minimum number of seconds for which a newly created Pod should be ready without any of its containers crashing/terminating 0 is the standard k8s default</p>
|
|
</td>
|
|
</tr>
|
|
<tr>
|
|
<td>server.name</td>
|
|
<td>string</td>
|
|
<td><pre class="helm-vars-default-value" language-yaml" lang="">
|
|
<code class="language-yaml">server
|
|
</code>
|
|
</pre>
|
|
</td>
|
|
<td><p>Override fullname suffix</p>
|
|
</td>
|
|
</tr>
|
|
<tr>
|
|
<td>server.nameOverride</td>
|
|
<td>string</td>
|
|
<td><pre class="helm-vars-default-value" language-yaml" lang="">
|
|
<code class="language-yaml">""
|
|
</code>
|
|
</pre>
|
|
</td>
|
|
<td><p>Full name suffix override</p>
|
|
</td>
|
|
</tr>
|
|
<tr>
|
|
<td>server.nodeSelector</td>
|
|
<td>object</td>
|
|
<td><pre class="helm-vars-default-value" language-yaml" lang="plaintext">
|
|
<code class="language-yaml">{}
|
|
</code>
|
|
</pre>
|
|
</td>
|
|
<td><p>Pod’s node selector. Details are <a href="https://kubernetes.io/docs/user-guide/node-selection/" target="_blank">here</a></p>
|
|
</td>
|
|
</tr>
|
|
<tr>
|
|
<td>server.notifier</td>
|
|
<td>object</td>
|
|
<td><pre class="helm-vars-default-value" language-yaml" lang="plaintext">
|
|
<code class="language-yaml">alertmanager:
|
|
basicAuth:
|
|
password: ""
|
|
username: ""
|
|
bearer:
|
|
token: ""
|
|
tokenFile: ""
|
|
url: ""
|
|
</code>
|
|
</pre>
|
|
</td>
|
|
<td><p>Notifier to use for alerts. Multiple notifiers can be enabled by using <code>notifiers</code> section</p>
|
|
</td>
|
|
</tr>
|
|
<tr>
|
|
<td>server.notifier.alertmanager.basicAuth</td>
|
|
<td>object</td>
|
|
<td><pre class="helm-vars-default-value" language-yaml" lang="plaintext">
|
|
<code class="language-yaml">password: ""
|
|
username: ""
|
|
</code>
|
|
</pre>
|
|
</td>
|
|
<td><p>Basic auth for alertmanager</p>
|
|
</td>
|
|
</tr>
|
|
<tr>
|
|
<td>server.notifier.alertmanager.bearer.token</td>
|
|
<td>string</td>
|
|
<td><pre class="helm-vars-default-value" language-yaml" lang="">
|
|
<code class="language-yaml">""
|
|
</code>
|
|
</pre>
|
|
</td>
|
|
<td><p>Token with Bearer token. You can use one of token or tokenFile. You don’t need to add “Bearer” prefix string</p>
|
|
</td>
|
|
</tr>
|
|
<tr>
|
|
<td>server.notifier.alertmanager.bearer.tokenFile</td>
|
|
<td>string</td>
|
|
<td><pre class="helm-vars-default-value" language-yaml" lang="">
|
|
<code class="language-yaml">""
|
|
</code>
|
|
</pre>
|
|
</td>
|
|
<td><p>Token Auth file with Bearer token. You can use one of token or tokenFile</p>
|
|
</td>
|
|
</tr>
|
|
<tr>
|
|
<td>server.notifiers</td>
|
|
<td>list</td>
|
|
<td><pre class="helm-vars-default-value" language-yaml" lang="plaintext">
|
|
<code class="language-yaml">[]
|
|
</code>
|
|
</pre>
|
|
</td>
|
|
<td><p>Additional notifiers to use for alerts</p>
|
|
</td>
|
|
</tr>
|
|
<tr>
|
|
<td>server.podAnnotations</td>
|
|
<td>object</td>
|
|
<td><pre class="helm-vars-default-value" language-yaml" lang="plaintext">
|
|
<code class="language-yaml">{}
|
|
</code>
|
|
</pre>
|
|
</td>
|
|
<td><p>Annotations to be added to pod</p>
|
|
</td>
|
|
</tr>
|
|
<tr>
|
|
<td>server.podDisruptionBudget</td>
|
|
<td>object</td>
|
|
<td><pre class="helm-vars-default-value" language-yaml" lang="plaintext">
|
|
<code class="language-yaml">enabled: false
|
|
labels: {}
|
|
</code>
|
|
</pre>
|
|
</td>
|
|
<td><p>See <code>kubectl explain poddisruptionbudget.spec</code> for more. Or check <a href="https://kubernetes.io/docs/tasks/run-application/configure-pdb/" target="_blank">docs</a></p>
|
|
</td>
|
|
</tr>
|
|
<tr>
|
|
<td>server.podLabels</td>
|
|
<td>object</td>
|
|
<td><pre class="helm-vars-default-value" language-yaml" lang="plaintext">
|
|
<code class="language-yaml">{}
|
|
</code>
|
|
</pre>
|
|
</td>
|
|
<td><p>Pod’s additional labels</p>
|
|
</td>
|
|
</tr>
|
|
<tr>
|
|
<td>server.podSecurityContext</td>
|
|
<td>object</td>
|
|
<td><pre class="helm-vars-default-value" language-yaml" lang="plaintext">
|
|
<code class="language-yaml">enabled: true
|
|
</code>
|
|
</pre>
|
|
</td>
|
|
<td><p>Pod’s security context. Details are <a href="https://kubernetes.io/docs/tasks/configure-pod-container/security-context/" target="_blank">here</a></p>
|
|
</td>
|
|
</tr>
|
|
<tr>
|
|
<td>server.priorityClassName</td>
|
|
<td>string</td>
|
|
<td><pre class="helm-vars-default-value" language-yaml" lang="">
|
|
<code class="language-yaml">""
|
|
</code>
|
|
</pre>
|
|
</td>
|
|
<td><p>Name of Priority Class</p>
|
|
</td>
|
|
</tr>
|
|
<tr>
|
|
<td>server.probe.liveness</td>
|
|
<td>object</td>
|
|
<td><pre class="helm-vars-default-value" language-yaml" lang="plaintext">
|
|
<code class="language-yaml">failureThreshold: 3
|
|
initialDelaySeconds: 5
|
|
periodSeconds: 15
|
|
tcpSocket: {}
|
|
timeoutSeconds: 5
|
|
</code>
|
|
</pre>
|
|
</td>
|
|
<td><p>Liveness probe</p>
|
|
</td>
|
|
</tr>
|
|
<tr>
|
|
<td>server.probe.readiness</td>
|
|
<td>object</td>
|
|
<td><pre class="helm-vars-default-value" language-yaml" lang="plaintext">
|
|
<code class="language-yaml">failureThreshold: 3
|
|
httpGet: {}
|
|
initialDelaySeconds: 5
|
|
periodSeconds: 15
|
|
timeoutSeconds: 5
|
|
</code>
|
|
</pre>
|
|
</td>
|
|
<td><p>Readiness probe</p>
|
|
</td>
|
|
</tr>
|
|
<tr>
|
|
<td>server.probe.startup</td>
|
|
<td>object</td>
|
|
<td><pre class="helm-vars-default-value" language-yaml" lang="plaintext">
|
|
<code class="language-yaml">{}
|
|
</code>
|
|
</pre>
|
|
</td>
|
|
<td><p>Startup probe</p>
|
|
</td>
|
|
</tr>
|
|
<tr>
|
|
<td>server.remote.read.basicAuth</td>
|
|
<td>object</td>
|
|
<td><pre class="helm-vars-default-value" language-yaml" lang="plaintext">
|
|
<code class="language-yaml">password: ""
|
|
username: ""
|
|
</code>
|
|
</pre>
|
|
</td>
|
|
<td><p>Basic auth for remote read</p>
|
|
</td>
|
|
</tr>
|
|
<tr>
|
|
<td>server.remote.read.bearer</td>
|
|
<td>object</td>
|
|
<td><pre class="helm-vars-default-value" language-yaml" lang="plaintext">
|
|
<code class="language-yaml">token: ""
|
|
tokenFile: ""
|
|
</code>
|
|
</pre>
|
|
</td>
|
|
<td><p>Auth based on Bearer token for remote read</p>
|
|
</td>
|
|
</tr>
|
|
<tr>
|
|
<td>server.remote.read.bearer.token</td>
|
|
<td>string</td>
|
|
<td><pre class="helm-vars-default-value" language-yaml" lang="">
|
|
<code class="language-yaml">""
|
|
</code>
|
|
</pre>
|
|
</td>
|
|
<td><p>Token with Bearer token. You can use one of token or tokenFile. You don’t need to add “Bearer” prefix string</p>
|
|
</td>
|
|
</tr>
|
|
<tr>
|
|
<td>server.remote.read.bearer.tokenFile</td>
|
|
<td>string</td>
|
|
<td><pre class="helm-vars-default-value" language-yaml" lang="">
|
|
<code class="language-yaml">""
|
|
</code>
|
|
</pre>
|
|
</td>
|
|
<td><p>Token Auth file with Bearer token. You can use one of token or tokenFile</p>
|
|
</td>
|
|
</tr>
|
|
<tr>
|
|
<td>server.remote.read.url</td>
|
|
<td>string</td>
|
|
<td><pre class="helm-vars-default-value" language-yaml" lang="">
|
|
<code class="language-yaml">""
|
|
</code>
|
|
</pre>
|
|
</td>
|
|
<td><p>VMAlert remote read URL</p>
|
|
</td>
|
|
</tr>
|
|
<tr>
|
|
<td>server.remote.write.basicAuth</td>
|
|
<td>object</td>
|
|
<td><pre class="helm-vars-default-value" language-yaml" lang="plaintext">
|
|
<code class="language-yaml">password: ""
|
|
username: ""
|
|
</code>
|
|
</pre>
|
|
</td>
|
|
<td><p>Basic auth for remote write</p>
|
|
</td>
|
|
</tr>
|
|
<tr>
|
|
<td>server.remote.write.bearer</td>
|
|
<td>object</td>
|
|
<td><pre class="helm-vars-default-value" language-yaml" lang="plaintext">
|
|
<code class="language-yaml">token: ""
|
|
tokenFile: ""
|
|
</code>
|
|
</pre>
|
|
</td>
|
|
<td><p>Auth based on Bearer token for remote write</p>
|
|
</td>
|
|
</tr>
|
|
<tr>
|
|
<td>server.remote.write.bearer.token</td>
|
|
<td>string</td>
|
|
<td><pre class="helm-vars-default-value" language-yaml" lang="">
|
|
<code class="language-yaml">""
|
|
</code>
|
|
</pre>
|
|
</td>
|
|
<td><p>Token with Bearer token. You can use one of token or tokenFile. You don’t need to add “Bearer” prefix string</p>
|
|
</td>
|
|
</tr>
|
|
<tr>
|
|
<td>server.remote.write.bearer.tokenFile</td>
|
|
<td>string</td>
|
|
<td><pre class="helm-vars-default-value" language-yaml" lang="">
|
|
<code class="language-yaml">""
|
|
</code>
|
|
</pre>
|
|
</td>
|
|
<td><p>Token Auth file with Bearer token. You can use one of token or tokenFile</p>
|
|
</td>
|
|
</tr>
|
|
<tr>
|
|
<td>server.remote.write.url</td>
|
|
<td>string</td>
|
|
<td><pre class="helm-vars-default-value" language-yaml" lang="">
|
|
<code class="language-yaml">""
|
|
</code>
|
|
</pre>
|
|
</td>
|
|
<td><p>VMAlert remote write URL</p>
|
|
</td>
|
|
</tr>
|
|
<tr>
|
|
<td>server.replicaCount</td>
|
|
<td>int</td>
|
|
<td><pre class="helm-vars-default-value" language-yaml" lang="">
|
|
<code class="language-yaml">1
|
|
</code>
|
|
</pre>
|
|
</td>
|
|
<td><p>Replica count</p>
|
|
</td>
|
|
</tr>
|
|
<tr>
|
|
<td>server.resources</td>
|
|
<td>object</td>
|
|
<td><pre class="helm-vars-default-value" language-yaml" lang="plaintext">
|
|
<code class="language-yaml">{}
|
|
</code>
|
|
</pre>
|
|
</td>
|
|
<td><p>Resource object. Details are <a href="http://kubernetes.io/docs/user-guide/compute-resources/" target="_blank">here</a></p>
|
|
</td>
|
|
</tr>
|
|
<tr>
|
|
<td>server.securityContext</td>
|
|
<td>object</td>
|
|
<td><pre class="helm-vars-default-value" language-yaml" lang="plaintext">
|
|
<code class="language-yaml">enabled: true
|
|
</code>
|
|
</pre>
|
|
</td>
|
|
<td><p>Security context to be added to server pods</p>
|
|
</td>
|
|
</tr>
|
|
<tr>
|
|
<td>server.service.annotations</td>
|
|
<td>object</td>
|
|
<td><pre class="helm-vars-default-value" language-yaml" lang="plaintext">
|
|
<code class="language-yaml">{}
|
|
</code>
|
|
</pre>
|
|
</td>
|
|
<td><p>Service annotations</p>
|
|
</td>
|
|
</tr>
|
|
<tr>
|
|
<td>server.service.clusterIP</td>
|
|
<td>string</td>
|
|
<td><pre class="helm-vars-default-value" language-yaml" lang="">
|
|
<code class="language-yaml">""
|
|
</code>
|
|
</pre>
|
|
</td>
|
|
<td><p>Service ClusterIP</p>
|
|
</td>
|
|
</tr>
|
|
<tr>
|
|
<td>server.service.externalIPs</td>
|
|
<td>list</td>
|
|
<td><pre class="helm-vars-default-value" language-yaml" lang="plaintext">
|
|
<code class="language-yaml">[]
|
|
</code>
|
|
</pre>
|
|
</td>
|
|
<td><p>Service external IPs. Check <a href="https://kubernetes.io/docs/user-guide/services/#external-ips" target="_blank">here</a> for details</p>
|
|
</td>
|
|
</tr>
|
|
<tr>
|
|
<td>server.service.externalTrafficPolicy</td>
|
|
<td>string</td>
|
|
<td><pre class="helm-vars-default-value" language-yaml" lang="">
|
|
<code class="language-yaml">""
|
|
</code>
|
|
</pre>
|
|
</td>
|
|
<td><p>Service external traffic policy. Check <a href="https://kubernetes.io/docs/tasks/access-application-cluster/create-external-load-balancer/#preserving-the-client-source-ip" target="_blank">here</a> for details</p>
|
|
</td>
|
|
</tr>
|
|
<tr>
|
|
<td>server.service.healthCheckNodePort</td>
|
|
<td>string</td>
|
|
<td><pre class="helm-vars-default-value" language-yaml" lang="">
|
|
<code class="language-yaml">""
|
|
</code>
|
|
</pre>
|
|
</td>
|
|
<td><p>Health check node port for a service. Check <a href="https://kubernetes.io/docs/tasks/access-application-cluster/create-external-load-balancer/#preserving-the-client-source-ip" target="_blank">here</a> for details</p>
|
|
</td>
|
|
</tr>
|
|
<tr>
|
|
<td>server.service.ipFamilies</td>
|
|
<td>list</td>
|
|
<td><pre class="helm-vars-default-value" language-yaml" lang="plaintext">
|
|
<code class="language-yaml">[]
|
|
</code>
|
|
</pre>
|
|
</td>
|
|
<td><p>List of service IP families. Check <a href="https://kubernetes.io/docs/concepts/services-networking/dual-stack/#services" target="_blank">here</a> for details.</p>
|
|
</td>
|
|
</tr>
|
|
<tr>
|
|
<td>server.service.ipFamilyPolicy</td>
|
|
<td>string</td>
|
|
<td><pre class="helm-vars-default-value" language-yaml" lang="">
|
|
<code class="language-yaml">""
|
|
</code>
|
|
</pre>
|
|
</td>
|
|
<td><p>Service IP family policy. Check <a href="https://kubernetes.io/docs/concepts/services-networking/dual-stack/#services" target="_blank">here</a> for details.</p>
|
|
</td>
|
|
</tr>
|
|
<tr>
|
|
<td>server.service.labels</td>
|
|
<td>object</td>
|
|
<td><pre class="helm-vars-default-value" language-yaml" lang="plaintext">
|
|
<code class="language-yaml">{}
|
|
</code>
|
|
</pre>
|
|
</td>
|
|
<td><p>Service labels</p>
|
|
</td>
|
|
</tr>
|
|
<tr>
|
|
<td>server.service.loadBalancerIP</td>
|
|
<td>string</td>
|
|
<td><pre class="helm-vars-default-value" language-yaml" lang="">
|
|
<code class="language-yaml">""
|
|
</code>
|
|
</pre>
|
|
</td>
|
|
<td><p>Service load balacner IP</p>
|
|
</td>
|
|
</tr>
|
|
<tr>
|
|
<td>server.service.loadBalancerSourceRanges</td>
|
|
<td>list</td>
|
|
<td><pre class="helm-vars-default-value" language-yaml" lang="plaintext">
|
|
<code class="language-yaml">[]
|
|
</code>
|
|
</pre>
|
|
</td>
|
|
<td><p>Load balancer source range</p>
|
|
</td>
|
|
</tr>
|
|
<tr>
|
|
<td>server.service.servicePort</td>
|
|
<td>int</td>
|
|
<td><pre class="helm-vars-default-value" language-yaml" lang="">
|
|
<code class="language-yaml">8880
|
|
</code>
|
|
</pre>
|
|
</td>
|
|
<td><p>Service port</p>
|
|
</td>
|
|
</tr>
|
|
<tr>
|
|
<td>server.service.type</td>
|
|
<td>string</td>
|
|
<td><pre class="helm-vars-default-value" language-yaml" lang="">
|
|
<code class="language-yaml">ClusterIP
|
|
</code>
|
|
</pre>
|
|
</td>
|
|
<td><p>Service type</p>
|
|
</td>
|
|
</tr>
|
|
<tr>
|
|
<td>server.strategy</td>
|
|
<td>object</td>
|
|
<td><pre class="helm-vars-default-value" language-yaml" lang="plaintext">
|
|
<code class="language-yaml">rollingUpdate:
|
|
maxSurge: 25%
|
|
maxUnavailable: 25%
|
|
type: RollingUpdate
|
|
</code>
|
|
</pre>
|
|
</td>
|
|
<td><p>Deployment strategy, set to standard k8s default</p>
|
|
</td>
|
|
</tr>
|
|
<tr>
|
|
<td>server.tolerations</td>
|
|
<td>list</td>
|
|
<td><pre class="helm-vars-default-value" language-yaml" lang="plaintext">
|
|
<code class="language-yaml">[]
|
|
</code>
|
|
</pre>
|
|
</td>
|
|
<td><p>Node tolerations for server scheduling to nodes with taints. Details are <a href="https://kubernetes.io/docs/concepts/configuration/assign-pod-node/" target="_blank">here</a></p>
|
|
</td>
|
|
</tr>
|
|
<tr>
|
|
<td>server.verticalPodAutoscaler</td>
|
|
<td>object</td>
|
|
<td><pre class="helm-vars-default-value" language-yaml" lang="plaintext">
|
|
<code class="language-yaml">enabled: false
|
|
</code>
|
|
</pre>
|
|
</td>
|
|
<td><p>Vertical Pod Autoscaler</p>
|
|
</td>
|
|
</tr>
|
|
<tr>
|
|
<td>server.verticalPodAutoscaler.enabled</td>
|
|
<td>bool</td>
|
|
<td><pre class="helm-vars-default-value" language-yaml" lang="">
|
|
<code class="language-yaml">false
|
|
</code>
|
|
</pre>
|
|
</td>
|
|
<td><p>Use VPA for vmalert</p>
|
|
</td>
|
|
</tr>
|
|
<tr>
|
|
<td>serviceAccount.annotations</td>
|
|
<td>object</td>
|
|
<td><pre class="helm-vars-default-value" language-yaml" lang="plaintext">
|
|
<code class="language-yaml">{}
|
|
</code>
|
|
</pre>
|
|
</td>
|
|
<td><p>Annotations to add to the service account</p>
|
|
</td>
|
|
</tr>
|
|
<tr>
|
|
<td>serviceAccount.automountToken</td>
|
|
<td>bool</td>
|
|
<td><pre class="helm-vars-default-value" language-yaml" lang="">
|
|
<code class="language-yaml">true
|
|
</code>
|
|
</pre>
|
|
</td>
|
|
<td><p>Mount API token to pod directly</p>
|
|
</td>
|
|
</tr>
|
|
<tr>
|
|
<td>serviceAccount.create</td>
|
|
<td>bool</td>
|
|
<td><pre class="helm-vars-default-value" language-yaml" lang="">
|
|
<code class="language-yaml">true
|
|
</code>
|
|
</pre>
|
|
</td>
|
|
<td><p>Specifies whether a service account should be created</p>
|
|
</td>
|
|
</tr>
|
|
<tr>
|
|
<td>serviceAccount.name</td>
|
|
<td>string</td>
|
|
<td><pre class="helm-vars-default-value" language-yaml" lang="">
|
|
<code class="language-yaml">null
|
|
</code>
|
|
</pre>
|
|
</td>
|
|
<td><p>The name of the service account to use. If not set and create is true, a name is generated using the fullname template</p>
|
|
</td>
|
|
</tr>
|
|
<tr>
|
|
<td>serviceMonitor.annotations</td>
|
|
<td>object</td>
|
|
<td><pre class="helm-vars-default-value" language-yaml" lang="plaintext">
|
|
<code class="language-yaml">{}
|
|
</code>
|
|
</pre>
|
|
</td>
|
|
<td><p>Service Monitor annotations</p>
|
|
</td>
|
|
</tr>
|
|
<tr>
|
|
<td>serviceMonitor.basicAuth</td>
|
|
<td>object</td>
|
|
<td><pre class="helm-vars-default-value" language-yaml" lang="plaintext">
|
|
<code class="language-yaml">{}
|
|
</code>
|
|
</pre>
|
|
</td>
|
|
<td><p>Basic auth params for Service Monitor</p>
|
|
</td>
|
|
</tr>
|
|
<tr>
|
|
<td>serviceMonitor.enabled</td>
|
|
<td>bool</td>
|
|
<td><pre class="helm-vars-default-value" language-yaml" lang="">
|
|
<code class="language-yaml">false
|
|
</code>
|
|
</pre>
|
|
</td>
|
|
<td><p>Enable deployment of Service Monitor for server component. This is Prometheus operator object</p>
|
|
</td>
|
|
</tr>
|
|
<tr>
|
|
<td>serviceMonitor.extraLabels</td>
|
|
<td>object</td>
|
|
<td><pre class="helm-vars-default-value" language-yaml" lang="plaintext">
|
|
<code class="language-yaml">{}
|
|
</code>
|
|
</pre>
|
|
</td>
|
|
<td><p>Service Monitor labels</p>
|
|
</td>
|
|
</tr>
|
|
<tr>
|
|
<td>serviceMonitor.metricRelabelings</td>
|
|
<td>list</td>
|
|
<td><pre class="helm-vars-default-value" language-yaml" lang="plaintext">
|
|
<code class="language-yaml">[]
|
|
</code>
|
|
</pre>
|
|
</td>
|
|
<td><p>Service Monitor metricRelabelings</p>
|
|
</td>
|
|
</tr>
|
|
<tr>
|
|
<td>serviceMonitor.relabelings</td>
|
|
<td>list</td>
|
|
<td><pre class="helm-vars-default-value" language-yaml" lang="plaintext">
|
|
<code class="language-yaml">[]
|
|
</code>
|
|
</pre>
|
|
</td>
|
|
<td><p>Service Monitor relabelings</p>
|
|
</td>
|
|
</tr>
|
|
</tbody>
|
|
</table>
|
|
|