days
-6
-5
hours
0
-4
minutes
-3
-2
seconds
-1
-1
search
AWS re:Invent 2018

Monitor & control communications across microservices applications on AWS with App Mesh

Gabriela Motroc
microservices
© Shutterstock / areebarbar

If you wish there was an easy way to monitor and control communications across microservices applications on AWS, consider it granted. AWS App Mesh is the latest announcement at AWS re:Invent to rock our world. Proceed with caution though: this service mesh is currently available as a public preview.

The announcements during AWS re:Invent are plentiful. We were really impressed by Firecracker – a new virtualization technology that enables customers to deploy lightweight micro Virtual Machines or microVMs and Amazon Kinesis Data Analytics for Java and now it’s time for something completely different.

So take a break from refreshing the AWS re:Invent Twitter and see how AWS App Mesh allows you to easily monitor and control communications across microservices applications on AWS.

Meet App Mesh: Service mesh for microservices on AWS

Identifying and isolating issues becomes a very difficult task when you start building more than a few microservices within an application. The problems that can occur are countless, starting with higher latencies and ending with error codes across the application. They can be addressed by adding custom code and libraries into each microservice and using open source tools that manage communications for each microservice but these solutions come with their own challenges.

Enter AWS App Mesh, a service mesh which “implements a new architectural pattern that helps solve many of these challenges and provides a consistent, dynamic way to manage the communications between microservices, as explained in the blog post announcing the service. “With App Mesh, the logic for monitoring and controlling communications between microservices is implemented as a proxy that runs alongside each microservice, instead of being built into the microservice code. The proxy handles all of the network traffic into and out of the microservice and provides consistency for visibility, traffic control, and security capabilities to all of your microservices.”

One of the biggest benefits of adding a proxy in front of every microservice is that you can automatically capture metrics, logs, and traces about the communication between your services. This way, you’ll easily collect and export this data to the tools of your choice. As of now, Envoy is integrated with several tools like Prometheus and Datadog.

SEE ALSO: AWS re:Invent 2018: Java developers can now take advantage of Amazon Kinesis Data Analytics

You should use AWS App Mesh if you want to

  • Streamline operations by offloading communication management logic from application code and libraries into configurable infrastructure.
  • Reduce troubleshooting time required by having end-to-end visibility into service-level logs, metrics and traces across your application.
  • Easily roll out of new code by dynamically configuring routes to new application versions.
  • Ensure high-availability with custom routing rules that help ensure every service is highly available during deployments, after failures, and as your application scales.
  • Manage all service to service traffic using one set of APIs regardless of how the services are implemented.

Available now

Keep in mind that AWS App Mesh is only available as a public preview at the moment and can be used in North Virginia, Ohio, Oregon, and Ireland AWS Regions.

Check out the GitHub repository for examples and roadmap.

Author
Gabriela Motroc
Gabriela Motroc is editor of JAXenter.com and JAX Magazine. Before working at Software & Support Media Group, she studied International Communication Management at the Hague University of Applied Sciences.