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>
This commit is contained in:
Github Actions 2024-11-19 07:40:20 -08:00 committed by f41gh7
parent 8bf2b46545
commit 3109d5b5ff
No known key found for this signature in database
GPG key ID: 4558311CF775EC72
24 changed files with 697 additions and 510 deletions

View file

@ -2,6 +2,7 @@
- Removed redundant `VECTOR_SELF_NODE_NAME` env variable from vector values. See [this issue](https://github.com/VictoriaMetrics/helm-charts/issues/1727). - Removed redundant `VECTOR_SELF_NODE_NAME` env variable from vector values. See [this issue](https://github.com/VictoriaMetrics/helm-charts/issues/1727).
- Added Vector dashboard. See [this issue](https://github.com/VictoriaMetrics/helm-charts/issues/1721). - Added Vector dashboard. See [this issue](https://github.com/VictoriaMetrics/helm-charts/issues/1721).
- updated common dependency 0.0.23 -> 0.0.28
## 0.8.1 ## 0.8.1

View file

@ -2,6 +2,16 @@
- TODO - TODO
## 0.14.8
**Release date:** 2024-11-18
![AppVersion: v1.106.1](https://img.shields.io/static/v1?label=AppVersion&message=v1.106.1&color=success&logo=)
![Helm: v3](https://img.shields.io/static/v1?label=Helm&message=v3&color=informational&logo=helm)
- updated common dependency 0.0.23 -> 0.0.28
- bump version of VM components to [v1.106.1](https://github.com/VictoriaMetrics/VictoriaMetrics/releases/tag/v1.106.1)
## 0.14.7 ## 0.14.7
**Release date:** 2024-11-12 **Release date:** 2024-11-12

View file

@ -1,4 +1,4 @@
![Type: application](https://img.shields.io/badge/Type-application-informational?style=flat-square) ![Version: 0.14.7](https://img.shields.io/badge/Version-0.14.7-informational?style=flat-square) ![Type: application](https://img.shields.io/badge/Type-application-informational?style=flat-square) ![Version: 0.14.8](https://img.shields.io/badge/Version-0.14.8-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-agent) [![Artifact Hub](https://img.shields.io/endpoint?url=https://artifacthub.io/badge/repository/victoriametrics)](https://artifacthub.io/packages/helm/victoriametrics/victoria-metrics-agent)
[![Slack](https://img.shields.io/badge/join%20slack-%23victoriametrics-brightgreen.svg)](https://slack.victoriametrics.com/) [![Slack](https://img.shields.io/badge/join%20slack-%23victoriametrics-brightgreen.svg)](https://slack.victoriametrics.com/)

View file

@ -2,6 +2,17 @@
- TODO - TODO
## 0.12.6
**Release date:** 2024-11-18
![AppVersion: v1.106.1](https://img.shields.io/static/v1?label=AppVersion&message=v1.106.1&color=success&logo=)
![Helm: v3](https://img.shields.io/static/v1?label=Helm&message=v3&color=informational&logo=helm)
- updated context for serviceaccount name
- updated common dependency 0.0.23 -> 0.0.28
- bump version of VM components to [v1.106.1](https://github.com/VictoriaMetrics/VictoriaMetrics/releases/tag/v1.106.1)
## 0.12.5 ## 0.12.5
**Release date:** 2024-11-12 **Release date:** 2024-11-12

View file

@ -1,4 +1,4 @@
![Type: application](https://img.shields.io/badge/Type-application-informational?style=flat-square) ![Version: 0.12.5](https://img.shields.io/badge/Version-0.12.5-informational?style=flat-square) ![Type: application](https://img.shields.io/badge/Type-application-informational?style=flat-square) ![Version: 0.12.6](https://img.shields.io/badge/Version-0.12.6-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) [![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/) [![Slack](https://img.shields.io/badge/join%20slack-%23victoriametrics-brightgreen.svg)](https://slack.victoriametrics.com/)
@ -1051,6 +1051,8 @@ username: ""
<code class="language-yaml">envflag.enable: "true" <code class="language-yaml">envflag.enable: "true"
envflag.prefix: VM_ envflag.prefix: VM_
loggerFormat: json loggerFormat: json
rule:
- /config/alert-rules.yaml
</code> </code>
</pre> </pre>
</td> </td>
@ -1087,7 +1089,7 @@ loggerFormat: json
</code> </code>
</pre> </pre>
</td> </td>
<td><p>Extra Volume Mounts for the container</p> <td><p>Extra Volume Mounts for the container. Expects a lice of <a href="https://kubernetes.io/docs/reference/generated/kubernetes-api/v1.26/#volumemount-v1-core" target="_blank">volume mounts</a></p>
</td> </td>
</tr> </tr>
<tr> <tr>

View file

@ -2,6 +2,35 @@
- TODO - TODO
## 1.6.7
**Release date:** 2024-11-18
![AppVersion: v1.18.4](https://img.shields.io/static/v1?label=AppVersion&message=v1.18.4&color=success&logo=)
![Helm: v3](https://img.shields.io/static/v1?label=Helm&message=v3&color=informational&logo=helm)
- Upgraded ['vmanomaly`](https://docs.victoriametrics.com/anomaly-detection/) to [1.18.4](https://docs.victoriametrics.com/anomaly-detection/changelog/#v1184).
- updated common dependency 0.0.23 -> 0.0.28
## 1.6.6
**Release date:** 2024-11-14
![AppVersion: v1.18.3](https://img.shields.io/static/v1?label=AppVersion&message=v1.18.3&color=success&logo=)
![Helm: v3](https://img.shields.io/static/v1?label=Helm&message=v3&color=informational&logo=helm)
- Upgraded ['vmanomaly`](https://docs.victoriametrics.com/anomaly-detection/) to [1.18.3](https://docs.victoriametrics.com/anomaly-detection/changelog/#v1183). This is a patch release that fixes a service crash during parallelized data processing with [VmReader](https://docs.victoriametrics.com/anomaly-detection/components/reader/#vm-reader).
## 1.6.5
**Release date:** 2024-11-13
![AppVersion: v1.18.2](https://img.shields.io/static/v1?label=AppVersion&message=v1.18.2&color=success&logo=)
![Helm: v3](https://img.shields.io/static/v1?label=Helm&message=v3&color=informational&logo=helm)
- Upgraded [`vmanomaly`](https://docs.victoriametrics.com/anomaly-detection/) to [1.18.2](https://docs.victoriametrics.com/anomaly-detection/changelog/#v1182)
## 1.6.4 ## 1.6.4
**Release date:** 2024-11-12 **Release date:** 2024-11-12

View file

@ -1,4 +1,4 @@
![Version: 1.6.4](https://img.shields.io/badge/Version-1.6.4-informational?style=flat-square) ![Version: 1.6.7](https://img.shields.io/badge/Version-1.6.7-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-anomaly) [![Artifact Hub](https://img.shields.io/endpoint?url=https://artifacthub.io/badge/repository/victoriametrics)](https://artifacthub.io/packages/helm/victoriametrics/victoria-metrics-anomaly)
[![Slack](https://img.shields.io/badge/join%20slack-%23victoriametrics-brightgreen.svg)](https://slack.victoriametrics.com/) [![Slack](https://img.shields.io/badge/join%20slack-%23victoriametrics-brightgreen.svg)](https://slack.victoriametrics.com/)
[![GitHub license](https://img.shields.io/github/license/VictoriaMetrics/VictoriaMetrics.svg)](https://github.com/VictoriaMetrics/helm-charts/blob/master/LICENSE) [![GitHub license](https://img.shields.io/github/license/VictoriaMetrics/VictoriaMetrics.svg)](https://github.com/VictoriaMetrics/helm-charts/blob/master/LICENSE)

View file

@ -1,7 +1,27 @@
## Next release ## Next release
- TODO
## 0.7.7
**Release date:** 2024-11-18
![AppVersion: v1.106.1](https://img.shields.io/static/v1?label=AppVersion&message=v1.106.1&color=success&logo=)
![Helm: v3](https://img.shields.io/static/v1?label=Helm&message=v3&color=informational&logo=helm)
- updated common dependency 0.0.26 -> 0.0.28
- bump version of VM components to [v1.106.1](https://github.com/VictoriaMetrics/VictoriaMetrics/releases/tag/v1.106.1)
## 0.7.6
**Release date:** 2024-11-14
![AppVersion: v1.106.0](https://img.shields.io/static/v1?label=AppVersion&message=v1.106.0&color=success&logo=)
![Helm: v3](https://img.shields.io/static/v1?label=Helm&message=v3&color=informational&logo=helm)
- set default DNS domain to `cluster.local.` - set default DNS domain to `cluster.local.`
- updated common dependency 0.0.19 -> 0.0.23 - updated common dependency 0.0.19 -> 0.0.26
- added init containers
## 0.7.5 ## 0.7.5

View file

@ -1,4 +1,4 @@
![Type: application](https://img.shields.io/badge/Type-application-informational?style=flat-square) ![Version: 0.7.5](https://img.shields.io/badge/Version-0.7.5-informational?style=flat-square) ![Type: application](https://img.shields.io/badge/Type-application-informational?style=flat-square) ![Version: 0.7.7](https://img.shields.io/badge/Version-0.7.7-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-auth) [![Artifact Hub](https://img.shields.io/endpoint?url=https://artifacthub.io/badge/repository/victoriametrics)](https://artifacthub.io/packages/helm/victoriametrics/victoria-metrics-auth)
[![Slack](https://img.shields.io/badge/join%20slack-%23victoriametrics-brightgreen.svg)](https://slack.victoriametrics.com/) [![Slack](https://img.shields.io/badge/join%20slack-%23victoriametrics-brightgreen.svg)](https://slack.victoriametrics.com/)
@ -544,6 +544,17 @@ loggerFormat: json
</pre> </pre>
</td> </td>
<td><p>Array of TLS objects</p> <td><p>Array of TLS objects</p>
</td>
</tr>
<tr>
<td>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>Init containers for vmauth</p>
</td> </td>
</tr> </tr>
<tr> <tr>

View file

@ -2,6 +2,26 @@
- TODO - TODO
## 0.14.12
**Release date:** 2024-11-18
![AppVersion: v1.106.1](https://img.shields.io/static/v1?label=AppVersion&message=v1.106.1&color=success&logo=)
![Helm: v3](https://img.shields.io/static/v1?label=Helm&message=v3&color=informational&logo=helm)
- updated common dependency 0.0.25 -> 0.0.28
- bump version of VM components to [v1.106.1](https://github.com/VictoriaMetrics/VictoriaMetrics/releases/tag/v1.106.1)
## 0.14.11
**Release date:** 2024-11-14
![AppVersion: v1.106.0](https://img.shields.io/static/v1?label=AppVersion&message=v1.106.0&color=success&logo=)
![Helm: v3](https://img.shields.io/static/v1?label=Helm&message=v3&color=informational&logo=helm)
- updated context for serviceaccount name
- updated common dependency 0.0.23 -> 0.0.25
## 0.14.10 ## 0.14.10
**Release date:** 2024-11-08 **Release date:** 2024-11-08

View file

@ -1,4 +1,4 @@
![Type: application](https://img.shields.io/badge/Type-application-informational?style=flat-square) ![Version: 0.14.10](https://img.shields.io/badge/Version-0.14.10-informational?style=flat-square) ![Type: application](https://img.shields.io/badge/Type-application-informational?style=flat-square) ![Version: 0.14.12](https://img.shields.io/badge/Version-0.14.12-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-cluster) [![Artifact Hub](https://img.shields.io/endpoint?url=https://artifacthub.io/badge/repository/victoriametrics)](https://artifacthub.io/packages/helm/victoriametrics/victoria-metrics-cluster)
[![Slack](https://img.shields.io/badge/join%20slack-%23victoriametrics-brightgreen.svg)](https://slack.victoriametrics.com/) [![Slack](https://img.shields.io/badge/join%20slack-%23victoriametrics-brightgreen.svg)](https://slack.victoriametrics.com/)

View file

@ -2,6 +2,55 @@
## Next release ## Next release
- TODO
## 0.0.29
**Release date:** 2024-11-19
![Helm: v3](https://img.shields.io/static/v1?label=Helm&message=v3&color=informational&logo=helm)
- Allow lookup in context root for `vm.url`, `vm.host` templates
## 0.0.28
**Release date:** 2024-11-14
![Helm: v3](https://img.shields.io/static/v1?label=Helm&message=v3&color=informational&logo=helm)
- Allow lookup in context root for `vm.url`, `vm.host` templates
## 0.0.27
**Release date:** 2024-11-14
![Helm: v3](https://img.shields.io/static/v1?label=Helm&message=v3&color=informational&logo=helm)
- fail fullname templates if data for appKey is not found
- find by appKey in Values and context root
## 0.0.26
**Release date:** 2024-11-14
![Helm: v3](https://img.shields.io/static/v1?label=Helm&message=v3&color=informational&logo=helm)
- do not append key only if it's passed to a template
## 0.0.25
**Release date:** 2024-11-12
![Helm: v3](https://img.shields.io/static/v1?label=Helm&message=v3&color=informational&logo=helm)
- fixed adding suffix for `vm.plain.fullname`
## 0.0.24
**Release date:** 2024-11-12
![Helm: v3](https://img.shields.io/static/v1?label=Helm&message=v3&color=informational&logo=helm)
- Disabled impact of `<component>.name` on resource name to avoid confusion - Disabled impact of `<component>.name` on resource name to avoid confusion
- Fixed `vm.app.name` template for appCtx that contains slice - Fixed `vm.app.name` template for appCtx that contains slice

View file

@ -0,0 +1,44 @@
![Type: library](https://img.shields.io/badge/Type-library-informational?style=flat-square) ![Version: 0.0.29](https://img.shields.io/badge/Version-0.0.29-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-common)
Victoria Metrics Common - contains shared templates for all Victoria Metrics helm charts
## Documentation of Helm Chart
Install ``helm-docs`` following the instructions on this [tutorial](https://docs.victoriametrics.com/helm/requirements/).
Generate docs with ``helm-docs`` command.
```bash
cd charts/victoria-metrics-common
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 table lists the template functions of the chart and description.
<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>unitTest</td>
<td>bool</td>
<td><pre class="helm-vars-default-value" language-yaml" lang="">
<code class="language-yaml">false
</code>
</pre>
</td>
<td></td>
</tr>
</tbody>
</table>

View file

@ -1,17 +1,20 @@
## Next release ## Next release
- `vmauthIngestGlobal` was changed to `write.global.vmauth` - TODO
- `vmauthQueryGlobal` was changed to `read.global.vmauth`
- `availabilityZones[*].allowIngest` was changed to `availabilityZones[*].write.allow` ## 0.5.0
- `availabilityZones[*].allowRead` was changed to `availabilityZones[*].read.allow`
- `availabilityZones[*].nodeSelector` was moved to `availabilityZones[*].common.spec.nodeSelector` **Release date:** 2024-11-18
- `availabilityZones[*].extraAffinity` was moved to `availabilityZones[*].common.spec.affinity`
- `availabilityZones[*].topologySpreadConstraints` was moved to `availabilityZones[*].common.spec.topologySpreadConstraints` ![AppVersion: v1.106.1](https://img.shields.io/static/v1?label=AppVersion&message=v1.106.1&color=success&logo=)
- `availabilityZones[*].vmauthIngest` was moved to `availabilityZones[*].write.vmauth` ![Helm: v3](https://img.shields.io/static/v1?label=Helm&message=v3&color=informational&logo=helm)
- `availabilityZones[*].vmauthQueryPerZone` was moved to `availabilityZones[*].read.perZone.vmauth`
- `availabilityZones[*].vmauthCrossAZQuery` was moved to `availabilityZones[*].read.crossZone.vmauth` **Update note**: This release contains breaking changes. please follow [upgrade guide](../#upgrade-to-050)
- set default DNS domain to `cluster.local.` - set default DNS domain to `cluster.local.`
- updated common dependency 0.0.19 -> 0.0.23 - added `.Values.zoneTpl` to define a default configuration for each `.Values.availabilityZones`
- updated common dependency 0.0.19 -> 0.0.28
- bump version of VM components to [v1.106.1](https://github.com/VictoriaMetrics/VictoriaMetrics/releases/tag/v1.106.1)
## 0.4.2 ## 0.4.2

View file

@ -1,4 +1,4 @@
![Type: application](https://img.shields.io/badge/Type-application-informational?style=flat-square) ![Version: 0.4.2](https://img.shields.io/badge/Version-0.4.2-informational?style=flat-square) ![Type: application](https://img.shields.io/badge/Type-application-informational?style=flat-square) ![Version: 0.5.0](https://img.shields.io/badge/Version-0.5.0-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-distributed) [![Artifact Hub](https://img.shields.io/endpoint?url=https://artifacthub.io/badge/repository/victoriametrics)](https://artifacthub.io/packages/helm/victoriametrics/victoria-metrics-distributed)
[![Slack](https://img.shields.io/badge/join%20slack-%23victoriametrics-brightgreen.svg)](https://slack.victoriametrics.com/) [![Slack](https://img.shields.io/badge/join%20slack-%23victoriametrics-brightgreen.svg)](https://slack.victoriametrics.com/)
@ -23,15 +23,15 @@ The default setup is as shown below:
For write: For write:
1. extra-vmagent(optional): scrapes external targets and all the components installed by this chart, sends data to global write entrypoint. 1. extra-vmagent(optional): scrapes external targets and all the components installed by this chart, sends data to global write entrypoint.
2. vmauth-global-write: global write entrypoint, proxies requests to one of the zone `vmagent` with `least_loaded` policy. 2. vmauth-global-write: global write entrypoint, proxies requests to one of the zone `vmagent` with `least_loaded` policy.
3. vmagent(per-zone): remote writes data to availability zones that enabled `.Values.availabilityZones.allowIngest`, and [buffer data on disk](https://docs.victoriametrics.com/vmagent/#calculating-disk-space-for-persistence-queue) when zone is unavailable to ingest. 3. vmagent(per-zone): remote writes data to availability zones that enabled `.Values.availabilityZones[*].write.allow`, and [buffer data on disk](https://docs.victoriametrics.com/vmagent/#calculating-disk-space-for-persistence-queue) when zone is unavailable to ingest.
4. vmauth-write-balancer(per-zone): proxies requests to vminsert instances inside it's zone with `least_loaded` policy. 4. vmauth-write-balancer(per-zone): proxies requests to vminsert instances inside it's zone with `least_loaded` policy.
5. vmcluster(per-zone): processes write requests and stores data. 5. vmcluster(per-zone): processes write requests and stores data.
For read: For read:
1. vmcluster(per-zone): processes query requests and returns results. 1. vmcluster(per-zone): processes query requests and returns results.
2. vmauth-read-balancer(per-zone): proxies requests to vmselect instances inside it's zone with `least_loaded` policy. 2. vmauth-read-balancer(per-zone): proxies requests to vmselect instances inside it's zone with `least_loaded` policy.
3. vmauth-read-proxy(per-zone): uses all the `vmauth-read-balancer` as servers if zone has `.Values.availabilityZones.allowQuery` enabled, always prefer "local" `vmauth-read-balancer` to reduce cross-zone traffic with `first_available` policy. 3. vmauth-read-proxy(per-zone): uses all the `vmauth-read-balancer` as servers if zone has `.Values.availabilityZones[*].read.allow` enabled, always prefer "local" `vmauth-read-balancer` to reduce cross-zone traffic with `first_available` policy.
4. vmauth-global-read: global query entrypoint, proxies requests to one of the zone `vnauth-read-proxy` with `first_available` policy. 4. vmauth-global-read: global query entrypoint, proxies requests to one of the zone `vmauth-read-proxy` with `first_available` policy.
5. grafana(optional): uses `vmauth-global-read` as default datasource. 5. grafana(optional): uses `vmauth-global-read` as default datasource.
>Note: >Note:
@ -53,7 +53,7 @@ Optionally, you can push data to any of the per-zone vmagents, and they will rep
### How to query data? ### How to query data?
The chart provides `vmauth-global-read` as global read entrypoint, it picks the first available zone (see [first_available](https://docs.victoriametrics.com/vmauth/#high-availability) policy) as it's preferred datasource and switches automatically to next zone if first one is unavailable, check [vmauth `first_available`](https://docs.victoriametrics.com/vmauth/#high-availability) for more details. The chart provides `vmauth-global-read` as global read entrypoint, it picks the first available zone (see [first_available](https://docs.victoriametrics.com/vmauth/#high-availability) policy) as it's preferred datasource and switches automatically to next zone if first one is unavailable, check [vmauth `first_available`](https://docs.victoriametrics.com/vmauth/#high-availability) for more details.
If you have services like [vmalert](https://docs.victoriametrics.com/vmalert) or Grafana deployed in each zone, then configure them to use local `vmauth-read-proxy`. Per-zone `vmauth-read-proxy` always prefers "local" vmcluster for querying and reduces cross-zone traffic. If you have services like [vmalert](https://docs.victoriametrics.com/vmalert) or Grafana deployed in each zone, then configure them to use local `vmauth-read-proxy`. Per-zone `vmauth-read-proxy` always prefers "local" vmcluster for querying and reduces cross-zone traffic.
You can also pick other proxies like kubernetes service which supports [Topology Aware Routing](https://kubernetes.io/docs/concepts/services-networking/topology-aware-routing/) as global read entrypoint. You can also pick other proxies like kubernetes service which supports [Topology Aware Routing](https://kubernetes.io/docs/concepts/services-networking/topology-aware-routing/) as global read entrypoint.
@ -65,7 +65,7 @@ If availability zone `zone-eu-1` is experiencing an outage, `vmauth-global-write
3. `vmagent` on `zone-us-1` fails to send data to `zone-eu-1.vmauth-write-balancer`, starts to buffer data on disk(unless `-remoteWrite.disableOnDiskQueue` is specified, which is not recommended for this topology); 3. `vmagent` on `zone-us-1` fails to send data to `zone-eu-1.vmauth-write-balancer`, starts to buffer data on disk(unless `-remoteWrite.disableOnDiskQueue` is specified, which is not recommended for this topology);
To keep data completeness for all the availability zones, make sure you have enough disk space on vmagent for buffer, see [this doc](https://docs.victoriametrics.com/vmagent/#calculating-disk-space-for-persistence-queue) for size recommendation. To keep data completeness for all the availability zones, make sure you have enough disk space on vmagent for buffer, see [this doc](https://docs.victoriametrics.com/vmagent/#calculating-disk-space-for-persistence-queue) for size recommendation.
And to avoid getting incomplete responses from `zone-eu-1` which gets recovered from outage, check vmagent on `zone-us-1` to see if persistent queue has been drained. If not, remove `zone-eu-1` from serving query by setting `.Values.availabilityZones.{zone-eu-1}.allowQuery=false` and change it back after confirm all data are restored. And to avoid getting incomplete responses from `zone-eu-1` which gets recovered from outage, check vmagent on `zone-us-1` to see if persistent queue has been drained. If not, remove `zone-eu-1` from serving query by setting `.Values.availabilityZones.{zone-eu-1}.read.allow=false` and change it back after confirm all data are restored.
### How to use [multitenancy](https://docs.victoriametrics.com/cluster-victoriametrics/#multitenancy)? ### How to use [multitenancy](https://docs.victoriametrics.com/cluster-victoriametrics/#multitenancy)?
@ -196,13 +196,79 @@ helm history vmd -n NAMESPACE
In order to serving query and ingestion while upgrading components version or changing configurations, it's recommended to perform maintenance on availability zone one by one. In order to serving query and ingestion while upgrading components version or changing configurations, it's recommended to perform maintenance on availability zone one by one.
First, performing update on availability zone `zone-eu-1`: First, performing update on availability zone `zone-eu-1`:
1. remove `zone-eu-1` from serving query by setting `.Values.availabilityZones.{zone-eu-1}.allowQuery=false`; 1. remove `zone-eu-1` from serving query by setting `.Values.availabilityZones.{zone-eu-1}.read.allow=false`;
2. run `helm upgrade vm-dis -n NAMESPACE` with updated configurations for `zone-eu-1` in `values.yaml`; 2. run `helm upgrade vm-dis -n NAMESPACE` with updated configurations for `zone-eu-1` in `values.yaml`;
3. wait for all the components on zone `zone-eu-1` running; 3. wait for all the components on zone `zone-eu-1` running;
4. wait `zone-us-1` vmagent persistent queue for `zone-eu-1` been drained, add `zone-eu-1` back to serving query by setting `.Values.availabilityZones.{zone-eu-1}.allowQuery=true`. 4. wait `zone-us-1` vmagent persistent queue for `zone-eu-1` been drained, add `zone-eu-1` back to serving query by setting `.Values.availabilityZones.{zone-eu-1}.read.allow=true`.
Then, perform update on availability zone `zone-us-1` with the same steps1~4. Then, perform update on availability zone `zone-us-1` with the same steps1~4.
### Upgrade to 0.5.0
This release was refactored, names of the parameters was changed:
- `vmauthIngestGlobal` was changed to `write.global.vmauth`
- `vmauthQueryGlobal` was changed to `read.global.vmauth`
- `availabilityZones[*].allowIngest` was changed to `availabilityZones[*].write.allow`
- `availabilityZones[*].allowRead` was changed to `availabilityZones[*].read.allow`
- `availabilityZones[*].nodeSelector` was moved to `availabilityZones[*].common.spec.nodeSelector`
- `availabilityZones[*].extraAffinity` was moved to `availabilityZones[*].common.spec.affinity`
- `availabilityZones[*].topologySpreadConstraints` was moved to `availabilityZones[*].common.spec.topologySpreadConstraints`
- `availabilityZones[*].vmauthIngest` was moved to `availabilityZones[*].write.vmauth`
- `availabilityZones[*].vmauthQueryPerZone` was moved to `availabilityZones[*].read.perZone.vmauth`
- `availabilityZones[*].vmauthCrossAZQuery` was moved to `availabilityZones[*].read.crossZone.vmauth`
Example:
If before an upgrade you had given below configuration
```yaml
vmauthIngestGlobal:
spec:
extraArgs:
discoverBackendIPs: "true"
vmauthQueryGlobal:
spec:
extraArgs:
discoverBackendIPs: "true"
availabilityZones:
- name: zone-eu-1
vmauthIngest:
spec:
extraArgs:
discoverBackendIPs: "true"
vmcluster:
spec:
retentionPeriod: "14"
```
after upgrade it will look like this:
```yaml
write:
global:
vmauth:
spec:
extraArgs:
discoverBackendIPs: "true"
read:
global:
vmauth:
spec:
extraArgs:
discoverBackendIPs: "true"
availabilityZones:
- name: zone-eu-1
write:
vmauth:
spec:
extraArgs:
discoverBackendIPs: "true"
vmcluster:
spec:
retentionPeriod: "14"
```
## How to uninstall ## How to uninstall
Remove application with command. Remove application with command.
@ -240,20 +306,15 @@ Change the values according to the need of the environment in ``victoria-metrics
</thead> </thead>
<tbody> <tbody>
<tr> <tr>
<td>availabilityZones[0].common.spec</td> <td>availabilityZones</td>
<td>object</td> <td>list</td>
<td><pre class="helm-vars-default-value" language-yaml" lang="plaintext"> <td><pre class="helm-vars-default-value" language-yaml" lang="plaintext">
<code class="language-yaml">affinity: {} <code class="language-yaml">- name: zone-eu-1
nodeSelector: - name: zone-us-1
topology.kubernetes.io/zone: zone-eu-1
topologySpreadConstraints:
- maxSkew: 1
topologyKey: kubernetes.io/hostname
whenUnsatisfiable: ScheduleAnyway
</code> </code>
</pre> </pre>
</td> </td>
<td><p>Common for <a href="https://docs.victoriametrics.com/operator/api/#vmagentspec" target="_blank">VMAgent</a>, <a href="https://docs.victoriametrics.com/operator/api/#vmauthspec" target="_blank">VMAuth</a>, <a href="https://docs.victoriametrics.com/operator/api/#vmclusterspec" target="_blank">VMCluster</a> spec params, like nodeSelector, affinity, topologySpreadConstraint, etc</p> <td><p>Config for all availability zones. Each element represents custom zone config, which overrides a default one from <code>zoneTpl</code></p>
</td> </td>
</tr> </tr>
<tr> <tr>
@ -265,240 +326,6 @@ topologySpreadConstraints:
</pre> </pre>
</td> </td>
<td><p>Availability zone name</p> <td><p>Availability zone name</p>
</td>
</tr>
<tr>
<td>availabilityZones[0].read.allow</td>
<td>bool</td>
<td><pre class="helm-vars-default-value" language-yaml" lang="">
<code class="language-yaml">true
</code>
</pre>
</td>
<td><p>Allow data query from this zone through global query endpoint</p>
</td>
</tr>
<tr>
<td>availabilityZones[0].read.crossZone.vmauth.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 a vmauth with all the zone with <code>allow: true</code> as query backends</p>
</td>
</tr>
<tr>
<td>availabilityZones[0].read.crossZone.vmauth.name</td>
<td>string</td>
<td><pre class="helm-vars-default-value" language-yaml" lang="">
<code class="language-yaml">""
</code>
</pre>
</td>
<td><p>Override the name of the vmauth object</p>
</td>
</tr>
<tr>
<td>availabilityZones[0].read.crossZone.vmauth.spec</td>
<td>object</td>
<td><pre class="helm-vars-default-value" language-yaml" lang="plaintext">
<code class="language-yaml">port: "8427"
</code>
</pre>
</td>
<td><p>Spec for VMAuth CRD, see <a href="https://docs.victoriametrics.com/operator/api#vmauthspec" target="_blank">here</a></p>
</td>
</tr>
<tr>
<td>availabilityZones[0].read.perZone.vmauth.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 vmauth as a local read endpoint</p>
</td>
</tr>
<tr>
<td>availabilityZones[0].read.perZone.vmauth.name</td>
<td>string</td>
<td><pre class="helm-vars-default-value" language-yaml" lang="">
<code class="language-yaml">""
</code>
</pre>
</td>
<td><p>Override the name of the vmauth object</p>
</td>
</tr>
<tr>
<td>availabilityZones[0].read.perZone.vmauth.spec</td>
<td>object</td>
<td><pre class="helm-vars-default-value" language-yaml" lang="plaintext">
<code class="language-yaml">extraArgs:
discoverBackendIPs: "true"
port: "8427"
</code>
</pre>
</td>
<td><p>Spec for VMAuth CRD, see <a href="https://docs.victoriametrics.com/operator/api#vmauthspec" target="_blank">here</a></p>
</td>
</tr>
<tr>
<td>availabilityZones[0].vmagent.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>VMAgent remote write proxy annotations</p>
</td>
</tr>
<tr>
<td>availabilityZones[0].vmagent.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 VMAgent remote write proxy</p>
</td>
</tr>
<tr>
<td>availabilityZones[0].vmagent.name</td>
<td>string</td>
<td><pre class="helm-vars-default-value" language-yaml" lang="">
<code class="language-yaml">""
</code>
</pre>
</td>
<td><p>Override the name of the vmagent object</p>
</td>
</tr>
<tr>
<td>availabilityZones[0].vmagent.spec</td>
<td>object</td>
<td><pre class="helm-vars-default-value" language-yaml" lang="plaintext">
<code class="language-yaml">port: "8429"
</code>
</pre>
</td>
<td><p>Spec for VMAgent CRD, see <a href="https://docs.victoriametrics.com/operator/api#vmagentspec" target="_blank">here</a></p>
</td>
</tr>
<tr>
<td>availabilityZones[0].vmcluster.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 VMCluster</p>
</td>
</tr>
<tr>
<td>availabilityZones[0].vmcluster.name</td>
<td>string</td>
<td><pre class="helm-vars-default-value" language-yaml" lang="">
<code class="language-yaml">""
</code>
</pre>
</td>
<td><p>Override the name of the vmcluster, by default is <zoneName></p>
</td>
</tr>
<tr>
<td>availabilityZones[0].vmcluster.spec</td>
<td>object</td>
<td><pre class="helm-vars-default-value" language-yaml" lang="plaintext">
<code class="language-yaml">replicationFactor: 2
retentionPeriod: "14"
vminsert:
extraArgs: {}
port: "8480"
replicaCount: 2
resources: {}
vmselect:
extraArgs: {}
port: "8481"
replicaCount: 2
resources: {}
vmstorage:
replicaCount: 2
resources: {}
storageDataPath: /vm-data
</code>
</pre>
</td>
<td><p>Spec for VMCluster CRD, see <a href="https://docs.victoriametrics.com/operator/api#vmclusterspec" target="_blank">here</a></p>
</td>
</tr>
<tr>
<td>availabilityZones[0].write.allow</td>
<td>bool</td>
<td><pre class="helm-vars-default-value" language-yaml" lang="">
<code class="language-yaml">true
</code>
</pre>
</td>
<td><p>Allow data ingestion to this zone</p>
</td>
</tr>
<tr>
<td>availabilityZones[0].write.vmauth.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 vmauth as a local write endpoint</p>
</td>
</tr>
<tr>
<td>availabilityZones[0].write.vmauth.name</td>
<td>string</td>
<td><pre class="helm-vars-default-value" language-yaml" lang="">
<code class="language-yaml">""
</code>
</pre>
</td>
<td><p>Override the name of the vmauth object</p>
</td>
</tr>
<tr>
<td>availabilityZones[0].write.vmauth.spec</td>
<td>object</td>
<td><pre class="helm-vars-default-value" language-yaml" lang="plaintext">
<code class="language-yaml">extraArgs:
discoverBackendIPs: "true"
port: "8427"
</code>
</pre>
</td>
<td><p>Spec for VMAuth CRD, see <a href="https://docs.victoriametrics.com/operator/api#vmauthspec" target="_blank">here</a></p>
</td>
</tr>
<tr>
<td>availabilityZones[1].common.spec</td>
<td>object</td>
<td><pre class="helm-vars-default-value" language-yaml" lang="plaintext">
<code class="language-yaml">affinity: {}
nodeSelector:
topology.kubernetes.io/zone: zone-us-1
topologySpreadConstraints:
- maxSkew: 1
topologyKey: kubernetes.io/hostname
whenUnsatisfiable: ScheduleAnyway
</code>
</pre>
</td>
<td><p>Common for <a href="https://docs.victoriametrics.com/operator/api/#vmagentspec" target="_blank">VMAgent</a>, <a href="https://docs.victoriametrics.com/operator/api/#vmauthspec" target="_blank">VMAuth</a>, <a href="https://docs.victoriametrics.com/operator/api/#vmclusterspec" target="_blank">VMCluster</a> spec params, like nodeSelector, affinity, topologySpreadConstraint, etc</p>
</td> </td>
</tr> </tr>
<tr> <tr>
@ -513,238 +340,21 @@ topologySpreadConstraints:
</td> </td>
</tr> </tr>
<tr> <tr>
<td>availabilityZones[1].read.allow</td> <td>common.vmagent.spec</td>
<td>bool</td>
<td><pre class="helm-vars-default-value" language-yaml" lang="">
<code class="language-yaml">true
</code>
</pre>
</td>
<td><p>Allow data query from this zone through global query endpoint</p>
</td>
</tr>
<tr>
<td>availabilityZones[1].read.crossZone.vmauth.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 a vmauth with all the zone with <code>allow: true</code> as query backends</p>
</td>
</tr>
<tr>
<td>availabilityZones[1].read.crossZone.vmauth.name</td>
<td>string</td>
<td><pre class="helm-vars-default-value" language-yaml" lang="">
<code class="language-yaml">""
</code>
</pre>
</td>
<td><p>Override the name of the vmauth object</p>
</td>
</tr>
<tr>
<td>availabilityZones[1].read.crossZone.vmauth.spec</td>
<td>object</td>
<td><pre class="helm-vars-default-value" language-yaml" lang="plaintext">
<code class="language-yaml">port: "8427"
</code>
</pre>
</td>
<td><p>Spec for VMAuth CRD, see <a href="https://docs.victoriametrics.com/operator/api#vmauthspec" target="_blank">here</a></p>
</td>
</tr>
<tr>
<td>availabilityZones[1].read.perZone.vmauth.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 vmauth as a local read endpoint</p>
</td>
</tr>
<tr>
<td>availabilityZones[1].read.perZone.vmauth.name</td>
<td>string</td>
<td><pre class="helm-vars-default-value" language-yaml" lang="">
<code class="language-yaml">""
</code>
</pre>
</td>
<td><p>Override the name of the vmauth object</p>
</td>
</tr>
<tr>
<td>availabilityZones[1].read.perZone.vmauth.spec</td>
<td>object</td>
<td><pre class="helm-vars-default-value" language-yaml" lang="plaintext">
<code class="language-yaml">extraArgs:
discoverBackendIPs: "true"
port: "8427"
</code>
</pre>
</td>
<td><p>Spec for VMAuth CRD, see <a href="https://docs.victoriametrics.com/operator/api#vmauthspec" target="_blank">here</a></p>
</td>
</tr>
<tr>
<td>availabilityZones[1].vmagent.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>VMAgent remote write proxy annotations</p>
</td>
</tr>
<tr>
<td>availabilityZones[1].vmagent.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 VMAgent remote write proxy</p>
</td>
</tr>
<tr>
<td>availabilityZones[1].vmagent.name</td>
<td>string</td>
<td><pre class="helm-vars-default-value" language-yaml" lang="">
<code class="language-yaml">""
</code>
</pre>
</td>
<td><p>Override the name of the vmagent object</p>
</td>
</tr>
<tr>
<td>availabilityZones[1].vmagent.spec</td>
<td>object</td> <td>object</td>
<td><pre class="helm-vars-default-value" language-yaml" lang="plaintext"> <td><pre class="helm-vars-default-value" language-yaml" lang="plaintext">
<code class="language-yaml">port: "8429" <code class="language-yaml">port: "8429"
</code> </code>
</pre> </pre>
</td> </td>
<td><p>Spec for VMAgent CRD, see <a href="https://docs.victoriametrics.com/operator/api#vmagentspec" target="_blank">here</a></p> <td><p>Common VMAgent spec, which can be overridden by each VMAgent configuration. Available parameters can be found <a href="https://docs.victoriametrics.com/operator/api/index.html#vmagentspec" target="_blank">here</a></p>
</td> </td>
</tr> </tr>
<tr> <tr>
<td>availabilityZones[1].vmcluster.enabled</td> <td>common.vmauth.spec.port</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 VMCluster</p>
</td>
</tr>
<tr>
<td>availabilityZones[1].vmcluster.name</td>
<td>string</td> <td>string</td>
<td><pre class="helm-vars-default-value" language-yaml" lang=""> <td><pre class="helm-vars-default-value" language-yaml" lang="">
<code class="language-yaml">"" <code class="language-yaml">"8427"
</code>
</pre>
</td>
<td><p>Override the name of the vmcluster, by default is <zoneName></p>
</td>
</tr>
<tr>
<td>availabilityZones[1].vmcluster.spec</td>
<td>object</td>
<td><pre class="helm-vars-default-value" language-yaml" lang="plaintext">
<code class="language-yaml">replicationFactor: 2
retentionPeriod: "14"
vminsert:
extraArgs: {}
port: "8480"
replicaCount: 2
resources: {}
vmselect:
extraArgs: {}
port: "8481"
replicaCount: 2
resources: {}
vmstorage:
replicaCount: 2
resources: {}
storageDataPath: /vm-data
</code>
</pre>
</td>
<td><p>Spec for VMCluster CRD, see <a href="https://docs.victoriametrics.com/operator/api#vmclusterspec" target="_blank">here</a></p>
</td>
</tr>
<tr>
<td>availabilityZones[1].write.allow</td>
<td>bool</td>
<td><pre class="helm-vars-default-value" language-yaml" lang="">
<code class="language-yaml">true
</code>
</pre>
</td>
<td><p>Allow data ingestion to this zone</p>
</td>
</tr>
<tr>
<td>availabilityZones[1].write.vmauth.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 vmauth as a local write endpoint</p>
</td>
</tr>
<tr>
<td>availabilityZones[1].write.vmauth.name</td>
<td>string</td>
<td><pre class="helm-vars-default-value" language-yaml" lang="">
<code class="language-yaml">""
</code>
</pre>
</td>
<td><p>Override the name of the vmauth object</p>
</td>
</tr>
<tr>
<td>availabilityZones[1].write.vmauth.spec</td>
<td>object</td>
<td><pre class="helm-vars-default-value" language-yaml" lang="plaintext">
<code class="language-yaml">extraArgs:
discoverBackendIPs: "true"
port: "8427"
</code>
</pre>
</td>
<td><p>Spec for VMAuth CRD, see <a href="https://docs.victoriametrics.com/operator/api#vmauthspec" target="_blank">here</a></p>
</td>
</tr>
<tr>
<td>common.vmagent.spec</td>
<td>object</td>
<td><pre class="helm-vars-default-value" language-yaml" lang="plaintext">
<code class="language-yaml">{}
</code>
</pre>
</td>
<td><p>Common VMAgent spec, which can be overriden by each VMAgent configuration. Available parameters can be found <a href="https://docs.victoriametrics.com/operator/api/index.html#vmagentspec" target="_blank">here</a></p>
</td>
</tr>
<tr>
<td>common.vmauth.spec</td>
<td>object</td>
<td><pre class="helm-vars-default-value" language-yaml" lang="plaintext">
<code class="language-yaml">{}
</code> </code>
</pre> </pre>
</td> </td>
@ -755,14 +365,17 @@ port: "8427"
<td>object</td> <td>object</td>
<td><pre class="helm-vars-default-value" language-yaml" lang="plaintext"> <td><pre class="helm-vars-default-value" language-yaml" lang="plaintext">
<code class="language-yaml">vminsert: <code class="language-yaml">vminsert:
port: "8480"
serviceSpec: serviceSpec:
spec: spec:
clusterIP: None clusterIP: None
type: ClusterIP type: ClusterIP
vmselect:
port: "8481"
</code> </code>
</pre> </pre>
</td> </td>
<td><p>Common VMCluster spec, which can be overriden by each VMCluster configuration. Available parameters can be found <a href="https://docs.victoriametrics.com/operator/api/index.html#vmclusterspec" target="_blank">here</a></p> <td><p>Common VMCluster spec, which can be overridden by each VMCluster configuration. Available parameters can be found <a href="https://docs.victoriametrics.com/operator/api/index.html#vmclusterspec" target="_blank">here</a></p>
</td> </td>
</tr> </tr>
<tr> <tr>
@ -777,17 +390,18 @@ port: "8427"
</td> </td>
</tr> </tr>
<tr> <tr>
<td>extraVMAgent</td> <td>extra</td>
<td>object</td> <td>object</td>
<td><pre class="helm-vars-default-value" language-yaml" lang="plaintext"> <td><pre class="helm-vars-default-value" language-yaml" lang="plaintext">
<code class="language-yaml">enabled: true <code class="language-yaml">vmagent:
name: test-vmagent enabled: true
spec: name: test-vmagent
selectAllByDefault: true spec:
selectAllByDefault: true
</code> </code>
</pre> </pre>
</td> </td>
<td><p>Set up an extra vmagent to scrape all the scrape objects by default, and write data to above vmauth-global-ingest endpoint.</p> <td><p>Set up an extra vmagent to scrape all the scrape objects by default, and write data to above write-global endpoint.</p>
</td> </td>
</tr> </tr>
<tr> <tr>
@ -850,7 +464,7 @@ spec:
<td>read.global.vmauth.name</td> <td>read.global.vmauth.name</td>
<td>string</td> <td>string</td>
<td><pre class="helm-vars-default-value" language-yaml" lang=""> <td><pre class="helm-vars-default-value" language-yaml" lang="">
<code class="language-yaml">"" <code class="language-yaml">vmauth-global-read-{{ .fullname }}
</code> </code>
</pre> </pre>
</td> </td>
@ -861,7 +475,7 @@ spec:
<td>read.global.vmauth.spec</td> <td>read.global.vmauth.spec</td>
<td>object</td> <td>object</td>
<td><pre class="helm-vars-default-value" language-yaml" lang="plaintext"> <td><pre class="helm-vars-default-value" language-yaml" lang="plaintext">
<code class="language-yaml">port: "8427" <code class="language-yaml">{}
</code> </code>
</pre> </pre>
</td> </td>
@ -908,7 +522,7 @@ vmsingle:
<td>write.global.vmauth.name</td> <td>write.global.vmauth.name</td>
<td>string</td> <td>string</td>
<td><pre class="helm-vars-default-value" language-yaml" lang=""> <td><pre class="helm-vars-default-value" language-yaml" lang="">
<code class="language-yaml">"" <code class="language-yaml">vmauth-global-write-{{ .fullname }}
</code> </code>
</pre> </pre>
</td> </td>
@ -919,7 +533,301 @@ vmsingle:
<td>write.global.vmauth.spec</td> <td>write.global.vmauth.spec</td>
<td>object</td> <td>object</td>
<td><pre class="helm-vars-default-value" language-yaml" lang="plaintext"> <td><pre class="helm-vars-default-value" language-yaml" lang="plaintext">
<code class="language-yaml">port: "8427" <code class="language-yaml">{}
</code>
</pre>
</td>
<td><p>Spec for VMAuth CRD, see <a href="https://docs.victoriametrics.com/operator/api#vmauthspec" target="_blank">here</a></p>
</td>
</tr>
<tr>
<td>zoneTpl</td>
<td>object</td>
<td><pre class="helm-vars-default-value" language-yaml" lang="plaintext">
<code class="language-yaml">common:
spec:
affinity: {}
nodeSelector:
topology.kubernetes.io/zone: '{{ (.zone).name }}'
topologySpreadConstraints:
- maxSkew: 1
topologyKey: kubernetes.io/hostname
whenUnsatisfiable: ScheduleAnyway
read:
allow: true
crossZone:
vmauth:
enabled: true
name: vmauth-read-proxy-{{ (.zone).name }}
spec: {}
perZone:
vmauth:
enabled: true
name: vmauth-read-balancer-{{ (.zone).name }}
spec:
extraArgs:
discoverBackendIPs: "true"
vmagent:
annotations: {}
enabled: true
name: vmagent-{{ (.zone).name }}
spec: {}
vmcluster:
enabled: true
name: vmcluster-{{ (.zone).name }}
spec:
replicationFactor: 2
retentionPeriod: "14"
vminsert:
extraArgs: {}
replicaCount: 2
resources: {}
vmselect:
extraArgs: {}
replicaCount: 2
resources: {}
vmstorage:
replicaCount: 2
resources: {}
storageDataPath: /vm-data
write:
allow: true
vmauth:
enabled: true
name: vmauth-write-balancer-{{ (.zone).name }}
spec:
extraArgs:
discoverBackendIPs: "true"
</code>
</pre>
</td>
<td><p>Default config for each availability zone components, including vmagent, vmcluster, vmauth etc. Defines a template for each availability zone, which can be overridden for each availability zone at <code>availabilityZones[*]</code></p>
</td>
</tr>
<tr>
<td>zoneTpl.common.spec</td>
<td>object</td>
<td><pre class="helm-vars-default-value" language-yaml" lang="plaintext">
<code class="language-yaml">affinity: {}
nodeSelector:
topology.kubernetes.io/zone: '{{ (.zone).name }}'
topologySpreadConstraints:
- maxSkew: 1
topologyKey: kubernetes.io/hostname
whenUnsatisfiable: ScheduleAnyway
</code>
</pre>
</td>
<td><p>Common for <a href="https://docs.victoriametrics.com/operator/api/#vmagentspec" target="_blank">VMAgent</a>, <a href="https://docs.victoriametrics.com/operator/api/#vmauthspec" target="_blank">VMAuth</a>, <a href="https://docs.victoriametrics.com/operator/api/#vmclusterspec" target="_blank">VMCluster</a> spec params, like nodeSelector, affinity, topologySpreadConstraint, etc</p>
</td>
</tr>
<tr>
<td>zoneTpl.read.allow</td>
<td>bool</td>
<td><pre class="helm-vars-default-value" language-yaml" lang="">
<code class="language-yaml">true
</code>
</pre>
</td>
<td><p>Allow data query from this zone through global query endpoint</p>
</td>
</tr>
<tr>
<td>zoneTpl.read.crossZone.vmauth.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 a vmauth with all the zone with <code>allow: true</code> as query backends</p>
</td>
</tr>
<tr>
<td>zoneTpl.read.crossZone.vmauth.name</td>
<td>string</td>
<td><pre class="helm-vars-default-value" language-yaml" lang="">
<code class="language-yaml">vmauth-read-proxy-{{ (.zone).name }}
</code>
</pre>
</td>
<td><p>Override the name of the vmauth object</p>
</td>
</tr>
<tr>
<td>zoneTpl.read.crossZone.vmauth.spec</td>
<td>object</td>
<td><pre class="helm-vars-default-value" language-yaml" lang="plaintext">
<code class="language-yaml">{}
</code>
</pre>
</td>
<td><p>Spec for VMAuth CRD, see <a href="https://docs.victoriametrics.com/operator/api#vmauthspec" target="_blank">here</a></p>
</td>
</tr>
<tr>
<td>zoneTpl.read.perZone.vmauth.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 vmauth as a local read endpoint</p>
</td>
</tr>
<tr>
<td>zoneTpl.read.perZone.vmauth.name</td>
<td>string</td>
<td><pre class="helm-vars-default-value" language-yaml" lang="">
<code class="language-yaml">vmauth-read-balancer-{{ (.zone).name }}
</code>
</pre>
</td>
<td><p>Override the name of the vmauth object</p>
</td>
</tr>
<tr>
<td>zoneTpl.read.perZone.vmauth.spec</td>
<td>object</td>
<td><pre class="helm-vars-default-value" language-yaml" lang="plaintext">
<code class="language-yaml">extraArgs:
discoverBackendIPs: "true"
</code>
</pre>
</td>
<td><p>Spec for VMAuth CRD, see <a href="https://docs.victoriametrics.com/operator/api#vmauthspec" target="_blank">here</a></p>
</td>
</tr>
<tr>
<td>zoneTpl.vmagent.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>VMAgent remote write proxy annotations</p>
</td>
</tr>
<tr>
<td>zoneTpl.vmagent.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 VMAgent remote write proxy</p>
</td>
</tr>
<tr>
<td>zoneTpl.vmagent.name</td>
<td>string</td>
<td><pre class="helm-vars-default-value" language-yaml" lang="">
<code class="language-yaml">vmagent-{{ (.zone).name }}
</code>
</pre>
</td>
<td><p>Override the name of the vmagent object</p>
</td>
</tr>
<tr>
<td>zoneTpl.vmagent.spec</td>
<td>object</td>
<td><pre class="helm-vars-default-value" language-yaml" lang="plaintext">
<code class="language-yaml">{}
</code>
</pre>
</td>
<td><p>Spec for VMAgent CRD, see <a href="https://docs.victoriametrics.com/operator/api#vmagentspec" target="_blank">here</a></p>
</td>
</tr>
<tr>
<td>zoneTpl.vmcluster.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 VMCluster</p>
</td>
</tr>
<tr>
<td>zoneTpl.vmcluster.name</td>
<td>string</td>
<td><pre class="helm-vars-default-value" language-yaml" lang="">
<code class="language-yaml">vmcluster-{{ (.zone).name }}
</code>
</pre>
</td>
<td><p>Override the name of the vmcluster, by default is <zoneName></p>
</td>
</tr>
<tr>
<td>zoneTpl.vmcluster.spec</td>
<td>object</td>
<td><pre class="helm-vars-default-value" language-yaml" lang="plaintext">
<code class="language-yaml">replicationFactor: 2
retentionPeriod: "14"
vminsert:
extraArgs: {}
replicaCount: 2
resources: {}
vmselect:
extraArgs: {}
replicaCount: 2
resources: {}
vmstorage:
replicaCount: 2
resources: {}
storageDataPath: /vm-data
</code>
</pre>
</td>
<td><p>Spec for VMCluster CRD, see <a href="https://docs.victoriametrics.com/operator/api#vmclusterspec" target="_blank">here</a></p>
</td>
</tr>
<tr>
<td>zoneTpl.write.allow</td>
<td>bool</td>
<td><pre class="helm-vars-default-value" language-yaml" lang="">
<code class="language-yaml">true
</code>
</pre>
</td>
<td><p>Allow data ingestion to this zone</p>
</td>
</tr>
<tr>
<td>zoneTpl.write.vmauth.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 vmauth as a local write endpoint</p>
</td>
</tr>
<tr>
<td>zoneTpl.write.vmauth.name</td>
<td>string</td>
<td><pre class="helm-vars-default-value" language-yaml" lang="">
<code class="language-yaml">vmauth-write-balancer-{{ (.zone).name }}
</code>
</pre>
</td>
<td><p>Override the name of the vmauth object</p>
</td>
</tr>
<tr>
<td>zoneTpl.write.vmauth.spec</td>
<td>object</td>
<td><pre class="helm-vars-default-value" language-yaml" lang="plaintext">
<code class="language-yaml">extraArgs:
discoverBackendIPs: "true"
</code> </code>
</pre> </pre>
</td> </td>

View file

@ -1,8 +1,28 @@
## Next release ## Next release
- TODO
## 0.5.7
**Release date:** 2024-11-18
![AppVersion: v1.106.1](https://img.shields.io/static/v1?label=AppVersion&message=v1.106.1&color=success&logo=)
![Helm: v3](https://img.shields.io/static/v1?label=Helm&message=v3&color=informational&logo=helm)
- updated common dependency 0.0.26 -> 0.0.28
- bump version of VM components to [v1.106.1](https://github.com/VictoriaMetrics/VictoriaMetrics/releases/tag/v1.106.1)
## 0.5.6
**Release date:** 2024-11-14
![AppVersion: v1.106.0](https://img.shields.io/static/v1?label=AppVersion&message=v1.106.0&color=success&logo=)
![Helm: v3](https://img.shields.io/static/v1?label=Helm&message=v3&color=informational&logo=helm)
- set default DNS domain to `cluster.local.` - set default DNS domain to `cluster.local.`
- updated common dependency 0.0.19 -> 0.0.23 - updated common dependency 0.0.19 -> 0.0.26
- added template for configmap name - added template for configmap name
- added init containers
## 0.5.5 ## 0.5.5

View file

@ -1,4 +1,4 @@
![Type: application](https://img.shields.io/badge/Type-application-informational?style=flat-square) ![Version: 0.5.5](https://img.shields.io/badge/Version-0.5.5-informational?style=flat-square) ![Type: application](https://img.shields.io/badge/Type-application-informational?style=flat-square) ![Version: 0.5.7](https://img.shields.io/badge/Version-0.5.7-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-gateway) [![Artifact Hub](https://img.shields.io/endpoint?url=https://artifacthub.io/badge/repository/victoriametrics)](https://artifacthub.io/packages/helm/victoriametrics/victoria-metrics-gateway)
[![Slack](https://img.shields.io/badge/join%20slack-%23victoriametrics-brightgreen.svg)](https://slack.victoriametrics.com/) [![Slack](https://img.shields.io/badge/join%20slack-%23victoriametrics-brightgreen.svg)](https://slack.victoriametrics.com/)
@ -557,6 +557,17 @@ loggerFormat: json
</pre> </pre>
</td> </td>
<td><p>Array of TLS objects</p> <td><p>Array of TLS objects</p>
</td>
</tr>
<tr>
<td>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>Init containers for vmgateway</p>
</td> </td>
</tr> </tr>
<tr> <tr>

View file

@ -1,6 +1,16 @@
## Next release ## Next release
- updated common dependency 0.0.21 -> 0.0.23 - TODO
## 0.28.4
**Release date:** 2024-11-18
![AppVersion: v1.106.1](https://img.shields.io/static/v1?label=AppVersion&message=v1.106.1&color=success&logo=)
![Helm: v3](https://img.shields.io/static/v1?label=Helm&message=v3&color=informational&logo=helm)
- updated common dependency 0.0.21 -> 0.0.28
- bump version of VM components to [v1.106.1](https://github.com/VictoriaMetrics/VictoriaMetrics/releases/tag/v1.106.1)
## 0.28.3 ## 0.28.3

View file

@ -1,4 +1,4 @@
![Type: application](https://img.shields.io/badge/Type-application-informational?style=flat-square) ![Version: 0.28.3](https://img.shields.io/badge/Version-0.28.3-informational?style=flat-square) ![Type: application](https://img.shields.io/badge/Type-application-informational?style=flat-square) ![Version: 0.28.4](https://img.shields.io/badge/Version-0.28.4-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-k8s-stack) [![Artifact Hub](https://img.shields.io/endpoint?url=https://artifacthub.io/badge/repository/victoriametrics)](https://artifacthub.io/packages/helm/victoriametrics/victoria-metrics-k8s-stack)
Kubernetes monitoring on VictoriaMetrics stack. Includes VictoriaMetrics Operator, Grafana dashboards, ServiceScrapes and VMRules Kubernetes monitoring on VictoriaMetrics stack. Includes VictoriaMetrics Operator, Grafana dashboards, ServiceScrapes and VMRules

View file

@ -1,9 +1,20 @@
## Next release ## Next release
- TODO
## 0.38.0
**Release date:** 2024-11-18
![AppVersion: v0.49.1](https://img.shields.io/static/v1?label=AppVersion&message=v0.49.1&color=success&logo=)
![Helm: v3](https://img.shields.io/static/v1?label=Helm&message=v3&color=informational&logo=helm)
- fix Deployment/StatefulSets when `serviceAccount.name` is empty and `serviceAccount.create: false`. See [this issue](https://github.com/VictoriaMetrics/helm-charts/issues/1683). - fix Deployment/StatefulSets when `serviceAccount.name` is empty and `serviceAccount.create: false`. See [this issue](https://github.com/VictoriaMetrics/helm-charts/issues/1683).
- set default DNS domain to `cluster.local.` - set default DNS domain to `cluster.local.`
- updated common dependency 0.0.19 -> 0.0.23 - updated common dependency 0.0.19 -> 0.0.28
- added back `crds.enabled: false` option, which disables CRD creation, but due to limitation of dependencies condition it allows to disable only in combination with `crds.plain: false` - added back `crds.enabled: false` option, which disables CRD creation, but due to limitation of dependencies condition it allows to disable only in combination with `crds.plain: false`
- disabled cleanup, while `crds.enabled: false`. See [this issue](https://github.com/VictoriaMetrics/helm-charts/issues/1563).
- updates operator to [v0.49.1](https://github.com/VictoriaMetrics/operator/releases/tag/v0.49.1) version
## 0.37.0 ## 0.37.0

View file

@ -1,4 +1,4 @@
![Type: application](https://img.shields.io/badge/Type-application-informational?style=flat-square) ![Version: 0.37.0](https://img.shields.io/badge/Version-0.37.0-informational?style=flat-square) ![Type: application](https://img.shields.io/badge/Type-application-informational?style=flat-square) ![Version: 0.38.0](https://img.shields.io/badge/Version-0.38.0-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-operator) [![Artifact Hub](https://img.shields.io/endpoint?url=https://artifacthub.io/badge/repository/victoriametrics)](https://artifacthub.io/packages/helm/victoriametrics/victoria-metrics-operator)
Victoria Metrics Operator Victoria Metrics Operator

View file

@ -0,0 +1,17 @@
![Type: application](https://img.shields.io/badge/Type-application-informational?style=flat-square) ![Version: 0.0.0](https://img.shields.io/badge/Version-0.0.0-informational?style=flat-square)
A subchart stores victoriametrics operator CRDs.
## Documentation of Helm Chart
Install ``helm-docs`` following the instructions on this [tutorial](https://docs.victoriametrics.com/helm/requirements/).
Generate docs with ``helm-docs`` command.
```bash
cd charts/crds
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.

View file

@ -1,6 +1,16 @@
## Next release ## Next release
- updated common dependency 0.0.20 -> 0.0.23 - TODO
## 0.12.7
**Release date:** 2024-11-18
![AppVersion: v1.106.1](https://img.shields.io/static/v1?label=AppVersion&message=v1.106.1&color=success&logo=)
![Helm: v3](https://img.shields.io/static/v1?label=Helm&message=v3&color=informational&logo=helm)
- updated common dependency 0.0.20 -> 0.0.28
- bump version of VM components to [v1.106.1](https://github.com/VictoriaMetrics/VictoriaMetrics/releases/tag/v1.106.1)
## 0.12.6 ## 0.12.6

View file

@ -1,4 +1,4 @@
![Type: application](https://img.shields.io/badge/Type-application-informational?style=flat-square) ![Version: 0.12.6](https://img.shields.io/badge/Version-0.12.6-informational?style=flat-square) ![Type: application](https://img.shields.io/badge/Type-application-informational?style=flat-square) ![Version: 0.12.7](https://img.shields.io/badge/Version-0.12.7-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-single) [![Artifact Hub](https://img.shields.io/endpoint?url=https://artifacthub.io/badge/repository/victoriametrics)](https://artifacthub.io/packages/helm/victoriametrics/victoria-metrics-single)
Victoria Metrics Single version - high-performance, cost-effective and scalable TSDB, long-term remote storage for Prometheus Victoria Metrics Single version - high-performance, cost-effective and scalable TSDB, long-term remote storage for Prometheus