Posted On: Nov 28, 2018
You can now integrate your AWS Fargate, Amazon Elastic Container Service for Kubernetes (EKS), and Amazon Elastic Container Service (ECS) applications with AWS Cloud Map to make it easy for your containerized services to discover and connect with each other. AWS Cloud Map is a cloud resource discovery service. With Cloud Map, you can define custom names for your application resources, and it maintains the updated location of these dynamically changing resources. This increases your application availability because your web service always discovers the most up-to-date locations of its resources.
Previously ECS service discovery enabled you to discover service endpoint information like IP addresses and ports. This approach only supported discovery using DNS, which was simple for you to use. However, you had limited control in managing how these services interconnect, and found it hard to manage issues such as client side caching of outdated data, load balancing across the resolved endpoints, and dealing with propagation delays. Customers could also not use this approach to centrally manage how their services discover across AWS services such as Amazon DynamoDB tables and Amazon S3 buckets.
Now, you can use Cloud Map to define how services discover and connect with each other. You can directly query for dependent services in their application code along with filters for metadata associated with services, which gives you more control and flexibility in defining how their services interconnect. You can use Cloud Map APIs to store configuration needed to connect to other AWS services in a uniform manner as any AWS resource can be mapped as metadata associated with the service and query it from services running on ECS and Fargate. Additionally, we created a Cloud Map provider in an open-source Kubernetes connector ExternalDNS that automatically propagates internal service locations to the AWS Cloud Map service registry as Amazon EKS services launch and removes them on termination. All EKS services then become discoverable via AWS Cloud Map, which provides a unified service registry for all container workloads on EKS.