【问题标题】:Using Amazon ECR Clusters - one per microservice or does each microservice reside on one Service使用 Amazon ECR 集群 - 每个微服务一个或每个微服务驻留在一个服务上
【发布时间】:2018-08-15 04:42:13
【问题描述】:
我不熟悉将 AWS ECR 集群用于微服务项目。
我想部署一个微服务基础架构,我可以在其中按需重新构建和重新部署任何微服务。我已经使用 ECR 注册表部署了一个微服务,并在 ECR 中为每个图像创建了任务定义。
最佳实践是为每个微服务创建一个集群,还是为所有微服务创建一个集群,但每个微服务一个服务?
我很想听听这方面的最佳做法!
【问题讨论】:
标签:
amazon-web-services
microservices
aws-ecr
【解决方案1】:
问题中的术语几乎没有问题。我想一旦你掌握了术语,你就会明白
- ECR 是容器注册表,即从那里上传和拉取 docker 图像
- ECS 是编排平台,即在一个集群中编排多个容器。它决定每台机器上的容器是什么
- 任务定义是一种抽象。您可以确定有多少容器,将传递给容器的环境变量,容器启动后将执行的 RUN 命令等。
例如,您有一个需要高度冗余的 API 端点,因此任务定义将是 10 个容器。对于离线处理(当我们不太关心性能时) - 我们可以使用更少的容器来设置它。
【解决方案2】:
除了@gCoh 的回答,回答你的问题-Is it best practice to create one Cluster per microservice, or one Cluster for all the microservices, but one Service per microserivce?
这取决于,我们所做的是 - 根据服务的功能对服务进行逻辑分组,并从中创建单独的集群。