Upgrade and UninstallΒΆ
Most upgrades are just helm upgrades
, but some upgrades require manual steps.
What type of upgrade do I need?ΒΆ
You need a Manual Upgrade when both:
Robusta installation fails with
com.coreos.monitoring.v1.Prometheus.spec
error.The embedded Prometheus is enabled (
enablePrometheusStack: true
)
In all other cases, do a Simple Upgrade.
Simple UpgradeΒΆ
Find the generated_values.yaml
you installed Robusta with. You'll need this to preserve settings during the upgrade.
Where is my generated_values.yaml?
If you lost your generated_values.yaml
file, you can extract it from any cluster with Robusta:
helm get values -o yaml robusta > generated_values.yaml
Now do a helm upgrade, passing your existing settings:
helm repo update
helm upgrade robusta robusta/robusta -f ./generated_values.yaml --set clusterName=<YOUR_CLUSTER_NAME>
Warning
Do not run helm upgrade --reuse-values
Verify that Robusta is running and there are no errors in the logs:
robusta logs
Manual UpgradeΒΆ
Some upgrades require minor additional steps.
Why are manual upgrades necessary?ΒΆ
Robusta bundles kube-prometheus-stack, which uses CRDs. Helm can't update CRDs, so we update them ourselves. See the Helm Documentation on CRDs for details.
Upgrading from older versionsΒΆ
Follow the steps below to fix any issues with old CRDs
The node-exporter daemonset and admission webhooks needs to be manually removed prior to upgrading:
kubectl delete daemonset -l app=prometheus-node-exporter
kubectl delete validatingwebhookconfigurations.admissionregistration.k8s.io -l app=kube-prometheus-stack-admission
kubectl delete MutatingWebhookConfiguration -l app=kube-prometheus-stack-admission
Manually update the installed CRDs. For more info, refer to the kube-prometheus-stack docs.
Warning
If you have an existing Prometheus Operator installed independently of Robusta then be very careful! Upgrading CRDs will impact all Prometheus Operators in your cluster.
kubectl replace -f https://raw.githubusercontent.com/prometheus-operator/prometheus-operator/v0.66.0/example/prometheus-operator-crd/monitoring.coreos.com_alertmanagerconfigs.yaml
kubectl replace -f https://raw.githubusercontent.com/prometheus-operator/prometheus-operator/v0.66.0/example/prometheus-operator-crd/monitoring.coreos.com_alertmanagers.yaml
kubectl replace -f https://raw.githubusercontent.com/prometheus-operator/prometheus-operator/v0.66.0/example/prometheus-operator-crd/monitoring.coreos.com_podmonitors.yaml
kubectl replace -f https://raw.githubusercontent.com/prometheus-operator/prometheus-operator/v0.66.0/example/prometheus-operator-crd/monitoring.coreos.com_probes.yaml
kubectl replace -f https://raw.githubusercontent.com/prometheus-operator/prometheus-operator/v0.66.0/example/prometheus-operator-crd/monitoring.coreos.com_prometheuses.yaml
kubectl replace -f https://raw.githubusercontent.com/prometheus-operator/prometheus-operator/v0.66.0/example/prometheus-operator-crd/monitoring.coreos.com_prometheusrules.yaml
kubectl replace -f https://raw.githubusercontent.com/prometheus-operator/prometheus-operator/v0.66.0/example/prometheus-operator-crd/monitoring.coreos.com_servicemonitors.yaml
kubectl replace -f https://raw.githubusercontent.com/prometheus-operator/prometheus-operator/v0.66.0/example/prometheus-operator-crd/monitoring.coreos.com_thanosrulers.yaml
Update Robusta with Helm. If you've lost
generated_values.yaml
, you can extract it from the cluster.
helm repo update
helm upgrade robusta robusta/robusta -f ./generated_values.yaml --set clusterName=<YOUR_CLUSTER_NAME>
Verify that Robusta is running and there are no errors in the logs:
robusta logs
Installing pre-releasesΒΆ
Install beta version of Robusta with helm upgrade --devel
.
UninstallΒΆ
You can uninstall Robusta as follows:
helm uninstall robusta