|
| 1 | +# OpenTelemetry Astronomy Shop Demo Instructions |
| 2 | + |
| 3 | +## Features available |
| 4 | + |
| 5 | +- Kubernetes Navigator |
| 6 | +- APM |
| 7 | +- Network Explorer |
| 8 | +- DB Query Performance (Redis & PostgreSQL) |
| 9 | +- Logs (using OTel Log Engine via Log Observer) |
| 10 | +- Synthetics (no Synthetics to APM due to no `Server-Timing` header support in upstream) |
| 11 | +- Redis Dashboard |
| 12 | +- Kafka Dashboard (Partial) |
| 13 | +- PostgreSQL Dashboard (Partial) |
| 14 | + |
| 15 | +## Missing features |
| 16 | + |
| 17 | +- Code Profiling |
| 18 | +- RUM |
| 19 | + |
| 20 | +## Splunk OpenTelemety Collector Configuration |
| 21 | + |
| 22 | +The following configuration can be applied to a standard O11y workshop instance (EC2 or multipass). |
| 23 | + |
| 24 | +**otel-demo-collector.yaml** |
| 25 | + |
| 26 | +https://github.com/splunk/observability-workshop/blob/f5521963d9c4bb4a63745013f133c23db1b8ae2a/oteldemo/otel-demo-collector.yaml#L1-L82 |
| 27 | + |
| 28 | +### Deploy the OTel Collector via Helm chart |
| 29 | + |
| 30 | +``` bash |
| 31 | +helm repo add splunk-otel-collector-chart https://signalfx.github.io/splunk-otel-collector-chart && helm repo update |
| 32 | +``` |
| 33 | + |
| 34 | +``` text |
| 35 | +helm install splunk-otel-collector \ |
| 36 | +--set="splunkObservability.realm=$REALM" \ |
| 37 | +--set="splunkObservability.accessToken=$ACCESS_TOKEN" \ |
| 38 | +--set="clusterName=$(hostname)-k3s-cluster" \ |
| 39 | +--set="splunkObservability.logsEnabled=true" \ |
| 40 | +--set="logsEngine=otel" \ |
| 41 | +--set="splunkObservability.profilingEnabled=true" \ |
| 42 | +--set="splunkObservability.infrastructureMonitoringEventsEnabled=true" \ |
| 43 | +--set="networkExplorer.enabled=true" \ |
| 44 | +--set="networkExplorer.podSecurityPolicy.enabled=false" \ |
| 45 | +--set="agent.enabled=true" \ |
| 46 | +--set="gateway.replicaCount=1" \ |
| 47 | +--set="gateway.resources.limits.cpu=500m" \ |
| 48 | +--set="gateway.resources.limits.memory=1Gi" \ |
| 49 | +--set="clusterReceiver.enabled=true" \ |
| 50 | +--set="environment=$(hostname)-apm-env" \ |
| 51 | +splunk-otel-collector-chart/splunk-otel-collector \ |
| 52 | +-f otel-demo-collector.yaml |
| 53 | +``` |
| 54 | + |
| 55 | +## OpenTelemetry Astronomy Shop configuration |
| 56 | + |
| 57 | +Create `otel-demo.yaml`, this will be applied to the Helm chart and changes the default behaviour of a default install: |
| 58 | + |
| 59 | +- Set `OTEL_COLLECTOR_NAME` to the host IP Address for Metrics, Traces and Logs |
| 60 | +- Configure a load balancer for the `frontendProxy` server |
| 61 | +- Customise Kafka configuration to expose metrics via JMX on port 5555 |
| 62 | +- Disable native OTel Collector, Jaeger, Prometheus & Grafana |
| 63 | + |
| 64 | +**otel-demo.yaml** |
| 65 | + |
| 66 | +https://github.com/splunk/observability-workshop/blob/a1e291e5d511a85c71f7d795945aea22059668d7/oteldemo/otel-demo.yaml#L1-L51 |
| 67 | + |
| 68 | +### Deploy the OpenTelemetry Astronomy Shop |
| 69 | + |
| 70 | +``` text |
| 71 | +helm repo add open-telemetry https://open-telemetry.github.io/opentelemetry-helm-charts |
| 72 | +``` |
| 73 | + |
| 74 | +``` text |
| 75 | +helm install my-otel-demo open-telemetry/opentelemetry-demo --values otel-demo.yaml |
| 76 | +``` |
| 77 | + |
| 78 | +## OpenTelemetry Receivers |
| 79 | + |
| 80 | +**OpenTelemetry Redis receiver configuration** |
| 81 | + |
| 82 | +At the time of writing there are no OOTB dashboards for OpenTelemetry receivers. You can still use these receivers and build out custom dashboards using the existing SmartAgent OOTB dashboards as templates. You can import `dashboard_REDIS INSTANCES (OTEL).json` as an example. |
| 83 | + |
| 84 | +``` yaml |
| 85 | +redis: |
| 86 | + rule: type == "pod" && name matches "redis" |
| 87 | + config: |
| 88 | + endpoint: '`endpoint`:6379' |
| 89 | +``` |
| 90 | +
|
0 commit comments