AWS App Mesh makes it easy to monitor and control microservices running on AWS. App Mesh standardizes how your microservices communicate, giving you end-to-end visibility and helping to ensure high-availability for your applications.
Modern applications are often composed of multiple microservices that each perform a specific function. This architecture helps to increase the availability and scalability of the application by allowing each component to scale independently based on demand, and automatically degrading functionality when a component fails instead of going offline. Each microservice interacts with all the other microservices through an API. As the number of microservices grows within an application, it becomes increasingly difficult to pinpoint the exact location of errors, re-route traffic after failures, and safely deploy code changes. Previously, this has required you to build monitoring and control logic directly into your code and redeploy your microservices every time there are changes.
AWS App Mesh makes it easy to run microservices by providing consistent visibility and network traffic controls for every microservice in an application. App Mesh removes the need to update application code to change how monitoring data is collected or traffic is routed between microservices. App Mesh configures each microservice to export monitoring data and implements consistent communications control logic across your application. This makes it easy to quickly pinpoint the exact location of errors and automatically re-route network traffic when there are failures or when code changes need to be deployed.
You can use App Mesh with Amazon ECS and Amazon EKS to better run containerized microservices at scale. App Mesh uses the open source Envoy proxy, making it compatible with a wide range of AWS partner and open source tools for monitoring microservices.
App Mesh is available today as a public preview.
Benefits
End-to-end visibility
App Mesh consistently captures metrics, logs, and traces from every microservice. You can combine and export this data to Amazon CloudWatch, AWS X-Ray, and compatible AWS partner and community tools for monitoring and tracing*. This lets you quickly identify and isolate issues with any microservice to optimize your entire application.
Ensure high availability
App Mesh gives you controls to configure how traffic flows between your microservices. You can easily implement custom traffic routing rules to ensure every microservice is highly available during deployments, after failures, and as your application scales.
Streamline operations
App Mesh deploys and configures a proxy that manages all communications traffic to and from your containers. This removes the need to configure communication protocols for each microservice, write custom code, or implement libraries to operate your application.
Enhance any application
You can use App Mesh with existing or new microservices running on AWS Fargate, Amazon ECS, Amazon EKS, and self-managed Kubernetes on AWS. App Mesh can monitor and control communications for microservices running across clusters, orchestration systems, or VPCs as a single application without any code changes.
How it works
Before App Mesh
Communications and monitoring are manually configured for every microservice.
After App Mesh
App Mesh configures communications and monitoring for all microservices.
Blog posts & articles
Introducing AWS App Mesh
App Mesh helps you better control how traffic flows between microservices and helps you identify issues anywhere in an application.