AwsEcsService - Amazon Security Hub
Amazon Web Services 文档中描述的 Amazon Web Services 服务或功能可能因区域而异。要查看适用于中国区域的差异,请参阅中国的 Amazon Web Services 服务入门

本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。

AwsEcsService

这些区域有:AwsEcsService对象提供有关 Amazon ECS 群集内服务的详细信息。

示例

"AwsEcsService": { "CapacityProviderStrategy": [ { "Base": 12, "CapacityProvider": "", "Weight": "" } ], "Cluster": "arn:aws:ecs:us-east-1:111122223333:cluster/example-ecs-cluster", "DeploymentConfiguration": { "DeploymentCircuitBreaker": { "Enable": false, "Rollback": false }, "MaximumPercent": 200, "MinimumHealthyPercent": 100 }, "DeploymentController": "", "DesiredCount": 1, "EnableEcsManagedTags": false, "EnableExecuteCommand": false, "HealthCheckGracePeriodSeconds": 1, "LaunchType": "FARGATE", "LoadBalancers": [ { "ContainerName": "", "ContainerPort": 23, "LoadBalancerName": "", "TargetGroupArn": "" } ], "Name": "sample-app-service", "NetworkConfiguration": { "AwsVpcConfiguration": { "Subnets": [ "Subnet-example1", "Subnet-example2" ], "SecurityGroups": [ "Sg-0ce48e9a6e5b457f5" ], "AssignPublicIp": "ENABLED" } }, "PlacementConstraints": [ { "Expression": "", "Type": "" } ], "PlacementStrategies": [ { "Field": "", "Type": "" } ], "PlatformVersion": "LATEST", "PropagateTags": "", "Role": "arn:aws:iam::111122223333:role/aws-servicerole/ecs.amazonaws.com/ServiceRoleForECS", "SchedulingStrategy": "REPLICA", "ServiceName": "sample-app-service", "ServiceArn": "arn:aws:ecs:us-east-1:111122223333:service/example-ecs-cluster/sample-app-service", "ServiceRegistries": [ { "ContainerName": "", "ContainerPort": 1212, "Port": 1221, "RegistryArn": "" } ], "TaskDefinition": "arn:aws:ecs:us-east-1:111122223333:task-definition/example-taskdef:1" }

AwsEcsService 属性

AwsEcsService 可能具有以下属性。

CapacityProviderStrategy

可选

服务使用的容量提供程序策略。

类型:对象数组

Cluster

可选

托管服务的集群的 ARN。

类型:字符串

DeploymentConfiguration

可选

该服务的部署参数。包括运行的任务数以及启动和停止任务的顺序。

类型:对象

DeploymentController

可选

包含服务使用的部署控制器类型。

类型:对象

DesiredCount

可选

要在该服务上运行的任务定义的实例化数量。

类型:整数

EnableEcsManagedTags

可选

是否要为该服务中的任务启用 Amazon ECS 托管标签。

类型:Boolean

EnableExecuteCommand

可选

是否为服务启用了执行命令功能。

类型:Boolean

HealthCheckGracePeriodSeconds

可选

任务启动后,Amazon ECS 服务计划程序将忽略未正常运行的 Elastic Load Balancing 目标运行状况检查的时间(以秒为单位)。

类型:整数

LaunchType

可选

该服务使用的启动类型。

类型:字符串

有效值EC2 | FARGATE | EXTERNAL

LoadBalancers

可选

有关服务使用的负载均衡器的信息。

类型:对象数组

Name

可选

服务的名称。

类型:字符串

NetworkConfiguration

可选

对于使用awsvpc网络模式、VPC 子网和安全组配置。

类型:对象

PlacementConstraints

可选

服务中任务的置放约束。

类型:对象数组

PlacementStrategies

可选

有关如何放置服务任务的信息。

类型:对象数组

PlatformVersion

可选

要运行服务的平台版本。仅针对托管在上的任务指定Amazon Fargate. 如果未指定平台版本,则LATEST默认情况下使用平台版本。

类型:字符串

PropagateTags

可选

指示是否要将标签从任务定义传播到任务还是从服务传播到任务。如果未提供任何值,则不会传播标签。

类型:字符串

有效值TASK_DEFINITION | SERVICE

Role

可选

