Yandex Cloud
Search
Contact UsGet started
  • Pricing
  • Customer Stories
  • Documentation
  • Blog
  • All Services
  • System Status
    • Featured
    • Infrastructure & Network
    • Data Platform
    • Containers
    • Developer tools
    • Serverless
    • Security
    • Monitoring & Resources
    • ML Services
    • Business tools
  • All Solutions
    • By industry
    • By use case
    • Economics and Pricing
    • Security
    • Technical Support
    • Start testing with double trial credits
    • Cloud credits to scale your IT product
    • Gateway to Russia
    • Cloud for Startups
    • Center for Technologies and Society
    • Yandex Cloud Partner program
  • Pricing
  • Customer Stories
  • Documentation
  • Blog
© 2025 Direct Cursus Technology L.L.C.
Yandex Managed Service for Kubernetes
  • Comparison with other Yandex Cloud services
  • Getting started
    • All tutorials
    • Creating a new Kubernetes project in Yandex Cloud
    • Creating a Kubernetes cluster with no internet access
    • Running workloads with GPUs
    • Using node groups with GPUs and no pre-installed drivers
    • Setting up Time-Slicing GPUs
    • Migrating resources to a different availability zone
    • Encrypting secrets in Managed Service for Kubernetes
    • Creating a Kubernetes cluster using the Yandex Cloud provider for the Kubernetes Cluster API
    • Accessing the Yandex Cloud API from a Managed Service for Kubernetes cluster using a workload identity federation
      • Integration with Argo CD
      • Integration with Crossplane
      • Syncing with Yandex Lockbox secrets
      • Configuring Fluent Bit for Cloud Logging
      • Setting up Gateway API
      • Configuring an L7 Application Load Balancer with the help of an ingress controller
      • Configuring L7 Application Load Balancer logging via an ingress controller
      • Creating an L7 load balancer with a Smart Web Security profile through an Application Load Balancer ingress controller
      • Performing health checks on Managed Service for Kubernetes cluster applications via an L7 Application Load Balancer
      • Using Jaeger to trace requests in Managed Service for YDB
      • Setting up Kyverno & Kyverno Policies
      • Using Metrics Provider to stream metrics
      • Editing website images with Thumbor
      • Using Istio
      • Using HashiCorp Vault to store secrets
  • Access management
  • Pricing policy
  • Terraform reference
  • Monitoring metrics
  • Audit Trails events
  • Release notes

In this article:

  • Required paid resources
  • Getting started
  • Install and configure Jaeger
  • Install a test application
  • Test Jaeger
  • Delete the resources you created
  1. Tutorials
  2. Using Cloud Marketplace products
  3. Using Jaeger to trace requests in Managed Service for YDB

Using Jaeger to trace requests in Managed Service for YDB

Written by
Yandex Cloud
Updated at June 9, 2025
  • Required paid resources
  • Getting started
  • Install and configure Jaeger
  • Install a test application
  • Test Jaeger
  • Delete the resources you created

The Jaeger distributed tracing platform helps monitor request status in distributed microservice application systems.

In this article, you will learn how to install the Jaeger platform in a Managed Service for Kubernetes cluster and configure it to work with Yandex Managed Service for YDB:

  1. Install and configure Jaeger.
  2. Install a test application to create load on a Kubernetes cluster.
  3. Test Jaeger by making several test requests.

Required paid resourcesRequired paid resources

The support cost includes:

  • Fee for the Managed Service for Kubernetes cluster: using the master and outgoing traffic (see Managed Service for Kubernetes pricing).
  • Cluster nodes (VM) fee: using computing resources, operating system, and storage (see Compute Cloud pricing).
  • Fee for a public IP address assigned to cluster nodes (see Virtual Private Cloud pricing).
  • Fee for a Managed Service for YDB database in Dedicated mode: using computing resources allocated to the database and disk space (see Managed Service for YDB pricing).

Getting startedGetting started

  1. If you do not have the Yandex Cloud CLI installed yet, install and initialize it.

    By default, the CLI uses the folder specified when creating the profile. To change the default folder, use the yc config set folder-id <folder_ID> command. You can also set a different folder for any specific command using the --folder-name or --folder-id parameter.

  2. Create security groups for the Managed Service for Kubernetes cluster and its node groups.

    Warning

    The configuration of security groups determines the performance and availability of the cluster and the services and applications running in it.

  3. Create a Managed Service for Kubernetes cluster and a node group in any suitable configuration. When creating them, specify the security groups prepared earlier.

  4. Install kubect and configure it to work with the new cluster.

Install and configure JaegerInstall and configure Jaeger

  1. Install Jaeger over YDB from the Yandex Cloud Marketplace application catalog. When installing the application, select the default namespace (default).

  2. Make sure that all the Jaeger pods have entered the Running state:

    kubectl get pods | grep jaeger
    
  3. Find out the name of the jaeger-ydb-store-agent service:

    kubectl get svc | grep ydb-store-agent
    

    Result:

    <jaeger-ydb-store-agent_application_name> ClusterIP 10.2.238.190 ...
    

Install a test applicationInstall a test application

To test Jaeger, use the HotROD application that simulates Kubernetes cluster load with several microservices.

  1. Create a manifest named hotrod.yaml containing a description of the application:

    ---
    apiVersion: v1
    kind: Pod
    metadata:
      name: hotrod
    spec:
      containers:
      - name: hotrod
        image: jaegertracing/example-hotrod:latest
        env:
        - name: JAEGER_AGENT_HOST
          value: "<jaeger-ydb-store-agent_application_name>.default.svc.cluster.local"
        - name: JAEGER_AGENT_PORT
          value: "6831"
        ports:
        - containerPort: 8080
        - containerPort: 8081
        - containerPort: 8082
        - containerPort: 8083
    
  2. Create a pod with the hotrod application:

    kubectl apply -f hotrod.yaml
    
  3. Make sure the hotrod pods have entered the Running state:

    kubectl get pods | grep hotrod
    

Test JaegerTest Jaeger

  1. Find out the name of the jaeger-ydb-store-query service:

    kubectl get svc | grep jaeger-ydb-store-query
    

    Result:

    <name_of_jaeger-ydb-store-query_application>  LoadBalancer  10.2.222.155  130.133.51.247  16686:31189/TCP ...
    
  2. Configure jaeger-ydb-store-query port forwarding to the local computer:

    kubectl port-forward service/<name_of_jaeger-ydb-store-query_application> 16686:16686
    
  3. In a different console window, configure port forwarding for the hotrod application to the local computer:

    kubectl port-forward hotrod 8080:8080
    
  4. Open the URI of the hotrod application in your browser and make several test requests to Jaeger.

    Note

    If the resource is unavailable at the specified URL, make sure that the security groups for the Managed Service for Kubernetes cluster and its node groups are configured correctly. If any rule is missing, add it.

  5. Open Jaeger's URI in your browser.

    Make sure that the test requests have been transmitted successfully and have been included in the trace.

Delete the resources you createdDelete the resources you created

Delete the resources you no longer need to avoid paying for them:

  1. Delete the Managed Service for YDB database.
  2. Delete the Managed Service for Kubernetes cluster.
  3. Delete the cluster public static IP address if you reserved one.

Was the article helpful?

Previous
Performing health checks on Managed Service for Kubernetes cluster applications via an L7 Application Load Balancer
Next
Setting up Kyverno &amp; Kyverno Policies
© 2025 Direct Cursus Technology L.L.C.