{"id":3821,"date":"2023-09-06T09:07:03","date_gmt":"2023-09-06T06:07:03","guid":{"rendered":"https:\/\/www.virtono.com\/community\/?p=3821"},"modified":"2023-09-05T09:32:21","modified_gmt":"2023-09-05T06:32:21","slug":"how-to-deploy-zipkin-on-kubernetes","status":"publish","type":"post","link":"https:\/\/www.virtono.com\/community\/tutorial-how-to\/how-to-deploy-zipkin-on-kubernetes\/","title":{"rendered":"How to Deploy Zipkin on Kubernetes"},"content":{"rendered":"<div class=\"wp-block-image\">\n<figure class=\"aligncenter size-large\"><img data-recalc-dims=\"1\" loading=\"lazy\" decoding=\"async\" width=\"750\" height=\"422\" data-attachment-id=\"3828\" data-permalink=\"https:\/\/www.virtono.com\/community\/tutorial-how-to\/how-to-deploy-zipkin-on-kubernetes\/attachment\/how-to-deploy-zipkin-on-kubernetes\/\" data-orig-file=\"https:\/\/i0.wp.com\/www.virtono.com\/community\/wp-content\/uploads\/2023\/09\/How-to-Deploy-Zipkin-on-Kubernetes.png?fit=1920%2C1080&amp;ssl=1\" data-orig-size=\"1920,1080\" data-comments-opened=\"1\" data-image-meta=\"{&quot;aperture&quot;:&quot;0&quot;,&quot;credit&quot;:&quot;&quot;,&quot;camera&quot;:&quot;&quot;,&quot;caption&quot;:&quot;&quot;,&quot;created_timestamp&quot;:&quot;0&quot;,&quot;copyright&quot;:&quot;&quot;,&quot;focal_length&quot;:&quot;0&quot;,&quot;iso&quot;:&quot;0&quot;,&quot;shutter_speed&quot;:&quot;0&quot;,&quot;title&quot;:&quot;&quot;,&quot;orientation&quot;:&quot;0&quot;}\" data-image-title=\"How-to-Deploy-Zipkin-on-Kubernetes\" data-image-description=\"\" data-image-caption=\"\" data-large-file=\"https:\/\/i0.wp.com\/www.virtono.com\/community\/wp-content\/uploads\/2023\/09\/How-to-Deploy-Zipkin-on-Kubernetes.png?fit=750%2C422&amp;ssl=1\" src=\"https:\/\/i0.wp.com\/www.virtono.com\/community\/wp-content\/uploads\/2023\/09\/How-to-Deploy-Zipkin-on-Kubernetes.png?resize=750%2C422&#038;ssl=1\" alt=\"How to Deploy Zipkin on Kubernetes\" class=\"wp-image-3828\" srcset=\"https:\/\/i0.wp.com\/www.virtono.com\/community\/wp-content\/uploads\/2023\/09\/How-to-Deploy-Zipkin-on-Kubernetes.png?resize=1024%2C576&amp;ssl=1 1024w, https:\/\/i0.wp.com\/www.virtono.com\/community\/wp-content\/uploads\/2023\/09\/How-to-Deploy-Zipkin-on-Kubernetes.png?resize=300%2C169&amp;ssl=1 300w, https:\/\/i0.wp.com\/www.virtono.com\/community\/wp-content\/uploads\/2023\/09\/How-to-Deploy-Zipkin-on-Kubernetes.png?resize=768%2C432&amp;ssl=1 768w, https:\/\/i0.wp.com\/www.virtono.com\/community\/wp-content\/uploads\/2023\/09\/How-to-Deploy-Zipkin-on-Kubernetes.png?resize=1536%2C864&amp;ssl=1 1536w, https:\/\/i0.wp.com\/www.virtono.com\/community\/wp-content\/uploads\/2023\/09\/How-to-Deploy-Zipkin-on-Kubernetes.png?w=1920&amp;ssl=1 1920w\" sizes=\"auto, (max-width: 750px) 100vw, 750px\" \/><\/figure>\n<\/div>\n\n\n<p class=\"wp-block-paragraph\"><\/p>\n\n\n\n<p class=\"wp-block-paragraph\">This tutorial will walk you through setting up Zipkin on Kubernetes, assuming that you already have K3s and Helm set up. Microservices have become a key element in the quickly changing world of software development. Distributed tracing systems like Zipkin have become very popular in tandem with this explosion in microservices. An open-source distributed tracing tool called Zipkin helps developers understand how data moves throughout their systems. Contrarily, Kubernetes is a well-known platform for managing, scaling, and automating the deployment of containerized applications.<\/p>\n\n\n\n<div id=\"ez-toc-container\" class=\"ez-toc-v2_0_73 counter-hierarchy ez-toc-counter ez-toc-light-blue ez-toc-container-direction\">\n<div class=\"ez-toc-title-container\">\n<p class=\"ez-toc-title\" style=\"cursor:inherit\">Table of Contents<\/p>\n<span class=\"ez-toc-title-toggle\"><a href=\"#\" class=\"ez-toc-pull-right ez-toc-btn ez-toc-btn-xs ez-toc-btn-default ez-toc-toggle\" aria-label=\"Toggle Table of Content\"><span class=\"ez-toc-js-icon-con\"><span class=\"\"><span class=\"eztoc-hide\" style=\"display:none;\">Toggle<\/span><span class=\"ez-toc-icon-toggle-span\"><svg style=\"fill: #999;color:#999\" xmlns=\"http:\/\/www.w3.org\/2000\/svg\" class=\"list-377408\" width=\"20px\" height=\"20px\" viewBox=\"0 0 24 24\" fill=\"none\"><path d=\"M6 6H4v2h2V6zm14 0H8v2h12V6zM4 11h2v2H4v-2zm16 0H8v2h12v-2zM4 16h2v2H4v-2zm16 0H8v2h12v-2z\" fill=\"currentColor\"><\/path><\/svg><svg style=\"fill: #999;color:#999\" class=\"arrow-unsorted-368013\" xmlns=\"http:\/\/www.w3.org\/2000\/svg\" width=\"10px\" height=\"10px\" viewBox=\"0 0 24 24\" version=\"1.2\" baseProfile=\"tiny\"><path d=\"M18.2 9.3l-6.2-6.3-6.2 6.3c-.2.2-.3.4-.3.7s.1.5.3.7c.2.2.4.3.7.3h11c.3 0 .5-.1.7-.3.2-.2.3-.5.3-.7s-.1-.5-.3-.7zM5.8 14.7l6.2 6.3 6.2-6.3c.2-.2.3-.5.3-.7s-.1-.5-.3-.7c-.2-.2-.4-.3-.7-.3h-11c-.3 0-.5.1-.7.3-.2.2-.3.5-.3.7s.1.5.3.7z\"\/><\/svg><\/span><\/span><\/span><\/a><\/span><\/div>\n<nav><ul class='ez-toc-list ez-toc-list-level-1 ' ><li class='ez-toc-page-1 ez-toc-heading-level-3'><a class=\"ez-toc-link ez-toc-heading-1\" href=\"https:\/\/www.virtono.com\/community\/tutorial-how-to\/how-to-deploy-zipkin-on-kubernetes\/#Requirements\" title=\"Requirements\">Requirements<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-3'><a class=\"ez-toc-link ez-toc-heading-2\" href=\"https:\/\/www.virtono.com\/community\/tutorial-how-to\/how-to-deploy-zipkin-on-kubernetes\/#Installing_Docker\" title=\"Installing Docker\">Installing Docker<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-3'><a class=\"ez-toc-link ez-toc-heading-3\" href=\"https:\/\/www.virtono.com\/community\/tutorial-how-to\/how-to-deploy-zipkin-on-kubernetes\/#Deploying_Zipkin_on_Kubernetes\" title=\"Deploying Zipkin on Kubernetes\">Deploying Zipkin on Kubernetes<\/a><ul class='ez-toc-list-level-4' ><li class='ez-toc-heading-level-4'><a class=\"ez-toc-link ez-toc-heading-4\" href=\"https:\/\/www.virtono.com\/community\/tutorial-how-to\/how-to-deploy-zipkin-on-kubernetes\/#Step_1_Preparing_the_Kubernetes_Cluster\" title=\"Step 1: Preparing the Kubernetes Cluster\">Step 1: Preparing the Kubernetes Cluster<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-4'><a class=\"ez-toc-link ez-toc-heading-5\" href=\"https:\/\/www.virtono.com\/community\/tutorial-how-to\/how-to-deploy-zipkin-on-kubernetes\/#Step_2_Installing_Zipkin_on_Kubernetes\" title=\"Step 2: Installing Zipkin on Kubernetes\">Step 2: Installing Zipkin on Kubernetes<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-4'><a class=\"ez-toc-link ez-toc-heading-6\" href=\"https:\/\/www.virtono.com\/community\/tutorial-how-to\/how-to-deploy-zipkin-on-kubernetes\/#Step_3_Deploying_Zipkin_on_Kubernetes\" title=\"Step 3: Deploying Zipkin on Kubernetes\">Step 3: Deploying Zipkin on Kubernetes<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-4'><a class=\"ez-toc-link ez-toc-heading-7\" href=\"https:\/\/www.virtono.com\/community\/tutorial-how-to\/how-to-deploy-zipkin-on-kubernetes\/#Step_4_Exposing_Zipkin_Service\" title=\"Step 4: Exposing Zipkin Service\">Step 4: Exposing Zipkin Service<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-4'><a class=\"ez-toc-link ez-toc-heading-8\" href=\"https:\/\/www.virtono.com\/community\/tutorial-how-to\/how-to-deploy-zipkin-on-kubernetes\/#Step_5_Verifying_the_Deployment\" title=\"Step 5: Verifying the Deployment\">Step 5: Verifying the Deployment<\/a><\/li><\/ul><\/li><li class='ez-toc-page-1 ez-toc-heading-level-3'><a class=\"ez-toc-link ez-toc-heading-9\" href=\"https:\/\/www.virtono.com\/community\/tutorial-how-to\/how-to-deploy-zipkin-on-kubernetes\/#Final_Thoughts\" title=\"Final Thoughts\">Final Thoughts<\/a><\/li><\/ul><\/nav><\/div>\n<h3 class=\"wp-block-heading has-accent-color has-text-color\"><span class=\"ez-toc-section\" id=\"Requirements\"><\/span>Requirements<span class=\"ez-toc-section-end\"><\/span><\/h3>\n\n\n\n<p class=\"wp-block-paragraph\">Before we dive in, it&#8217;s important to ensure that you have the following prerequisites:<\/p>\n\n\n\n<ol class=\"wp-block-list\">\n<li>A functioning <a href=\"https:\/\/virtono.com\/cloud-vps\" target=\"_blank\" rel=\"noopener\">Virtono Kubernetes<\/a> cluster (K3s), you can find the <a href=\"https:\/\/www.virtono.com\/community\/tutorial-how-to\/how-to-install-k3s-cluster-and-helm\/\">installation guide here<\/a><\/li>\n\n\n\n<li>Helm, the package manager for Kubernetes, you can find the <a href=\"https:\/\/www.virtono.com\/community\/tutorial-how-to\/how-to-install-k3s-cluster-and-helm\/\">installation guide here<\/a><\/li>\n\n\n\n<li>Docker, for running Zipkin as a container<\/li>\n\n\n\n<li>Basic understanding of Kubernetes and Helm charts<\/li>\n<\/ol>\n\n\n\n<p class=\"wp-block-paragraph\">If you don&#8217;t have Docker installed, don&#8217;t worry. We&#8217;ll cover the installation process in the next section.<\/p>\n\n\n\n<h3 class=\"wp-block-heading has-accent-color has-text-color\"><span class=\"ez-toc-section\" id=\"Installing_Docker\"><\/span>Installing Docker<span class=\"ez-toc-section-end\"><\/span><\/h3>\n\n\n\n<p class=\"wp-block-paragraph\">Docker is a platform that enables automated application deployment, scaling, and management inside of containers. Here&#8217;s how to set it up:<\/p>\n\n\n\n<p class=\"has-black-color has-text-color wp-block-paragraph\">Update your existing list of packages:<\/p>\n\n\n\n<pre class=\"wp-block-code has-white-color has-black-background-color has-text-color has-background\"><code>sudo apt update<\/code><\/pre>\n\n\n\n<p class=\"wp-block-paragraph\">Install a few prerequisite packages that let apt use packages over HTTPS:<\/p>\n\n\n\n<pre class=\"wp-block-code has-white-color has-black-background-color has-text-color has-background\"><code>sudo apt install apt-transport-https ca-certificates curl software-properties-common<\/code><\/pre>\n\n\n\n<p class=\"wp-block-paragraph\">Add the GPG key for the official Docker repository to your system:<\/p>\n\n\n\n<pre class=\"wp-block-code has-white-color has-black-background-color has-text-color has-background\"><code>curl -fsSL https:\/\/download.docker.com\/linux\/ubuntu\/gpg | sudo apt-key add -<\/code><\/pre>\n\n\n\n<p class=\"wp-block-paragraph\">Add the Docker repository to APT sources:<\/p>\n\n\n\n<pre class=\"wp-block-code has-white-color has-black-background-color has-text-color has-background\"><code>sudo add-apt-repository \"deb &#91;arch=amd64] https:\/\/download.docker.com\/linux\/ubuntu $(lsb_release -cs) stable\"<\/code><\/pre>\n\n\n\n<p class=\"wp-block-paragraph\">Update the package database with the Docker packages from the newly added repo:<\/p>\n\n\n\n<pre class=\"wp-block-code has-white-color has-black-background-color has-text-color has-background\"><code>sudo apt update<\/code><\/pre>\n\n\n\n<p class=\"wp-block-paragraph\">Make sure you are about to install from the Docker repo instead of the default Ubuntu repo:<\/p>\n\n\n\n<pre class=\"wp-block-code has-white-color has-black-background-color has-text-color has-background\"><code>apt-cache policy docker-ce<\/code><\/pre>\n\n\n\n<p class=\"wp-block-paragraph\">Finally, install Docker:<\/p>\n\n\n\n<pre class=\"wp-block-code has-white-color has-black-background-color has-text-color has-background\"><code>sudo apt install docker-ce<\/code><\/pre>\n\n\n\n<p class=\"wp-block-paragraph\">Docker should now be installed, the daemon started, and the process enabled to start on boot. Check that it&#8217;s running:<\/p>\n\n\n\n<pre class=\"wp-block-code has-white-color has-black-background-color has-text-color has-background\"><code>sudo systemctl status docker<\/code><\/pre>\n\n\n\n<h3 class=\"wp-block-heading has-accent-color has-text-color\"><span class=\"ez-toc-section\" id=\"Deploying_Zipkin_on_Kubernetes\"><\/span>Deploying Zipkin on Kubernetes<span class=\"ez-toc-section-end\"><\/span><\/h3>\n\n\n\n<p class=\"wp-block-paragraph\">Having installed Docker, we can now proceed with the deployment of Zipkin on our Kubernetes cluster. This process involves several steps, including preparing the Kubernetes cluster, installing Zipkin, deploying Zipkin on Kubernetes, exposing the Zipkin service, and verifying the deployment. Let&#8217;s dive into each of these steps.<\/p>\n\n\n\n<h4 class=\"wp-block-heading has-accent-color has-text-color\"><span class=\"ez-toc-section\" id=\"Step_1_Preparing_the_Kubernetes_Cluster\"><\/span>Step 1: Preparing the Kubernetes Cluster<span class=\"ez-toc-section-end\"><\/span><\/h4>\n\n\n\n<p class=\"wp-block-paragraph\">Make sure your Kubernetes cluster is operational first. To check the status of your nodes if you&#8217;re using k3s, run the command <strong>k3s kubectl get nodes<\/strong>. Your nodes&#8217; statuses should be listed if everything is configured properly.<\/p>\n\n\n<div class=\"wp-block-image\">\n<figure class=\"aligncenter size-large\"><img data-recalc-dims=\"1\" loading=\"lazy\" decoding=\"async\" width=\"750\" height=\"174\" data-attachment-id=\"3822\" data-permalink=\"https:\/\/www.virtono.com\/community\/tutorial-how-to\/how-to-deploy-zipkin-on-kubernetes\/attachment\/screenshot-2023-09-05-at-08-40-46\/\" data-orig-file=\"https:\/\/i0.wp.com\/www.virtono.com\/community\/wp-content\/uploads\/2023\/09\/Screenshot-2023-09-05-at-08.40.46.png?fit=1522%2C354&amp;ssl=1\" data-orig-size=\"1522,354\" data-comments-opened=\"1\" data-image-meta=\"{&quot;aperture&quot;:&quot;0&quot;,&quot;credit&quot;:&quot;&quot;,&quot;camera&quot;:&quot;&quot;,&quot;caption&quot;:&quot;&quot;,&quot;created_timestamp&quot;:&quot;0&quot;,&quot;copyright&quot;:&quot;&quot;,&quot;focal_length&quot;:&quot;0&quot;,&quot;iso&quot;:&quot;0&quot;,&quot;shutter_speed&quot;:&quot;0&quot;,&quot;title&quot;:&quot;&quot;,&quot;orientation&quot;:&quot;0&quot;}\" data-image-title=\"Screenshot-2023-09-05-at-08.40.46\" data-image-description=\"\" data-image-caption=\"\" data-large-file=\"https:\/\/i0.wp.com\/www.virtono.com\/community\/wp-content\/uploads\/2023\/09\/Screenshot-2023-09-05-at-08.40.46.png?fit=750%2C174&amp;ssl=1\" src=\"https:\/\/i0.wp.com\/www.virtono.com\/community\/wp-content\/uploads\/2023\/09\/Screenshot-2023-09-05-at-08.40.46.png?resize=750%2C174&#038;ssl=1\" alt=\"How to Deploy Zipkin on Kubernetes\" class=\"wp-image-3822\" srcset=\"https:\/\/i0.wp.com\/www.virtono.com\/community\/wp-content\/uploads\/2023\/09\/Screenshot-2023-09-05-at-08.40.46.png?resize=1024%2C238&amp;ssl=1 1024w, https:\/\/i0.wp.com\/www.virtono.com\/community\/wp-content\/uploads\/2023\/09\/Screenshot-2023-09-05-at-08.40.46.png?resize=300%2C70&amp;ssl=1 300w, https:\/\/i0.wp.com\/www.virtono.com\/community\/wp-content\/uploads\/2023\/09\/Screenshot-2023-09-05-at-08.40.46.png?resize=768%2C179&amp;ssl=1 768w, https:\/\/i0.wp.com\/www.virtono.com\/community\/wp-content\/uploads\/2023\/09\/Screenshot-2023-09-05-at-08.40.46.png?w=1522&amp;ssl=1 1522w\" sizes=\"auto, (max-width: 750px) 100vw, 750px\" \/><\/figure>\n<\/div>\n\n\n<p class=\"wp-block-paragraph\"><\/p>\n\n\n\n<h4 class=\"wp-block-heading has-accent-color has-text-color\"><span class=\"ez-toc-section\" id=\"Step_2_Installing_Zipkin_on_Kubernetes\"><\/span>Step 2: Installing Zipkin on Kubernetes<span class=\"ez-toc-section-end\"><\/span><\/h4>\n\n\n\n<p class=\"wp-block-paragraph\">Zipkin is available as a Docker image, so you can pull it directly from Docker Hub. Run the following command to download the Zipkin image:&nbsp;<code>docker pull openzipkin\/zipkin<\/code>.<\/p>\n\n\n<div class=\"wp-block-image\">\n<figure class=\"aligncenter size-large\"><img data-recalc-dims=\"1\" loading=\"lazy\" decoding=\"async\" width=\"750\" height=\"196\" data-attachment-id=\"3823\" data-permalink=\"https:\/\/www.virtono.com\/community\/tutorial-how-to\/how-to-deploy-zipkin-on-kubernetes\/attachment\/screenshot-2023-09-05-at-08-43-22\/\" data-orig-file=\"https:\/\/i0.wp.com\/www.virtono.com\/community\/wp-content\/uploads\/2023\/09\/Screenshot-2023-09-05-at-08.43.22.png?fit=2306%2C604&amp;ssl=1\" data-orig-size=\"2306,604\" data-comments-opened=\"1\" data-image-meta=\"{&quot;aperture&quot;:&quot;0&quot;,&quot;credit&quot;:&quot;&quot;,&quot;camera&quot;:&quot;&quot;,&quot;caption&quot;:&quot;&quot;,&quot;created_timestamp&quot;:&quot;0&quot;,&quot;copyright&quot;:&quot;&quot;,&quot;focal_length&quot;:&quot;0&quot;,&quot;iso&quot;:&quot;0&quot;,&quot;shutter_speed&quot;:&quot;0&quot;,&quot;title&quot;:&quot;&quot;,&quot;orientation&quot;:&quot;0&quot;}\" data-image-title=\"Screenshot-2023-09-05-at-08.43.22\" data-image-description=\"\" data-image-caption=\"\" data-large-file=\"https:\/\/i0.wp.com\/www.virtono.com\/community\/wp-content\/uploads\/2023\/09\/Screenshot-2023-09-05-at-08.43.22.png?fit=750%2C196&amp;ssl=1\" src=\"https:\/\/i0.wp.com\/www.virtono.com\/community\/wp-content\/uploads\/2023\/09\/Screenshot-2023-09-05-at-08.43.22.png?resize=750%2C196&#038;ssl=1\" alt=\"Installing Zipkin on Kubernetes\" class=\"wp-image-3823\" srcset=\"https:\/\/i0.wp.com\/www.virtono.com\/community\/wp-content\/uploads\/2023\/09\/Screenshot-2023-09-05-at-08.43.22.png?resize=1024%2C268&amp;ssl=1 1024w, https:\/\/i0.wp.com\/www.virtono.com\/community\/wp-content\/uploads\/2023\/09\/Screenshot-2023-09-05-at-08.43.22.png?resize=300%2C79&amp;ssl=1 300w, https:\/\/i0.wp.com\/www.virtono.com\/community\/wp-content\/uploads\/2023\/09\/Screenshot-2023-09-05-at-08.43.22.png?resize=768%2C201&amp;ssl=1 768w, https:\/\/i0.wp.com\/www.virtono.com\/community\/wp-content\/uploads\/2023\/09\/Screenshot-2023-09-05-at-08.43.22.png?resize=1536%2C402&amp;ssl=1 1536w, https:\/\/i0.wp.com\/www.virtono.com\/community\/wp-content\/uploads\/2023\/09\/Screenshot-2023-09-05-at-08.43.22.png?resize=2048%2C536&amp;ssl=1 2048w, https:\/\/i0.wp.com\/www.virtono.com\/community\/wp-content\/uploads\/2023\/09\/Screenshot-2023-09-05-at-08.43.22.png?w=2250&amp;ssl=1 2250w\" sizes=\"auto, (max-width: 750px) 100vw, 750px\" \/><\/figure>\n<\/div>\n\n\n<p class=\"wp-block-paragraph\"><\/p>\n\n\n\n<h4 class=\"wp-block-heading has-accent-color has-text-color\"><span class=\"ez-toc-section\" id=\"Step_3_Deploying_Zipkin_on_Kubernetes\"><\/span>Step 3: Deploying Zipkin on Kubernetes<span class=\"ez-toc-section-end\"><\/span><\/h4>\n\n\n\n<p class=\"wp-block-paragraph\">Once we have the Zipkin Docker image, we can install it on our Kubernetes cluster. For Zipkin, we&#8217;ll make a deployment configuration file. Give it the name &#8220;zipkin-deployment.yaml.&#8221; An example of this configuration file would be as follows:<\/p>\n\n\n\n<pre class=\"wp-block-code has-white-color has-black-background-color has-text-color has-background\"><code>apiVersion: apps\/v1\nkind: Deployment\nmetadata:\n  name: zipkin\nspec:\n  replicas: 1\n  selector:\n    matchLabels:\n      app: zipkin\n  template:\n    metadata:\n      labels:\n        app: zipkin\n    spec:\n      containers:\n      - name: zipkin\n        image: openzipkin\/zipkin\n        ports:\n        - containerPort: 9411<\/code><\/pre>\n\n\n\n<p class=\"wp-block-paragraph\">This configuration creates a deployment with the name &#8220;zipkin&#8221; that will run the Zipkin Docker image we previously downloaded. Additionally, it exposes port 9411, Zipkin&#8217;s standard port.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Use the <code>kubectl apply -f zipkin-deployment.yaml<\/code> command to deploy Zipkin. On your Kubernetes cluster, this will create the Zipkin deployment.<\/p>\n\n\n\n<h4 class=\"wp-block-heading has-accent-color has-text-color\"><span class=\"ez-toc-section\" id=\"Step_4_Exposing_Zipkin_Service\"><\/span>Step 4: Exposing Zipkin Service<span class=\"ez-toc-section-end\"><\/span><\/h4>\n\n\n\n<p class=\"wp-block-paragraph\">We must expose the Zipkin UI as a service in Kubernetes in order to make it accessible from a web browser. The <code>zipkin-service.yaml<\/code> file should be created and should contain the following details:<\/p>\n\n\n\n<pre class=\"wp-block-code has-white-color has-black-background-color has-text-color has-background\"><code>apiVersion: v1\nkind: Service\nmetadata:\n  name: zipkin\nspec:\n  type: NodePort\n  ports:\n  - port: 9411\n    targetPort: 9411\n    nodePort: 32000\n  selector:\n    app: zipkin<\/code><\/pre>\n\n\n\n<p class=\"wp-block-paragraph\">This configuration creates a service that exposes the Zipkin deployment on port 32000 of your nodes. To create the service, run the command:&nbsp;<code>kubectl apply -f zipkin-service.yaml<\/code>.<\/p>\n\n\n\n<h4 class=\"wp-block-heading has-accent-color has-text-color\"><span class=\"ez-toc-section\" id=\"Step_5_Verifying_the_Deployment\"><\/span>Step 5: Verifying the Deployment<span class=\"ez-toc-section-end\"><\/span><\/h4>\n\n\n\n<p class=\"wp-block-paragraph\">By using the <code>kubectl get pods<\/code> command, you can check to see if Zipkin is functioning properly. You should see the Zipkin pod listed among the currently active pods.<\/p>\n\n\n<div class=\"wp-block-image\">\n<figure class=\"aligncenter size-large\"><img data-recalc-dims=\"1\" loading=\"lazy\" decoding=\"async\" width=\"750\" height=\"157\" data-attachment-id=\"3824\" data-permalink=\"https:\/\/www.virtono.com\/community\/tutorial-how-to\/how-to-deploy-zipkin-on-kubernetes\/attachment\/screenshot-2023-09-05-at-08-52-02\/\" data-orig-file=\"https:\/\/i0.wp.com\/www.virtono.com\/community\/wp-content\/uploads\/2023\/09\/Screenshot-2023-09-05-at-08.52.02.png?fit=1466%2C306&amp;ssl=1\" data-orig-size=\"1466,306\" data-comments-opened=\"1\" data-image-meta=\"{&quot;aperture&quot;:&quot;0&quot;,&quot;credit&quot;:&quot;&quot;,&quot;camera&quot;:&quot;&quot;,&quot;caption&quot;:&quot;&quot;,&quot;created_timestamp&quot;:&quot;0&quot;,&quot;copyright&quot;:&quot;&quot;,&quot;focal_length&quot;:&quot;0&quot;,&quot;iso&quot;:&quot;0&quot;,&quot;shutter_speed&quot;:&quot;0&quot;,&quot;title&quot;:&quot;&quot;,&quot;orientation&quot;:&quot;0&quot;}\" data-image-title=\"Screenshot-2023-09-05-at-08.52.02\" data-image-description=\"\" data-image-caption=\"\" data-large-file=\"https:\/\/i0.wp.com\/www.virtono.com\/community\/wp-content\/uploads\/2023\/09\/Screenshot-2023-09-05-at-08.52.02.png?fit=750%2C157&amp;ssl=1\" src=\"https:\/\/i0.wp.com\/www.virtono.com\/community\/wp-content\/uploads\/2023\/09\/Screenshot-2023-09-05-at-08.52.02.png?resize=750%2C157&#038;ssl=1\" alt=\"Zipkin on Kubernetes pod\" class=\"wp-image-3824\" srcset=\"https:\/\/i0.wp.com\/www.virtono.com\/community\/wp-content\/uploads\/2023\/09\/Screenshot-2023-09-05-at-08.52.02.png?resize=1024%2C214&amp;ssl=1 1024w, https:\/\/i0.wp.com\/www.virtono.com\/community\/wp-content\/uploads\/2023\/09\/Screenshot-2023-09-05-at-08.52.02.png?resize=300%2C63&amp;ssl=1 300w, https:\/\/i0.wp.com\/www.virtono.com\/community\/wp-content\/uploads\/2023\/09\/Screenshot-2023-09-05-at-08.52.02.png?resize=768%2C160&amp;ssl=1 768w, https:\/\/i0.wp.com\/www.virtono.com\/community\/wp-content\/uploads\/2023\/09\/Screenshot-2023-09-05-at-08.52.02.png?w=1466&amp;ssl=1 1466w\" sizes=\"auto, (max-width: 750px) 100vw, 750px\" \/><\/figure>\n<\/div>\n\n\n<p class=\"wp-block-paragraph\"><\/p>\n\n\n\n<p class=\"wp-block-paragraph\">You can also access the Zipkin on Kubernetes UI by navigating to&nbsp;<code>http:\/\/&lt;your_node_ip&gt;:32000<\/code>&nbsp;in your web browser. If everything is set up correctly, you should see the Zipkin UI.<\/p>\n\n\n<div class=\"wp-block-image\">\n<figure class=\"aligncenter size-large\"><img data-recalc-dims=\"1\" loading=\"lazy\" decoding=\"async\" width=\"750\" height=\"302\" data-attachment-id=\"3825\" data-permalink=\"https:\/\/www.virtono.com\/community\/tutorial-how-to\/how-to-deploy-zipkin-on-kubernetes\/attachment\/screenshot-2023-09-04-at-14-52-37\/\" data-orig-file=\"https:\/\/i0.wp.com\/www.virtono.com\/community\/wp-content\/uploads\/2023\/09\/Screenshot-2023-09-04-at-14.52.37.png?fit=2880%2C1162&amp;ssl=1\" data-orig-size=\"2880,1162\" data-comments-opened=\"1\" data-image-meta=\"{&quot;aperture&quot;:&quot;0&quot;,&quot;credit&quot;:&quot;&quot;,&quot;camera&quot;:&quot;&quot;,&quot;caption&quot;:&quot;&quot;,&quot;created_timestamp&quot;:&quot;0&quot;,&quot;copyright&quot;:&quot;&quot;,&quot;focal_length&quot;:&quot;0&quot;,&quot;iso&quot;:&quot;0&quot;,&quot;shutter_speed&quot;:&quot;0&quot;,&quot;title&quot;:&quot;&quot;,&quot;orientation&quot;:&quot;0&quot;}\" data-image-title=\"Screenshot-2023-09-04-at-14.52.37\" data-image-description=\"\" data-image-caption=\"\" data-large-file=\"https:\/\/i0.wp.com\/www.virtono.com\/community\/wp-content\/uploads\/2023\/09\/Screenshot-2023-09-04-at-14.52.37.png?fit=750%2C302&amp;ssl=1\" src=\"https:\/\/i0.wp.com\/www.virtono.com\/community\/wp-content\/uploads\/2023\/09\/Screenshot-2023-09-04-at-14.52.37.png?resize=750%2C302&#038;ssl=1\" alt=\"Zipkin on Kubernetes UI\" class=\"wp-image-3825\" srcset=\"https:\/\/i0.wp.com\/www.virtono.com\/community\/wp-content\/uploads\/2023\/09\/Screenshot-2023-09-04-at-14.52.37.png?resize=1024%2C413&amp;ssl=1 1024w, https:\/\/i0.wp.com\/www.virtono.com\/community\/wp-content\/uploads\/2023\/09\/Screenshot-2023-09-04-at-14.52.37.png?resize=300%2C121&amp;ssl=1 300w, https:\/\/i0.wp.com\/www.virtono.com\/community\/wp-content\/uploads\/2023\/09\/Screenshot-2023-09-04-at-14.52.37.png?resize=768%2C310&amp;ssl=1 768w, https:\/\/i0.wp.com\/www.virtono.com\/community\/wp-content\/uploads\/2023\/09\/Screenshot-2023-09-04-at-14.52.37.png?resize=1536%2C620&amp;ssl=1 1536w, https:\/\/i0.wp.com\/www.virtono.com\/community\/wp-content\/uploads\/2023\/09\/Screenshot-2023-09-04-at-14.52.37.png?resize=2048%2C826&amp;ssl=1 2048w, https:\/\/i0.wp.com\/www.virtono.com\/community\/wp-content\/uploads\/2023\/09\/Screenshot-2023-09-04-at-14.52.37.png?w=2250&amp;ssl=1 2250w\" sizes=\"auto, (max-width: 750px) 100vw, 750px\" \/><\/figure>\n<\/div>\n\n\n<p class=\"wp-block-paragraph\"><\/p>\n\n\n\n<h3 class=\"wp-block-heading has-accent-color has-text-color\"><span class=\"ez-toc-section\" id=\"Final_Thoughts\"><\/span>Final Thoughts<span class=\"ez-toc-section-end\"><\/span><\/h3>\n\n\n\n<p class=\"wp-block-paragraph\">Setting up Zipkin on Kubernetes can seem difficult, but with the right resources and advice, it becomes simple. The purpose of this guide was to offer a simple and thorough route to completing this task. Never forget to verify that your services and deployments are functioning as expected. You are well-equipped to trace and monitor your microservices efficiently with Zipkin on Kubernetes.<\/p>\n","protected":false},"excerpt":{"rendered":"<p>This tutorial will walk you through setting up Zipkin on Kubernetes, assuming that you already have K3s and Helm set up. Microservices have become a key element in the quickly changing world of software development. Distributed tracing systems like Zipkin have become very popular in tandem with this explosion in<\/p>\n","protected":false},"author":8,"featured_media":3827,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"_jetpack_newsletter_access":"","_jetpack_dont_email_post_to_subs":false,"_jetpack_newsletter_tier_id":0,"_jetpack_memberships_contains_paywalled_content":false,"_jetpack_memberships_contains_paid_content":false,"footnotes":"","jetpack_publicize_message":"","jetpack_publicize_feature_enabled":true,"jetpack_social_post_already_shared":true,"jetpack_social_options":{"image_generator_settings":{"template":"highway","default_image_id":0,"font":"","enabled":false},"version":2},"jetpack_post_was_ever_published":false},"categories":[3],"tags":[724,719,723,725,709,715,726,710,716,712,711,721,708,722,720,714,717,713,718,727],"class_list":["post-3821","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-tutorial-how-to","tag-zipkin-deployment","tag-zipkin-devops","tag-zipkin-distributed-tracing","tag-zipkin-docker","tag-zipkin-docker-hub","tag-zipkin-docker-installation","tag-zipkin-helm","tag-zipkin-helm-charts","tag-zipkin-kubectl","tag-zipkin-kubernetes-cluster","tag-zipkin-kubernetes-deployment","tag-zipkin-kubernetes-nodes","tag-zipkin-kubernetes-services","tag-zipkin-microservices","tag-zipkin-nodeport","tag-zipkin-on-k3s","tag-zipkin-on-kubernetes","tag-zipkin-open-source","tag-zipkin-software-development","tag-zipkin-ui"],"jetpack_publicize_connections":[],"jetpack_featured_media_url":"https:\/\/i0.wp.com\/www.virtono.com\/community\/wp-content\/uploads\/2023\/09\/How-to-Deploy-Zipkin-on-k3s.png?fit=360%2C240&ssl=1","jetpack_sharing_enabled":true,"jetpack_shortlink":"https:\/\/wp.me\/p7ISfL-ZD","jetpack_likes_enabled":true,"jetpack-related-posts":[{"id":3811,"url":"https:\/\/www.virtono.com\/community\/tutorial-how-to\/how-to-deploy-jaeger-on-kubernetes\/","url_meta":{"origin":3821,"position":0},"title":"How to Deploy Jaeger on Kubernetes","author":"George B.","date":"September 5, 2023","format":false,"excerpt":"This tutorial will guide you through the process of deploying Jaeger on Kubernetes, assuming that you already have K3s and Helm installed in your environment. Tracing and monitoring are essential in the world of microservices and distributed systems for preserving the functionality and performance of your applications. Jaeger, an end-to-end\u2026","rel":"","context":"In &quot;Tutorials&quot;","block_context":{"text":"Tutorials","link":"https:\/\/www.virtono.com\/community\/category\/tutorial-how-to\/"},"img":{"alt_text":"","src":"https:\/\/i0.wp.com\/www.virtono.com\/community\/wp-content\/uploads\/2023\/09\/How-to-Deploy-Jaeger-on-Kubernetes1.png?fit=360%2C240&ssl=1&resize=350%2C200","width":350,"height":200},"classes":[]},{"id":3641,"url":"https:\/\/www.virtono.com\/community\/tutorial-how-to\/how-to-deploy-redis-on-kubernetes\/","url_meta":{"origin":3821,"position":1},"title":"How to Deploy Redis on Kubernetes","author":"George B.","date":"July 25, 2023","format":false,"excerpt":"This article provides a detailed guide on how to install Redis on Kubernetes, covering everything from configuring the Kubernetes environment to installing and administering Redis. The demand for effective, scalable, and trustworthy data storage solutions has increased as the world transitions to microservices and containerized applications. Redis, a high-performance in-memory\u2026","rel":"","context":"In &quot;Tutorials&quot;","block_context":{"text":"Tutorials","link":"https:\/\/www.virtono.com\/community\/category\/tutorial-how-to\/"},"img":{"alt_text":"","src":"https:\/\/i0.wp.com\/www.virtono.com\/community\/wp-content\/uploads\/2023\/07\/How-to-Deploy-Redis-on-Kubernetes.png?fit=360%2C240&ssl=1&resize=350%2C200","width":350,"height":200},"classes":[]},{"id":3708,"url":"https:\/\/www.virtono.com\/community\/tutorial-how-to\/how-to-deploy-jenkins-on-kubernetes\/","url_meta":{"origin":3821,"position":2},"title":"How to Deploy Jenkins on Kubernetes","author":"George B.","date":"August 2, 2023","format":false,"excerpt":"In this tutorial, we'll go into detail about how to deploy Jenkins on Kubernetes using K3s, a streamlined Kubernetes distribution ideal for edge, IoT, and small clusters. To make the process as clear as possible, this guide will offer specific, step-by-step instructions and examples. Jenkins and Kubernetes have proven to\u2026","rel":"","context":"In &quot;Tutorials&quot;","block_context":{"text":"Tutorials","link":"https:\/\/www.virtono.com\/community\/category\/tutorial-how-to\/"},"img":{"alt_text":"","src":"https:\/\/i0.wp.com\/www.virtono.com\/community\/wp-content\/uploads\/2023\/08\/How-to-Deploy-Jenkins-on-Kubernetes.png?fit=360%2C240&ssl=1&resize=350%2C200","width":350,"height":200},"classes":[]},{"id":3677,"url":"https:\/\/www.virtono.com\/community\/tutorial-how-to\/how-to-install-k3s-cluster-and-helm\/","url_meta":{"origin":3821,"position":3},"title":"How to install K3s Cluster and Helm","author":"George B.","date":"July 27, 2023","format":false,"excerpt":"In this tutorial, we are going to explore how to install K3s and Helm. K3s is a lightweight Kubernetes distribution designed for developers and operators looking for a method to run Kubernetes in resource-constrained environments. Helm, on the other hand, is a package manager for Kubernetes that simplifies the deployment\u2026","rel":"","context":"In &quot;Tutorials&quot;","block_context":{"text":"Tutorials","link":"https:\/\/www.virtono.com\/community\/category\/tutorial-how-to\/"},"img":{"alt_text":"","src":"https:\/\/i0.wp.com\/www.virtono.com\/community\/wp-content\/uploads\/2023\/07\/How-to-install-K3s-Cluster-and-Helm.png?fit=360%2C240&ssl=1&resize=350%2C200","width":350,"height":200},"classes":[]},{"id":3981,"url":"https:\/\/www.virtono.com\/community\/tutorial-how-to\/how-to-deploy-argocd-on-kubernetes\/","url_meta":{"origin":3821,"position":4},"title":"How to Deploy ArgoCD on Kubernetes","author":"George B.","date":"October 3, 2023","format":false,"excerpt":"Let\u2019s get started with deploying ArgoCD on Kubernetes. With the rise of containerization and orchestration technologies, Kubernetes has become the de facto standard for container management. When it comes to Continuous Deployment (CD) in Kubernetes environments, ArgoCD stands out as an impressive tool. Designed specifically for Kubernetes, ArgoCD bridges the\u2026","rel":"","context":"In &quot;Tutorials&quot;","block_context":{"text":"Tutorials","link":"https:\/\/www.virtono.com\/community\/category\/tutorial-how-to\/"},"img":{"alt_text":"","src":"https:\/\/i0.wp.com\/www.virtono.com\/community\/wp-content\/uploads\/2023\/10\/Deploy-ArgoCD-on-Kubernetes.png?fit=360%2C240&ssl=1&resize=350%2C200","width":350,"height":200},"classes":[]},{"id":3687,"url":"https:\/\/www.virtono.com\/community\/tutorial-how-to\/how-to-deploy-mongodb-on-kubernetes\/","url_meta":{"origin":3821,"position":5},"title":"How to Deploy MongoDB on Kubernetes","author":"George B.","date":"July 29, 2023","format":false,"excerpt":"This tutorial will walk you through installing MongoDB on Kubernetes cluster. We'll assume that you've already got K3s and Helm set up on your machine. The deployment of applications like MongoDB on Kubernetes cluster is made easier by the Kubernetes package manager Helm. Before getting too technical, it's important to\u2026","rel":"","context":"In &quot;Tutorials&quot;","block_context":{"text":"Tutorials","link":"https:\/\/www.virtono.com\/community\/category\/tutorial-how-to\/"},"img":{"alt_text":"","src":"https:\/\/i0.wp.com\/www.virtono.com\/community\/wp-content\/uploads\/2023\/07\/How-to-Deploy-MongoDB-on-Kubernetes.png?fit=360%2C240&ssl=1&resize=350%2C200","width":350,"height":200},"classes":[]}],"_links":{"self":[{"href":"https:\/\/www.virtono.com\/community\/wp-json\/wp\/v2\/posts\/3821","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.virtono.com\/community\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.virtono.com\/community\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.virtono.com\/community\/wp-json\/wp\/v2\/users\/8"}],"replies":[{"embeddable":true,"href":"https:\/\/www.virtono.com\/community\/wp-json\/wp\/v2\/comments?post=3821"}],"version-history":[{"count":2,"href":"https:\/\/www.virtono.com\/community\/wp-json\/wp\/v2\/posts\/3821\/revisions"}],"predecessor-version":[{"id":3829,"href":"https:\/\/www.virtono.com\/community\/wp-json\/wp\/v2\/posts\/3821\/revisions\/3829"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/www.virtono.com\/community\/wp-json\/wp\/v2\/media\/3827"}],"wp:attachment":[{"href":"https:\/\/www.virtono.com\/community\/wp-json\/wp\/v2\/media?parent=3821"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.virtono.com\/community\/wp-json\/wp\/v2\/categories?post=3821"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.virtono.com\/community\/wp-json\/wp\/v2\/tags?post=3821"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}