使用Fargate

时间:2018-05-20 00:52:37

标签: amazon-web-services amazon-elb amazon-ecs aws-ecs aws-fargate

AWS文档中提到,将ECS服务连接到多个端口需要经典负载均衡器https://docs.aws.amazon.com/AmazonECS/latest/developerguide/service-load-balancing.html

但是当与Fargate一起使用ECS时,我收到错误消息,经典负载均衡器不支持网络模式awsvpc https://ibb.co/gJTtfo

使用Fargate无法为ECS服务负载均衡多个端口?

1 个答案:

答案 0 :(得分:2)

该文档指出,不能将Classic Load Balancer与Fargate启动类型一起使用。

https://docs.aws.amazon.com/AmazonECS/latest/developerguide/task-networking.html

使用 awsvpc 网络模式的任务的服务(例如,具有Fargate启动类型的服务)仅支持应用程序负载均衡器和网络负载均衡器; 不支持经典负载均衡器。此外,为这些服务创建任何目标组时,必须选择ip作为目标类型,而不是实例。这是因为使用awsvpc网络模式的任务与弹性网络接口相关联,而不是与Amazon EC2实例相关联。

https://docs.aws.amazon.com/AmazonECS/latest/developerguide/task_definition_parameters.html#network_mode

如果使用Fargate启动类型,awsvpc network mode is required如果使用EC2启动类型,则可以使用任何网络模式。如果网络模式设置为none,则无法在容器定义中指定端口映射,并且任务' s容器没有外部连接。 host和awsvpc网络模式为容器提供最高的网络性能,因为它们使用Amazon EC2网络堆栈而不是桥接模式提供的虚拟化网络堆栈。

以下博文可能会帮助您找到适合您案例的方法。

AWS博客 - AWS Fargate中的任务网络
https://aws.amazon.com/blogs/compute/task-networking-in-aws-fargate/