小编Jul*_*lhé的帖子

如何使用 Amazon EC2 Container Service 扩展一个容器

我是使用 Amazon ECS 的新手,我想知道如何设置服务以便轻松扩展/缩减一个容器。

这是我的项目架构:

  • 网站:网站的容器,仅提供 html 页面和 javascript/css/images。听80。
  • api:在 NodeJS 中开发的 API 容器,提供 json 服务。在 443 上收听。
  • rabbitmq:带有rabbitmq的容器。api 容器链接到它。
  • worker:等待来自rabbitmq的订单(它也链接到它)并处理它们,然后将答案发送回rabbitmq的容器。

目前,我只为我的所有容器创建了一个任务定义,而在我的集群中,我只有一项服务。我在 API 上也有一个负载平衡器(所以我可以通过 DNS 名称从网站访问它)。

它工作正常,但我希望能够启动更多的工作人员,而不启动其他一切,而且我现在似乎无法做到这一点(如果我错了,请纠正我)。所以我有几个问题:

  • 我需要创建单独的任务定义吗?
  • 我需要创建单独的服务吗?
  • 如果我为每个容器创建一个任务定义(因此前面website后面apibrokerrabbitmqworkerworker),我是否仍然能够将容器链接在一起,即使它们不在同一个任务定义中?

这是我当前的任务定义:

{
  "taskDefinitionArn": "arn:aws:ecs:ap-southeast-2:347930943102:task-definition/Flipendo:4",
  "revision": 4,
  "containerDefinitions": [
    {
      "volumesFrom": [],
      "portMappings": [],
      "command": [],
      "environment": [
      ],
      "essential": true,
      "entryPoint": [],
      "links": [
        "rabbitmq"
      ],
      "mountPoints": [],
      "memory": 2048,
      "name": "worker",
      "cpu": …
Run Code Online (Sandbox Code Playgroud)

amazon-ec2 amazon-web-services docker amazon-ecs

5
推荐指数
1
解决办法
1006
查看次数