Zipkin self-hosted distributed tracing on Ubuntu 24.04 LTS by cloudimg. Collects spans from instrumented microservices (Spring/Micrometer/OpenTelemetry-zipkin) and visualizes trace latency, span waterfalls and the service dependency graph. nginx on port 80 with a per-VM web UI password on first boot; unauthenticated span ingest on the standard port 9411 restricted to POST only. Apache-2.0 licensed.
Zipkin is the reference open source distributed tracing system. Instrumented microservices report spans - units of work carrying a trace ID, timing and tags - to Zipkin, which stitches them into complete traces so you can see end-to-end request latency, the exact call path across services, and a service dependency graph. It is the original tracing backend for Spring Cloud Sleuth / Micrometer Tracing, Brave, and any OpenTelemetry pipeline configured with the zipkin exporter. The cloudimg image installs the pinned official Zipkin 3.6.1 server jar and runs it under OpenJDK 17 as a dedicated zipkin systemd service. Zipkin itself is bound to loopback only - nginx does all customer-facing work. Port 80 fronts the full web UI and REST query API behind a per-VM HTTP Basic Auth gate whose password is generated uniquely on first boot. Port 9411 - the well-known Zipkin collector port - accepts span uploads only (POST /api/v2/spans), deliberately unauthenticated because tracing libraries cannot supply Basic Auth credentials, but hard-restricted so it can never be used to read trace data. An unauthenticated /healthz endpoint on port 80 supports Azure Load Balancer probes. Storage: ships Zipkin's default in-memory storage (traces do not survive a service restart or VM reboot) - documented clearly in the user guide, along with how to point Zipkin at your own MySQL, Elasticsearch or Cassandra backend for production durability. Apache-2.0 licensed. Backed by 24/7 cloudimg support.