Datadog Blueprints Add-on

Supported OS Linux Windows Mac OS

Overview

Amazon Elastic Kubernetes Service (EKS) is a managed Kubernetes service that automates certain aspects of deployment and maintenance for any standard Kubernetes environment.

Amazon EKS Blueprints is a framework that consolidates cluster configuration and deployment tools.

The Datadog Blueprints add-on uses Blueprints to deploy the Datadog Agent on Amazon EKS.

Setup

Installation

npm install @datadog/datadog-eks-blueprints-addon

Usage

Using an existing Kubernetes secret

import * as cdk from 'aws-cdk-lib';
import * as blueprints from '@aws-quickstart/eks-blueprints';
import { DatadogAddOn } from '@datadog/datadog-eks-blueprints-addon';
const app = new cdk.App();
const addOns: Array<blueprints.ClusterAddOn> = [
    new DatadogAddOn({
        // Kubernetes secret holding Datadog API key
        // The value should be set with the `api-key` key in the secret object.
        apiKeyExistingSecret: '<secret name>'
    })
];
const account = '<aws account id>'
const region = '<aws region>'
const props = { env: { account, region } }
new blueprints.EksBlueprint(app, { id: '<eks cluster name>', addOns}, props)

Using AWS Secrets Manager

Store your Datadog API key using AWS Secrets Manager:

aws secretsmanager create-secret --name <secret name> --secret-string <api_key> --region <aws region>

Refer to the previously created secret with apiKeyAWSSecret.

import * as cdk from 'aws-cdk-lib';
import * as blueprints from '@aws-quickstart/eks-blueprints';
import { DatadogAddOn } from '@datadog/datadog-eks-blueprints-addon';
const app = new cdk.App();
const addOns: Array<blueprints.ClusterAddOn> = [
    new DatadogAddOn({
        apiKeyAWSSecret: '<secret name>'
    })
];
const account = '<aws account id>'
const region = '<aws region>'
const props = { env: { account, region } }
new blueprints.EksBlueprint(app, { id: '<eks cluster name>', addOns}, props)

Configuation

Options

OptionDescriptionDefault
apiKeyYour Datadog API key""
appKeyYour Datadog app key""
apiKeyExistingSecretExisting Kubernetes Secret storing the API key""
appKeyExistingSecretExisting Kubernetes Secret storing the app key""
apiKeyAWSSecretSecret in AWS Secrets Manager storing the API key""
appKeyAWSSecretSecret in AWS Secrets Manager storing the app key""
namespaceNamespace to install the Datadog Agent“default”
versionVersion of the Datadog Helm chart“2.28.13”
releaseName of the Helm release“datadog”
repositoryRepository of the Helm charthttps://helm.datadoghq.com
valuesConfiguration values passed to the chart. See options.{}

See the Datadog Helm chart for all Agent configuration options. You can then pass these values using the values option.

Metric collection

Monitoring EKS requires that you set up one of the following Datadog integrations:

Also set up the integrations for any other AWS services that you are running with EKS, such as ELB.

Data Collected

Troubleshooting

Need help? Contact Datadog support.