Versión de la integración6.0.0
This page is not yet available in Spanish. We are working on its translation.
If you have any questions or feedback about our current translation project,
feel free to reach out to us!Overview
Linkerd is a light but powerful open-source service mesh with CNCF graduated status. It provides the tools you need to write secure, reliable, observable cloud-native applications. With minimal configuration and no application changes, Linkerd:
- Uses mutual TLS to transparently secure all on-cluster TCP communication.
- Adds latency-aware load balancing, request retries, timeouts, and blue-green deploys to keep your applications resilient.
- Provides platform health metrics by tracking success rates, latencies, and request volumes for every meshed workload.
This integration sends your Linkerd metrics to Datadog, including application success rates, latency, and saturation.
Setup
This OpenMetrics-based integration has a latest mode (enabled by setting openmetrics_endpoint
to point to the target endpoint) and a legacy mode (enabled by setting prometheus_url
instead). To get all the most up-to-date features, Datadog recommends enabling the latest mode. For more information, see Latest and Legacy Versioning For OpenMetrics-based Integrations.
Metrics marked as [OpenMetrics V1]
or [OpenMetrics V2]
are only available using the corresponding mode of the Linkerd integration. Metrics not marked are collected by all modes.
Installation
The Linkerd check is included in the Datadog Agent package, so you don’t need to install anything else on your server.
Configuration
Containerized
For containerized environments, see the Autodiscovery Integration Templates for guidance on applying the parameters below.
Linkerd v1
Parameter | Value |
---|
<INTEGRATION_NAME> | linkerd |
<INIT_CONFIG> | blank or {} |
<INSTANCE_CONFIG> | {"openmetrics_endpoint": "http://%%host%%:9990/admin/metrics/prometheus"} |
Note: This is a new default OpenMetrics check example. If you previously implemented this integration, see the legacy example.
Linkerd v2
Parameter | Value |
---|
<INTEGRATION_NAME> | linkerd |
<INIT_CONFIG> | blank or {} |
<INSTANCE_CONFIG> | {"openmetrics_endpoint": "http://%%host%%:4191/metrics"} |
Note: This is a new default OpenMetrics check example. If you previously implemented this integration, see the legacy example.
Log collection
Collecting logs is disabled by default in the Datadog Agent. To enable it, see Kubernetes log collection.
Parameter | Value |
---|
<LOG_CONFIG> | {"source": "linkerd", "service": "<SERVICE_NAME>"} |
To increase the verbosity of the data plane logs, see Modifying the Proxy Log Level.
Validation
Run the Agent’s status subcommand and look for linkerd
under the Checks section.
Data Collected
Metrics
See metadata.csv for a list of metrics provided by this integration.
For Linkerd v1, see the finagle metrics guide for metric descriptions and this gist for an example of metrics exposed by Linkerd.
Linkerd is a Prometheus-based integration. Depending on your Linkerd configuration, some metrics might not be exposed by Linkerd. If any metric is not present in the cURL output, the Datadog Agent is unable to collect that particular metric.
To list the metrics exposed by your current configuration, run:
curl <linkerd_prometheus_endpoint>
Where linkerd_prometheus_endpoint
is the Linkerd Prometheus endpoint (you should use the same value as the prometheus_url
config key in your linkerd.yaml
)
If you need to use a metric that is not provided by default, you can add an entry to linkerd.yaml
.
For more information, see the examples in the default configuration.
Service Checks
linkerd.prometheus.health
Returns CRITICAL
if the agent fails to connect to the prometheus endpoint, otherwise OK
.
Statuses: ok, critical
Troubleshooting
Need help? Contact Datadog support.