Use Community and Marketplace Integrations

Overview

Community developed integrations for the Datadog Agent are stored in the Datadog integrations-extra GitHub repository. They are not packaged with the Agent, but can be installed as add-ons.

Setup

Follow the installation method for your environment.

For Agent v7.21+ / v6.21+:

  1. Run the following command to install the Agent integration:

    sudo -u dd-agent datadog-agent integration install -t datadog-<INTEGRATION_NAME>==<INTEGRATION_VERSION>
    

    The version for the integration can be found in the respective changelog on the integration’s GitHub repository.

  2. Manage your integration configuration files in the same way as core integrations, placing each configuration in /etc/datadog-agent/conf.d/<INTEGRATION_NAME>.d/conf.yaml.

  3. Restart the Agent.

Build the image

To use a community or Marketplace integration in a containerized environment, build a custom Agent image that includes your desired integration.

Building a custom image ensures the integration persists across deployments each time a container starts.

Use the following Dockerfile to build a custom version of the Agent that includes the <INTEGRATION_NAME> from integrations-extras. If you are installing a Marketplace integration, the <INTEGRATION_NAME> is available in the configuration instructions.

FROM gcr.io/datadoghq/agent:latest
RUN agent integration install -r -t datadog-<INTEGRATION_NAME>==<INTEGRATION_VERSION>

Build and push the image:

docker build -t <RepoName>/agent:<version>-custom .
docker push <RepoName>/agent:<version>-custom

If you use both amd64 and arm host architectures, you can also build multi-architecture images.

Deploy the image

To deploy the custom image in Kubernetes, update your Helm chart or Datadog Operator configuration to pull the image.

Helm:
agents:
  image:
    tag: <version>
    tagSuffix: "custom"
    repository: <Registry>/<RepoName>/agent
Operator:
apiVersion: datadoghq.com/v2alpha1
kind: DatadogAgent
metadata:
  name: datadog
spec:
  global:
    registry: <Registry>/<RepoName>
    #(...)  
  override:
    nodeAgent:
      image:
        name: agent
        tag: <version>-custom

Use Autodiscovery to enable and configure the integration.

If your site restricts network access, ensure you have added all of the ip-ranges to your inclusion list, or download the integration manually.


Further Reading

Additional helpful documentation, links, and articles: