You are viewing an old version of this page. View the current version.

Compare with Current View Page History

« Previous Version 4 Next »

# 1. Problem statement and context


Figure 1. The barrier between the two technology stacks


In the process of application modernization, it is common for users to use multiple microservice technology stacks (servicecomb-service-center and istio) at the same time. So, they have a high demand to break the communication barrier between two heterogeneous tech stacks which is caused by the different Registration and Discovery mechanisms.

 

# 2. Our solution

Figure 2. Our solution


We propose a tool that can synchronizes microservices from servicecomb-service-center to Istio system which makes istio-based services are able to discover servicecomb-service-center-based services, refer to Figure 2.

 

## 2.1 Design

 

Figure 3. Servicecomb-service-center structure

 

As we can see from this Figure 3, servicecomb-service-center-istio synchronizes service register information from servicecomb-service-center side to istio side. It mainly does three steps:

  • It watches servicecomb-service-center updates (microservice instance status changes event: add, delete, update) via a WebSocket connection.
  • It converts servicecomb-service-center data model (microservice and microservice instance) to Istio data model (ServiceEntry and WorkloadEntry)
  • It pushed converted data model to K8S api server through REST api.

 

After doing all these steps, Istio automatically captures these converted ServiceEntry and WorkloadEntry and dispatches them to each Envoy sidecar, so that each sidecar can discover those servicecomb-service-center services.

 

  • No labels