Coder Social home page Coder Social logo

diranged / datadog-operator Goto Github PK

View Code? Open in Web Editor NEW

This project forked from datadog/datadog-operator

0.0 1.0 0.0 16.38 MB

Datadog Agent Kubernetes Operator

License: Apache License 2.0

Shell 0.91% Go 98.43% Makefile 0.53% Dockerfile 0.13%

datadog-operator's Introduction

Datadog Operator

badge Go Report Card codecov

Overview

The Datadog Operator aims to provide a new way of deploying the Datadog Agent 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.
  • Optionally, use of an advanced DaemonSet deployment by leveraging the ExtendedDaemonSet.
  • Many other features to come :).

The Datadog Operator is RedHat certified and available on operatorhub.io.

Datadog Operator vs. Helm chart

The official Datadog Helm chart is still the recommended way to setup Datadog in a Kubernetes cluster, as it has most supported configuration options readily accessible. It also makes using more advanced features easier than rolling your own deployments.

The Datadog Operator aims to improve the user experience around deploying Datadog. It does this by reporting deployment status, health, and errors in its Custom Resource status, and by limiting the risk of misconfiguration thanks to higher-level configuration options.

However, the Datadog Operator is still in beta, so it is not yet a recommended way of installing the Agent in production. Datadog's end goal is to support both the Helm chart and the operator (as well as providing basic deployment files in the Agent repository when CRDs and Helm are not an option) as official ways of installing Datadog.

Getting started

See the Getting Started dedicated documentation to learn how to deploy the Datadog operator and your first Agent, and Configuration to see examples, a list of all configuration keys, and default values.

Migrating from 0.8.x to 1.0.0

Operator 1.0.0 contains several changes users need to be aware of:

  • DatadogAgent CRD has two versions, v1alpha1 and v2alpha1. They are used as a stored version by Operator 0.8.x and 1.0.0 respectively. See this Kubernetes documentation page for more details about CRD versioning.
  • v1alpha1 and v2alpha1 are not backward or forward compatible. The Datadog Operator 1.0.0 implements a Conversion Webhook to migrate, though it only supports migrating from v1alpha1 to v2alpha1.
  • With the Conversion Webhook enabled, users can run 1.0.0 but continue applying a v1alpha1 manifest. However, they won't be able to retrieve the DatadogAgent manifest as a v1alpha1 object (see the previous item).
  • The Conversion Webhook requires a cert manager. See the migration guide in the public or helm chart documentation for more details.
  • 0.8.x managed PodDisruptionBudget for Cluster Agent and Cluster Checks Worker deployments. 1.0.0 doesn't, however this is on our roadmap.

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)

Functionalities

The Datadog operator also allows you to:

How to contribute

See the How to Contribute page.

Release

Release process documentation is available here.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.