与该服务关联的 IAM 角色的 ARN。该角色允许 Amazon ECS 容器代理向 Elastic Load Balancing 负载均衡器注册容器实例。

类型:字符串

SchedulingStrategy

可选

要用于服务的计划策略。

这些区域有:REPLICA计划策略在集群中放置和维护所需数量的任务。默认情况下,服务计划程序可在多个可用区之间分布任务,任务放置策略和约束用于自定义任务放置决策。

这些区域有:DAEMON计划策略只在每个活动容器实例上部署一个任务,以满足集群中指定的所有任务放置约束。服务计划程序还评估运行任务的任务放置约束,并停止不满足放置约束的任务。

类型:字符串

有效值REPLICA | DAEMON

ServiceArn

可选

服务的 ARN。

类型:字符串

Format: arn:aws:ecs:<region>:<account>:service/<service name>

ServiceName

可选

服务的名称。

类型:字符串

最大长度:255

允许使用字符:A-Z、a-z、0-9、下划线和连字符

ServiceRegistries

可选

有关要分配给该服务的服务发现注册表的信息。

类型:对象数组

TaskDefinition

可选

用于服务中的任务的任务定义。

类型:字符串

CapacityProviderStrategy

这些区域有:CapacityProviderStrategy对象提供有关服务使用的容量提供程序策略的信息。

每一策略项可能具有以下属性。

Base

可选

在容量提供程序上运行的最低任务数。只有一个策略项目可以为Base.

类型:Number

最小值 0

最大值 100000

CapacityProvider

可选

容量提供程序的简称。

类型:字符串

Weight

可选

应使用容量提供程序的任务总数的相对百分比。

如果未指定权重,则默认值为 0。至少有一个容量提供商的权重必须大于 0。

类型:整数

最小值 0

最大值 1000

DeploymentConfiguration

这些区域有:DeploymentConfiguration对象提供商提供可选的部署参数

DeploymentConfiguration 可能具有以下属性。

DeploymentCircuitBreaker

可选

确定服务无法达到稳定状态时服务部署是否失败。

类型:对象

MaximumPercent

可选

对于使用滚动更新的服务 (ECS) 部署类型,服务中允许的最大任务数RUNNING要么PENDING对于使用 EC2 启动类型的任务,当任何容器实例都在DRAINING状态。按所需任务数量的百分比提供。默认值为 200%。

对于使用蓝/绿的服务 (CODE_DEPLOY) 或者EXTERNAL部署类型和使用 EC2 启动类型的任务,服务中保留在RUNNING状态,当容器实例处于DRAINING状态。

对于 Fargate 启动类型,不使用最大百分比值。

类型:整数

MinimumHealthyPercent

可选

对于使用滚动更新的服务 (ECS) 部署类型,服务中必须保留在RUNNING在部署期间以及任何容器实例都在DRAINING状态服务是否包含使用 EC2 启动类型的任务。以所需任务数量的百分比表示。默认值为 100%。

对于使用蓝/绿的服务 (CODE_DEPLOY) 或者EXTERNAL部署类型和使用 EC2 启动类型的任务,这是服务中保留的任务的最小数量。RUNNING状态,当容器实例处于DRAINING状态。

类型:整数

DeploymentCircuitBreaker

这些区域有:DeploymentCircuitBreaker对象确定如果服务无法达到稳定状态,服务部署是否失败。

DeploymentCircuitBreaker 可能具有以下属性。

Enable

可选

是否为服务启用部署断路器逻辑。

类型:Boolean

Rollback

可选

如果服务部署失败,是否回滚服务。如果启用了回滚,当服务部署失败时,服务将回滚到成功完成的最后一个部署。

类型:Boolean

DeploymentController

这些区域有:DeploymentController对象包含有关服务使用的部署控制器类型的信息。

DeploymentController 可能具有以下属性。

Type

可选

部署控制器的类型。

滚动更新 (ECS) 部署类型将当前运行版本的容器替换为最新版本。

