---
title: "eBPF deployment using the Harness CD pipeline"
slug: "ebpf-harness-cd"
description: "Step-by-step guide to deploying the Traceable eBPF agent in Kubernetes using a Harness Continuous Delivery (CD) pipeline. Covers creating a Helm connector, storing configuration in the Harness File Store, defining a service with the Traceable Helm chart, and integrating it into a deployment pipeline for automated, consistent eBPF instrumentation across environments."
updated: 2025-08-12T05:24:41Z
published: 2025-08-12T05:24:41Z
---

> ## Documentation Index
> Fetch the complete documentation index at: https://traceabledocs.document360.io/llms.txt
> Use this file to discover all available pages before exploring further.

# eBPF deployment using the Harness CD pipeline

You can deploy the Traceable eBPF agent in your Kubernetes environment using a Harness Continuous Delivery (CD) pipeline. This deployment uses the Traceable Helm chart and is integrated into your Harness project. The process involves:

- Creating a Helm connector to access the Traceable Helm repository.
- Storing the agent configuration in the Harness File Store.
- Creating a Harness service for the Traceable agent.
- Adding the service to a Harness deployment pipeline.

Once set up, this approach enables consistent, automated deployments of the Traceable eBPF agent across environments.

---

## Before You Begin

Before starting the deployment, ensure that you have:

- **Access to Harness CD** with permission to create connectors, services, and pipelines.
- **A running Harness Delegate** in your environment. If a delegate is not available, you must install one during the connector setup.
- **A valid Traceable token** and the environment details provided by Traceable.
- **Helm chart repository details** for Traceable:
  - **Helm Repo URL**: `https://helm.traceable.ai`
  - **Authentication**: None (unless otherwise specified by your organization)
- **Namespaces for instrumentation** — know which Kubernetes namespaces require eBPF instrumentation.

---

## Deployment Steps

This procedure has four main steps. First, you create a Helm connector in Harness to access the Traceable Helm repository. Next, you store the Traceable agent configuration in the Harness File Store. You then create a Harness service that references the Helm chart and configuration file. Finally, you add the service to a pipeline and deploy it.

---

### Step 1: Create a Helm Connector

The Helm connector in Harness provides access to the Traceable Helm repository.

1. In your Harness project, go to **Project Settings → Connectors**.
2. Click **New Connector** and select **HTTP Helm Repository**.
3. Configure the connector:
  - **Name**: `traceable-helm-connector`
  - **Helm Repo URL**: `https://helm.traceable.ai`
  - **Authentication**: None
4. Select an existing delegate or install a new one.
5. Click **Test Connection** and then **Finish**.

For more details, refer to the Harness documentation: [HTTP Helm Repo Connector Settings Reference](https://developer.harness.io/docs/platform/connectors/code-repositories/ref-source-repo-provider/http-helm-repo-connector-settings-reference/).

---

### Step 2: Create a File Configuration

You now create a YAML configuration file for the Traceable agent and store it in the Harness File Store.

1. In your Harness project, go to **Project Settings > File Store**.
2. Click **Create New File** and configure:
  - **Name**: `traceable-agent-values`
  - **File Usage**: Manifest
  - **Contents**: YAML configuration, for example:

```yaml
token: <your-token>
environment: <your-env-name>
endpoint: api-<traceable-env>.traceable.ai
logLevel: info
daemonSetMirroringEnabled: true
ebpfCaptureEnabled: true
ebpfRunAsPrivileged: true
ebpfDeployOnMaster: true
daemonSetMirroring:
  matchSelectors:
    - field_selectors:
        - "metadata.namespace=<namespace that needs instrumentation>"
```

Replace `&lt;your-token&gt;`, `&lt;your-env-name&gt;`, and `&lt;namespace&gt;` with your actual values.

---

### Step 3: Create a Service

The service in Harness defines how the Traceable agent is deployed.

1. Go to the **Services** section and click **New Service**.
2. Enter:
  - **Name**: `traceable-agent`
  - **Service Definition Type**: Inline
  - **Deployment Type**: Kubernetes
3. In the **Manifests** section, click **Add Manifest** and configure:
  - **Manifest Type**: Helm Chart
  - **Specify Helm Chart Store**: HTTP Helm
  - **Helm Connector**: Select `traceable-helm-connector`
  - **Manifest Identifier**: `traceable`
  - **Chart Name**: `traceable-agent`
4. Add the configuration file as an override:
  - Click **Add Additional Override File**
  - Select **Values YAML** and **Harness**
  - **Manifest Identifier**: `config`
  - **File Path**: Select the `traceable-agent-values` file created in Step 2.

---

### Step 4: Add the Service to a Pipeline

Finally, integrate the Traceable agent service into a deployment pipeline.

1. Open an existing pipeline or create a new one.
2. Add a **Deploy** stage or edit an existing stage.
3. Select the **traceable-agent** service created in Step 3.
4. Configure the stage as required and save the pipeline.

For details, see [Harness Pipeline Execution Walkthrough](https://developer.harness.io/docs/continuous-delivery/get-started/pipeline-execution-walkthrough/).
