Skip to content

Commit

Permalink
Update the migration guide to discuss how to rename data destination … (
Browse files Browse the repository at this point in the history
#1150)

* Update the migration guide to discuss how to rename data destination names with extraConfig section.

Signed-off-by: Pete Wall <[email protected]>

* Be a bit more specific and add direct instructions

Signed-off-by: Pete Wall <[email protected]>

---------

Signed-off-by: Pete Wall <[email protected]>
  • Loading branch information
petewall authored Jan 21, 2025
1 parent e618005 commit 0a42cb3
Showing 1 changed file with 34 additions and 4 deletions.
38 changes: 34 additions & 4 deletions charts/k8s-monitoring/docs/Migration.md
Original file line number Diff line number Diff line change
Expand Up @@ -297,8 +297,15 @@ If using Prometheus Operator objects, `metrics.podMonitors.enabled`, `metrics.pr

### Integrations

Integrations are a new feature in v2.0 that allow you to enable and configure additional data sources, but this also
includes the Alloy metrics that were previously part of `v1`.
Integrations are a new feature in v2.0 that allow you to enable and configure additional data sources. This
includes the Alloy metrics that were previously part of `v1`. Some service integrations that previously needed to be
defined in the `extraConfig` and `logs.extraConfig` sections can now be used in the integration feature.

If you are using the `metrics.alloy` setting for getting Alloy metrics, or if you are using `extraConfig` to add config
to get data from any of the new build-in integrations, you should replace your `extraConfig` to the new `integrations`
feature.

#### Built-in integrations

| Integration | v1.x setting | v2.0 setting | Notes |
|--------------|------------------------------------|-----------------------------|-------|
Expand All @@ -307,7 +314,7 @@ includes the Alloy metrics that were previously part of `v1`.
| etcd | `extraConfig` | `integrations.etcd` | |
| MySQL | `extraConfig` & `logs.extraConfig` | `integrations.mysql` | |

#### Steps to take
##### Steps to take

If using the Alloy integration `metrics.alloy.enabled`, or if using `extraConfig` for cert-manager, etcd, or MySQL:

Expand All @@ -324,10 +331,19 @@ If using the Alloy integration `metrics.alloy.enabled`, or if using `extraConfig

2. Move `metrics.alloy` to `integrations.alloy.instances[]`

#### Other integrations

For service integrations that are not available in the built-in integrations feature, you can continue to use them
in the `extraConfig` sections. See the [Extra Configs](#extra-configs) section below for guidance.

### Extra Configs

The variables for adding arbitrary configuration to the Alloy instances has been moved inside the respective Alloy
instance.
instance. If you are using `extraConfig` to add configuration for scraping metrics from an integration built-in with the
[integrations](https://github.com/grafana/k8s-monitoring-helm/tree/main/charts/k8s-monitoring/charts/feature-integrations)
feature (e.g. cert-manager, etcd, MySQL), you can move that configuration to the new `integrations` feature.

For other uses of `extraConfig`, continue with this section.

| extraConfig | v1.x setting | v2.0 setting | Notes |
|--------------------|-----------------------------------|-------------------------------|-------|
Expand All @@ -344,6 +360,20 @@ instance.
3. Move `logs.cluster_events.extraConfig` to `alloy-singleton.extraConfig`
4. Move `logs.extraConfig` to `alloy-logs.extraConfig`
5. Move `profiles.extraConfig` to `alloy-profiles.extraConfig`
6. Rename destinations for telemetry data to the appropriate destination component:

#### Destination names

| Data type | v1.x setting | v2.0 setting |
|-----------|-----------------------------------------------|-------------------------------------------------------|
| Metrics | `prometheus.relabel.metrics_service.receiver` | `prometheus.remote_write.<destination_name>.receiver` |
| Logs | `loki.process.logs_service.receiver` | `loki.write.<destination_name>.receiver` |
| Traces | `otelcol.exporter.otlp.traces_service.input` | `otelcol.exporter.otlp.<destination_name>.input` |
| Profiles | `pyroscope.write.profiles_service.receiver` | `pyroscope.write.<destination_name>.receiver` |

Note that the `<destination_name>` in the component reference is the name of the destination, set to lower-case and
with any special characters replaced with an underscore. For example, if your destination is named
`Grafana Cloud Metrics`, then the destination name would be `grafana_cloud_metrics`.

### Dropped features

Expand Down

0 comments on commit 0a42cb3

Please sign in to comment.