gpt4 book ai didi

amazon-web-services - 谁停止和启动 ECS 任务?并通知 ECS 服务

转载 作者:行者123 更新时间:2023-12-03 07:35:44 25 4
gpt4 key购买 nike

以下是应用程序的 ECS 任务定义:

  SomeappTaskDefinition:
Type: "AWS::ECS::TaskDefinition"
Properties:
ContainerDefinitions:

- Name: someapp
Image: someaccounthub/someapp
Memory: 450
Environment:
- Name: DJANGO_SETTINGS_MODULE
Value: someapp.settings.release
- Name: MYSQL_HOST
Value: { "Fn::GetAtt": ["DbInstance", "Endpoint.Address"] }
- Name: MYSQL_USER
Value: { "Ref": "DbUsername" }
- Name: MYSQL_PASSWORD
Value: { "Ref": "DbPassword" }
MountPoints:
- ContainerPath: /var/www/someapp
SourceVolume: webroot
Command:
- uwsgi
- "--socket /var/www/someapp/someapp.sock"
- "--chmod-socket=666"
- "--module someapp.wsgi"
- "--master"
- "--die-on-term"

- Name: nginx
Image: someaccounthub/someapp-nginx
Memory: 300
PortMappings:
- ContainerPort: "8000"
HostPort: "8000"
MountPoints:
- ContainerPath: /var/www/someapp
SourceVolume: webroot

Volumes:
- Name: webroot
Host:
SourcePath: /ecs/webroot

在 ECS 优化的 ami 实例 (EC2) 上启动。 Docker 守护进程运行在 ECS 优化的 ami 实例(EC2)中。

不包含创建 ECS 服务 (AWS::ECS::Service) 和 ECS 集群 (AWS::ECS::Cluster) 的 CloudFormation 代码,因为它此查询不需要。


ECS 服务 - AWS::ECS::Service 资源类型

ECS 实例 - AWS::EC2::Instance 资源类型

1)ECS 服务是否负责将新任务定义部署到 ECS 实例上?通过与 ECS 实例中运行的 ECS 代理对话。

2)在ECS实例中运行的ECS代理是否负责停止和启动现有正在运行的ECS任务(SomeappTaskDefinition)?并告知服务已启动ECS服务..

3)在ECS实例中运行的ECS代理是否负责向在ECS实例中运行的docker守护进程发出请求,以从docker存储库中提取docker镜像someaccthub/someapp? ECS 任务启动期间

最佳答案

1) 是的,您的任务定义配置了适当的 ECR 存储库版本。集群下的服务负责确保正确的任务在您的 EC2 实例中启动并运行。

enter image description here

2) 是的,根据您的集群的定义,amazon/amazon-ecs-agent(也是 EC2 上的 docker 容器)将确保 EC2 上运行健康的任务(即 docker 容器)。

3) 不完全是,代理只会确保保留 ECR 中配置的服务的相关任务定义的 docker 容器。并且不选择任何其他存储库。仅当您更新集群服务时它才会更新。

ecs代理负责拉取和运行。但是,假设您的任务定义版本是 1。并且,任务定义的版本 1 配置有 docker 镜像(假设版本 1)。您的 ECS 集群配置有任务定义 v1 的服务。在这种情况下,代理将仅确保任务定义 v1 的拉取和运行。如果您希望代理管理不同的 docker 镜像。您必须相应地更新您的定义和服务。

关于amazon-web-services - 谁停止和启动 ECS 任务?并通知 ECS 服务,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/59516017/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com