mirror of
https://github.com/fleetdm/fleet
synced 2026-05-18 22:49:19 +00:00
<!-- Add the related story/sub-task/bug number, like Resolves #123, or remove if NA --> **Related issue:** Resolves #32331 This PR allows us to run loadtest with SigNoz OTEL backend by adding `-var=enable_otel=true` SigNoz is deployed via Helm chart. Enhancements needed (in future PR): - put SigNoz UI behind VPN - combine the new eks-vpc with shared fleet-vpc - make SigNoz shared, so multiple loadtests use the same instance? (But what about updating to it to latest version?) Next steps: - Enable SigNoz in Dogfood environment - SigNoz by default [keeps 15 days of logs and traces](https://signoz.io/docs/userguide/retention-period), which is quite a bit. How much would that cost us and should we reduce it? <!-- This is an auto-generated comment: release notes by coderabbit.ai --> ## Summary by CodeRabbit - New Features - Optional OpenTelemetry tracing with SigNoz via a new enable_otel flag. - Conditional deployment of a SigNoz stack (managed EKS, storage, Helm-based apps) with internal OTLP collector endpoint. - New outputs to retrieve OTLP endpoint, cluster name, and a kubectl configuration command. - Documentation - Added guidance for deploying and using SigNoz with load testing. - Updated examples to include -var=enable_otel=true. - Chores - Introduced required providers to support Helm and Kubernetes resources. <!-- end of auto-generated comment: release notes by coderabbit.ai --> |
||
|---|---|---|
| .. | ||
| main.tf | ||
| outputs.tf | ||
| README.md | ||
EKS VPC for Fleet Loadtesting
Dedicated VPC for EKS workloads (SigNoz) with proper Kubernetes tags.
Architecture
- CIDR: 10.20.0.0/16
- Subnets: 2 AZs (us-east-2a, us-east-2b)
- Private: 10.20.1.0/24, 10.20.2.0/24
- Public: 10.20.101.0/24, 10.20.102.0/24
- NAT: Single NAT gateway (cost optimization)
- Tags: Pre-configured for EKS/Kubernetes
Usage
This VPC is deployed per workspace:
cd infrastructure/loadtesting/terraform/eks-vpc
terraform workspace new <workspace_name>
terraform apply
The VPC outputs are consumed by the SigNoz module via terraform remote state.
Why Separate VPC?
- EKS requires specific subnet tags (
kubernetes.io/cluster/*) - Can't modify shared fleet-vpc tags (different terraform state)
- Avoids VPC limit issues (dedicated EKS VPC)
- Clean separation of concerns