Skip to main content
Installation issues? Need help? Message us on Slack
Checkout the installation options to customize your installation. There are 3 ways to install odigos in your kubernetes cluster: All install methods will deploy and configure resources in the active Kubernetes cluster as per the current context. Before proceeding with the installation, ensure that you are targeting the correct cluster with kubectl config current-context.
Odigos enterprise data collection is done using eBPF, so Odigos requires, at minimum, platforms that have underlying Linux kernel versions of 5.4.0.

Odigos CLI

Install the CLI

If you are on MacOS, you can install Odigos CLI using Homebrew:
brew install odigos-io/odigos-cli/odigos

Install Odigos

The enterprise version of Odigos requires a license token. Please contact the Odigos team to inquire about access to the Enterprise version.
odigos install --onprem-token $ODIGOS_TOKEN
This will install odigos in the odigos-system namespace in your kubernetes cluster. At this point, odigos is installed in your cluster. You can now add sources and destinations to instrument your cluster with OpenTelemetry.

Helm Chart

Add Helm Repository

helm repo add odigos https://odigos-io.github.io/odigos/

Install Odigos

The enterprise version of Odigos requires a license token. Please contact the Odigos team to inquire about access to the Enterprise version.
helm repo update
helm upgrade --install odigos odigos/odigos --namespace odigos-system --create-namespace --set onPremToken=$ODIGOS_TOKEN
The license token can also be provided by creating a secret in kubernetes before installing Odigos.
apiVersion: v1
kind: Secret
metadata:
  name: odigos-pro
  namespace: odigos-system
  labels:
    odigos.io/system-object: "true"
stringData:
  odigos-onprem-token: <TOKEN>
When pulling enterprise images from registry.odigos.io, Odigos also needs a Docker registry pull secret named odigos-enterprise-registry. The Helm chart can create this automatically when onPremToken is set, or when it can read the token from an existing odigos-pro secret. For GitOps tools such as Argo CD that cannot read cluster secrets during helm template, manage both secrets externally and set:
externalOnpremTokenSecret: true
externalOnpremPullSecret: true
Create the registry pull secret before syncing Odigos. The username is always odigos and the password is your enterprise token:
kubectl create secret docker-registry odigos-enterprise-registry \
  --namespace odigos-system \
  --docker-server=registry.odigos.io \
  --docker-username=odigos \
  --docker-password="$ODIGOS_TOKEN"
kubectl label secret odigos-enterprise-registry -n odigos-system odigos.io/system-object=true
Or apply it declaratively:
apiVersion: v1
kind: Secret
metadata:
  name: odigos-enterprise-registry
  namespace: odigos-system
  labels:
    odigos.io/system-object: "true"
type: kubernetes.io/dockerconfigjson
stringData:
  .dockerconfigjson: |
    {
      "auths": {
        "registry.odigos.io": {
          "username": "odigos",
          "password": "<TOKEN>",
          "auth": "<BASE64_OF_odigos:TOKEN>"
        }
      }
    }
Generate the auth value with:
echo -n "odigos:$ODIGOS_TOKEN" | base64
Once the Odigos pods are online, simply run the following command to launch the Odigos UI.
odigos ui

OpenShift Operator

For Operator installation steps, see the docs on: OpenShift Installation