This repository contains scripts to deploy and test the OpenTelemetry demo on Kubernetes using ktbx and ciux.
- Linux system with at least 6GB RAM
- Go installed (for ktbx)
- Docker installed
- sudo access (for Helm installation)
-
Install dependencies with ciux:
ciux ignite . -
Setup prerequisites (install Helm and create Kubernetes cluster):
./setup-prereq.sh
-
Deploy the OpenTelemetry demo:
./deploy-otel-demo.sh
-
Access the applications:
- Web Store: http://localhost:8080
- Grafana: http://localhost:3000
- Jaeger: http://localhost:16686
Handles prerequisites installation and cluster setup:
./setup-prereq.sh- Complete setup (default)./setup-prereq.sh verify- Verify prerequisites./setup-prereq.sh cluster-only- Create cluster only./setup-prereq.sh helm-only- Install Helm only
Deploys and manages the OpenTelemetry demo:
./deploy-otel-demo.sh- Full deployment (default)./deploy-otel-demo.sh test- Run tests only./deploy-otel-demo.sh status- Show deployment status./deploy-otel-demo.sh cleanup- Clean up resources./deploy-otel-demo.sh port-forward- Setup port forwarding only
If Helm installation fails due to sudo permissions, you can install Helm manually:
curl https://raw.githubusercontent.com/helm/helm/main/scripts/get-helm-3 | bashIf port forwarding stops working, restart it:
./deploy-otel-demo.sh port-forwardIf cluster connectivity issues occur:
ktbx cluster use otel-demo
kubectl cluster-infoTo remove everything:
./deploy-otel-demo.sh cleanupThe OpenTelemetry demo consists of multiple microservices that generate telemetry data (traces, metrics, logs) which are collected by the OpenTelemetry Collector and sent to various backends like Jaeger for tracing and Prometheus/Grafana for metrics.