蓝/绿(CODE_DEPLOY() 部署类型使用由提供支持的蓝/绿部署模型。Amazon CodeDeploy. 此部署模型可以先验证服务的新部署,然后再向其发送生产流量。

外部(EXTERNAL) 部署类型允许使用任何第三方部署控制器,以完全控制 Amazon ECS 服务的部署过程。

类型:字符串

有效值ECS | CODE_DEPLOY | EXTERNAL

LoadBalancers

这些区域有:LoadBalancers对象包含有关服务使用的负载均衡器的信息。

每个负载均衡器可能具有以下属性。

ContainerName

可选

要与负载均衡器关联的容器的名称。

类型:字符串

ContainerPort

可选

要与负载均衡器关联的容器上的端口。此端口必须对应于服务中的任务正在使用的任务定义中的 containerPort。对于使用 EC2 启动类型的任务,启动它们的容器实例必须允许端口映射的 hostPort 上的入口流量。

类型:整数

LoadBalancerName

可选

要与 Amazon ECS 服务或任务集关联的负载均衡器的名称。

仅在使用 Classic Load Balancer 时指定。对于应用程序负载均衡器或 Network Load Balancer,将省略负载均衡器名称。

类型:字符串

TargetGroupArn

可选

与服务或任务集关联的 Elastic Load Balancing 目标组的 ARN。

仅在使用应用 Application Load Balancer 或 Network Load Balancer 时指定。对于 Classic Load Balancer,省略目标组 ARN。

类型:字符串

NetworkConfiguration

对于使用awsvpc网络模式,NetworkConfiguration对象包含 VPC 子网和安全组配置。

NetworkConfiguration包含AwsVpcConfiguration对象。

AwsVpcConfiguration 可能具有以下属性。

AssignPublicIp

可选

任务的弹性网络接口是否接收公有 IP 地址。默认值为 DISABLED

类型:字符串

有效值ENABLED | DISABLED

SecurityGroups

可选

与任务或服务相关联的安全组的标识符。

类型:字符串数组

值的最大数量:5

Subnets

可选

与任务或服务相关联的子网的标识符。

类型:字符串数组

值的最大数量:16

PlacementConstraints

这些区域有:PlacementConstraints对象包含服务中任务的置放约束。

每个放置约束可能具有以下属性。

Expression

可选

应用于约束的集群查询语言表达式。如果约束类型为 distinctInstance,您不能指定表达式。

类型:字符串

Type

可选

约束类型。使用distinctInstance以便在不同的容器实例上运行特定组中的每个任务。使用 memberOf 将选择限制为一组有效的候选。

类型:字符串

有效值distinctInstance | memberOf

PlacementStrategies

这些区域有:PlacementStrategies对象包含确定如何放置服务任务的放置策略。

每个放置策略可能具有以下属性。

Field

可选

应用放置策略的字段。

对于 spread 放置策略,有效值为 instanceId (或具有相同效果的 host) 或应用于容器实例的任何平台或自定义属性,如 attribute:ecs.availability-zone

对于 binpack 放置策略,有效值为 cpumemory

对于random放置策略,未使用此属性。

类型:字符串

Type

可选

放置策略的类型。

random 放置策略将任务随机放置在可用的候选上。

这些区域有:spread放置策略基于的价值将任务均匀地放置在可用候选上。Field.

这些区域有:binpack策略将任务放置在可用资源数量最少(中指定)的可用候选上。Field.

类型:字符串

有效值random | spread | binpack

ServiceRegistries

这些区域有:ServiceRegistries对象提供有关要分配给服务的服务发现注册表的信息。

每个服务发现注册表可能具有以下属性。

ContainerName

可选

用于服务发现服务的容器名称值。

如果任务定义使用bridge要么host网络模式,必须指定ContainerNameContainerPort.

如果任务定义使用awsvpc网络模式和类型 SRV DNS 记录,您必须指定ContainerNameContainerPort,或者Port,但不能同时指定两者。

类型:字符串

ContainerPort

可选

用于服务发现服务的端口值。

如果任务定义使用bridge要么host网络模式,必须指定ContainerNameContainerPort.

如果任务定义使用awsvpc网络模式和类型 SRV DNS 记录,您必须指定ContainerNameContainerPort,或者Port,但不能同时指定两者。

类型:整数

Port

可选

用于指定 SRV 记录的服务发现服务的端口值。如果两者都可以使用此字段awsvpc使用网络模式和 SRV 记录。

类型:整数

RegistryArn

可选

服务注册表的 ARN 。当前支持的服务注册表是 Amazon Cloud Map。

类型:字符串