Infrastructure: Grafana & Tempo

Tempo Configuration File

server:
  http_listen_port: 3200

distributor:
  receivers:
    otlp:
      protocols:
        http:
        grpc:

storage:
  trace:
    backend: local
    local:
      path: ./data/tempo/blocks
    wal:
      path: ./data/wal/blocks
tempo-config.yml: Tempo configuration file

Setup Grafana & Tempo using Podman Desktop

# Cleanup
podman rm gdev-grafana -f
podman rm gdev-tempo -f

# Create network
podman network create gdev-net

# Run Grafana & Tempo

podman run --network gdev-net --name gdev-grafana -d -p 3000:3000 grafana/grafana
podman run --network gdev-net --name gdev-tempo -d -p 3200:3200 -p 4317:4317 -v ./tempo-config.yml:/etc/tempo-config.yml grafana/tempo "-config.file=/etc/tempo-config.yml"

#Note: Grafana default credentials are admin/admin
setup-with-podman.ps1 (run it on PowerShell)

Grafana & Tempo setup using Docker Desktop

# Cleanup
docker rm gdev-grafana -f
docker rm gdev-tempo -f

# Run Grafana & Tempo

docker run --network gdev-net --name gdev-grafana -d -p 3000:3000 grafana/grafana
docker run --network gdev-net --name gdev-tempo -d -p 3200:3200 -p 4317:4317 -v ./tempo-config.yml:/etc/tempo-config.yml grafana/tempo "-config.file=/etc/tempo-config.yml"

#Note: Grafana default credentials are admin/admin
setup-with-docker.ps1 (run it on PowerShell)

Setup Validation

  • Grafana: curl -i http://localhost:3000/api/health until response code is 200
  • Tempo: curl -i http://localhost:3200/ready until response code is 200