Today, Product Catalog frontend
frontend-node is hardwired to make requests to
prodcatalog is hardwired to make requests to
Each time there is a new version of
proddetail release, we also need to release a new version of
prodcatalog to support both the new and the old version to point to its version-specific endpoints. It works, but it’s not an optimal configuration to maintain for the long term.
prodcatalog backend service is deployed to Fargate, and rest of the services
proddetail are deployed to Managed Nodegroup, we need to add all these services into the App Mesh and ensure these microservices can communicate with each other.
We’re going to demonstrate how
AWS App Mesh can be used to simplify this architecture; by virtualizing the
proddetail service, we can add dynamic configuration and route traffic to the versioned endpoints of our choosing, minimizing the need for complete re-deployment of the
prodcatalog service each time there is a new
proddetail service release.
We’re also going to demonstrate how all the microservices in Nodegroup and Fargate can communicate with each other via App Mesh.
When we’re done with porting the application in this chapter, our app will look more like the following.
Now that the App Mesh Controller and CRDs are installed, we’re ready to define the App Mesh components required for our mesh-enabled version of the app.