> ## Documentation Index
> Fetch the complete documentation index at: https://metoro.io/docs/llms.txt
> Use this file to discover all available pages before exploring further.

# Upgrade 10.1.0 to 10.2.0

> Upgrade Metoro on-premises 10.1.0 hubs to 10.2.0

Metoro 10.2.0 is a minor release in the 10.x on-premises line. It keeps the 10.x Helm values API, so existing 10.1.0 values files can be reused without migration.

No ClickHouse reset, PostgreSQL migration, or datastore maintenance step is required for this upgrade.

<Info>
  Hub commands assume the Helm release is named `metoro` and runs in the `metoro-hub` namespace. Monitored-cluster exporter commands assume the Helm release is named `metoro-exporter` and runs in the `metoro` namespace. Adjust release names and namespaces if your installation uses different values.
</Info>

## Upgrade The Hub

Start from the values file used for the existing hub release. If you do not have it locally, export the user-supplied Helm values:

```bash theme={null}
helm -n metoro-hub get values metoro > metoro-hub-values.yaml
```

Upgrade the hub chart to `10.2.0`:

```bash theme={null}
helm upgrade --install metoro oci://quay.io/metoro/charts/metoro-onprem \
  --namespace metoro-hub \
  --version 10.2.0 \
  --values metoro-hub-values.yaml
```

## Check The Hub Rollout

Check the hub Helm release and workloads:

```bash theme={null}
helm -n metoro-hub status metoro
kubectl -n metoro-hub rollout status deployment/apiserver
kubectl -n metoro-hub rollout status deployment/ingester
```

Check that the hub-only `MetoroGroup` CRD is installed in the hub cluster:

```bash theme={null}
kubectl get crd metorogroups.rbac.metoro.io
```

If hub self-monitoring is enabled, check the bundled exporter rollout too:

```bash theme={null}
kubectl -n metoro-hub rollout status deployment/metoro-exporter
```

When hub self-monitoring is enabled, it uses the exporter chart, which installs the same rule and resource CRDs as a monitored-cluster exporter:

```bash theme={null}
kubectl get crd \
  metoroalerts.observability.metoro.io \
  metorodashboards.observability.metoro.io \
  metorowebhooks.observability.metoro.io \
  metoroclusterresourcerules.rbac.metoro.io \
  metoronamespaceresourcerules.rbac.metoro.io \
  metoroclustertelemetryrules.rbac.metoro.io \
  metoronamespacetelemetryrules.rbac.metoro.io
```

## Upgrade Monitored-Cluster Exporters

Upgrading the hub repins future onboarding commands, but it does not automatically upgrade exporter releases already installed on monitored clusters. Repeat this section for every monitored cluster that has `metoro-exporter-onprem` installed.

Start from the values file used for the existing exporter release in the monitored cluster. If you do not have it locally, export the user-supplied Helm values:

```bash theme={null}
helm -n metoro get values metoro-exporter > metoro-exporter-values.yaml
```

Upgrade the exporter chart to `10.2.0`:

```bash theme={null}
helm upgrade --install metoro-exporter oci://quay.io/metoro/charts/metoro-exporter-onprem \
  --namespace metoro \
  --version 10.2.0 \
  --values metoro-exporter-values.yaml
```

## Check Monitored-Cluster Rollouts

After upgrading each monitored cluster, check the exporter Helm release and workloads:

```bash theme={null}
helm -n metoro status metoro-exporter
kubectl -n metoro rollout status deployment/metoro-exporter
kubectl -n metoro rollout status daemonset/metoro-node-agent
```

This release installs new Metoro CRDs for both RBAC and Metoro resources. Check that the monitored-cluster CRDs are installed. `MetoroGroup` is intentionally not installed in monitored clusters; it exists only in the hub cluster.

```bash theme={null}
kubectl get crd \
  metoroalerts.observability.metoro.io \
  metorodashboards.observability.metoro.io \
  metorowebhooks.observability.metoro.io \
  metoroclusterresourcerules.rbac.metoro.io \
  metoronamespaceresourcerules.rbac.metoro.io \
  metoroclustertelemetryrules.rbac.metoro.io \
  metoronamespacetelemetryrules.rbac.metoro.io
```

If ServiceMonitor scraping is enabled, check the collector and target allocator rollouts too:

```bash theme={null}
kubectl -n metoro rollout status statefulset/metoro-exporter-sm-scraper
kubectl -n metoro rollout status deployment/metoro-exporter-sm-scraper-targetallocator
```

Use the release name and namespace from the existing exporter installation if they differ from the defaults above.

Expected outcome:

* Apiserver and Ingester roll to the 10.2.0 images.
* Hub self-monitoring rolls to the 10.2.0 exporter chart and images when enabled.
* Existing monitored-cluster exporter releases roll to the 10.2.0 exporter chart and images after their Helm upgrades.
* The `MetoroGroup` CRD is present in the hub cluster only.
* Rule and resource CRDs are present in every monitored cluster.
* Existing PostgreSQL, ClickHouse, Temporal, and telemetry data remain in place.
* Future monitored-cluster onboarding commands reference `metoro-exporter-onprem` 10.2.0.
