Search code examples
amazon-web-servicesload-balancinggrpcenvoyproxyaws-app-mesh

How to create an service mesh without using containers on aws?


I am looking to use gRPC for microservice communication. The services are deployed on AWS ec2 instances. As I figured out ELB does not really able to balance the load for Http 2.0 traffic. I looked for alternatives and stumbled upon Service mesh. As AWS supports App mesh using envoy proxy for service discovery and load balancing among micro-services, I thought this would be the correct solution to achieve load-balanced communication. However, we are not using containers, I was wondering how we can deploy a proxy in a sidecar pattern to achieve a service mesh? Is there any other way apart from service mesh through which I can have a load-balanced grpc communication between services?


Solution

  • You can acive App Mesh one of these AWS Fargate, Amazon EC2, Amazon ECS, Amazon EKS, and Kubernetes.

    App Mesh supports microservice applications that use service discovery naming for their components. To use App Mesh, you must have an existing application running on AWS Fargate, Amazon ECS, Amazon EKS, Kubernetes on AWS, or Amazon EC2.

    app-mesh

    app-mesh-latest-userguide

    Prerequisites

    App Mesh supports microservice applications that use service discovery naming for their components. To use this getting started guide, you must have a microservice application running on Amazon EC2 instances.

    You can further check here