Edit

Share via


Run Jaeger with Azure Managed Instance for Apache Cassandra

Jaeger is a distributed tracing platform for monitoring microservices. It enables the fast identification of performance challenges and optimization through features like tracing instrumentation and logging integration.

This article details the use of the sample application HotROD and Jaeger alongside Azure Managed Instance for Apache Cassandra for efficient storage monitoring.

Prerequisites and setup

Use Jaeger with Azure Managed Instance for Apache Cassandra

  1. Download the Jaeger repository.

  2. Go to the docker-compose folder: cd jaeger\docker-compose.

  3. In the jaeger-docker-compose.yml file, add your Azure Managed Instance for Apache Cassandra cluster credentials to the jaeger-collector and jaeger-query sections:

        command: ["--cassandra.port=9042", "--cassandra.servers=seed_nodes_mi_datacenters", "--cassandra.username=cassandra", "--cassandra.password=cassandra_mi_password","--cassandra.tls.skip-host-verify","--cassandra.tls.enabled", 
        "--cassandra.keyspace=jaeger_v1_dc1" ]
    
  4. Add the environment variables to the cassandra-schema and jaeger-collector sections:

    environment: 
        ...
        - SSL_VERSION=TLSv1_2
        - SSL_VALIDATE=false
        - CQLSH_SSL=--ssl
        ...
    
  5. To connect your Azure Managed Instance for Apache Cassandra cluster, add the Cassandra sign-in credentials to the cassandra-schema section:

      environment:
        ...
        - CQLSH_HOST=datacenter_node_ip
        - CQLSH_PORT=9042
        - CASSANDRA_PASSWORD=mi_cluster_password
        - CASSANDRA_USERNAME=cassandra
        ...
    
  6. Run docker-compose -f jaeger-docker-compose.yml up -d to start the application.

    Screenshot of a running Jaeger application.

    Tip

    The command creates five containers. You can access the test application at http://localhost:8080/ to generate traces that you can view at http://localhost:16686/search.

  7. After the containers are running, use the Jaeger UI to view traces from the application.

    Screenshot of the Jaeger web interface.

  8. Verify by inspecting your Azure Managed Instance for Apache Cassandra cluster.

    Screenshot of Jaeger tables in a managed instance cluster.

  9. Refer to the traces table to view the data related to step 7.

    Screenshot of the Jaeger traces table.

Support

If you have problems running or testing Jaeger, open a support ticket. Provide the subscription ID and account name where your Jaeger instance is running.

Next steps