Datadog Operator
Overview
[!NOTE]
DatadogAgentInternal was introduced in v1.16.0, enabled by default in v1.22.0, and will become required (opt-out removed) in v1.27.0. See [documentation][20] for details.
[!WARNING]
⚠️ If you are upgrading to Operator v1.22.0+ fromor you haven't migrated Daemonset matchLabels, see the [migration guide][19].
[!WARNING]
ExtendedDaemonSet support has been removed. Before upgrading from an EDS-capable Operator release, follow the [ExtendedDaemonSet migration guide][21].
The Datadog Operator aims to provide a new way of deploying the [Datadog Agent][1] on Kubernetes. Once deployed, the Datadog Operator provides:
- Agent configuration validation that limits configuration mistakes.
- Orchestration of creating/updating Datadog Agent resources.
- Reporting of Agent configuration status in its Kubernetes CRD resource.
- Many other features to come :).
Datadog Operator vs. Helm chart
You can also use official [Datadog Helm chart][3] or a DaemonSet to install the Datadog Agent on Kubernetes. However, using the Datadog Operator offers the following advantages:
- The Operator has built-in defaults based on Datadog best practices.
- Operator configuration is more flexible for future enhancements.
- As a [Kubernetes Operator][16], the Datadog Operator is treated as a first-class resource by the Kubernetes API.
- Unlike the Helm chart, the Operator is included in the Kubernetes reconciliation loop.
Getting started
See the [Getting Started][5] dedicated documentation to learn how to deploy the Datadog operator and your first Agent, and [Configuration][12] to see examples, a list of all configuration keys, and default values.
Migrating from v1alpha1 to v2alpha1
Datadog Operator v1.8.0+ does not support migrating from DatadogAgent CRD v1alpha1 to v2alpha1 or from Operator v0.8.x to v1.x.x.
Use the conversion webhook in v1.7.0 to migrate, and then upgrade to a recent version.
Default Enabled Features
- Cluster Agent
- Admission Controller
- Cluster Checks
- Kubernetes Event Collection
- Kubernetes State Core Check
- Live Container Collection
- Orchestrator Explorer
- UnixDomainSocket transport for DogStatsD (and APM if enabled)
- Process Discovery
- Control Plane Monitoring
Functionalities
The Datadog operator also allows you to:
- [Configure and provide custom checks to the Agents][6].
- [Deploy the Datadog Cluster Agent with your node Agents][7].
- [Secrets Management with the Datadog Operator][8].
Deprecation Notice
See the [deprecated configurations and migration guidelines][17] page.
How to contribute
See the [How to Contribute page][9].
[1]: https://github.com/DataDog/datadog-agent/ [3]: https://github.com/DataDog/helm-charts/tree/main/charts/datadog [4]: https://github.com/DataDog/datadog-agent/tree/6.15.0/Dockerfiles/manifests [5]: https://github.com/DataDog/datadog-operator/blob/main/docs/getting_started.md [6]: https://github.com/DataDog/datadog-operator/blob/main/docs/custom_check.md [7]: https://github.com/DataDog/datadog-operator/blob/main/docs/cluster_agent_setup.md [8]: https://github.com/DataDog/datadog-operator/blob/main/docs/secret_management.md [9]: https://github.com/DataDog/datadog-operator/tree/main/docs/how-to-contribute.md [10]: https://catalog.redhat.com/software/operators/detail/5e9874986c5dcb34dfbb1a12 [11]: https://operatorhub.io/operator/datadog-operator [12]: https://github.com/DataDog/datadog-operator/blob/main/docs/configuration.v2alpha1.md [13]: https://kubernetes.io/docs/tasks/extend-kubernetes/custom-resources/custom-resource-definition-versioning/ [14]: https://docs.datadoghq.com/containers/guide/datadogoperator_migration/ [15]: https://github.com/DataDog/helm-charts/tree/main/charts/datadog-operator#migration [16]: https://kubernetes.io/docs/concepts/extend-kubernetes/operator/ [17]: https://github.com/DataDog/datadog-operator/blob/main/docs/deprecated_configs.md [18]: https://github.com/DataDog/datadog-operator/blob/main/docs/datadog_agent_profiles.md [19]: https://github.com/DataDog/datadog-operator/blob/main/docs/agent_metadata_changes.md [20]: https://github.com/DataDog/datadog-operator/blob/main/docs/datadog_agent_internal.md [21]: https://github.com/DataDog/datadog-operator/blob/main/docs/extendeddaemonset_migration.md
Release
Release process documentation is available here.