Prerequisites
1
Install Odigos Central
Follow the Central installation guide.
2
Enable Cloud Connectors
Set
cloudConnectors.enabled=true. See Enable Cloud Connectors.3
Prepare cloud access
Create a cloud identity (e.g. IAM role or service account) with only the permissions you want the connector to have. See You control the access scope.
Why use Cloud Connectors?
- Unified management — Manage serverless and cloud workloads alongside Kubernetes clusters and VM hosts from the same Central UI
- Automatic discovery — Surface instrumentable workloads in the account boundary without hunting for each resource by hand
- Flexible scale — Instrument one workload or many at once from discovery; nothing is instrumented until you choose
- Less operational overhead — Avoid manually attaching layers, agents, or env vars on every Lambda or Cloud Run service
- Centralized credentials — Cloud credentials live as Secrets in the Central cluster; one connector owns one account boundary for clear blast radius and ownership
You control the access scope
Cloud Connectors do not get blanket access to your cloud environment. What each connector can discover and instrument is limited by the access you grant.Scope is defined by your cloud permissions (e.g. IAM policies or service account
roles), plus the resource types you enable on the connector. Odigos only acts
within that boundary.
- Cloud credentials and permissions — The role or service account you attach decides which APIs and resources the connector can call. Narrow policies mean a narrower discovery and instrumentation footprint.
- Connector capabilities — When you add a connector, you choose which resource types may be discovered and which may be instrumented (per-type capabilities).
- Sources — Even after discovery, nothing is instrumented until you create Sources for the workloads you select.
Workloads and compute platforms
Connectors organize resources into two domains:- Workloads — resources Odigos discovers and can instrument directly (for example AWS Lambda or GCP Cloud Run).
- Compute platforms — managed environments such as ECS clusters, GKE, or Compute Engine. These can be discovered today; installing a separate Odigos agent onto them expands coverage over time.
Odigos-managed vs. self-managed instrumentation
When adding or editing a connector, choose an instrumentation method for each workload type:
Rather than using a dedicated mode toggle, Odigos controls access through per-type instrumentation settings. This ensures self-managed workloads are safe by default—Odigos cannot touch or configure a resource unless its instrumentation capability is active.
A self-managed workload shows as Not Instrumented / Waiting for you until Odigos observes that you’ve applied its instrumentation, then it flips to Instrumented on its own — there is nothing to click on the Odigos side. If a self-managed workload is later disabled as a Source or its Source is deleted while your instrumentation is still applied, it reports an error rather than silently going dark — Odigos never removes instrumentation it did not apply, so taking it back out is yours to do.
For AWS specifically, see AWS Connector for how to instrument Lambda and Fargate yourself with CloudFormation or CDK, and how to preload artifacts into your own account first.
Resource coverage
Current coverage includes the following providers and resource types. Additional providers may be added over time.Supported languages
Direct instrumentation depends on the workload type:
Other Lambda runtimes (for example Go or .NET) can still be discovered; they are not instrumented until support for those runtimes is added. On Fargate, Go and any other eBPF-based language cannot be instrumented at all — Fargate does not allow the privileged containers eBPF needs — and a task with no other instrumentable container is reported unsupported.
AWS Lambda Ruby, and Fargate PHP and Ruby, support OTLP HTTP only. See Telemetry export for destination protocol limits.
Telemetry export
Instrumented workloads export OpenTelemetry data to an OTLP endpoint you configure on the connector. That endpoint must be reachable from the cloud environment (for example from Lambda or Cloud Run). Lambda, Fargate, and Cloud Run support OTLP destinations only. Fargate tasks export directly to the destination — there is no node-local collector on ECS the way there is inside the Lambda layer, so the destination endpoint must be reachable from the task’s VPC. Protocol support for AWS Lambda:- Python, Node.js, Java — OTLP gRPC and OTLP HTTP
- Ruby — OTLP HTTP only
- Java, Python, Node.js, .NET — prefer OTLP HTTP but honor OTLP gRPC if that’s all the destination offers
- PHP, Ruby — OTLP HTTP only; without an OTLP HTTP endpoint on the destination these languages cannot be instrumented at all
Next steps
Enable Cloud Connectors
Turn on the feature in Helm or the CLI, including Postgres settings.
Add AWS connector
Connect an AWS account and discover Lambda and ECS resources.
Add GCP connector
Connect a Google Cloud project and discover Cloud Run services.
Instrument workloads
Create Sources and track instrumentation after a connector is online.
AWS Connector
Full AWS connector reference: flows, artifact preloading, and CDK/CloudFormation for every instrumentation type.