配置AWS ECS群集以在DNS后进行负载平衡和自动扩展

时间:2018-03-15 14:24:34

标签: docker amazon-elb amazon-route53 autoscaling aws-ecs

我有一个最近的Dockerized Web应用程序,我试图在AWS ECS中运行。我使用Route 53作为DNS。

虽然我还没有在Route 53中设置它,但我的计划是创建api.uat.myapp.example.com的DNS记录,我想要的是让负载均衡的域名支持,我的容器的可自动缩放的集群生活在ECS中。

我在ECS容器网络配置标签中:

enter image description here

按下" 我相信!"按钮一分钟,让我们假装我已经在Route 53中创建了api.uat.myapp.example.com域名。我需要在这里添加哪些值/配置以便:

  • 当远程客户端尝试连接到api.uat.myapp.example.com时,它们会被路由到在我的ECS群集中运行的负载平衡容器?和
  • 负载均衡的ECS群集是自动缩放的(一旦我弄明白我可以配置自动缩放属性,我确定我可以弄明白如何配置它们!)

1 个答案:

答案 0 :(得分:0)

您的问题非常广泛。因此,这个答案很可能过于通用具有特定用途,但希望能指出正确的方向。

首先是

您误解了您已截屏的配置。这是容器中的网络配置 。那么,你的容器是什么hostname,它是link的其他容器,你希望它使用什么DNS Server,或者是什么other hosts如果它知道......这些都是可选的,但可能是您特定设置所必需的。

这与您的应用程序如何扩展无关。

负载平衡

首先,您需要决定应该为您的应用程序使用what type of load balancer。然后,您可以将Route53指向该负载均衡器。在您的负载均衡器will be your EC2 instances后面。要获得路由到容器的流量,您需要make sure your EC2 ports map to the listening ports of your container。 ECS可以help with this

自动配置功能

这种情况以多种方式发生。

您可以通过ECS服务启动并拆除EC2实例上的容器,在ECS中执行application autoscaling

您可以拥有Autoscaling Group scale up and down your EC2 instances - 但这样做,您需要一种方法将这些实例自动添加到您的ECS群集中。

存在多种扩展策略。您需要根据对扩展决策最重要的指标,自行决定哪一个最适合您的应用。