Skip to main content
logoTSB - Application Owner Troubleshooting GuideVersion: Latest

The TSB Service Registry

What is our Goal?

Our goal in this chapter is to understand how TSB has found and detected your application. You can then verify that TSB has correctly identified where the application is deployed, and the service name and port that it will use.

Prerequisites:

  • I know that my service foo is deployed in namespace bar on cluster cluster-a

Steps:

  • Can I verify that the service has been onboarded to the local Istio mesh?
  • Can I verify that TSB has located my service?
  • Can I check the detected service information, such as name and port?

Troubleshooting Steps

  1. Check your Application has been Onboarded to the TSB Service Mesh

    TSB discovers applications that have been deployed on TSB-managed clusters, and makes these applications available via the service mesh.

    If you have direct access to your K8s cluster, you will see the following:

    kubectl get pods -n bookinfo
    NAME READY STATUS RESTARTS AGE
    bookinfo-appgw-85fc64d876-jf4lp 1/1 Running 0 6h1m
    details-v1-78f86f894c-gs94z 2/2 Running 0 5h51m
    productpage-v1-975b67b7b-z75g7 2/2 Running 0 5h51m
    ratings-v1-68d6b9c6f9-lbtz8 2/2 Running 0 5h51m
    reviews-v1-7cb76df57-zbd7d 2/2 Running 0 5h51m
    reviews-v2-7758b97dfc-48ztp 2/2 Running 0 5h51m
    reviews-v3-6f5b89849c-qh6hl 2/2 Running 0 5h51m

    kubectl get pod -n bookinfo productpage-v1-975b67b7b-z75g7 -o jsonpath='{.spec.containers[*].name}'
    istio-proxy productpage

    Observe that each pod has an additional istio-proxy container, which manages incoming and outgoing connections.

    No istio-proxy container?

    If you don't see the additional istio-proxy container, this means that your application is not managed by the TSB service mesh. Most likely:

    • The namespace is not correctly labelled, for example, with the label istio-injection=enabled or istio.io/rev=canary
    • The cluster has not been onboarded correctly to the TSB management plane
    • If the namespace was labelled after the service was deployed, you'll need to re-deploy your application (kubectl rollout restart)

    For more information, refer to the Istio Sidecar Injection documentation.

  2. Verify that TSB has detected your Application

    Your application details should have been detected by TSB, and recorded in the TSB Service Registry.

    In this example, the service productpage is deployed in namespace bookinfo on clusters eks-owendemo-eu-west-1-1 and eks-owendemo-eu-west-3-2.

    Log in to the TSB admin UI. Navigate to the Dashboard, and select CLUSTERS • NAMESPACES. This will list the resources you have permissions to view.

    Select the appropriate namespace:

    Chose the service that you are interested in:

  3. Check the properties of your service

    Browse through the service details:

    Observe properties such as:

    • Service Name: productpage
    • State: Controlled by TSB
    • Type: Internal to the mesh (you may also see Loadbalancer or External)

    You can look through other properties and metrics; we'll discuss this in more detail in the next pages.

Not what you expect?

If the service is missing or does not have the properties that you expect, verify that it has been correctly deployed to your cluster and that the sidecar is present. Refer to your platform team for more assistance.