Upgrade Vald cluster
Before this document, we recommend reading the configuration document first.
Update Configuration
When you’d like to update the configuration for the Vald cluster, you need to edit your configuration file and apply it according to your deployment method. Please refer to one of the sections below according to your deployment method.
(Each Vald Agent will restore from backup data when performing a rolling update)
Using Helm for deployment
The configuration file is values.yaml
. (Helm Values)
You can edit your values.yaml
and update your Vald cluster by following steps:
Edit
values.yaml
.Update with Helm command.
helm upgrade <NAME> vald/vald --values <YOUR VALUES FILE PATH> # e.g., helm upgrade vald vald/vald --values values.yaml
Using vald-helm-operator
There are two configuration files:
vhor.yaml
for vald-helm-operatorvr.yaml
for the Vald cluster
If you don’t need to update the vald-helm-operator
, please skip step.1 and step.2.
The Vald cluster will be updated by the following steps:
Edit
vhor.yaml
.Apply
vhor.yaml
.kubectl apply -f <VHOR YAML FILE PATH> # e.g., kubectl apply -f vhor.yaml
Edit
vr.yaml
.Apply
vr.yaml
.kubectl apply -f <VR YAML FILE PATH> # e.g., kubectl apply -f vr.yaml
Upgrade Vald version
We recommend using the latest Vald version.
If your Vald cluster uses an old version and you’d like to upgrade the Vald version, you can upgrade by the following sections. Please refer to one of the sections below according to your deployment method.
In addition, if each Vald Agent already has the indexes and the backup feature enabled, please DO NOT edit the dimension and the distance type to avoid initContainer error. (Each Vald Agent will restore from backup data when backup when performing a rolling update)
Using Helm for deployment
Using the Helm
command for the deployment of the Vald cluster, the upgrading steps are below.
If there is major or minor upgrading, the chart structure may have changed.
Verify vald repo in your helm repo
helm repo list
Update Helm repo
helm repo update <NAME of Vald> # e.g., helm repo update vald
Edit
values.yaml
We recommend setting a specific version as an image tag.
defaults: --- image: tag: v1.5.6 # set a new version
Apply
values.yaml
helm upgrade <NAME> vald/vald --values <YOUR VALUES FILE PATH> # e.g., helm upgrade vald vald/vald --values values.yaml
Using vald-helm-operator
The upgrading steps are below if you use vald-helm-operator
for the deployment.
Upgrade CRDs
kubectl replace -f https://raw.githubusercontent.com/vdaas/vald/<VERSION>/charts/vald-helm-operator/crds/valdrelease.yaml kubectl replace -f https://raw.githubusercontent.com/vdaas/vald/<VERSION>/charts/vald-helm-operator/crds/valdhelmoperatorrelease.yaml
Update
vhor
kubectl patch vhor vhor-release -p '{"spec":{"image":{"tag":"<VERSION>"}}}'
- Also, you can upgrade manually by editing
vhor.yaml
and applying it.
- Also, you can upgrade manually by editing
Edit
vr.yaml
We recommend setting a specific version as an image tag.
... spec: defaults: ... image: tag: v1.5.6 # set a new version ...
Apply
vr.yaml
kubectl apply -f <VR YAML FILE PATH> # e.g., kubectl apply -f vr.yaml