Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
14 changes: 14 additions & 0 deletions docs/developers/serviceprovider/06-examples.mdx
Original file line number Diff line number Diff line change
Expand Up @@ -115,6 +115,20 @@ Community Service Providers that extend OpenControlPlane. Use these as inspirati
</div>
</div>

<div className="project-card">
<div className="project-card-header">
<img src="/img/logos/metrics.svg" alt="Metrics Operator Service Provider" className="project-logo" />
<h3>service-provider-metrics-operator</h3>
</div>
<div className="project-description">
Integrates the Prometheus metrics-operator into OpenControlPlane for metrics collection and alerting on managed workloads.
</div>
<div className="project-links">
<a href="https://github.com/openmcp-project/service-provider-metrics-operator" className="project-link project-link-primary" target="_blank" rel="noopener noreferrer"><svg width="16" height="16" viewBox="0 0 24 24" fill="currentColor"><path d="M12 .297c-6.63 0-12 5.373-12 12 0 5.303 3.438 9.8 8.205 11.385.6.113.82-.258.82-.577 0-.285-.01-1.04-.015-2.04-3.338.724-4.042-1.61-4.042-1.61C4.422 18.07 3.633 17.7 3.633 17.7c-1.087-.744.084-.729.084-.729 1.205.084 1.838 1.236 1.838 1.236 1.07 1.835 2.809 1.305 3.495.998.108-.776.417-1.305.76-1.605-2.665-.3-5.466-1.332-5.466-5.93 0-1.31.465-2.38 1.235-3.22-.135-.303-.54-1.523.105-3.176 0 0 1.005-.322 3.3 1.23.96-.267 1.98-.399 3-.405 1.02.006 2.04.138 3 .405 2.28-1.552 3.285-1.23 3.285-1.23.645 1.653.24 2.873.12 3.176.765.84 1.23 1.91 1.23 3.22 0 4.61-2.805 5.625-5.475 5.92.42.36.81 1.096.81 2.22 0 1.606-.015 2.896-.015 3.286 0 .315.21.69.825.57C20.565 22.092 24 17.592 24 12.297c0-6.627-5.373-12-12-12"/></svg> GitHub</a>

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

nit: extract the octocat as /img/logos/octocat.svg?

<a href="/reference/services/metrics-operator" className="project-link">CRD Browser</a>
</div>
</div>

</div>

## Community Service Providers
Expand Down
42 changes: 42 additions & 0 deletions docs/reference/services/metrics-operator.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,42 @@
---
sidebar_position: 7
id: metrics-operator
---

import CRDViewerCompact from '@site/src/components/CRDViewerCompact';

# Metrics Operator

<div className="crd-header-container">
<img src="/img/logos/metrics.svg" alt="Metrics Operator" className="crd-header-icon" />
<div className="crd-header-text">
<p>Delivers the OTel [metrics-operator](https://github.com/openmcp-project/metrics-operator) as a service within `ControlPlanes`, enabling metrics collection and alerting for managed workloads.</p>
</div>
</div>

**API Group:** `metrics.services.open-control-plane.io`
**API Version:** `v1alpha1`
**Kind:** `MetricsOperator`

<CRDViewerCompact
crdUrl="https://raw.githubusercontent.com/openmcp-project/service-provider-metrics-operator/main/api/crds/manifests/metrics.services.open-control-plane.io_metricsoperators.yaml"
name="MetricsOperator"
description="MetricsOperator service provider resource"
exampleUrl="https://raw.githubusercontent.com/openmcp-project/service-provider-metrics-operator/main/test/e2e/onboarding/metricsoperator.yaml"
/>

## Usage

Deploy the metrics-operator within a control plane:

```yaml
apiVersion: metrics.services.open-control-plane.io/v1alpha1
kind: MetricsOperator
metadata:
name: my-controlplane
namespace: project-platform-team--ws-dev
spec:
version: "v1.0.0"
```

The MetricsOperator service provider manages the installation and lifecycle of [metrics-operator](https://github.com/openmcp-project/metrics-operator) within your ControlPlane, enabling OTel-based metrics collection and alerting for managed workloads.
28 changes: 28 additions & 0 deletions docs/users/getting-started/03-configure.md
Original file line number Diff line number Diff line change
Expand Up @@ -222,6 +222,33 @@ kubectl apply -f external-secrets.yaml

Once installed, you can create `SecretStore` and `ExternalSecret` resources on the ControlPlane to pull secrets from your chosen backend.

</TabItem>
<TabItem value="metrics-operator" label="Metrics Operator">

[Metrics Operator](https://github.com/openmcp-project/service-provider-metrics-operator) installs the OTel-based metrics-operator into your ControlPlane, enabling metrics collection and alerting for managed workloads.

To install the Metrics Operator, create a `MetricsOperator` resource in the same namespace and with the same name as your `ControlPlane`:

:::apply-to-onboarding-api

```yaml
apiVersion: metrics.services.open-control-plane.io/v1alpha1
kind: MetricsOperator
metadata:
name: my-controlplane
namespace: project-platform-team--ws-dev
spec:
version: "v1.0.0"
```

```bash
kubectl apply -f metrics-operator.yaml
```

:::

The chart version and Helm values are configured by your platform owner via the `ProviderConfig`. See the [MetricsOperator CRD reference](/reference/services/metrics-operator) for the full API.

</TabItem>
<TabItem value="kro" label="Kro">

Expand Down Expand Up @@ -282,3 +309,4 @@ Congratulations! You have a working ControlPlane with managed services. Here's w
- **[Flux Service Provider](https://github.com/openmcp-project/service-provider-flux)** — GitOps-driven continuous delivery
- **[Velero Service Provider](https://github.com/openmcp-project/service-provider-velero)** — Backup and disaster recovery
- **[External Secrets Service Provider](https://github.com/openmcp-project/service-provider-external-secrets)** — Sync secrets from external vaults
- **[Metrics Operator Service Provider](https://github.com/openmcp-project/service-provider-metrics-operator)** — Prometheus metrics collection and alerting
20 changes: 20 additions & 0 deletions static/img/logos/metrics.svg
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.