Today, we’ll walk via putting in and beginning an example of zipkin tracing system on ubuntu / debian / centos linux distributions. Zipkin is a distributed tracing gadget designed to help you acquire timing facts had to troubleshoot latency issues in micro service architectures. It manages each the collection and lookup of this records. its design is based at the google dapper paper. At the end you will be able to Install Zipkin easily.
There are three options of running Zipkin tracing gadget:
- Java (jar file)
- Docker Container
- Run from source
Here we will see the first two options using Java & running in Docker Container.
Install Zipkin Using Docker
First of all we will learn the more easy way to Install Zipkin via Docker. Keep in mind that you’ve installed docker if not, try the below link to learn how to install docker.
How To Install Docker on Ubuntu / Debian / CentOS
Then fire the following command to Install Zipkin after Installing Docker.
docker run -d -p 9411:9411 openzipkin/zipkin
Installing Zipkin Using Java
Install java by running
sudo apt-get update
sudo apt-get install -y default-jdk jq vim
Make sure you’ve installed Java on Debian / Ubuntu
java -version
To install Java on CentOS hit the below command.
sudo yum -y install epel-release
sudo yum install -y java-1.8.0-openjdk java-1.8.0-openjdk-devel jq vim
sudo alternatives --config java
Check the installed version
java -version
After installing the pre-requisites, go to the latest release of Zipkin
curl -SSL https://zipkin.io/quickstart.sh | bash -s
Run the executable to Install Zipkin
java -jar zipkin.jar
Configure Systemd
For your system, create a service for zipkin. Move the jar files to /opt directory
sudo mkdir /opt/zipkin
sudo mv zipkin.jar /opt/zipkin
ls /opt/zipkin
First of all, here create a system group for the user
sudo groupadd -r zipkin
sudo useradd -r -s /bin/false -g zipkin zipkin
sudo chown -R zipkin:zipkin /opt/zipkin
Then create systemd service file.
sudo vim /etc/systemd/system/zipkin.service
Paste the below data into file.
Zipkin System Service
[Unit]
Description=Manage Java service
Documentation=https://zipkin.io/
[Service]
WorkingDirectory=/opt/zipkin
ExecStart=/usr/bin/java -jar zipkin.jar
User=zipkin
Group=zipkin
Type=simple
Restart=on-failure
RestartSec=10
[Install]
WantedBy=multi-user.target
Now, set the memory limits as like this
ExecStart=/bin/java -Xms128m -Xmx256m -jar zipkin.jar
Next, reload the daemon to take effect.
sudo systemctl daemon-reload
Then, start the services again
sudo systemctl start zipkin.service
See the status by typing
sudo systemctl status zipkin.service
Accessing Zipkin
Typr localhost:9411 to access Zipkin dashboard. Here you can add, find and do more action for traces.
Configuring Tracers
Now, its time to configure the Application for instrumentation. See the official documentation.