Skip to main content
Kubernetes Dashboard supports integration with third-party tools and services to enhance monitoring, logging, and observability capabilities. This guide covers available integrations and how to configure them.

Overview

Dashboard provides an integration framework that allows it to work seamlessly with external tools and services:
  • Metrics Providers: CPU and memory metrics from various sources
  • Logging Systems: Log aggregation and analysis platforms
  • Service Meshes: Integration with Istio, Linkerd, and others
  • Monitoring Tools: Prometheus, Grafana, and observability platforms
The integration framework is located in modules/api/pkg/integration/manager.go and supports pluggable integrations for metrics and other services.

Metrics Integration

Dashboard integrates with metrics providers to display resource utilization data.

metrics-server (Default)

Dashboard uses metrics-server as the default metrics provider:
1

Install metrics-server

Deploy metrics-server to your cluster:
2

Verify Installation

Check that metrics-server is running:
3

Deploy metrics-scraper

The dashboard-metrics-scraper is deployed automatically with Dashboard:

How It Works

The metrics integration flow:
  1. metrics-server collects metrics from kubelets
  2. dashboard-metrics-scraper queries the Metrics API every 60 seconds
  3. Metrics are stored in a SQLite database
  4. Dashboard API serves metrics to the frontend
  5. UI displays graphs, sparklines, and usage data

Configuration

Configure metrics integration via Dashboard flags:
Flags:
  • --metrics-scraper-service-name: Service name for the metrics scraper
  • --namespace: Namespace where scraper is deployed
  • --metric-client-check-period: Health check interval (default: 30s)
Dashboard automatically disables metrics if the provider becomes unavailable, ensuring resilience to metric provider crashes.

Monitoring Integrations

Prometheus

Integrate Dashboard with Prometheus for advanced monitoring:

Scraping Dashboard Metrics

Configure Prometheus to scrape Dashboard metrics:

Adding Prometheus Annotations

Annotate Dashboard resources for Prometheus discovery:

Grafana

Visualize Dashboard metrics in Grafana:
1

Add Prometheus Data Source

Configure Grafana to use your Prometheus instance:
2

Import Dashboard

Create a Grafana dashboard for Kubernetes Dashboard metrics
3

Configure Panels

Add panels for:
  • API request rates
  • Response times
  • Error rates
  • Resource utilization
Use Grafana’s Kubernetes dashboards as templates and extend them with Dashboard-specific metrics.

Logging Integrations

ELK Stack (Elasticsearch, Logstash, Kibana)

Integrate Dashboard with ELK for advanced log analysis:

Fluentd Configuration

Deploy Fluentd to collect Dashboard logs:

Kibana Dashboards

Create Kibana visualizations for:
  • Error rate trends
  • Request volume by endpoint
  • Authentication failures
  • Resource access patterns

Grafana Loki

Use Loki for lightweight log aggregation:

Service Mesh Integration

Istio

Integrate Dashboard with Istio service mesh:

Enable Sidecar Injection

Or annotate specific pods:

Virtual Service Configuration

Route traffic through Istio:

Observability

Istio provides automatic metrics, traces, and logs for Dashboard:
  • Kiali: Service graph and topology
  • Jaeger: Distributed tracing
  • Grafana: Istio dashboards

Linkerd

Integrate with Linkerd service mesh:

Authentication Integration

OIDC (OpenID Connect)

Dashboard supports OIDC authentication through the Kubernetes API server.

Configure API Server

Enable OIDC on your cluster:

Login Flow

1

Obtain OIDC Token

User authenticates with identity provider
2

Present Token to Dashboard

Paste the ID token in Dashboard login screen
3

API Server Validation

Kubernetes API server validates the token
4

Access Granted

Dashboard proxies requests with the authenticated identity

OAuth2 Proxy

Use oauth2-proxy for SSO integration:

Alert Manager Integration

Integrate with Prometheus AlertManager:

Alert Rules

Define alerts for Dashboard issues:

Notification Routing

Configure alert routing:

Custom Integrations

Integration Framework

Dashboard’s integration framework supports custom providers:

Creating a Custom Integration

Implement custom metric providers or integrations by extending the framework.
Future versions of Dashboard may support additional integration types beyond metrics, such as custom logging providers or workflow integrations.

Best Practices

Deploy monitoring and logging tools in separate namespaces:
Set resource requests/limits for integration components:
Secure metrics scraping with TLS:
Set appropriate retention for logs and metrics:
Set up alerts for integration failures:

Troubleshooting

Check metrics-server:
Verify metrics-scraper:
Test Metrics API:
Check service discovery:
Verify annotations:
Check Prometheus targets: Navigate to Prometheus UI → Status → Targets
Verify namespace label:
Check injection status:
Look for istio-proxy container.

Next Steps

Monitoring Metrics

Learn about metrics collection and visualization

Viewing Logs

Access and analyze container logs