Datadog Inc.

07/16/2024 | News release | Distributed by Public on 07/16/2024 15:30

Integration roundup: Monitoring the health and performance of your container-native CI/CD pipelines

Widespread adoption of containerized infrastructure has been closely followed by an explosion of container-native tools for each layer of the stack, including new solutions for managing CI/CD pipelines in container-based environments, such as the Argo suite, FluxCD, and Tekton. This is because these lightweight solutions make it easier to automate builds, testing, deployments, and more on Kubernetes, as well as other platforms that manage containerized workloads and services. These capabilities help teams run applications more efficiently and provide end users with a more seamless experience.

Datadog's growing suite of container-native CI/CD integrations allows you to monitor the health and performance of applications deployed on Kubernetes and in container-based environments. In this post, we'll explore how several integrations we have recently released or updated help you:

Visualize deployment data with Argo Rollouts

Argo Rollouts is an open source Kubernetes controller and set of custom resource definitions (CRDs) that enable progressive delivery for Kubernetes-native applications. It facilitates advanced deployment strategies, such as canary deployments, blue-green deployments, and traffic shifting, allowing users to automate and manage the release process of their applications on Kubernetes clusters with increased safety and control.

With Datadog's Argo Rollouts integration, users can track the progress of their ongoing rollouts to avoid prolonged downtimes and service disruptions. Additionally, users can monitor analysis and experiment telemetry to understand the performance and outcomes of deployment experiments. These metrics on experiment results help users assess the impact of deployment changes on application performance and end-user experience. Users can also investigate scaling behavior and resource utilization of their application instances with replica counts and reconciliation data, helping them understand whether actual cluster states are consistent with desired cluster states. You can see this data summarized in the dashboard below.

Track workflow execution with Argo Workflows

Argo Workflows is an open source container-native solution for orchestrating parallel and sequential jobs on Kubernetes. With Argo Workflows, you can create scalable and resilient workflows, automate and coordinate their execution, and easily integrate them into your existing Kubernetes infrastructure.

With the Datadog's Argo Workflows integration, users can track workflow execution based on operation durations to ensure timely completion of workflows and proactively identify delays that could affect end-user experience. Additionally, users can monitor resource allocation through Argo Workflows metrics on Kubernetes request counts, OS threads created, and Go runtime to ensure their application is not bottlenecked by resource constraints that cause slowdowns. Furthermore, users can surface workflow errors and cross-correlate with error log streams to root-cause workflow execution issues faster. This data is showcased in the out-of-the-box dashboard and recommended monitors that are made available automatically upon enabling the integration.

Troubleshoot declarative CD pipelines with ArgoCD

ArgoCD is a CD solution for Kubernetes that monitors the state of your clusters and automatically deploys updates based on discrepancies between the actual state and the desired state defined in your Kubernetes manifest files. ArgoCD is GitOps-compatible and includes an intuitive UI that helps you ensure that changes to your container infrastructure match the state of your repository.

The Datadog ArgoCD integration enables users to monitor metrics from ArgoCD and keep their Kubernetes clusters up to date with their latest manifest files. Additionally, the ArgoCD out-of-the-box dashboard provides a high-level overview of your ArgoCD clusters so that you can monitor the deployments, performance, and overall health of your infrastructure. The dashboard surfaces alerts from pre-configured monitors for key ArgoCD metrics to notify you of any sync issues. To learn more, see our dedicated blog post.

Monitor continuous delivery processes with FluxCD

FluxCD is an open source CD tool that automates the deployment of applications and infrastructure changes to Kubernetes clusters. It detects changes (e.g., replica scaling, configuration updates, or new service deployments) pushed to the customer's Git repositories and automatically applies them to the cluster.

With the Datadog FluxCD integration, users can monitor resource consumption with metrics on resident and virtual memory availability, number of open file descriptors, and total user or system CPU time spent. Additionally, they can surface changes in the number, condition, and duration of reconciliation processes and investigate these changes through relevant warning logs. This context allows users to discover mismatches between desired and actual application states and thus prevent service disruptions. Users can also track the depth and status of different work queues and set up alerts that immediately surface spikes in active workers. This data will help users prevent stuck threads-situations where a specific process or task is unable to progress or complete its operation-and resolve resource contention before application slowdowns degrade end-user experience.

You will receive alerts if any issues with your deployments arise, as shown in the monitor summary below.

Track pipeline executions with Tekton

Tekton is a cloud-native CI/CD tool for pipeline orchestration, enabling developers to define and automate their software delivery workflows. It is designed for cloud-native applications that require automated testing, building, and deployment processes integrated into Kubernetes clusters.

With the Datadog Tekton integration, users can track pipeline execution latency to ensure that their pipelines are running within acceptable time frames, which is crucial for maintaining fast feedback loops in the software development lifecycle. Additionally, the integration enables users to monitor resource utilization metrics such as CPU and memory usage of pipeline tasks and Tekton components (e.g., controllers, runners) to make informed adjustments in resource allocation or configuration. Using this telemetry helps users optimize performance and avoid potential failures or delays in pipeline executions so downstream users do not notice application slowdowns. Some of this data is visualized below in the out-of-the-box dashboard and recommended monitors that are made available automatically upon installation.

Monitor all your container-native CI/CD integrations with Datadog

The field of container-native CI/CD solutions is rapidly expanding, offering more and more options for developers looking to automate builds, testing, deployments, and more in containerized environments. This expanding field means that you need to adapt your monitoring strategy to gain complete visibility into your tech stack and stay ahead of any issues that may arise in your container-native CI/CD pipelines. Looking for visibility into your CI/CD pipelines from tools like Jenkins, Github, Gitlab and others? Check out CI Visibility

Datadog can help you adapt your monitoring strategy to gain complete visibility into your tech stack. If you're new to Datadog, sign up for a 14-day free trial.