Questa documentazione è valida AWS CLI solo per la versione 1. Per la documentazione relativa alla versione 2 di AWS CLI, consulta la Guida per l'utente della versione 2.
Le traduzioni sono generate tramite traduzione automatica. In caso di conflitto tra il contenuto di una traduzione e la versione originale in Inglese, quest'ultima prevarrà.
ECSEsempi di utilizzo di Amazon AWS CLI
I seguenti esempi di codice mostrano come eseguire azioni e implementare scenari comuni utilizzando il AWS Command Line Interface con AmazonECS.
Le operazioni sono estratti di codice da programmi più grandi e devono essere eseguite nel contesto. Sebbene le azioni mostrino come richiamare le singole funzioni di servizio, puoi vedere le azioni nel loro contesto negli scenari correlati.
Ogni esempio include un collegamento al codice sorgente completo, in cui è possibile trovare istruzioni su come configurare ed eseguire il codice nel contesto.
Argomenti
Azioni
Il seguente esempio di codice mostra come utilizzarecreate-capacity-provider
.
- AWS CLI
-
Per creare un provider di capacità
L' create-capacity-provideresempio seguente crea un provider di capacità che utilizza un gruppo Auto Scaling denominato MyASG, ha la scalabilità gestita e la protezione gestita dalla terminazione abilitata. Questa configurazione viene utilizzata per la scalabilità automatica dei ECS cluster Amazon.
aws ecs create-capacity-provider \ --name
"MyCapacityProvider"
\ --auto-scaling-group-provider"autoScalingGroupArn=arn:aws:autoscaling:us-east-1:123456789012:autoScalingGroup:57ffcb94-11f0-4d6d-bf60-3bac5EXAMPLE:autoScalingGroupName/MyASG,managedScaling={status=ENABLED,targetCapacity=100},managedTerminationProtection=ENABLED"
Output:
{ "capacityProvider": { "capacityProviderArn": "arn:aws:ecs:us-east-1:123456789012:capacity-provider/MyCapacityProvider", "name": "MyCapacityProvider", "status": "ACTIVE", "autoScalingGroupProvider": { "autoScalingGroupArn": "arn:aws:autoscaling:us-east-1:132456789012:autoScalingGroup:57ffcb94-11f0-4d6d-bf60-3bac5EXAMPLE:autoScalingGroupName/MyASG", "managedScaling": { "status": "ENABLED", "targetCapacity": 100, "minimumScalingStepSize": 1, "maximumScalingStepSize": 10000, "instanceWarmupPeriod": 300 }, "managedTerminationProtection": "ENABLED" }, "tags": [] }
Per ulteriori informazioni, consulta Amazon ECS cluster auto scaling nella Amazon ECS Developer Guide.
-
Per API i dettagli, consulta CreateCapacityProvider AWS CLI
Command Reference.
-
Il seguente esempio di codice mostra come utilizzarecreate-cluster
.
- AWS CLI
-
Esempio 1: per creare un nuovo cluster
L'
create-cluster
esempio seguente crea un cluster.aws ecs create-cluster \ --cluster-name
MyCluster
Output:
{ "cluster": { "clusterArn": "arn:aws:ecs:us-west-2:123456789012:cluster/MyCluster", "clusterName": "MyCluster", "status": "ACTIVE", "registeredContainerInstancesCount": 0, "pendingTasksCount": 0, "runningTasksCount": 0, "activeServicesCount": 0, "statistics": [], "tags": [] } }
Per ulteriori informazioni, consulta Creating a Cluster nella Amazon ECS Developer Guide.
Esempio 2: creare un nuovo cluster utilizzando fornitori di capacità
L'
create-cluster
esempio seguente crea un cluster e vi associa due fornitori di capacità esistenti. Ilcreate-capacity-provider
comando viene utilizzato per creare un provider di capacità. La specificazione di una strategia predefinita per un provider di capacità è facoltativa, ma consigliata. In questo esempio, creiamo un cluster denominatoMyCluster
e ad esso associamo iMyCapacityProvider1
fornitori diMyCapacityProvider2
capacità. Viene specificata una strategia predefinita per i fornitori di capacità che distribuisce le attività in modo uniforme tra entrambi i fornitori di capacità.aws ecs create-cluster --cluster-name MyCluster --capacity-providers MyCapacityProvider 1 2 -- = 1, peso=1 = 2, peso=1 MyCapacityProvider default-capacity-provider-strategy capacityProvider MyCapacityProvider capacityProvider MyCapacityProvider
Output:
{ "cluster": { "clusterArn": "arn:aws:ecs:us-west-2:123456789012:cluster/MyCluster", "clusterName": "MyCluster", "status": "PROVISIONING", "registeredContainerInstancesCount": 0, "pendingTasksCount": 0, "runningTasksCount": 0, "activeServicesCount": 0, "statistics": [], "settings": [ { "name": "containerInsights", "value": "enabled" } ], "capacityProviders": [ "MyCapacityProvider1", "MyCapacityProvider2" ], "defaultCapacityProviderStrategy": [ { "capacityProvider": "MyCapacityProvider1", "weight": 1, "base": 0 }, { "capacityProvider": "MyCapacityProvider2", "weight": 1, "base": 0 } ], "attachments": [ { "id": "0fb0c8f4-6edd-4de1-9b09-17e470ee1918", "type": "asp", "status": "PRECREATED", "details": [ { "name": "capacityProviderName", "value": "MyCapacityProvider1" }, { "name": "scalingPlanName", "value": "ECSManagedAutoScalingPlan-a1b2c3d4-5678-90ab-cdef-EXAMPLE11111" } ] }, { "id": "ae592060-2382-4663-9476-b015c685593c", "type": "asp", "status": "PRECREATED", "details": [ { "name": "capacityProviderName", "value": "MyCapacityProvider2" }, { "name": "scalingPlanName", "value": "ECSManagedAutoScalingPlan-a1b2c3d4-5678-90ab-cdef-EXAMPLE22222" } ] } ], "attachmentsStatus": "UPDATE_IN_PROGRESS" } }
Per ulteriori informazioni, consulta Cluster Capacity Provider nella Amazon ECS Developer Guide.
Esempio 3: per creare un nuovo cluster con più tag
L'
create-cluster
esempio seguente crea un cluster con più tag. Per ulteriori informazioni sull'aggiunta di tag utilizzando la sintassi abbreviata, vedete Using Synthand Syntax with the AWS Command Line Interface nella Guida per l'utente.AWS CLIaws ecs create-cluster \ --cluster-name
MyCluster
\ --tagskey=key1,value=value1
key=key2,value=value2
key=key3,value=value3
Output:
{ "cluster": { "clusterArn": "arn:aws:ecs:us-west-2:123456789012:cluster/MyCluster", "clusterName": "MyCluster", "status": "ACTIVE", "registeredContainerInstancesCount": 0, "pendingTasksCount": 0, "runningTasksCount": 0, "activeServicesCount": 0, "statistics": [], "tags": [ { "key": "key1", "value": "value1" }, { "key": "key2", "value": "value2" }, { "key": "key3", "value": "value3" } ] } }
Per ulteriori informazioni, consulta Creating a Cluster nella Amazon ECS Developer Guide.
-
Per API i dettagli, consulta CreateCluster AWS CLI
Command Reference.
-
Il seguente esempio di codice mostra come utilizzarecreate-service
.
- AWS CLI
-
Esempio 1: creare un servizio con un'attività Fargate
L'
create-service
esempio seguente mostra come creare un servizio utilizzando un'attività Fargate.aws ecs create-service \ --cluster
MyCluster
\ --service-nameMyService
\ --task-definitionsample-fargate:1
\ --desired-count2
\ --launch-typeFARGATE
\ --platform-versionLATEST
\ --network-configuration"awsvpcConfiguration={subnets=[subnet-12344321],securityGroups=[sg-12344321],assignPublicIp=ENABLED}"
\ --tagskey=key1,value=value1
key=key2,value=value2
key=key3,value=value3
Output:
{ "service": { "serviceArn": "arn:aws:ecs:us-west-2:123456789012:service/MyCluster/MyService", "serviceName": "MyService", "clusterArn": "arn:aws:ecs:us-west-2:123456789012:cluster/MyCluster", "loadBalancers": [], "serviceRegistries": [], "status": "ACTIVE", "desiredCount": 2, "runningCount": 0, "pendingCount": 0, "launchType": "FARGATE", "platformVersion": "LATEST", "taskDefinition": "arn:aws:ecs:us-west-2:123456789012:task-definition/sample-fargate:1", "deploymentConfiguration": { "maximumPercent": 200, "minimumHealthyPercent": 100 }, "deployments": [ { "id": "ecs-svc/1234567890123456789", "status": "PRIMARY", "taskDefinition": "arn:aws:ecs:us-west-2:123456789012:task-definition/sample-fargate:1", "desiredCount": 2, "pendingCount": 0, "runningCount": 0, "createdAt": 1557119253.821, "updatedAt": 1557119253.821, "launchType": "FARGATE", "platformVersion": "1.3.0", "networkConfiguration": { "awsvpcConfiguration": { "subnets": [ "subnet-12344321" ], "securityGroups": [ "sg-12344321" ], "assignPublicIp": "ENABLED" } } } ], "roleArn": "arn:aws:iam::123456789012:role/aws-service-role/ecs.amazonaws.com/AWSServiceRoleForECS", "events": [], "createdAt": 1557119253.821, "placementConstraints": [], "placementStrategy": [], "networkConfiguration": { "awsvpcConfiguration": { "subnets": [ "subnet-12344321" ], "securityGroups": [ "sg-12344321" ], "assignPublicIp": "ENABLED" } }, "schedulingStrategy": "REPLICA", "tags": [ { "key": "key1", "value": "value1" }, { "key": "key2", "value": "value2" }, { "key": "key3", "value": "value3" } ], "enableECSManagedTags": false, "propagateTags": "NONE" } }
Esempio 2: creare un servizio utilizzando il tipo di EC2 avvio
L'
create-service
esempio seguente mostra come creare un servizio chiamatoecs-simple-service
con un'attività che utilizza il tipo di EC2 avvio. Il servizio utilizza la definizione dell'sleep360
attività e mantiene 1 istanza dell'attività.aws ecs create-service \ --cluster
MyCluster
\ --service-nameecs-simple-service
\ --task-definitionsleep360:2
\ --desired-count1
Output:
{ "service": { "serviceArn": "arn:aws:ecs:us-west-2:123456789012:service/MyCluster/ecs-simple-service", "serviceName": "ecs-simple-service", "clusterArn": "arn:aws:ecs:us-west-2:123456789012:cluster/MyCluster", "loadBalancers": [], "serviceRegistries": [], "status": "ACTIVE", "desiredCount": 1, "runningCount": 0, "pendingCount": 0, "launchType": "EC2", "taskDefinition": "arn:aws:ecs:us-west-2:123456789012:task-definition/sleep360:2", "deploymentConfiguration": { "maximumPercent": 200, "minimumHealthyPercent": 100 }, "deployments": [ { "id": "ecs-svc/1234567890123456789", "status": "PRIMARY", "taskDefinition": "arn:aws:ecs:us-west-2:123456789012:task-definition/sleep360:2", "desiredCount": 1, "pendingCount": 0, "runningCount": 0, "createdAt": 1557206498.798, "updatedAt": 1557206498.798, "launchType": "EC2" } ], "events": [], "createdAt": 1557206498.798, "placementConstraints": [], "placementStrategy": [], "schedulingStrategy": "REPLICA", "enableECSManagedTags": false, "propagateTags": "NONE" } }
Esempio 3: creare un servizio che utilizza un controller di distribuzione esterno
L'
create-service
esempio seguente crea un servizio che utilizza un controller di distribuzione esterno.aws ecs create-service \ --cluster
MyCluster
\ --service-nameMyService
\ --deployment-controllertype=EXTERNAL
\ --desired-count1
Output:
{ "service": { "serviceArn": "arn:aws:ecs:us-west-2:123456789012:service/MyCluster/MyService", "serviceName": "MyService", "clusterArn": "arn:aws:ecs:us-west-2:123456789012:cluster/MyCluster", "loadBalancers": [], "serviceRegistries": [], "status": "ACTIVE", "desiredCount": 1, "runningCount": 0, "pendingCount": 0, "launchType": "EC2", "deploymentConfiguration": { "maximumPercent": 200, "minimumHealthyPercent": 100 }, "taskSets": [], "deployments": [], "roleArn": "arn:aws:iam::123456789012:role/aws-service-role/ecs.amazonaws.com/AWSServiceRoleForECS", "events": [], "createdAt": 1557128207.101, "placementConstraints": [], "placementStrategy": [], "schedulingStrategy": "REPLICA", "deploymentController": { "type": "EXTERNAL" }, "enableECSManagedTags": false, "propagateTags": "NONE" } }
Esempio 4: creare un nuovo servizio basato su un sistema di bilanciamento del carico
L'
create-service
esempio seguente mostra come creare un servizio basato su un sistema di bilanciamento del carico. È necessario disporre di un sistema di bilanciamento del carico configurato nella stessa regione dell'istanza del contenitore. Questo esempio utilizza l'--cli-input-json
opzione e un file JSON di input chiamatoecs-simple-service-elb.json
con il seguente contenuto:{ "serviceName": "ecs-simple-service-elb", "taskDefinition": "ecs-demo", "loadBalancers": [ { "loadBalancerName": "EC2Contai-EcsElast-123456789012", "containerName": "simple-demo", "containerPort": 80 } ], "desiredCount": 10, "role": "ecsServiceRole" }
Comando:
aws ecs create-service \ --cluster
MyCluster
\ --service-nameecs-simple-service-elb
\ --cli-input-jsonfile://ecs-simple-service-elb.json
Output:
{ "service": { "status": "ACTIVE", "taskDefinition": "arn:aws:ecs:us-west-2:123456789012:task-definition/ecs-demo:1", "pendingCount": 0, "loadBalancers": [ { "containerName": "ecs-demo", "containerPort": 80, "loadBalancerName": "EC2Contai-EcsElast-123456789012" } ], "roleArn": "arn:aws:iam::123456789012:role/ecsServiceRole", "desiredCount": 10, "serviceName": "ecs-simple-service-elb", "clusterArn": "arn:aws:ecs:<us-west-2:123456789012:cluster/MyCluster", "serviceArn": "arn:aws:ecs:us-west-2:123456789012:service/ecs-simple-service-elb", "deployments": [ { "status": "PRIMARY", "pendingCount": 0, "createdAt": 1428100239.123, "desiredCount": 10, "taskDefinition": "arn:aws:ecs:us-west-2:123456789012:task-definition/ecs-demo:1", "updatedAt": 1428100239.123, "id": "ecs-svc/1234567890123456789", "runningCount": 0 } ], "events": [], "runningCount": 0 } }
Per ulteriori informazioni, consulta Creating a Service nell'Amazon ECS Developer Guide.
-
Per API i dettagli, consulta CreateService AWS CLI
Command Reference.
-
Il seguente esempio di codice mostra come utilizzarecreate-task-set
.
- AWS CLI
-
Per creare un set di attività
L'
create-task-set
esempio seguente crea un set di attività in un servizio che utilizza un controller di distribuzione esterno.aws ecs create-task-set \ --cluster
MyCluster
\ --serviceMyService
\ --task-definitionMyTaskDefinition:2
\ --network-configuration"awsvpcConfiguration={subnets=[subnet-12344321],securityGroups=[sg-12344321]}"
Output:
{ "taskSet": { "id": "ecs-svc/1234567890123456789", "taskSetArn": "arn:aws:ecs:us-west-2:123456789012:task-set/MyCluster/MyService/ecs-svc/1234567890123456789", "status": "ACTIVE", "taskDefinition": "arn:aws:ecs:us-west-2:123456789012:task-definition/MyTaskDefinition:2", "computedDesiredCount": 0, "pendingCount": 0, "runningCount": 0, "createdAt": 1557128360.711, "updatedAt": 1557128360.711, "launchType": "EC2", "networkConfiguration": { "awsvpcConfiguration": { "subnets": [ "subnet-12344321" ], "securityGroups": [ "sg-12344321" ], "assignPublicIp": "DISABLED" } }, "loadBalancers": [], "serviceRegistries": [], "scale": { "value": 0.0, "unit": "PERCENT" }, "stabilityStatus": "STABILIZING", "stabilityStatusAt": 1557128360.711 } }
-
Per API i dettagli, vedere CreateTaskSet
in AWS CLI Command Reference.
-
Il seguente esempio di codice mostra come utilizzaredelete-account-setting
.
- AWS CLI
-
Per eliminare le impostazioni dell'account per un IAM utente o un IAM ruolo specifico
L'esempio seguente
delete-account-setting
elimina le impostazioni dell'account per l'IAMutente o il IAM ruolo specifico.aws ecs delete-account-setting \ --name
serviceLongArnFormat
\ --principal-arnarn:aws:iam::123456789012:user/MyUser
Output:
{ "setting": { "name": "serviceLongArnFormat", "value": "enabled", "principalArn": "arn:aws:iam::123456789012:user/MyUser" } }
Per ulteriori informazioni, consulta Amazon Resource Names (ARNs) e IDs l'Amazon ECS Developer Guide.
-
Per API i dettagli, consulta DeleteAccountSetting AWS CLI
Command Reference.
-
Il seguente esempio di codice mostra come utilizzaredelete-attributes
.
- AWS CLI
-
Per eliminare uno o più attributi personalizzati da una ECS risorsa Amazon
Quanto segue
delete-attributes
elimina un attributo con lo stesso nomestack
da un'istanza del contenitore.aws ecs delete-attributes \ --attributes
name=stack,targetId=arn:aws:ecs:us-west-2:130757420319:container-instance/1c3be8ed-df30-47b4-8f1e-6e68ebd01f34
Output:
{ "attributes": [ { "name": "stack", "targetId": "arn:aws:ecs:us-west-2:130757420319:container-instance/1c3be8ed-df30-47b4-8f1e-6e68ebd01f34", "value": "production" } ] }
-
Per API i dettagli, vedere DeleteAttributes
in AWS CLI Command Reference.
-
Il seguente esempio di codice mostra come utilizzaredelete-capacity-provider
.
- AWS CLI
-
Esempio 1: eliminare un provider di capacità utilizzando Amazon Resource Name (ARN)
L'
delete-capacity-provider
esempio seguente elimina un provider di capacità specificando l'Amazon Resource Name (ARN) del fornitore di capacità. Lo stato e ARN lo stato dell'eliminazione del provider di capacità possono essere recuperati utilizzando il comando.describe-capacity-providers
aws ecs delete-capacity-provider \ --capacity-provider
arn:aws:ecs:us-west-2:123456789012:capacity-provider/ExampleCapacityProvider
Output:
{ "capacityProvider": { "capacityProviderArn": "arn:aws:ecs:us-west-2:123456789012:capacity-provider/ExampleCapacityProvider", "name": "ExampleCapacityProvider", "status": "ACTIVE", "autoScalingGroupProvider": { "autoScalingGroupArn": "arn:aws:autoscaling:us-west-2:123456789012:autoScalingGroup:a1b2c3d4-5678-90ab-cdef-EXAMPLE11111:autoScalingGroupName/MyAutoScalingGroup", "managedScaling": { "status": "ENABLED", "targetCapacity": 100, "minimumScalingStepSize": 1, "maximumScalingStepSize": 10000 }, "managedTerminationProtection": "DISABLED" }, "updateStatus": "DELETE_IN_PROGRESS", "tags": [] } }
Per ulteriori informazioni, consulta Cluster Capacity Provider nella Amazon ECS Developer Guide.
Esempio 2: eliminare un provider di capacità utilizzando il nome
L'
delete-capacity-provider
esempio seguente elimina un fornitore di capacità specificando il nome breve del fornitore di capacità. Il nome breve e lo stato dell'eliminazione del provider di capacità possono essere recuperati utilizzando il comando.describe-capacity-providers
aws ecs delete-capacity-provider \ --capacity-provider
ExampleCapacityProvider
Output:
{ "capacityProvider": { "capacityProviderArn": "arn:aws:ecs:us-west-2:123456789012:capacity-provider/ExampleCapacityProvider", "name": "ExampleCapacityProvider", "status": "ACTIVE", "autoScalingGroupProvider": { "autoScalingGroupArn": "arn:aws:autoscaling:us-west-2:123456789012:autoScalingGroup:a1b2c3d4-5678-90ab-cdef-EXAMPLE11111:autoScalingGroupName/MyAutoScalingGroup", "managedScaling": { "status": "ENABLED", "targetCapacity": 100, "minimumScalingStepSize": 1, "maximumScalingStepSize": 10000 }, "managedTerminationProtection": "DISABLED" }, "updateStatus": "DELETE_IN_PROGRESS", "tags": [] } }
Per ulteriori informazioni, consulta Cluster Capacity Provider nella Amazon ECS Developer Guide.
-
Per API i dettagli, consulta DeleteCapacityProvider AWS CLI
Command Reference.
-
Il seguente esempio di codice mostra come utilizzaredelete-cluster
.
- AWS CLI
-
Per eliminare un cluster vuoto
L'
delete-cluster
esempio seguente elimina il cluster vuoto specificato.aws ecs delete-cluster --cluster
MyCluster
Output:
{ "cluster": { "clusterArn": "arn:aws:ecs:us-west-2:123456789012:cluster/MyCluster", "status": "INACTIVE", "clusterName": "MyCluster", "registeredContainerInstancesCount": 0, "pendingTasksCount": 0, "runningTasksCount": 0, "activeServicesCount": 0 "statistics": [], "tags": [] } }
Per ulteriori informazioni, consulta la sezione Eliminazione di un cluster nella Amazon ECS Developer Guide.
-
Per API i dettagli, consulta DeleteCluster AWS CLI
Command Reference.
-
Il seguente esempio di codice mostra come utilizzaredelete-service
.
- AWS CLI
-
Per eliminare un servizio
L'
ecs delete-service
esempio seguente elimina il servizio specificato da un cluster. È possibile includere il--force
parametro per eliminare un servizio anche se non è stato ridimensionato a zero attività.aws ecs delete-service --cluster
MyCluster
--serviceMyService1
--forcePer ulteriori informazioni, consulta Eliminazione di un servizio nella Amazon ECS Developer Guide.
-
Per API i dettagli, consulta DeleteService AWS CLI
Command Reference.
-
Il seguente esempio di codice mostra come utilizzaredelete-task-definitions
.
- AWS CLI
-
Per eliminare una definizione di attività
L'
delete-task-definitions
esempio seguente elimina una definizione di INACTIVE attività.aws ecs delete-task-definitions \ --task-definition
curltest:1
Output:
{ "taskDefinitions": [ { "taskDefinitionArn": "arn:aws:ecs:us-east-1:123456789012:task-definition/curltest:1", "containerDefinitions": [ { "name": "ctest", "image": "mreferre/eksutils", "cpu": 0, "portMappings": [], "essential": true, "entryPoint": [ "sh", "-c" ], "command": [ "curl ${ECS_CONTAINER_METADATA_URI_V4}/task" ], "environment": [], "mountPoints": [], "volumesFrom": [], "logConfiguration": { "logDriver": "awslogs", "options": { "awslogs-create-group": "true", "awslogs-group": "/ecs/curltest", "awslogs-region": "us-east-1", "awslogs-stream-prefix": "ecs" } } } ], "family": "curltest", "taskRoleArn": "arn:aws:iam::123456789012:role/ecsTaskExecutionRole", "executionRoleArn": "arn:aws:iam::123456789012:role/ecsTaskExecutionRole", "networkMode": "awsvpc", "revision": 1, "volumes": [], "status": "DELETE_IN_PROGRESS", "compatibilities": [ "EC2", "FARGATE" ], "requiresCompatibilities": [ "FARGATE" ], "cpu": "256", "memory": "512", "registeredAt": "2021-09-10T12:56:24.704000+00:00", "deregisteredAt": "2023-03-14T15:20:59.419000+00:00", "registeredBy": "arn:aws:sts::123456789012:assumed-role/Admin/jdoe" } ], "failures": [] }
Per ulteriori informazioni, consulta Amazon ECS Task Definitions nella Amazon ECS Developer Guide.
-
Per API i dettagli, consulta DeleteTaskDefinitions AWS CLI
Command Reference.
-
Il seguente esempio di codice mostra come utilizzaredelete-task-set
.
- AWS CLI
-
Per eliminare un set di attività
L'
delete-task-set
esempio seguente mostra come eliminare un set di attività. È possibile includere il--force
parametro per eliminare un set di attività anche se non è stato ridimensionato a zero.aws ecs delete-task-set \ --cluster
MyCluster
\ --serviceMyService
\ --task-setarn:aws:ecs:us-west-2:123456789012:task-set/MyCluster/MyService/ecs-svc/1234567890123456789
\ --forceOutput:
{ "taskSet": { "id": "ecs-svc/1234567890123456789", "taskSetArn": "arn:aws:ecs:us-west-2:123456789012:task-set/MyCluster/MyService/ecs-svc/1234567890123456789", "status": "DRAINING", "taskDefinition": "arn:aws:ecs:us-west-2:123456789012:task-definition/sample-fargate:2", "computedDesiredCount": 0, "pendingCount": 0, "runningCount": 0, "createdAt": 1557130260.276, "updatedAt": 1557130290.707, "launchType": "EC2", "networkConfiguration": { "awsvpcConfiguration": { "subnets": [ "subnet-12345678" ], "securityGroups": [ "sg-12345678" ], "assignPublicIp": "DISABLED" } }, "loadBalancers": [], "serviceRegistries": [], "scale": { "value": 0.0, "unit": "PERCENT" }, "stabilityStatus": "STABILIZING", "stabilityStatusAt": 1557130290.707 } }
-
Per API i dettagli, vedere DeleteTaskSet
in AWS CLI Command Reference.
-
Il seguente esempio di codice mostra come utilizzarederegister-container-instance
.
- AWS CLI
-
Per annullare la registrazione di un'istanza di contenitore da un cluster
L'
deregister-container-instance
esempio seguente annulla la registrazione di un'istanza di contenitore dal cluster specificato. Se ci sono ancora attività in esecuzione nell'istanza del contenitore, è necessario interromperle prima di annullare la registrazione oppure utilizzare l'opzione.--force
aws ecs deregister-container-instance \ --cluster
arn:aws:ecs:us-west-2:123456789012:cluster/MyCluster
\ --container-instancearn:aws:ecs:us-west-2:123456789012:container-instance/a1b2c3d4-5678-90ab-cdef-11111EXAMPLE
\ --forceOutput:
{ "containerInstance": { "remainingResources": [ { "integerValue": 1024, "doubleValue": 0.0, "type": "INTEGER", "longValue": 0, "name": "CPU" }, { "integerValue": 985, "doubleValue": 0.0, "type": "INTEGER", "longValue": 0, "name": "MEMORY" }, { "type": "STRINGSET", "integerValue": 0, "name": "PORTS", "stringSetValue": [ "22", "2376", "2375", "51678", "51679" ], "longValue": 0, "doubleValue": 0.0 }, { "type": "STRINGSET", "integerValue": 0, "name": "PORTS_UDP", "stringSetValue": [], "longValue": 0, "doubleValue": 0.0 } ], "agentConnected": true, "attributes": [ { "name": "ecs.capability.secrets.asm.environment-variables" }, { "name": "com.amazonaws.ecs.capability.logging-driver.syslog" }, { "value": "ami-01a82c3fce2c3ba58", "name": "ecs.ami-id" }, { "name": "ecs.capability.secrets.asm.bootstrap.log-driver" }, { "name": "com.amazonaws.ecs.capability.logging-driver.none" }, { "name": "ecs.capability.ecr-endpoint" }, { "name": "com.amazonaws.ecs.capability.logging-driver.json-file" }, { "value": "vpc-1234567890123467", "name": "ecs.vpc-id" }, { "name": "ecs.capability.execution-role-awslogs" }, { "name": "com.amazonaws.ecs.capability.docker-remote-api.1.17" }, { "name": "com.amazonaws.ecs.capability.docker-remote-api.1.18" }, { "name": "com.amazonaws.ecs.capability.docker-remote-api.1.19" }, { "name": "ecs.capability.docker-plugin.local" }, { "name": "ecs.capability.task-eni" }, { "name": "ecs.capability.task-cpu-mem-limit" }, { "name": "ecs.capability.secrets.ssm.bootstrap.log-driver" }, { "name": "com.amazonaws.ecs.capability.docker-remote-api.1.30" }, { "name": "com.amazonaws.ecs.capability.docker-remote-api.1.31" }, { "name": "com.amazonaws.ecs.capability.docker-remote-api.1.32" }, { "name": "ecs.capability.execution-role-ecr-pull" }, { "name": "ecs.capability.container-health-check" }, { "value": "subnet-1234567890123467", "name": "ecs.subnet-id" }, { "value": "us-west-2a", "name": "ecs.availability-zone" }, { "value": "t2.micro", "name": "ecs.instance-type" }, { "name": "com.amazonaws.ecs.capability.task-iam-role-network-host" }, { "name": "ecs.capability.aws-appmesh" }, { "name": "com.amazonaws.ecs.capability.logging-driver.awslogs" }, { "name": "com.amazonaws.ecs.capability.docker-remote-api.1.24" }, { "name": "com.amazonaws.ecs.capability.docker-remote-api.1.25" }, { "name": "com.amazonaws.ecs.capability.docker-remote-api.1.26" }, { "name": "com.amazonaws.ecs.capability.docker-remote-api.1.27" }, { "name": "com.amazonaws.ecs.capability.privileged-container" }, { "name": "ecs.capability.container-ordering" }, { "name": "com.amazonaws.ecs.capability.docker-remote-api.1.28" }, { "name": "com.amazonaws.ecs.capability.docker-remote-api.1.29" }, { "value": "x86_64", "name": "ecs.cpu-architecture" }, { "value": "93f43776-2018.10.0", "name": "ecs.capability.cni-plugin-version" }, { "name": "ecs.capability.secrets.ssm.environment-variables" }, { "name": "ecs.capability.pid-ipc-namespace-sharing" }, { "name": "com.amazonaws.ecs.capability.ecr-auth" }, { "value": "linux", "name": "ecs.os-type" }, { "name": "com.amazonaws.ecs.capability.docker-remote-api.1.20" }, { "name": "com.amazonaws.ecs.capability.docker-remote-api.1.21" }, { "name": "com.amazonaws.ecs.capability.docker-remote-api.1.22" }, { "name": "ecs.capability.task-eia" }, { "name": "ecs.capability.private-registry-authentication.secretsmanager" }, { "name": "com.amazonaws.ecs.capability.task-iam-role" }, { "name": "com.amazonaws.ecs.capability.docker-remote-api.1.23" } ], "pendingTasksCount": 0, "tags": [], "containerInstanceArn": "arn:aws:ecs:us-west-2:123456789012:container-instance/a1b2c3d4-5678-90ab-cdef-11111EXAMPLE", "registeredResources": [ { "integerValue": 1024, "doubleValue": 0.0, "type": "INTEGER", "longValue": 0, "name": "CPU" }, { "integerValue": 985, "doubleValue": 0.0, "type": "INTEGER", "longValue": 0, "name": "MEMORY" }, { "type": "STRINGSET", "integerValue": 0, "name": "PORTS", "stringSetValue": [ "22", "2376", "2375", "51678", "51679" ], "longValue": 0, "doubleValue": 0.0 }, { "type": "STRINGSET", "integerValue": 0, "name": "PORTS_UDP", "stringSetValue": [], "longValue": 0, "doubleValue": 0.0 } ], "status": "INACTIVE", "registeredAt": 1557768075.681, "version": 4, "versionInfo": { "agentVersion": "1.27.0", "agentHash": "aabe65ee", "dockerVersion": "DockerVersion: 18.06.1-ce" }, "attachments": [], "runningTasksCount": 0, "ec2InstanceId": "i-12345678901234678" } }
Per ulteriori informazioni, consulta Annullare la registrazione di un'istanza del contenitore nella Guida per gli sviluppatori. ECS
-
Per API i dettagli, consulta AWS CLI Command DeregisterContainerInstance
Reference.
-
Il seguente esempio di codice mostra come utilizzarederegister-task-definition
.
- AWS CLI
-
Per annullare la registrazione di una definizione di attività
L'
deregister-task-definition
esempio seguente annulla la registrazione della prima revisione della definizione dell'curler
attività nell'area predefinita.aws ecs deregister-task-definition --task-definition
curler:1
Si noti che nell'output risultante, lo stato della definizione dell'attività mostra:
INACTIVE
{ "taskDefinition": { "status": "INACTIVE", "family": "curler", "volumes": [], "taskDefinitionArn": "arn:aws:ecs:us-west-2:123456789012:task-definition/curler:1", "containerDefinitions": [ { "environment": [], "name": "curler", "mountPoints": [], "image": "curl:latest", "cpu": 100, "portMappings": [], "entryPoint": [], "memory": 256, "command": [ "curl -v http://example.com/" ], "essential": true, "volumesFrom": [] } ], "revision": 1 } }
Per ulteriori informazioni, consulta Amazon ECS Task Definitions nella Amazon ECS Developer Guide.
-
Per API i dettagli, consulta DeregisterTaskDefinition AWS CLI
Command Reference.
-
Il seguente esempio di codice mostra come utilizzaredescribe-capacity-providers
.
- AWS CLI
-
Esempio 1: Per descrivere tutti i fornitori di capacità
L'
describe-capacity-providers
esempio seguente recupera i dettagli su tutti i fornitori di capacità.aws ecs describe-capacity-providers
Output:
{ "capacityProviders": [ { "capacityProviderArn": "arn:aws:ecs:us-west-2:123456789012:capacity-provider/MyCapacityProvider", "name": "MyCapacityProvider", "status": "ACTIVE", "autoScalingGroupProvider": { "autoScalingGroupArn": "arn:aws:autoscaling:us-west-2:123456789012:autoScalingGroup:a1b2c3d4-5678-90ab-cdef-EXAMPLE11111:autoScalingGroupName/MyAutoScalingGroup", "managedScaling": { "status": "ENABLED", "targetCapacity": 100, "minimumScalingStepSize": 1, "maximumScalingStepSize": 1000 }, "managedTerminationProtection": "ENABLED" }, "tags": [] }, { "capacityProviderArn": "arn:aws:ecs:us-west-2:123456789012:capacity-provider/FARGATE", "name": "FARGATE", "status": "ACTIVE", "tags": [] }, { "capacityProviderArn": "arn:aws:ecs:us-west-2:123456789012:capacity-provider/FARGATE_SPOT", "name": "FARGATE_SPOT", "status": "ACTIVE", "tags": [] } ] }
Per ulteriori informazioni, consulta Cluster Capacity Provider nella Amazon ECS Developer Guide.
Esempio 2: per descrivere uno specifico fornitore di capacità
L'
describe-capacity-providers
esempio seguente recupera i dettagli su uno specifico fornitore di capacità. L'utilizzo del--include TAGS
parametro aggiungerà all'output i tag associati al fornitore di capacità.aws ecs describe-capacity-providers \ --capacity-providers
MyCapacityProvider
\ --includeTAGS
Output:
{ "capacityProviders": [ { "capacityProviderArn": "arn:aws:ecs:us-west-2:123456789012:capacity-provider/MyCapacityProvider", "name": "MyCapacityProvider", "status": "ACTIVE", "autoScalingGroupProvider": { "autoScalingGroupArn": "arn:aws:autoscaling:us-west-2:123456789012:autoScalingGroup:a1b2c3d4-5678-90ab-cdef-EXAMPLE11111:autoScalingGroupName/MyAutoScalingGroup", "managedScaling": { "status": "ENABLED", "targetCapacity": 100, "minimumScalingStepSize": 1, "maximumScalingStepSize": 1000 }, "managedTerminationProtection": "ENABLED" }, "tags": [ { "key": "environment", "value": "production" } ] } ] }
Per ulteriori informazioni, consulta Cluster Capacity Provider nella Amazon ECS Developer Guide.
-
Per API i dettagli, consulta DescribeCapacityProviders AWS CLI
Command Reference.
-
Il seguente esempio di codice mostra come utilizzaredescribe-clusters
.
- AWS CLI
-
Esempio 1: Per descrivere un cluster
L'
describe-clusters
esempio seguente recupera i dettagli sul cluster specificato.aws ecs describe-clusters \ --cluster
default
Output:
{ "clusters": [ { "status": "ACTIVE", "clusterName": "default", "registeredContainerInstancesCount": 0, "pendingTasksCount": 0, "runningTasksCount": 0, "activeServicesCount": 1, "clusterArn": "arn:aws:ecs:us-west-2:123456789012:cluster/default" } ], "failures": [] }
Per ulteriori informazioni, consulta Amazon ECS Clusters nell'Amazon ECS Developer Guide.
Esempio 2: descrivere un cluster con l'opzione attachment
L'
describe-clusters
esempio seguente specifica l'ATTACHMENTSopzione. Recupera i dettagli sul cluster specificato e un elenco di risorse collegate al cluster sotto forma di allegati. Quando si utilizza un provider di capacità con un cluster, le risorse, sia che si tratti di AutoScaling piani o politiche di scalabilità, saranno rappresentate come asp o as_policy. ATTACHMENTSaws ecs describe-clusters \ --include
ATTACHMENTS
\ --clusterssampleCluster
Output:
{ "clusters": [ { "clusterArn": "arn:aws:ecs:af-south-1:123456789222:cluster/sampleCluster", "clusterName": "sampleCluster", "status": "ACTIVE", "registeredContainerInstancesCount": 0, "runningTasksCount": 0, "pendingTasksCount": 0, "activeServicesCount": 0, "statistics": [], "tags": [], "settings": [], "capacityProviders": [ "sampleCapacityProvider" ], "defaultCapacityProviderStrategy": [], "attachments": [ { "id": "a1b2c3d4-5678-901b-cdef-EXAMPLE22222", "type": "as_policy", "status": "CREATED", "details": [ { "name": "capacityProviderName", "value": "sampleCapacityProvider" }, { "name": "scalingPolicyName", "value": "ECSManagedAutoScalingPolicy-3048e262-fe39-4eaf-826d-6f975d303188" } ] } ], "attachmentsStatus": "UPDATE_COMPLETE" } ], "failures": [] }
Per ulteriori informazioni, consulta Amazon ECS Clusters nell'Amazon ECS Developer Guide.
-
Per API i dettagli, consulta DescribeClusters AWS CLI
Command Reference.
-
Il seguente esempio di codice mostra come utilizzaredescribe-container-instances
.
- AWS CLI
-
Per descrivere l'istanza del contenitore
L'
describe-container-instances
esempio seguente recupera i dettagli di un'istanza di contenitore nelupdate
cluster, utilizzando l'istanza del contenitore UUID come identificatore.aws ecs describe-container-instances \ --cluster
update
\ --container-instancesa1b2c3d4-5678-90ab-cdef-11111EXAMPLE
Output:
{ "failures": [], "containerInstances": [ { "status": "ACTIVE", "registeredResources": [ { "integerValue": 2048, "longValue": 0, "type": "INTEGER", "name": "CPU", "doubleValue": 0.0 }, { "integerValue": 3955, "longValue": 0, "type": "INTEGER", "name": "MEMORY", "doubleValue": 0.0 }, { "name": "PORTS", "longValue": 0, "doubleValue": 0.0, "stringSetValue": [ "22", "2376", "2375", "51678" ], "type": "STRINGSET", "integerValue": 0 } ], "ec2InstanceId": "i-A1B2C3D4", "agentConnected": true, "containerInstanceArn": "arn:aws:ecs:us-west-2:123456789012:container-instance/a1b2c3d4-5678-90ab-cdef-11111EXAMPLE", "pendingTasksCount": 0, "remainingResources": [ { "integerValue": 2048, "longValue": 0, "type": "INTEGER", "name": "CPU", "doubleValue": 0.0 }, { "integerValue": 3955, "longValue": 0, "type": "INTEGER", "name": "MEMORY", "doubleValue": 0.0 }, { "name": "PORTS", "longValue": 0, "doubleValue": 0.0, "stringSetValue": [ "22", "2376", "2375", "51678" ], "type": "STRINGSET", "integerValue": 0 } ], "runningTasksCount": 0, "versionInfo": { "agentVersion": "1.0.0", "agentHash": "4023248", "dockerVersion": "DockerVersion: 1.5.0" } } ] }
Per ulteriori informazioni, consulta Amazon ECS Container Instances nell'Amazon ECS Developer Guide.
-
Per API i dettagli, consulta DescribeContainerInstances AWS CLI
Command Reference.
-
Il seguente esempio di codice mostra come utilizzaredescribe-services
.
- AWS CLI
-
Per descrivere un servizio
L'
describe-services
esempio seguente recupera i dettagli delmy-http-service
servizio nel cluster predefinito.aws ecs describe-services --services
my-http-service
Output:
{ "services": [ { "status": "ACTIVE", "taskDefinition": "arn:aws:ecs:us-west-2:123456789012:task-definition/amazon-ecs-sample:1", "pendingCount": 0, "loadBalancers": [], "desiredCount": 10, "createdAt": 1466801808.595, "serviceName": "my-http-service", "clusterArn": "arn:aws:ecs:us-west-2:123456789012:cluster/default", "serviceArn": "arn:aws:ecs:us-west-2:123456789012:service/my-http-service", "deployments": [ { "status": "PRIMARY", "pendingCount": 0, "createdAt": 1466801808.595, "desiredCount": 10, "taskDefinition": "arn:aws:ecs:us-west-2:123456789012:task-definition/amazon-ecs-sample:1", "updatedAt": 1428326312.703, "id": "ecs-svc/1234567890123456789", "runningCount": 10 } ], "events": [ { "message": "(service my-http-service) has reached a steady state.", "id": "a1b2c3d4-5678-90ab-cdef-11111EXAMPLE", "createdAt": 1466801812.435 } ], "runningCount": 10 } ], "failures": [] }
Per ulteriori informazioni, consulta la sezione Servizi nella Amazon ECS Developer Guide.
-
Per API i dettagli, consulta DescribeServices AWS CLI
Command Reference.
-
Il seguente esempio di codice mostra come utilizzaredescribe-task-definition
.
- AWS CLI
-
Per descrivere la definizione di un'attività
L'
describe-task-definition
esempio seguente recupera i dettagli di una definizione di attività.aws ecs describe-task-definition \ --task-definition
hello_world:8
Output:
{ "taskDefinition": { "taskDefinitionArn": "arn:aws:ecs:us-east-1:012345678910:task-definition/hello_world:8", "containerDefinitions": [ { "cpu": 10, "environment": [], "essential": true, "image": "wordpress", "links": [ "mysql" ] , "memory": 500, "mountPoints": [], "name": "wordpress", "portMappings": [ { "containerPort": 80, "hostPort": 80 } ], "volumesFrom": [] }, { "cpu": 10, "environment": [ { "name": "MYSQL_ROOT_PASSWORD", "value": "password" } ], "essential": true, "image": "mysql", "memory": 500, "mountPoints": [], "name": "mysql", "portMappings": [], "volumesFrom": [] } ], "family": "hello_world", "revision": 8, "volumes": [], "status": "ACTIVE", "placementConstraints": [], "compatibilities": [ "EXTERNAL", "EC2" ], "registeredAt": "2024-06-21T11:15:12.669000-05:00", "registeredBy": "arn:aws:sts::012345678910:assumed-role/demo-role/jane-doe" }, "tags": [] }
Per ulteriori informazioni, consulta Amazon ECS Task Definitions nella Amazon ECS Developer Guide.
-
Per API i dettagli, consulta DescribeTaskDefinition AWS CLI
Command Reference.
-
Il seguente esempio di codice mostra come utilizzaredescribe-task-sets
.
- AWS CLI
-
Per descrivere un set di attività
L'
describe-task-sets
esempio seguente descrive un set di attività in un servizio che utilizza un deployer esterno.aws ecs describe-task-sets \ --cluster
MyCluster
\ --serviceMyService
\ --task-setsarn:aws:ecs:us-west-2:123456789012:task-set/MyCluster/MyService/ecs-svc/1234567890123456789
Output:
{ "taskSets": [ { "id": "ecs-svc/1234567890123456789", "taskSetArn": "arn:aws:ecs:us-west-2:123456789012:task-set/MyCluster/MyService/ecs-svc/1234567890123456789", "status": "ACTIVE", "taskDefinition": "arn:aws:ecs:us-west-2:123456789012:task-definition/sample-fargate:2", "computedDesiredCount": 0, "pendingCount": 0, "runningCount": 0, "createdAt": 1557207715.195, "updatedAt": 1557207740.014, "launchType": "EC2", "networkConfiguration": { "awsvpcConfiguration": { "subnets": [ "subnet-12344321" ], "securityGroups": [ "sg-1234431" ], "assignPublicIp": "DISABLED" } }, "loadBalancers": [], "serviceRegistries": [], "scale": { "value": 0.0, "unit": "PERCENT" }, "stabilityStatus": "STEADY_STATE", "stabilityStatusAt": 1557207740.014 } ], "failures": [] }
-
Per API i dettagli, vedere DescribeTaskSets
in AWS CLI Command Reference.
-
Il seguente esempio di codice mostra come utilizzaredescribe-tasks
.
- AWS CLI
-
Esempio 1: per descrivere una singola attività
L'
describe-tasks
esempio seguente recupera i dettagli di un'attività in un cluster. È possibile specificare l'attività utilizzando l'ID o il valore full ARN dell'attività. In questo esempio viene utilizzato il ARN valore completo del task.aws ecs describe-tasks \ --cluster
MyCluster
\ --tasksarn:aws:ecs:us-east-1:123456789012:task/MyCluster/4d590253bb114126b7afa7b58EXAMPLE
Output:
{ "tasks": [ { "attachments": [], "attributes": [ { "name": "ecs.cpu-architecture", "value": "x86_64" } ], "availabilityZone": "us-east-1b", "clusterArn": "arn:aws:ecs:us-east-1:123456789012:cluster/MyCluster", "connectivity": "CONNECTED", "connectivityAt": "2021-08-11T12:21:26.681000-04:00", "containerInstanceArn": "arn:aws:ecs:us-east-1:123456789012:container-instance/test/025c7e2c5e054a6790a29fc1fEXAMPLE", "containers": [ { "containerArn": "arn:aws:ecs:us-east-1:123456789012:container/MyCluster/4d590253bb114126b7afa7b58eea9221/a992d1cc-ea46-474a-b6e8-24688EXAMPLE", "taskArn": "arn:aws:ecs:us-east-1:123456789012:task/MyCluster/4d590253bb114126b7afa7b58EXAMPLE", "name": "simple-app", "image": "httpd:2.4", "runtimeId": "91251eed27db90006ad67b1a08187290869f216557717dd5c39b37c94EXAMPLE", "lastStatus": "RUNNING", "networkBindings": [ { "bindIP": "0.0.0.0", "containerPort": 80, "hostPort": 80, "protocol": "tcp" } ], "networkInterfaces": [], "healthStatus": "UNKNOWN", "cpu": "10", "memory": "300" } ], "cpu": "10", "createdAt": "2021-08-11T12:21:26.681000-04:00", "desiredStatus": "RUNNING", "enableExecuteCommand": false, "group": "service:testupdate", "healthStatus": "UNKNOWN", "lastStatus": "RUNNING", "launchType": "EC2", "memory": "300", "overrides": { "containerOverrides": [ { "name": "simple-app" } ], "inferenceAcceleratorOverrides": [] }, "pullStartedAt": "2021-08-11T12:21:28.234000-04:00", "pullStoppedAt": "2021-08-11T12:21:33.793000-04:00", "startedAt": "2021-08-11T12:21:34.945000-04:00", "startedBy": "ecs-svc/968695068243EXAMPLE", "tags": [], "taskArn": "arn:aws:ecs:us-east-1:123456789012:task/MyCluster/4d590253bb114126b7afa7b58eea9221", "taskDefinitionArn": "arn:aws:ecs:us-east-1:123456789012:task-definition/console-sample-app-static2:1", "version": 2 } ], "failures": [] }
Per ulteriori informazioni, consulta Amazon ECS Task Definitions nella Amazon ECS Developer Guide.
Esempio 2: per descrivere più attività
L'
describe-tasks
esempio seguente recupera i dettagli di più attività in un cluster. È possibile specificare l'attività utilizzando l'ID o il valore full ARN dell'attività. In questo esempio viene utilizzata la totalità IDs delle attività.aws ecs describe-tasks \ --cluster
MyCluster
\ --tasks"74de0355a10a4f979ac495c14EXAMPLE"
"d789e94343414c25b9f6bd59eEXAMPLE"
Output:
{ "tasks": [ { "attachments": [ { "id": "d9e7735a-16aa-4128-bc7a-b2d51EXAMPLE", "type": "ElasticNetworkInterface", "status": "ATTACHED", "details": [ { "name": "subnetId", "value": "subnet-0d0eab1bb3EXAMPLE" }, { "name": "networkInterfaceId", "value": "eni-0fa40520aeEXAMPLE" }, { "name": "macAddress", "value": "0e:89:76:28:07:b3" }, { "name": "privateDnsName", "value": "ip-10-0-1-184.ec2.internal" }, { "name": "privateIPv4Address", "value": "10.0.1.184" } ] } ], "attributes": [ { "name": "ecs.cpu-architecture", "value": "x86_64" } ], "availabilityZone": "us-east-1b", "clusterArn": "arn:aws:ecs:us-east-1:123456789012:cluster/MyCluster", "connectivity": "CONNECTED", "connectivityAt": "2021-12-20T12:13:37.875000-05:00", "containers": [ { "containerArn": "arn:aws:ecs:us-east-1:123456789012:container/MyCluster/74de0355a10a4f979ac495c14EXAMPLE/aad3ba00-83b3-4dac-84d4-11f8cEXAMPLE", "taskArn": "arn:aws:ecs:us-east-1:123456789012:task/MyCluster/74de0355a10a4f979ac495c14EXAMPLE", "name": "web", "image": "nginx", "runtimeId": "74de0355a10a4f979ac495c14EXAMPLE-265927825", "lastStatus": "RUNNING", "networkBindings": [], "networkInterfaces": [ { "attachmentId": "d9e7735a-16aa-4128-bc7a-b2d51EXAMPLE", "privateIpv4Address": "10.0.1.184" } ], "healthStatus": "UNKNOWN", "cpu": "99", "memory": "100" } ], "cpu": "256", "createdAt": "2021-12-20T12:13:20.226000-05:00", "desiredStatus": "RUNNING", "enableExecuteCommand": false, "group": "service:tdsevicetag", "healthStatus": "UNKNOWN", "lastStatus": "RUNNING", "launchType": "FARGATE", "memory": "512", "overrides": { "containerOverrides": [ { "name": "web" } ], "inferenceAcceleratorOverrides": [] }, "platformVersion": "1.4.0", "platformFamily": "Linux", "pullStartedAt": "2021-12-20T12:13:42.665000-05:00", "pullStoppedAt": "2021-12-20T12:13:46.543000-05:00", "startedAt": "2021-12-20T12:13:48.086000-05:00", "startedBy": "ecs-svc/988401040018EXAMPLE", "tags": [], "taskArn": "arn:aws:ecs:us-east-1:123456789012:task/MyCluster/74de0355a10a4f979ac495c14EXAMPLE", "taskDefinitionArn": "arn:aws:ecs:us-east-1:123456789012:task-definition/webserver:2", "version": 3, "ephemeralStorage": { "sizeInGiB": 20 } }, { "attachments": [ { "id": "214eb5a9-45cd-4bf8-87bc-57fefEXAMPLE", "type": "ElasticNetworkInterface", "status": "ATTACHED", "details": [ { "name": "subnetId", "value": "subnet-0d0eab1bb3EXAMPLE" }, { "name": "networkInterfaceId", "value": "eni-064c7766daEXAMPLE" }, { "name": "macAddress", "value": "0e:76:83:01:17:a9" }, { "name": "privateDnsName", "value": "ip-10-0-1-41.ec2.internal" }, { "name": "privateIPv4Address", "value": "10.0.1.41" } ] } ], "attributes": [ { "name": "ecs.cpu-architecture", "value": "x86_64" } ], "availabilityZone": "us-east-1b", "clusterArn": "arn:aws:ecs:us-east-1:123456789012:cluster/MyCluster", "connectivity": "CONNECTED", "connectivityAt": "2021-12-20T12:13:35.243000-05:00", "containers": [ { "containerArn": "arn:aws:ecs:us-east-1:123456789012:container/MyCluster/d789e94343414c25b9f6bd59eEXAMPLE/9afef792-609b-43a5-bb6a-3efdbEXAMPLE", "taskArn": "arn:aws:ecs:us-east-1:123456789012:task/MyCluster/d789e94343414c25b9f6bd59eEXAMPLE", "name": "web", "image": "nginx", "runtimeId": "d789e94343414c25b9f6bd59eEXAMPLE-265927825", "lastStatus": "RUNNING", "networkBindings": [], "networkInterfaces": [ { "attachmentId": "214eb5a9-45cd-4bf8-87bc-57fefEXAMPLE", "privateIpv4Address": "10.0.1.41" } ], "healthStatus": "UNKNOWN", "cpu": "99", "memory": "100" } ], "cpu": "256", "createdAt": "2021-12-20T12:13:20.226000-05:00", "desiredStatus": "RUNNING", "enableExecuteCommand": false, "group": "service:tdsevicetag", "healthStatus": "UNKNOWN", "lastStatus": "RUNNING", "launchType": "FARGATE", "memory": "512", "overrides": { "containerOverrides": [ { "name": "web" } ], "inferenceAcceleratorOverrides": [] }, "platformVersion": "1.4.0", "platformFamily": "Linux", "pullStartedAt": "2021-12-20T12:13:44.611000-05:00", "pullStoppedAt": "2021-12-20T12:13:48.251000-05:00", "startedAt": "2021-12-20T12:13:49.326000-05:00", "startedBy": "ecs-svc/988401040018EXAMPLE", "tags": [], "taskArn": "arn:aws:ecs:us-east-1:123456789012:task/MyCluster/d789e94343414c25b9f6bd59eEXAMPLE", "taskDefinitionArn": "arn:aws:ecs:us-east-1:123456789012:task-definition/webserver:2", "version": 3, "ephemeralStorage": { "sizeInGiB": 20 } } ], "failures": [] }
Per ulteriori informazioni, consulta Amazon ECS Task Definitions nella Amazon ECS Developer Guide.
-
Per API i dettagli, consulta DescribeTasks AWS CLI
Command Reference.
-
Il seguente esempio di codice mostra come utilizzareexecute-command
.
- AWS CLI
-
Per eseguire un interactive /bin/sh comando
L'
execute-command
esempio seguente esegue un interactive /bin/sh comando su un contenitore denominato MyContainer per un'attività con un id diarn:aws:ecs:us-east-1:123456789012:task/MyCluster/d789e94343414c25b9f6bd59eEXAMPLE
.aws ecs execute-command \ --cluster
MyCluster
\ --taskarn:aws:ecs:us-east-1:123456789012:task/MyCluster/d789e94343414c25b9f6bd59eEXAMPLE
\ --containerMyContainer
\ --interactive \ --command"/bin/sh"
Questo comando non produce alcun output.
Per ulteriori informazioni, consulta Using Amazon ECS Exec for debugging nella Amazon Developer Guide. ECS
-
Per i API dettagli, consulta ExecuteCommand
Command Reference.AWS CLI
-
Il seguente esempio di codice mostra come utilizzarelist-account-settings
.
- AWS CLI
-
Esempio 1: Per visualizzare le impostazioni di un account
L'
list-account-settings
esempio seguente mostra le impostazioni effettive dell'account per un account.aws ecs list-account-settings --effective-settings
Output:
{ "settings": [ { "name": "containerInstanceLongArnFormat", "value": "enabled", "principalArn": "arn:aws:iam::123456789012:root" }, { "name": "serviceLongArnFormat", "value": "enabled", "principalArn": "arn:aws:iam::123456789012:root" }, { "name": "taskLongArnFormat", "value": "enabled", "principalArn": "arn:aws:iam::123456789012:root" } ] }
Esempio 2: Per visualizzare le impostazioni dell'account per un IAM utente o un IAM ruolo specifico
L'
list-account-settings
esempio seguente visualizza le impostazioni dell'account per l'IAMutente o il IAM ruolo specificato.aws ecs list-account-settings --principal-arn
arn:aws:iam::123456789012:user/MyUser
Output:
{ "settings": [ { "name": "serviceLongArnFormat", "value": "enabled", "principalArn": "arn:aws:iam::123456789012:user/MyUser" } ] }
Per ulteriori informazioni, consulta Amazon Resource Names (ARNs) e IDs l'Amazon ECS Developer Guide.
-
Per API i dettagli, consulta ListAccountSettings AWS CLI
Command Reference.
-
Il seguente esempio di codice mostra come utilizzarelist-attributes
.
- AWS CLI
-
Per elencare le istanze del contenitore che contengono un attributo specifico
L'esempio seguente elenca gli attributi per le istanze di contenitore che hanno l'
stack=production
attributo nel cluster predefinito.aws ecs list-attributes \ --target-type
container-instance
\ --attribute-namestack
\ --attribute-valueproduction
\ --clusterdefault
Output:
{ "attributes": [ { "name": "stack", "targetId": "arn:aws:ecs:us-west-2:130757420319:container-instance/1c3be8ed-df30-47b4-8f1e-6e68ebd01f34", "value": "production" } ] }
Per ulteriori informazioni, consulta Amazon ECS Container Agent Configuration nella Amazon ECS Developer Guide.
-
Per API i dettagli, consulta ListAttributes AWS CLI
Command Reference.
-
Il seguente esempio di codice mostra come utilizzarelist-clusters
.
- AWS CLI
-
Per elencare i cluster disponibili
L'
list-clusters
esempio seguente elenca tutti i cluster disponibili.aws ecs list-clusters
Output:
{ "clusterArns": [ "arn:aws:ecs:us-west-2:123456789012:cluster/MyECSCluster1", "arn:aws:ecs:us-west-2:123456789012:cluster/AnotherECSCluster" ] }
Per ulteriori informazioni, consulta Amazon ECS Clusters nell'Amazon ECS Developer Guide.
-
Per API i dettagli, consulta ListClusters AWS CLI
Command Reference.
-
Il seguente esempio di codice mostra come utilizzarelist-container-instances
.
- AWS CLI
-
Per elencare le istanze del contenitore in un cluster
L'
list-container-instances
esempio seguente elenca tutte le istanze di container disponibili in un cluster.aws ecs list-container-instances --cluster
MyCluster
Output:
{ "containerInstanceArns": [ "arn:aws:ecs:us-west-2:123456789012:container-instance/MyCluster/a1b2c3d4-5678-90ab-cdef-11111EXAMPLE", "arn:aws:ecs:us-west-2:123456789012:container-instance/MyCluster/a1b2c3d4-5678-90ab-cdef-22222EXAMPLE" ] }
Per ulteriori informazioni, consulta Amazon ECS Container Instances nell'Amazon ECS Developer Guide.
-
Per API i dettagli, consulta ListContainerInstances AWS CLI
Command Reference.
-
Il seguente esempio di codice mostra come utilizzarelist-services-by-namespace
.
- AWS CLI
-
Per elencare i servizi in un namespace
L'
list-services-by-namespace
esempio seguente elenca tutti i servizi configurati per lo spazio dei nomi specificato nella regione predefinita.aws ecs list-services-by-namespace \ --namespace
service-connect
Output:
{ "serviceArns": [ "arn:aws:ecs:us-west-2:123456789012:service/MyCluster/MyService", "arn:aws:ecs:us-west-2:123456789012:service/tutorial/service-connect-nginx-service" ] }
Per ulteriori informazioni, consulta Service Connect nella Amazon ECS Developer Guide.
-
Per API i dettagli, consulta ListServicesByNamespace AWS CLI
Command Reference.
-
Il seguente esempio di codice mostra come utilizzarelist-services
.
- AWS CLI
-
Per elencare i servizi in un cluster
L'
list-services
esempio seguente mostra come elencare i servizi in esecuzione in un cluster.aws ecs list-services --cluster
MyCluster
Output:
{ "serviceArns": [ "arn:aws:ecs:us-west-2:123456789012:service/MyCluster/MyService" ] }
Per ulteriori informazioni, consulta la sezione Servizi nella Amazon ECS Developer Guide.
-
Per API i dettagli, consulta ListServices AWS CLI
Command Reference.
-
Il seguente esempio di codice mostra come utilizzarelist-tags-for-resource
.
- AWS CLI
-
Per elencare i tag di una risorsa
L'
list-tags-for-resource
esempio seguente elenca i tag per un cluster specifico.aws ecs list-tags-for-resource \ --resource-arn
arn:aws:ecs:us-west-2:123456789012:cluster/MyCluster
Output:
{ "tags": [ { "key": "key1", "value": "value1" }, { "key": "key2", "value": "value2" }, { "key": "key3", "value": "value3" } ] }
-
Per API i dettagli, vedere ListTagsForResource
in AWS CLI Command Reference.
-
Il seguente esempio di codice mostra come utilizzarelist-task-definition-families
.
- AWS CLI
-
Esempio 1: per elencare le famiglie di definizioni delle attività registrate
L'
list-task-definition-families
esempio seguente elenca tutte le famiglie di definizioni di attività registrate.aws ecs list-task-definition-families
Output:
{ "families": [ "node-js-app", "web-timer", "hpcc", "hpcc-c4-8xlarge" ] }
Esempio 2: per filtrare le famiglie di definizioni delle attività registrate
L'
list-task-definition-families
esempio seguente elenca le revisioni delle definizioni delle attività che iniziano con «hpcc».aws ecs list-task-definition-families --family-prefix
hpcc
Output:
{ "families": [ "hpcc", "hpcc-c4-8xlarge" ] }
Per ulteriori informazioni, consulta Task Definition Parameters nella Amazon ECS Developer Guide.
-
Per API i dettagli, consulta ListTaskDefinitionFamilies AWS CLI
Command Reference.
-
Il seguente esempio di codice mostra come utilizzarelist-task-definitions
.
- AWS CLI
-
Esempio 1: per elencare le definizioni delle attività registrate
L'
list-task-definitions
esempio seguente elenca tutte le definizioni delle attività registrate.aws ecs list-task-definitions
Output:
{ "taskDefinitionArns": [ "arn:aws:ecs:us-west-2:123456789012:task-definition/sleep300:2", "arn:aws:ecs:us-west-2:123456789012:task-definition/sleep360:1", "arn:aws:ecs:us-west-2:123456789012:task-definition/wordpress:3", "arn:aws:ecs:us-west-2:123456789012:task-definition/wordpress:4", "arn:aws:ecs:us-west-2:123456789012:task-definition/wordpress:5", "arn:aws:ecs:us-west-2:123456789012:task-definition/wordpress:6" ] }
Esempio 2: Elencare le definizioni delle attività registrate in una famiglia
L' list-task-definitionsesempio seguente elenca le revisioni delle definizioni delle attività di una famiglia specificata.
aws ecs list-task-definitions --family-prefix
wordpress
Output:
{ "taskDefinitionArns": [ "arn:aws:ecs:us-west-2:123456789012:task-definition/wordpress:3", "arn:aws:ecs:us-west-2:123456789012:task-definition/wordpress:4", "arn:aws:ecs:us-west-2:123456789012:task-definition/wordpress:5", "arn:aws:ecs:us-west-2:123456789012:task-definition/wordpress:6" ] }
Per ulteriori informazioni, consulta Amazon ECS Task Definitions nella Amazon ECS Developer Guide.
-
Per API i dettagli, consulta ListTaskDefinitions AWS CLI
Command Reference.
-
Il seguente esempio di codice mostra come utilizzarelist-tasks
.
- AWS CLI
-
Esempio 1: per elencare le attività in un cluster
L'
list-tasks
esempio seguente elenca tutte le attività di un cluster.aws ecs list-tasks --cluster
default
Output:
{ "taskArns": [ "arn:aws:ecs:us-west-2:123456789012:task/a1b2c3d4-5678-90ab-cdef-11111EXAMPLE", "arn:aws:ecs:us-west-2:123456789012:task/a1b2c3d4-5678-90ab-cdef-22222EXAMPLE" ] }
Esempio 2: per elencare le attività su una particolare istanza del contenitore
L'
list-tasks
esempio seguente elenca le attività su un'istanza del contenitore, utilizzando l'istanza del contenitore UUID come filtro.aws ecs list-tasks --cluster
default
--container-instancea1b2c3d4-5678-90ab-cdef-33333EXAMPLE
Output:
{ "taskArns": [ "arn:aws:ecs:us-west-2:123456789012:task/a1b2c3d4-5678-90ab-cdef-44444EXAMPLE" ] }
Per ulteriori informazioni, consulta Amazon ECS Task Definitions nella Amazon ECS Developer Guide.
-
Per API i dettagli, consulta ListTasks AWS CLI
Command Reference.
-
Il seguente esempio di codice mostra come utilizzareput-account-setting-default
.
- AWS CLI
-
Per modificare le impostazioni predefinite dell'account
L'
put-account-setting-default
esempio seguente modifica l'impostazione predefinita dell'account per tutti IAM gli utenti o i ruoli dell'account. Queste modifiche si applicano all'intero AWS account a meno che un IAM utente o un ruolo non sostituisca esplicitamente queste impostazioni.aws ecs put-account-setting-default --name
serviceLongArnFormat
--valueenabled
Output:
{ "setting": { "name": "serviceLongArnFormat", "value": "enabled", "principalArn": "arn:aws:iam::123456789012:root" } }
Per ulteriori informazioni, consulta Amazon Resource Names (ARNs) e IDs l'Amazon ECS Developer Guide.
-
Per API i dettagli, consulta PutAccountSettingDefault AWS CLI
Command Reference.
-
Il seguente esempio di codice mostra come utilizzareput-account-setting
.
- AWS CLI
-
Per modificare le impostazioni IAM dell'account utente
L'
put-account-setting
esempio seguente abilita l'serviceLongArnFormat
impostazione IAM dell'account utente.aws ecs put-account-setting --name
serviceLongArnFormat
--valueenabled
Output:
{ "setting": { "name": "serviceLongArnFormat", "value": "enabled", "principalArn": "arn:aws:iam::130757420319:user/your_username" } }
Per ulteriori informazioni, consulta Modifica delle impostazioni dell'account nella Amazon ECS Developer Guide.
-
Per API i dettagli, consulta PutAccountSetting AWS CLI
Command Reference.
-
Il seguente esempio di codice mostra come utilizzareput-account-settings
.
- AWS CLI
-
Per modificare le impostazioni dell'account per un IAM utente o un IAM ruolo
L'
put-account-setting
esempio seguente modifica le impostazioni dell'account per l'IAMutente o il IAM ruolo specificato.aws ecs put-account-setting \ --name
serviceLongArnFormat
\ --valueenabled
\ --principal-arnarn:aws:iam::123456789012:user/MyUser
Output:
{ "setting": { "name": "serviceLongArnFormat", "value": "enabled", "principalArn": "arn:aws:iam::123456789012:user/MyUser" } }
-
Per API i dettagli, vedere PutAccountSettings
in AWS CLI Command Reference.
-
Il seguente esempio di codice mostra come utilizzareput-attributes
.
- AWS CLI
-
Per creare un attributo e associarlo a una ECS risorsa Amazon
Quanto segue
put-attributes
applica un attributo con il nome stack e il valore production a un'istanza di contenitore.aws ecs put-attributes \ --attributes
name=stack,value=production,targetId=arn:aws:ecs:us-west-2:130757420319:container-instance/1c3be8ed-df30-47b4-8f1e-6e68ebd01f34
Output:
{ "attributes": [ { "name": "stack", "targetId": "arn:aws:ecs:us-west-2:130757420319:container-instance/1c3be8ed-df30-47b4-8f1e-6e68ebd01f34", "value": "production" } ] }
-
Per API i dettagli, vedere PutAttributes
in AWS CLI Command Reference.
-
Il seguente esempio di codice mostra come utilizzareput-cluster-capacity-providers
.
- AWS CLI
-
Esempio 1: aggiungere un provider di capacità esistente a un cluster
L'
put-cluster-capacity-providers
esempio seguente aggiunge un provider di capacità esistente a un cluster. Ilcreate-capacity-provider
comando viene utilizzato per creare un provider di capacità. Ildescribe-clusters
comando viene utilizzato per descrivere gli attuali fornitori di capacità e la strategia predefinita dei fornitori di capacità associata a un cluster. Quando si aggiunge un nuovo fornitore di capacità a un cluster, è necessario specificare tutti i fornitori di capacità esistenti oltre al nuovo fornitore di capacità che si desidera associare al cluster. È inoltre necessario specificare la strategia predefinita del provider di capacità da associare al cluster. In questo esempio, alMyCluster
cluster è associato il provider diMyCapacityProvider1
capacità e si desidera aggiungere il fornitore diMyCapacityProvider2
capacità e includerlo nella strategia predefinita del fornitore di capacità in modo che le attività siano distribuite uniformemente tra entrambi i fornitori di capacità.aws ecs put-cluster-capacity-providers \ --cluster
MyCluster
\ --capacity-providersMyCapacityProvider1
MyCapacityProvider2
\ --default-capacity-provider-strategycapacityProvider=MyCapacityProvider1,weight=1
capacityProvider=MyCapacityProvider2,weight=1
Output:
{ "cluster": { "clusterArn": "arn:aws:ecs:us-west-2:123456789012:cluster/MyCluster", "clusterName": "MyCluster", "status": "ACTIVE", "registeredContainerInstancesCount": 0, "runningTasksCount": 0, "pendingTasksCount": 0, "activeServicesCount": 0, "statistics": [], "tags": [], "settings": [ { "name": "containerInsights", "value": "enabled" } ], "capacityProviders": [ "MyCapacityProvider1", "MyCapacityProvider2" ], "defaultCapacityProviderStrategy": [ { "capacityProvider": "MyCapacityProvider1", "weight": 1, "base": 0 }, { "capacityProvider": "MyCapacityProvider2", "weight": 1, "base": 0 } ], "attachments": [ { "id": "0fb0c8f4-6edd-4de1-9b09-17e470ee1918", "type": "as_policy", "status": "ACTIVE", "details": [ { "name": "capacityProviderName", "value": "MyCapacityProvider1" }, { "name": "scalingPolicyName", "value": "ECSManagedAutoScalingPolicy-a1b2c3d4-5678-90ab-cdef-EXAMPLE11111" } ] }, { "id": "ae592060-2382-4663-9476-b015c685593c", "type": "as_policy", "status": "ACTIVE", "details": [ { "name": "capacityProviderName", "value": "MyCapacityProvider2" }, { "name": "scalingPolicyName", "value": "ECSManagedAutoScalingPolicy-a1b2c3d4-5678-90ab-cdef-EXAMPLE22222" } ] } ], "attachmentsStatus": "UPDATE_IN_PROGRESS" } }
Per ulteriori informazioni, consulta Cluster Capacity Provider nella Amazon ECS Developer Guide.
Esempio 2: rimuovere un fornitore di capacità da un cluster
L'
put-cluster-capacity-providers
esempio seguente rimuove un fornitore di capacità da un cluster. Ildescribe-clusters
comando viene utilizzato per descrivere gli attuali provider di capacità associati a un cluster. Quando si rimuove un fornitore di capacità da un cluster, è necessario specificare i fornitori di capacità che si desidera che rimangano associati al cluster, nonché la strategia predefinita del provider di capacità da associare al cluster. In questo esempio, al cluster sono associati i provider diMyCapacityProvider2
capacitàMyCapacityProvider1
e si desidera rimuovere il provider diMyCapacityProvider2
capacità, quindi lo si specifica soloMyCapacityProvider1
nel comando insieme alla strategia predefinita aggiornata del provider di capacità.aws ecs put-cluster-capacity-providers \ --cluster
MyCluster
\ --capacity-providersMyCapacityProvider1
\ --default-capacity-provider-strategycapacityProvider=MyCapacityProvider1,weight=1,base=0
Output:
{ "cluster": { "clusterArn": "arn:aws:ecs:us-west-2:123456789012:cluster/MyCluster", "clusterName": "MyCluster", "status": "ACTIVE", "registeredContainerInstancesCount": 0, "runningTasksCount": 0, "pendingTasksCount": 0, "activeServicesCount": 0, "statistics": [], "tags": [], "settings": [ { "name": "containerInsights", "value": "enabled" } ], "capacityProviders": [ "MyCapacityProvider1" ], "defaultCapacityProviderStrategy": [ "capacityProvider": "MyCapacityProvider1", "weight": 1, "base": 0 ], "attachments": [ { "id": "0fb0c8f4-6edd-4de1-9b09-17e470ee1918", "type": "as_policy", "status": "ACTIVE", "details": [ { "name": "capacityProviderName", "value": "MyCapacityProvider1" }, { "name": "scalingPolicyName", "value": "ECSManagedAutoScalingPolicy-a1b2c3d4-5678-90ab-cdef-EXAMPLE11111" } ] }, { "id": "ae592060-2382-4663-9476-b015c685593c", "type": "as_policy", "status": "DELETING", "details": [ { "name": "capacityProviderName", "value": "MyCapacityProvider2" }, { "name": "scalingPolicyName", "value": "ECSManagedAutoScalingPolicy-a1b2c3d4-5678-90ab-cdef-EXAMPLE22222" } ] } ], "attachmentsStatus": "UPDATE_IN_PROGRESS" } }
Per ulteriori informazioni, consulta Cluster Capacity Provider nella Amazon ECS Developer Guide.
Esempio 3: rimuovere tutti i provider di capacità da un cluster
L'
put-cluster-capacity-providers
esempio seguente rimuove tutti i provider di capacità esistenti dal cluster.aws ecs put-cluster-capacity-providers \ --cluster
MyCluster
\ --capacity-providers[]
\ --default-capacity-provider-strategy[]
Output:
{ "cluster": { "clusterArn": "arn:aws:ecs:us-west-2:123456789012:cluster/MyCluster", "clusterName": "MyCluster", "status": "ACTIVE", "registeredContainerInstancesCount": 0, "runningTasksCount": 0, "pendingTasksCount": 0, "activeServicesCount": 0, "statistics": [], "tags": [], "settings": [ { "name": "containerInsights", "value": "enabled" } ], "capacityProviders": [], "defaultCapacityProviderStrategy": [], "attachments": [ { "id": "0fb0c8f4-6edd-4de1-9b09-17e470ee1918", "type": "as_policy", "status": "DELETING", "details": [ { "name": "capacityProviderName", "value": "MyCapacityProvider1" }, { "name": "scalingPolicyName", "value": "ECSManagedAutoScalingPolicy-a1b2c3d4-5678-90ab-cdef-EXAMPLE11111" } ] }, { "id": "ae592060-2382-4663-9476-b015c685593c", "type": "as_policy", "status": "DELETING", "details": [ { "name": "capacityProviderName", "value": "MyCapacityProvider2" }, { "name": "scalingPolicyName", "value": "ECSManagedAutoScalingPolicy-a1b2c3d4-5678-90ab-cdef-EXAMPLE22222" } ] } ], "attachmentsStatus": "UPDATE_IN_PROGRESS" } }
Per ulteriori informazioni, consulta Cluster Capacity Provider nella Amazon ECS Developer Guide.
-
Per API i dettagli, consulta PutClusterCapacityProviders AWS CLI
Command Reference.
-
Il seguente esempio di codice mostra come utilizzareregister-task-definition
.
- AWS CLI
-
Esempio 1: registrare una definizione di attività con un JSON file
L'
register-task-definition
esempio seguente registra una definizione di attività nella famiglia specificata. Le definizioni dei contenitori vengono salvate in JSON formato nella posizione del file specificata.aws ecs register-task-definition \ --cli-input-json
file://<path_to_json_file>/sleep360.json
Contenuto di
sleep360.json
.{ "containerDefinitions": [ { "name": "sleep", "image": "busybox", "cpu": 10, "command": [ "sleep", "360" ], "memory": 10, "essential": true } ], "family": "sleep360" }
Output:
{ "taskDefinition": { "status": "ACTIVE", "family": "sleep360", "placementConstraints": [], "compatibilities": [ "EXTERNAL", "EC2" ], "volumes": [], "taskDefinitionArn": "arn:aws:ecs:us-east-1:123456789012:task-definition/sleep360:1", "containerDefinitions": [ { "environment": [], "name": "sleep", "mountPoints": [], "image": "busybox", "cpu": 10, "portMappings": [], "command": [ "sleep", "360" ], "memory": 10, "essential": true, "volumesFrom": [] } ], "revision": 1 } }
Per ulteriori informazioni, consulta le definizioni di attività di esempio nella Amazon ECS Developer Guide.
Esempio 2: per registrare una definizione di attività con un parametro JSON stringa
L'
register-task-definition
esempio seguente registra una definizione di attività utilizzando le definizioni dei contenitori fornite come parametro di JSON stringa con virgolette doppie con escape.aws ecs register-task-definition \ --family
sleep360
\ --container-definitions "[{\"name\":\"sleep\",\"image\":\"busybox\",\"cpu\":10,\"command\":[\"sleep\",\"360\"],\"memory\":10,\"essential\":true}]"L'output è identico all'esempio precedente.
Per ulteriori informazioni, consulta Creating a Task Definition nella Amazon ECS Developer Guide.
-
Per API i dettagli, consulta RegisterTaskDefinition AWS CLI
Command Reference.
-
Il seguente esempio di codice mostra come utilizzarerun-task
.
- AWS CLI
-
Per eseguire un'attività nel cluster predefinito
L'
run-task
esempio seguente esegue un'attività nel cluster predefinito e utilizza un token client.aws ecs run-task \ --cluster
default
\ --task-definitionsleep360:1
\ --client-token550e8400-e29b-41d4-a716-446655440000
Output:
{ "tasks": [ { "attachments": [], "attributes": [ { "name": "ecs.cpu-architecture", "value": "x86_64" } ], "availabilityZone": "us-east-1b", "capacityProviderName": "example-capacity-provider", "clusterArn": "arn:aws:ecs:us-east-1:123456789012:cluster/default", "containerInstanceArn": "arn:aws:ecs:us-east-1:123456789012:container-instance/default/bc4d2ec611d04bb7bb97e83ceEXAMPLE", "containers": [ { "containerArn": "arn:aws:ecs:us-east-1:123456789012:container/default/d6f51cc5bbc94a47969c92035e9f66f8/75853d2d-711e-458a-8362-0f0aEXAMPLE", "taskArn": "arn:aws:ecs:us-east-1:123456789012:task/default/d6f51cc5bbc94a47969c9203EXAMPLE", "name": "sleep", "image": "busybox", "lastStatus": "PENDING", "networkInterfaces": [], "cpu": "10", "memory": "10" } ], "cpu": "10", "createdAt": "2023-11-21T16:59:34.403000-05:00", "desiredStatus": "RUNNING", "enableExecuteCommand": false, "group": "family:sleep360", "lastStatus": "PENDING", "launchType": "EC2", "memory": "10", "overrides": { "containerOverrides": [ { "name": "sleep" } ], "inferenceAcceleratorOverrides": [] }, "tags": [], "taskArn": "arn:aws:ecs:us-east-1:123456789012:task/default/d6f51cc5bbc94a47969c9203EXAMPLE", "taskDefinitionArn": "arn:aws:ecs:us-east-1:123456789012:task-definition/sleep360:1", "version": 1 } ], "failures": [] }
Per ulteriori informazioni, consulta Running Tasks nella Amazon ECS Developer Guide.
-
Per API i dettagli, consulta RunTask AWS CLI
Command Reference.
-
Il seguente esempio di codice mostra come utilizzarestart-task
.
- AWS CLI
-
Per iniziare una nuova attività
Quanto segue
start-task
avvia un'attività utilizzando la revisione più recente della definizione dell'sleep360
attività sull'istanza del contenitore specificata nel cluster predefinito.aws ecs start-task \ --task-definition
sleep360
\ --container-instances765936fadbdd46b5991a4bd70c2a43d4
Output:
{ "tasks": [ { "taskArn": "arn:aws:ecs:us-west-2:130757420319:task/default/666fdccc2e2d4b6894dd422f4eeee8f8", "clusterArn": "arn:aws:ecs:us-west-2:130757420319:cluster/default", "taskDefinitionArn": "arn:aws:ecs:us-west-2:130757420319:task-definition/sleep360:3", "containerInstanceArn": "arn:aws:ecs:us-west-2:130757420319:container-instance/default/765936fadbdd46b5991a4bd70c2a43d4", "overrides": { "containerOverrides": [ { "name": "sleep" } ] }, "lastStatus": "PENDING", "desiredStatus": "RUNNING", "cpu": "128", "memory": "128", "containers": [ { "containerArn": "arn:aws:ecs:us-west-2:130757420319:container/75f11ed4-8a3d-4f26-a33b-ad1db9e02d41", "taskArn": "arn:aws:ecs:us-west-2:130757420319:task/default/666fdccc2e2d4b6894dd422f4eeee8f8", "name": "sleep", "lastStatus": "PENDING", "networkInterfaces": [], "cpu": "10", "memory": "10" } ], "version": 1, "createdAt": 1563421494.186, "group": "family:sleep360", "launchType": "EC2", "attachments": [], "tags": [] } ], "failures": [] }
-
Per API i dettagli, vedere StartTask
in AWS CLI Command Reference.
-
Il seguente esempio di codice mostra come utilizzarestop-task
.
- AWS CLI
-
Per interrompere un'operazione
Quanto segue
stop-task
interrompe l'esecuzione dell'attività specificata nel cluster predefinito.aws ecs stop-task \ --task
666fdccc2e2d4b6894dd422f4eeee8f8
Output:
{ "task": { "taskArn": "arn:aws:ecs:us-west-2:130757420319:task/default/666fdccc2e2d4b6894dd422f4eeee8f8", "clusterArn": "arn:aws:ecs:us-west-2:130757420319:cluster/default", "taskDefinitionArn": "arn:aws:ecs:us-west-2:130757420319:task-definition/sleep360:3", "containerInstanceArn": "arn:aws:ecs:us-west-2:130757420319:container-instance/default/765936fadbdd46b5991a4bd70c2a43d4", "overrides": { "containerOverrides": [] }, "lastStatus": "STOPPED", "desiredStatus": "STOPPED", "cpu": "128", "memory": "128", "containers": [], "version": 2, "stoppedReason": "Taskfailedtostart", "stopCode": "TaskFailedToStart", "connectivity": "CONNECTED", "connectivityAt": 1563421494.186, "pullStartedAt": 1563421494.252, "pullStoppedAt": 1563421496.252, "executionStoppedAt": 1563421497, "createdAt": 1563421494.186, "stoppingAt": 1563421497.252, "stoppedAt": 1563421497.252, "group": "family:sleep360", "launchType": "EC2", "attachments": [], "tags": [] } }
-
Per API i dettagli, vedere StopTask
in AWS CLI Command Reference.
-
Il seguente esempio di codice mostra come utilizzaretag-resource
.
- AWS CLI
-
Per etichettare una risorsa
L'
tag-resource
esempio seguente aggiunge un singolo tag alla risorsa specificata.aws ecs tag-resource \ --resource-arn
arn:aws:ecs:us-west-2:123456789012:cluster/MyCluster
--tagskey=key1,value=value1
Questo comando non produce alcun output.
Per aggiungere più tag a una risorsa
L'
tag-resource
esempio seguente aggiunge più tag alla risorsa specificata.aws ecs tag-resource \ --resource-arn
arn:aws:ecs:us-west-2:123456789012:cluster/MyCluster
\ --tagskey=key1,value=value1
key=key2,value=value2
key=key3,value=value3
Questo comando non produce alcun output.
-
Per API i dettagli, vedere TagResource
in AWS CLI Command Reference.
-
Il seguente esempio di codice mostra come utilizzareuntag-resource
.
- AWS CLI
-
Per rimuovere un tag da una risorsa
L'
untag-resource
esempio seguente rimuove i tag elencati dalla risorsa specificata.aws ecs untag-resource \ --resource-arn
arn:aws:ecs:us-west-2:123456789012:cluster/MyCluster
\ --tag-keyskey1,key2
Questo comando non produce alcun output.
-
Per API i dettagli, vedere UntagResource
in AWS CLI Command Reference.
-
Il seguente esempio di codice mostra come utilizzareupdate-cluster-settings
.
- AWS CLI
-
Per modificare le impostazioni del cluster
L'
update-cluster-settings
esempio seguente abilita CloudWatch Container Insights per ildefault
cluster.aws ecs update-cluster-settings \ --cluster
default
\ --settingsname=containerInsights,value=enabled
Output:
{ "cluster": { "clusterArn": "arn:aws:ecs:us-west-2:123456789012:cluster/MyCluster", "clusterName": "default", "status": "ACTIVE", "registeredContainerInstancesCount": 0, "runningTasksCount": 0, "pendingTasksCount": 0, "activeServicesCount": 0, "statistics": [], "tags": [], "settings": [ { "name": "containerInsights", "value": "enabled" } ] } }
Per ulteriori informazioni, consulta Modifica delle impostazioni dell'account nella Amazon ECS Developer Guide.
-
Per API i dettagli, consulta UpdateClusterSettings AWS CLI
Command Reference.
-
Il seguente esempio di codice mostra come utilizzareupdate-container-agent
.
- AWS CLI
-
Per aggiornare l'agente container su un'istanza di Amazon ECS Container
L'
update-container-agent
esempio seguente aggiorna l'agente del contenitore sull'istanza di contenitore specificata nel cluster predefinito.aws ecs update-container-agent --cluster
default
--container-instancea1b2c3d4-5678-90ab-cdef-11111EXAMPLE
Output:
{ "containerInstance": { "status": "ACTIVE", ... "agentUpdateStatus": "PENDING", "versionInfo": { "agentVersion": "1.0.0", "agentHash": "4023248", "dockerVersion": "DockerVersion: 1.5.0" } } }
Per ulteriori informazioni, consulta Updating the Amazon ECS Container Agent nella Amazon ECS Developer Guide.
-
Per API i dettagli, consulta UpdateContainerAgent AWS CLI
Command Reference.
-
Il seguente esempio di codice mostra come utilizzareupdate-container-instances-state
.
- AWS CLI
-
Per aggiornare lo stato di un'istanza del contenitore
Quanto segue
update-container-instances-state
aggiorna lo stato dell'istanza del contenitore specificata inDRAINING
cui verrà rimossa dal cluster in cui è registrata.aws ecs update-container-instances-state \ --container-instances
765936fadbdd46b5991a4bd70c2a43d4
\ --statusDRAINING
Output:
{ "containerInstances": [ { "containerInstanceArn": "arn:aws:ecs:us-west-2:130757420319:container-instance/default/765936fadbdd46b5991a4bd70c2a43d4", "ec2InstanceId": "i-013d87ffbb4d513bf", "version": 4390, "versionInfo": { "agentVersion": "1.29.0", "agentHash": "a190a73f", "dockerVersion": "DockerVersion:18.06.1-ce" }, "remainingResources": [ { "name": "CPU", "type": "INTEGER", "doubleValue": 0, "longValue": 0, "integerValue": 1536 }, { "name": "MEMORY", "type": "INTEGER", "doubleValue": 0, "longValue": 0, "integerValue": 2681 }, { "name": "PORTS", "type": "STRINGSET", "doubleValue": 0, "longValue": 0, "integerValue": 0, "stringSetValue": [ "22", "2376", "2375", "51678", "51679" ] }, { "name": "PORTS_UDP", "type": "STRINGSET", "doubleValue": 0, "longValue": 0, "integerValue": 0, "stringSetValue": [] } ], "registeredResources": [ { "name": "CPU", "type": "INTEGER", "doubleValue": 0, "longValue": 0, "integerValue": 2048 }, { "name": "MEMORY", "type": "INTEGER", "doubleValue": 0, "longValue": 0, "integerValue": 3705 }, { "name": "PORTS", "type": "STRINGSET", "doubleValue": 0, "longValue": 0, "integerValue": 0, "stringSetValue": [ "22", "2376", "2375", "51678", "51679" ] }, { "name": "PORTS_UDP", "type": "STRINGSET", "doubleValue": 0, "longValue": 0, "integerValue": 0, "stringSetValue": [] } ], "status": "DRAINING", "agentConnected": true, "runningTasksCount": 2, "pendingTasksCount": 0, "attributes": [ { "name": "ecs.capability.secrets.asm.environment-variables" }, { "name": "ecs.capability.branch-cni-plugin-version", "value": "e0703516-" }, { "name": "ecs.ami-id", "value": "ami-00e0090ac21971297" }, { "name": "ecs.capability.secrets.asm.bootstrap.log-driver" }, { "name": "com.amazonaws.ecs.capability.logging-driver.none" }, { "name": "ecs.capability.ecr-endpoint" }, { "name": "ecs.capability.docker-plugin.local" }, { "name": "ecs.capability.task-cpu-mem-limit" }, { "name": "ecs.capability.secrets.ssm.bootstrap.log-driver" }, { "name": "com.amazonaws.ecs.capability.docker-remote-api.1.30" }, { "name": "com.amazonaws.ecs.capability.docker-remote-api.1.31" }, { "name": "com.amazonaws.ecs.capability.docker-remote-api.1.32" }, { "name": "ecs.availability-zone", "value": "us-west-2c" }, { "name": "ecs.capability.aws-appmesh" }, { "name": "com.amazonaws.ecs.capability.logging-driver.awslogs" }, { "name": "com.amazonaws.ecs.capability.docker-remote-api.1.24" }, { "name": "ecs.capability.task-eni-trunking" }, { "name": "com.amazonaws.ecs.capability.docker-remote-api.1.25" }, { "name": "com.amazonaws.ecs.capability.docker-remote-api.1.26" }, { "name": "com.amazonaws.ecs.capability.docker-remote-api.1.27" }, { "name": "com.amazonaws.ecs.capability.docker-remote-api.1.28" }, { "name": "com.amazonaws.ecs.capability.privileged-container" }, { "name": "com.amazonaws.ecs.capability.docker-remote-api.1.29" }, { "name": "ecs.cpu-architecture", "value": "x86_64" }, { "name": "com.amazonaws.ecs.capability.ecr-auth" }, { "name": "com.amazonaws.ecs.capability.docker-remote-api.1.20" }, { "name": "ecs.os-type", "value": "linux" }, { "name": "com.amazonaws.ecs.capability.docker-remote-api.1.21" }, { "name": "com.amazonaws.ecs.capability.docker-remote-api.1.22" }, { "name": "ecs.capability.task-eia" }, { "name": "com.amazonaws.ecs.capability.docker-remote-api.1.23" }, { "name": "ecs.capability.private-registry-authentication.secretsmanager" }, { "name": "com.amazonaws.ecs.capability.logging-driver.syslog" }, { "name": "com.amazonaws.ecs.capability.logging-driver.json-file" }, { "name": "ecs.capability.execution-role-awslogs" }, { "name": "ecs.vpc-id", "value": "vpc-1234" }, { "name": "com.amazonaws.ecs.capability.docker-remote-api.1.17" }, { "name": "com.amazonaws.ecs.capability.docker-remote-api.1.18" }, { "name": "com.amazonaws.ecs.capability.docker-remote-api.1.19" }, { "name": "ecs.capability.task-eni" }, { "name": "ecs.capability.execution-role-ecr-pull" }, { "name": "ecs.capability.container-health-check" }, { "name": "ecs.subnet-id", "value": "subnet-1234" }, { "name": "ecs.instance-type", "value": "c5.large" }, { "name": "com.amazonaws.ecs.capability.task-iam-role-network-host" }, { "name": "ecs.capability.container-ordering" }, { "name": "ecs.capability.cni-plugin-version", "value": "91ccefc8-2019.06.0" }, { "name": "ecs.capability.pid-ipc-namespace-sharing" }, { "name": "ecs.capability.secrets.ssm.environment-variables" }, { "name": "com.amazonaws.ecs.capability.task-iam-role" } ], "registeredAt": 1560788724.507, "attachments": [], "tags": [] } ], "failures": [] }
-
Per API i dettagli, vedere UpdateContainerInstancesState
in AWS CLI Command Reference.
-
Il seguente esempio di codice mostra come utilizzareupdate-service-primary-task-set
.
- AWS CLI
-
Per aggiornare il set di attività principale per un servizio
L'
update-service-primary-task-set
esempio seguente aggiorna il set di attività principale per il servizio specificato.aws ecs update-service-primary-task-set \ --cluster
MyCluster
\ --serviceMyService
\ --primary-task-setarn:aws:ecs:us-west-2:123456789012:task-set/MyCluster/MyService/ecs-svc/1234567890123456789
Output:
{ "taskSet": { "id": "ecs-svc/1234567890123456789", "taskSetArn": "arn:aws:ecs:us-west-2:123456789012:task-set/MyCluster/MyService/ecs-svc/1234567890123456789", "status": "PRIMARY", "taskDefinition": "arn:aws:ecs:us-west-2:123456789012:task-definition/sample-fargate:2", "computedDesiredCount": 1, "pendingCount": 0, "runningCount": 0, "createdAt": 1557128360.711, "updatedAt": 1557129412.653, "launchType": "EC2", "networkConfiguration": { "awsvpcConfiguration": { "subnets": [ "subnet-12344321" ], "securityGroups": [ "sg-12344312" ], "assignPublicIp": "DISABLED" } }, "loadBalancers": [], "serviceRegistries": [], "scale": { "value": 50.0, "unit": "PERCENT" }, "stabilityStatus": "STABILIZING", "stabilityStatusAt": 1557129279.914 } }
-
Per API i dettagli, vedere UpdateServicePrimaryTaskSet
in AWS CLI Command Reference.
-
Il seguente esempio di codice mostra come utilizzareupdate-service
.
- AWS CLI
-
Esempio 1: Per modificare la definizione dell'attività utilizzata in un servizio
L'
update-service
esempio seguente aggiorna ilmy-http-service
servizio per utilizzare la definizione dell'amazon-ecs-sample
attività.aws ecs update-service --service
my-http-service
--task-definitionamazon-ecs-sample
Esempio 2: Per modificare il numero di attività in un servizio
L'
update-service
esempio seguente aggiorna il numero di attività desiderato del serviziomy-http-service
a 3.aws ecs update-service --service
my-http-service
--desired-count3
Per ulteriori informazioni, consulta la sezione Aggiornamento di un servizio nella Amazon ECS Developer Guide.
-
Per API i dettagli, consulta UpdateService AWS CLI
Command Reference.
-
Il seguente esempio di codice mostra come utilizzareupdate-task-set
.
- AWS CLI
-
Per aggiornare un set di attività
L'
update-task-set
esempio seguente aggiorna un set di attività per regolare la scala.aws ecs update-task-set \ --cluster
MyCluster
\ --serviceMyService
\ --task-setarn:aws:ecs:us-west-2:123456789012:task-set/MyCluster/MyService/ecs-svc/1234567890123456789
\ --scalevalue=50,unit=PERCENT
Output:
{ "taskSet": { "id": "ecs-svc/1234567890123456789", "taskSetArn": "arn:aws:ecs:us-west-2:123456789012:task-set/MyCluster/MyService/ecs-svc/1234567890123456789", "status": "ACTIVE", "taskDefinition": "arn:aws:ecs:us-west-2:123456789012:task-definition/sample-fargate:2", "computedDesiredCount": 0, "pendingCount": 0, "runningCount": 0, "createdAt": 1557128360.711, "updatedAt": 1557129279.914, "launchType": "EC2", "networkConfiguration": { "awsvpcConfiguration": { "subnets": [ "subnet-12344321" ], "securityGroups": [ "sg-12344321" ], "assignPublicIp": "DISABLED" } }, "loadBalancers": [], "serviceRegistries": [], "scale": { "value": 50.0, "unit": "PERCENT" }, "stabilityStatus": "STABILIZING", "stabilityStatusAt": 1557129279.914 } }
-
Per API i dettagli, vedere UpdateTaskSet
in AWS CLI Command Reference.
-