Amazon-ECS-Beispiele unter Verwendung der AWS CLI
Die folgenden Codebeispiele zeigen, wie Sie Aktionen durchführen und gängige Szenarien implementieren, indem Sie die AWS Command Line Interface mit Amazon ECS nutzen.
Aktionen sind Codeauszüge aus größeren Programmen und müssen im Kontext ausgeführt werden. Während Aktionen Ihnen zeigen, wie Sie einzelne Service-Funktionen aufrufen, können Sie Aktionen im Kontext der zugehörigen Szenarien anzeigen.
Jedes Beispiel enthält einen Link zum vollständigen Quellcode, wo Sie Anleitungen zum Einrichten und Ausführen des Codes im Kontext finden.
Themen
Aktionen
Das folgende Codebeispiel zeigt, wie capacity-provider-update verwendet wird.
- AWS CLI
-
So aktualisieren Sie den Kapazitätsanbieter in einem ECS-Cluster
Das folgende
update-capacity-provider-Beispiel zeigt, wie wir die Parameter des Kapazitätsanbieters in einem ECS-Cluster ändern können.aws ecs update-capacity-provider \ --nameInfra-ECS-Cluster-ECS-project-update-cluster-d6bb6d5b-EC2CapacityProvider-3fIpdkLywwFt\ --auto-scaling-group-provider"managedScaling={status=DISABLED,targetCapacity=50,minimumScalingStepSize=2,maximumScalingStepSize=30,instanceWarmupPeriod=200},managedTerminationProtection=DISABLED,managedDraining=DISABLED"Ausgabe:
{ "capacityProvider": { "capacityProviderArn": "arn:aws:ecs:us-west-2:123456789012:capacity-provider/Infra-ECS-Cluster-ECS-project-update-cluster-d6bb6d5b-EC2CapacityProvider-3fIpdkLywwFt", "name": "Infra-ECS-Cluster-ECS-project-update-cluster-d6bb6d5b-EC2CapacityProvider-3fIpdkLywwFt", "status": "ACTIVE", "autoScalingGroupProvider": { "autoScalingGroupArn": "arn:aws:autoscaling:us-west-2:123456789012:autoScalingGroup:424941d1-b43f-4a17-adbb-08b6a6e397e1:autoScalingGroupName/Infra-ECS-Cluster-ECS-project-update-cluster-d6bb6d5b-ECSAutoScalingGroup-f44jrQHS2nRB", "managedScaling": { "status": "ENABLED", "targetCapacity": 100, "minimumScalingStepSize": 1, "maximumScalingStepSize": 10000, "instanceWarmupPeriod": 300 }, "managedTerminationProtection": "DISABLED", "managedDraining": "ENABLED" }, "updateStatus": "UPDATE_IN_PROGRESS", "tags": [] } }Weitere Informationen zum Kapazitätsanbieter finden Sie unter Amazon-ECS-Kapazitätsanbieter für den EC2-Starttyp im Amazon-ECS-Entwicklerhandbuch.
-
API-Details finden Sie unter CapacityProviderUpdate
in der AWS CLI-Befehlsreferenz.
-
Das folgende Codebeispiel zeigt, wie create-capacity-provider verwendet wird.
- AWS CLI
-
So erstellen Sie einen Kapazitätsanbieter
Im folgenden create-capacity-provider-Beispiel wird ein Kapazitätsanbieter erstellt, der die Auto-Scaling-Gruppe MyASG verwendet und die verwaltete Skalierung sowie den verwalteten Beendigungsschutz aktiviert hat. Diese Konfiguration wird für die automatische Skalierung von Amazon ECS-Clustern verwendet.
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"Ausgabe:
{ "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": [] }Weitere Informationen finden Sie unter Auto Scaling von Amazon-ECS-Clustern im Amazon-ECS-Entwicklerhandbuch.
-
API-Details finden Sie unter CreateCapacityProvider
in der AWS CLI-Befehlsreferenz.
-
Das folgende Codebeispiel zeigt, wie create-cluster verwendet wird.
- AWS CLI
-
Beispiel 1: So erstellen Sie einen neuen Cluster
Im folgenden
create-cluster-Beispiel wird ein Cluster mit dem NamenMyClustererstellt und CloudWatch Container Insights mit verbesserter Beobachtbarkeit aktiviert.aws ecs create-cluster \ --cluster-nameMyCluster\ --settingsname=containerInsights,value=enhancedAusgabe:
{ "cluster": { "clusterArn": "arn:aws:ecs:us-west-2:123456789012:cluster/MyCluster", "clusterName": "MyCluster", "status": "ACTIVE", "registeredContainerInstancesCount": 0, "pendingTasksCount": 0, "runningTasksCount": 0, "activeServicesCount": 0, "statistics": [], "settings": [ { "name": "containerInsights", "value": "enhanced" } ], "tags": [] } }Weitere Informationen finden Sie unter Erstellen eines Clusters im Amazon-ECS-Entwicklerhandbuch.
Beispiel 2: So erstellen Sie einen neuen Cluster mithilfe von Kapazitätsanbietern
Im folgenden
create-cluster-Beispiel wird ein Cluster erstellt und diesem werden zwei bestehende Kapazitätsanbieter zugeordnet. Mit demcreate-capacity-provider-Befehl erstellen Sie einen Kapazitätsanbieter. Die Angabe einer Standardstrategie für Kapazitätsanbieter ist optional, wird jedoch empfohlen. In diesem Beispiel erstellen wir einen Cluster mit dem NamenMyClusterund ordnen ihm die KapazitätsanbieterMyCapacityProvider1undMyCapacityProvider2zu. Eine Standardstrategie für Kapazitätsanbieter wird festgelegt, bei der die Aufgaben gleichmäßig auf beide Kapazitätsanbieter verteilt werden.aws ecs create-cluster \ --cluster-nameMyCluster\ --capacity-providersMyCapacityProvider1MyCapacityProvider2\ --default-capacity-provider-strategycapacityProvider=MyCapacityProvider1,weight=1capacityProvider=MyCapacityProvider2,weight=1Ausgabe:
{ "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" } }Weitere Informationen finden Sie unter Cluster-Kapazitätsanbieter im Amazon-ECS-Entwicklerhandbuch.
Beispiel 3: So erstellen Sie einen neuen Cluster mit mehreren Tags
Im folgenden
create-cluster-Beispiel wird ein Cluster mit mehreren Tags erstellt. Weitere Informationen zum Hinzufügen von Tags mithilfe der Kurznotation finden Sie unter Verwenden der Kurzsyntax mit der AWS-Befehlszeilenschnittstelle im AWS-CLI-Benutzerhandbuch.aws ecs create-cluster \ --cluster-nameMyCluster\ --tagskey=key1,value=value1key=key2,value=value2Ausgabe:
{ "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" } ] } }Weitere Informationen finden Sie unter Erstellen eines Clusters im Amazon-ECS-Entwicklerhandbuch.
-
API-Details finden Sie unter CreateCluster
in der AWS CLI-Befehlsreferenz.
-
Das folgende Codebeispiel zeigt, wie create-service verwendet wird.
- AWS CLI
-
Beispiel 1: So erstellen Sie einen Service mit einer Fargate-Aufgabe
Das folgende
create-service-Beispiel zeigt, wie Sie einen Service mithilfe einer Fargate-Aufgabe erstellen.aws ecs create-service \ --clusterMyCluster\ --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=value1key=key2,value=value2key=key3,value=value3Ausgabe:
{ "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" } }Weitere Informationen finden Sie unter Erstellen eines Service im Amazon-ECS-Entwicklerhandbuch.
Beispiel 2: So erstellen Sie einen Service mit dem EC2-Starttyp
Das folgende
create-service-Beispiel zeigt, wie Sie einen Service mit dem Namenecs-simple-servicemithilfe einer Aufgabe erstellen, die den EC2-Starttyp verwendet. Der Service verwendet diesleep360-Aufgabendefinition und behält 1 Instanziierung der Aufgabe bei.aws ecs create-service \ --clusterMyCluster\ --service-nameecs-simple-service\ --task-definitionsleep360:2\ --desired-count1Ausgabe:
{ "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" } }Weitere Informationen finden Sie unter Erstellen eines Service im Amazon-ECS-Entwicklerhandbuch.
Beispiel 3: So erstellen Sie einen Service, der einen externen Bereitstellungs-Controller verwendet
Im folgenden
create-service-Beispiel wird ein Service erstellt, der einen externen Bereitstellungs-Controller verwendet.aws ecs create-service \ --clusterMyCluster\ --service-nameMyService\ --deployment-controllertype=EXTERNAL\ --desired-count1Ausgabe:
{ "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" } }Weitere Informationen finden Sie unter Erstellen eines Service im Amazon-ECS-Entwicklerhandbuch.
Beispiel 4: So erstellen Sie einen neuen Service hinter einem Load Balancer
Das folgende
create-service-Beispiel zeigt, wie Sie einen Service erstellen, der sich hinter einem Load Balancer befindet. Sie müssen einen Load Balancer in derselben Region wie Ihre Container-Instance konfiguriert haben. In diesem Beispiel werden die Option--cli-input-jsonund eine JSON-Eingabedatei mit dem Namenecs-simple-service-elb.jsonund dem folgenden Inhalt verwendet.aws ecs create-service \ --clusterMyCluster\ --service-nameecs-simple-service-elb\ --cli-input-jsonfile://ecs-simple-service-elb.jsonInhalt von
ecs-simple-service-elb.json:{ "serviceName": "ecs-simple-service-elb", "taskDefinition": "ecs-demo", "loadBalancers": [ { "loadBalancerName": "EC2Contai-EcsElast-123456789012", "containerName": "simple-demo", "containerPort": 80 } ], "desiredCount": 10, "role": "ecsServiceRole" }Ausgabe:
{ "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 } }Weitere Informationen finden Sie unter Verwenden von Load Balancing zur Verteilung des Amazon-ECS-Servicedatenverkehrs im Amazon-ECS-Entwicklerhandbuch.
Beispiel 5: So konfigurieren Sie Amazon-EBS-Volumes bei der Serviceerstellung
Das folgende
create-service-Beispiel zeigt, wie Amazon-EBS-Volumes für jede Aufgabe konfiguriert werden, die vom Service verwaltet wird. Sie müssen über eine Amazon-ECS-Infrastrukturrolle verfügen, die mit der angehängten verwalteten RichtlinieAmazonECSInfrastructureRolePolicyForVolumeskonfiguriert ist. Sie müssen eine Aufgabendefinition mit demselben Volume-Namen wie in dercreate-service-Anforderung angeben. In diesem Beispiel werden die Option--cli-input-jsonund eine JSON-Eingabedatei mit dem Namenecs-simple-service-ebs.jsonund dem folgenden Inhalt verwendet.aws ecs create-service \ --cli-input-jsonfile://ecs-simple-service-ebs.jsonInhalt von
ecs-simple-service-ebs.json:{ "cluster": "mycluster", "taskDefinition": "mytaskdef", "serviceName": "ecs-simple-service-ebs", "desiredCount": 2, "launchType": "FARGATE", "networkConfiguration":{ "awsvpcConfiguration":{ "assignPublicIp": "ENABLED", "securityGroups": ["sg-12344321"], "subnets":["subnet-12344321"] } }, "volumeConfigurations": [ { "name": "myEbsVolume", "managedEBSVolume": { "roleArn":"arn:aws:iam::123456789012:role/ecsInfrastructureRole", "volumeType": "gp3", "sizeInGiB": 100, "iops": 3000, "throughput": 125, "filesystemType": "ext4" } } ] }Ausgabe:
{ "service": { "serviceArn": "arn:aws:ecs:us-west-2:123456789012:service/mycluster/ecs-simple-service-ebs", "serviceName": "ecs-simple-service-ebs", "clusterArn": "arn:aws:ecs:us-west-2:123456789012:cluster/mycluster", "loadBalancers": [], "serviceRegistries": [], "status": "ACTIVE", "desiredCount": 2, "runningCount": 0, "pendingCount": 0, "launchType": "EC2", "taskDefinition": "arn:aws:ecs:us-west-2:123456789012:task-definition/mytaskdef:3", "deploymentConfiguration": { "deploymentCircuitBreaker": { "enable": false, "rollback": false }, "maximumPercent": 200, "minimumHealthyPercent": 100 }, "deployments": [ { "id": "ecs-svc/7851020056849183687", "status": "PRIMARY", "taskDefinition": "arn:aws:ecs:us-west-2:123456789012:task-definition/mytaskdef:3", "desiredCount": 0, "pendingCount": 0, "runningCount": 0, "failedTasks": 0, "createdAt": "2025-01-21T11:32:38.034000-06:00", "updatedAt": "2025-01-21T11:32:38.034000-06:00", "launchType": "EC2", "networkConfiguration": { "awsvpcConfiguration": { "subnets": [ "subnet-12344321" ], "securityGroups": [ "sg-12344321" ], "assignPublicIp": "DISABLED" } }, "rolloutState": "IN_PROGRESS", "rolloutStateReason": "ECS deployment ecs-svc/7851020056849183687 in progress.", "volumeConfigurations": [ { "name": "myEBSVolume", "managedEBSVolume": { "volumeType": "gp3", "sizeInGiB": 100, "iops": 3000, "throughput": 125, "roleArn": "arn:aws:iam::123456789012:role/ecsInfrastructureRole", "filesystemType": "ext4" } } ] } ], "roleArn": "arn:aws:iam::123456789012:role/aws-service-role/ecs.amazonaws.com/AWSServiceRoleForECS", "events": [], "createdAt": "2025-01-21T11:32:38.034000-06:00", "placementConstraints": [], "placementStrategy": [], "networkConfiguration": { "awsvpcConfiguration": { "subnets": [ "subnet-12344321" ], "securityGroups": [ "sg-12344321" ], "assignPublicIp": "DISABLED" } }, "healthCheckGracePeriodSeconds": 0, "schedulingStrategy": "REPLICA", "deploymentController": { "type": "ECS" }, "createdBy": "arn:aws:iam::123456789012:user/AIDACKCEVSQ6C2EXAMPLE", "enableECSManagedTags": false, "propagateTags": "NONE", "enableExecuteCommand": false, "availabilityZoneRebalancing": "DISABLED" } }Weitere Informationen finden Sie unter Verwenden von Amazon-EBS-Volumes mit Amazon ECS im Amazon-ECS-Entwicklerhandbuch.
-
API-Details finden Sie unter CreateService
in der AWS CLI-Befehlsreferenz.
-
Das folgende Codebeispiel zeigt, wie create-task-set verwendet wird.
- AWS CLI
-
So erstellen Sie einen Aufgabensatz
Im folgenden
create-task-set-Beispiel wird ein Aufgabensatz in einem Service erstellt, der einen externen Bereitstellungs-Controller verwendet.aws ecs create-task-set \ --clusterMyCluster\ --serviceMyService\ --task-definitionMyTaskDefinition:2\ --network-configuration"awsvpcConfiguration={subnets=[subnet-12344321],securityGroups=[sg-12344321]}"Ausgabe:
{ "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 } }-
API-Details finden Sie unter CreateTaskSet
in der AWS CLI-Befehlsreferenz.
-
Das folgende Codebeispiel zeigt, wie delete-account-setting verwendet wird.
- AWS CLI
-
So löschen Sie die Kontoeinstellungen für einen bestimmten IAM-Benutzer oder eine -Rolle
Im folgenden
delete-account-setting-Beispiel werden die Kontoeinstellungen für den bestimmten IAM-Benutzer oder die -Rolle gelöscht.aws ecs delete-account-setting \ --nameserviceLongArnFormat\ --principal-arnarn:aws:iam::123456789012:user/MyUserAusgabe:
{ "setting": { "name": "serviceLongArnFormat", "value": "enabled", "principalArn": "arn:aws:iam::123456789012:user/MyUser" } }Weitere Informationen finden Sie unter Amazon-Ressourcennamen (ARNs) und IDs im Amazon-ECS-Entwicklerhandbuch.
-
API-Details finden Sie unter DeleteAccountSetting
in der AWS CLI-Befehlsreferenz.
-
Das folgende Codebeispiel zeigt, wie delete-attributes verwendet wird.
- AWS CLI
-
So löschen Sie ein oder mehrere benutzerdefinierte Attribute aus einer Amazon-ECS-Ressource
Im folgenden
delete-attributes-Beispiel wird ein Attribut mit dem Namenstackaus einer Container-Instance gelöscht.aws ecs delete-attributes \ --attributesname=stack,targetId=arn:aws:ecs:us-west-2:130757420319:container-instance/1c3be8ed-df30-47b4-8f1e-6e68ebd01f34Ausgabe:
{ "attributes": [ { "name": "stack", "targetId": "arn:aws:ecs:us-west-2:130757420319:container-instance/1c3be8ed-df30-47b4-8f1e-6e68ebd01f34", "value": "production" } ] }-
API-Details finden Sie unter DeleteAttributes
in der AWS CLI-Befehlsreferenz.
-
Das folgende Codebeispiel zeigt, wie delete-capacity-provider verwendet wird.
- AWS CLI
-
Beispiel 1: So löschen Sie einen Kapazitätsanbieter mit dem Amazon-Ressourcennamen (ARN)
Im folgenden
delete-capacity-provider-Beispiel wird ein Kapazitätsanbieter gelöscht, indem der Amazon-Ressourcenname (ARN) des Kapazitätsanbieters angegeben wird. Der ARN sowie der Status der Löschung des Kapazitätsanbieters können mit demdescribe-capacity-providers-Befehl abgerufen werden.aws ecs delete-capacity-provider \ --capacity-providerarn:aws:ecs:us-west-2:123456789012:capacity-provider/ExampleCapacityProviderAusgabe:
{ "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": [] } }Weitere Informationen finden Sie unter Cluster-Kapazitätsanbieter im Amazon-ECS-Entwicklerhandbuch.
Beispiel 2: So löschen Sie einen Kapazitätsanbieter anhand des Namens
Im folgenden
delete-capacity-provider-Beispiel wird ein Kapazitätsanbieter gelöscht, indem der Kurzname des Kapazitätsanbieters angegeben wird. Der Kurzname sowie der Status der Löschung des Kapazitätsanbieters können mit demdescribe-capacity-providers-Befehl abgerufen werden.aws ecs delete-capacity-provider \ --capacity-providerExampleCapacityProviderAusgabe:
{ "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": [] } }Weitere Informationen finden Sie unter Cluster-Kapazitätsanbieter im Amazon-ECS-Entwicklerhandbuch.
-
API-Details finden Sie unter DeleteCapacityProvider
in der AWS CLI-Befehlsreferenz.
-
Das folgende Codebeispiel zeigt, wie delete-cluster verwendet wird.
- AWS CLI
-
So löschen Sie einen leeren Cluster
Im folgenden
delete-cluster-Beispiel wird der angegebene leere Cluster gelöscht.aws ecs delete-cluster --clusterMyClusterAusgabe:
{ "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": [] } }Weitere Informationen finden Sie unter Löschen eines Clusters im Amazon-ECS-Entwicklerhandbuch.
-
API-Details finden Sie unter DeleteCluster
in der AWS CLI-Befehlsreferenz.
-
Das folgende Codebeispiel zeigt, wie delete-service verwendet wird.
- AWS CLI
-
So löschen Sie einen Service
Im folgenden
ecs delete-service-Beispiel wird der angegebene Service aus einem Cluster gelöscht. Sie können den--force-Parameter angeben, um den Service auch dann zu löschen, wenn er nicht auf null Aufgaben herunterskaliert wurde.aws ecs delete-service --clusterMyCluster--serviceMyService1--forceWeitere Informationen finden Sie unter Löschen eines Service im Amazon-ECS-Entwicklerhandbuch.
-
API-Details finden Sie unter DeleteService
in der AWS CLI-Befehlsreferenz.
-
Das folgende Codebeispiel zeigt, wie delete-task-definitions verwendet wird.
- AWS CLI
-
So löschen Sie eine Aufgabendefinition
Im folgenden
delete-task-definitions-Beispiel wird eine INACTIVE-Aufgabendefinition gelöscht.aws ecs delete-task-definitions \ --task-definitioncurltest:1Ausgabe:
{ "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": [] }Weitere Informationen finden Sie unter Amazon-ECS-Aufgabendefinitionen im Amazon-ECS-Entwicklerhandbuch.
-
API-Details finden Sie unter DeleteTaskDefinitions
in der AWS CLI-Befehlsreferenz.
-
Das folgende Codebeispiel zeigt, wie delete-task-set verwendet wird.
- AWS CLI
-
So löschen Sie einen Aufgabensatz
Im folgenden
delete-task-set-Beispiel wird gezeigt, wie ein Aufgabensatz gelöscht wird. Sie können den--force-Parameter angeben, um den Aufgabensatz auch dann zu löschen, wenn er nicht auf null herunterskaliert wurde.aws ecs delete-task-set \ --clusterMyCluster\ --serviceMyService\ --task-setarn:aws:ecs:us-west-2:123456789012:task-set/MyCluster/MyService/ecs-svc/1234567890123456789\ --forceAusgabe:
{ "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 } }-
API-Details finden Sie unter DeleteTaskSet
in der AWS CLI-Befehlsreferenz.
-
Das folgende Codebeispiel zeigt, wie deregister-container-instance verwendet wird.
- AWS CLI
-
So heben Sie die Registrierung einer Container-Instance bei einem Cluster auf
Im folgenden
deregister-container-instance-Beispiel wird die Registrierung einer Container-Instance bei dem angegebenen Cluster aufgehoben. Wenn in der Container-Instance noch Aufgaben ausgeführt werden, müssen Sie entweder diese Aufgaben beenden, bevor Sie die Registrierung aufheben, oder die Option--forceverwenden.aws ecs deregister-container-instance \ --clusterarn:aws:ecs:us-west-2:123456789012:cluster/MyCluster\ --container-instancearn:aws:ecs:us-west-2:123456789012:container-instance/a1b2c3d4-5678-90ab-cdef-11111EXAMPLE\ --forceAusgabe:
{ "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" } }Weitere Informationen finden Sie unter Aufheben der Registrierung einer Container-Instance im Amazon-ECS-Entwicklerhandbuch.
-
API-Details finden Sie unter DeregisterContainerInstance
in der AWS CLI-Befehlsreferenz.
-
Das folgende Codebeispiel zeigt, wie deregister-task-definition verwendet wird.
- AWS CLI
-
So heben Sie die Registrierung einer Aufgabendefinition auf
Im folgenden
deregister-task-definition-Beispiel wird die Registrierung der ersten Revision dercurler-Aufgabendefinition in Ihrer Standardregion aufgehoben.aws ecs deregister-task-definition --task-definitioncurler:1Beachten Sie, dass in der resultierenden Ausgabe für den Status der Aufgabendefinition
INACTIVEangezeigt wird.{ "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 } }Weitere Informationen finden Sie unter Amazon-ECS-Aufgabendefinitionen im Amazon-ECS-Entwicklerhandbuch.
-
API-Details finden Sie unter DeregisterTaskDefinition
in der AWS CLI-Befehlsreferenz.
-
Das folgende Codebeispiel zeigt, wie describe-capacity-providers verwendet wird.
- AWS CLI
-
Beispiel 1: So beschreiben Sie alle Kapazitätsanbieter
Im folgenden
describe-capacity-providers-Beispiel werden Details zu allen Kapazitätsanbietern abgerufen.aws ecs describe-capacity-providersAusgabe:
{ "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": [] } ] }Weitere Informationen finden Sie unter Cluster-Kapazitätsanbieter im Amazon-ECS-Entwicklerhandbuch.
Beispiel 2: So beschreiben Sie einen bestimmten Kapazitätsanbieter
Im folgenden
describe-capacity-providers-Beispiel werden Details zu einem bestimmten Kapazitätsanbieter abgerufen. Durch die Verwendung des--include TAGS-Parameters werden der Ausgabe die mit dem Kapazitätsanbieter verknüpften Tags hinzugefügt.aws ecs describe-capacity-providers \ --capacity-providersMyCapacityProvider\ --includeTAGSAusgabe:
{ "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" } ] } ] }Weitere Informationen finden Sie unter Cluster-Kapazitätsanbieter im Amazon-ECS-Entwicklerhandbuch.
-
API-Details finden Sie unter DescribeCapacityProviders
in der AWS CLI-Befehlsreferenz.
-
Das folgende Codebeispiel zeigt, wie describe-clusters verwendet wird.
- AWS CLI
-
Beispiel 1: So beschreiben Sie einen Cluster
Im folgenden
describe-clusters-Beispiel werden Details zum angegebenen Cluster abgerufen.aws ecs describe-clusters \ --clusterdefaultAusgabe:
{ "clusters": [ { "status": "ACTIVE", "clusterName": "default", "registeredContainerInstancesCount": 0, "pendingTasksCount": 0, "runningTasksCount": 0, "activeServicesCount": 1, "clusterArn": "arn:aws:ecs:us-west-2:123456789012:cluster/default" } ], "failures": [] }Weitere Informationen finden Sie unter Amazon-ECS-Cluster im Amazon-ECS-Entwicklerhandbuch.
Beispiel 2: So beschreiben Sie einen Cluster mit der attachment-Option
Das folgende
describe-clusters-Beispiel spezifiziert die Option ATTACHMENTS. Es werden Details über den angegebenen Cluster und eine Liste von Ressourcen abgerufen, die dem Cluster in Form von Anhängen zugeordnet sind. Wenn Sie einen Kapazitätsanbieter mit einem Cluster verwenden, werden die Ressourcen, entweder AutoScaling-Pläne oder Skalierungsrichtlinien, als asp oder as_policy ATTACHMENTS dargestellt.aws ecs describe-clusters \ --includeATTACHMENTS\ --clusterssampleClusterAusgabe:
{ "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": [] }Weitere Informationen finden Sie unter Amazon-ECS-Cluster im Amazon-ECS-Entwicklerhandbuch.
-
API-Details finden Sie unter DescribeClusters
in der AWS CLI-Befehlsreferenz.
-
Das folgende Codebeispiel zeigt, wie describe-container-instances verwendet wird.
- AWS CLI
-
So beschreiben Sie eine Container-Instance
Im folgenden
describe-container-instances-Beispiel werden Details für eine Container-Instance imupdate-Cluster abgerufen, wobei die UUID der Container-Instance als Bezeichner verwendet wird.aws ecs describe-container-instances \ --clusterupdate\ --container-instancesa1b2c3d4-5678-90ab-cdef-11111EXAMPLEAusgabe:
{ "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" } } ] }Weitere Informationen finden Sie unter Container-Instances in Amazon ECS im Amazon-ECS-Entwicklerhandbuch.
-
API-Details finden Sie unter DescribeContainerInstances
in der AWS CLI-Befehlsreferenz.
-
Das folgende Codebeispiel zeigt, wie describe-service-deployments verwendet wird.
- AWS CLI
-
So beschreiben Sie Details zur Servicebereitstellung
Im folgenden
describe-service-deployments-Beispiel werden die Servicebereitstellungsdetails für die Servicebereitstellung mit dem ARNarn:aws:ecs:us-east-1:123456789012:service-deployment/example-cluster/example-service/ejGvqq2ilnbKT9qj0vLJezurückgegeben.aws ecs describe-service-deployments \ --service-deployment-arnarn:aws:ecs:us-east-1:123456789012:service-deployment/example-cluster/example-service/ejGvqq2ilnbKT9qj0vLJeAusgabe:
{ "serviceDeployments": [ { "serviceDeploymentArn": "arn:aws:ecs:us-east-1:123456789012:service-deployment/example-cluster/example-service/ejGvqq2ilnbKT9qj0vLJe", "serviceArn": "arn:aws:ecs:us-east-1:123456789012:service/example-cluster/example-service", "clusterArn": "arn:aws:ecs:us-east-1:123456789012:cluster/example-cluster", "createdAt": "2024-10-31T08:03:30.917000-04:00", "startedAt": "2024-10-31T08:03:32.510000-04:00", "finishedAt": "2024-10-31T08:05:04.527000-04:00", "updatedAt": "2024-10-31T08:05:04.527000-04:00", "sourceServiceRevisions": [], "targetServiceRevision": { "arn": "arn:aws:ecs:us-east-1:123456789012:service-revision/example-cluster/example-service/1485800978477494678", "requestedTaskCount": 1, "runningTaskCount": 1, "pendingTaskCount": 0 }, "status": "SUCCESSFUL", "deploymentConfiguration": { "deploymentCircuitBreaker": { "enable": true, "rollback": true }, "maximumPercent": 200, "minimumHealthyPercent": 100, "alarms": { "alarmNames": [], "rollback": false, "enable": false } }, "deploymentCircuitBreaker": { "status": "MONITORING_COMPLETE", "failureCount": 0, "threshold": 3 }, "alarms": { "status": "DISABLED" } } ], "failures": [] }Weitere Informationen finden Sie unter Anzeigen des Serviceverlaufs mithilfe von Amazon-ECS-Servicebereitstellungen im Amazon-ECS-Entwicklerhandbuch.
-
API-Details finden Sie unter DescribeServiceDeployments
in der AWS CLI-Befehlsreferenz.
-
Das folgende Codebeispiel zeigt, wie describe-service-revisions verwendet wird.
- AWS CLI
-
So beschreiben Sie die Details der Service-Revision
Im folgenden
describe-service-revisions-Beispiel werden die Service-Revisionsdetails für die Service-Revision mit dem ARNarn:aws:ecs:us-east-1:123456789012:service-revision/example-cluster/example-service/1485800978477494678zurückgegeben.aws ecs describe-service-revisions \ --service-revision-arnsarn:aws:ecs:us-east-1:123456789012:service-revision/example-cluster/example-service/1485800978477494678Ausgabe:
{ "serviceRevisions": [ { "serviceRevisionArn": "arn:aws:ecs:us-east-1:123456789012:service-revision/example-cluster/example-service/1485800978477494678", "serviceArn": "arn:aws:ecs:us-east-1:123456789012:service/example-cluster/example-service", "clusterArn": "arn:aws:ecs:us-east-1:123456789012:cluster/example-cluster", "taskDefinition": "arn:aws:ecs:us-east-1:123456789012:task-definition/webserver:5", "capacityProviderStrategy": [ { "capacityProvider": "FARGATE", "weight": 1, "base": 0 } ], "platformVersion": "1.4.0", "platformFamily": "Linux", "networkConfiguration": { "awsvpcConfiguration": { "subnets": [ "subnet-0d0eab1bb38d5ca64", "subnet-0db5010045995c2d5" ], "securityGroups": [ "sg-02556bf85a191f59a" ], "assignPublicIp": "ENABLED" } }, "containerImages": [ { "containerName": "aws-otel-collector", "imageDigest": "sha256:7a1b3560655071bcacd66902c20ebe9a69470d5691fe3bd36baace7c2f3c4640", "image": "public.ecr.aws/aws-observability/aws-otel-collector:v0.32.0" }, { "containerName": "web", "imageDigest": "sha256:28402db69fec7c17e179ea87882667f1e054391138f77ffaf0c3eb388efc3ffb", "image": "nginx" } ], "guardDutyEnabled": false, "serviceConnectConfiguration": { "enabled": false }, "createdAt": "2024-10-31T08:03:29.302000-04:00" } ], "failures": [] }Weitere Informationen finden Sie unter Service-Revisionen in Amazon ECS im Amazon-ECS-Entwicklerhandbuch.
-
API-Details finden Sie unter DescribeServiceRevisions
in der AWS CLI-Befehlsreferenz.
-
Das folgende Codebeispiel zeigt, wie describe-services verwendet wird.
- AWS CLI
-
So beschreiben Sie einen Service
Im folgenden
describe-services-Beispiel werden Details für denmy-http-service-Service im Standard-Cluster abgerufen.aws ecs describe-services --servicesmy-http-serviceAusgabe:
{ "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": [] }Weitere Informationen finden Sie unter Services im Amazon-ECS-Entwicklerhandbuch.
-
API-Details finden Sie unter DescribeServices
in der AWS CLI-Befehlsreferenz.
-
Das folgende Codebeispiel zeigt, wie describe-task-definition verwendet wird.
- AWS CLI
-
So beschreiben Sie eine Aufgabendefinition
Im folgenden
describe-task-definition-Beispiel werden die Details einer Aufgabendefinition abgerufen.aws ecs describe-task-definition \ --task-definitionhello_world:8Ausgabe:
{ "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": [] }Weitere Informationen finden Sie unter Amazon-ECS-Aufgabendefinitionen im Amazon-ECS-Entwicklerhandbuch.
-
API-Details finden Sie unter DescribeTaskDefinition
in der AWS CLI-Befehlsreferenz.
-
Das folgende Codebeispiel zeigt, wie describe-task-sets verwendet wird.
- AWS CLI
-
So beschreiben Sie einen Aufgabensatz
Im folgenden
describe-task-sets-Beispiel wird ein Aufgabensatz in einem Service beschrieben, der einen externen Deployer verwendet.aws ecs describe-task-sets \ --clusterMyCluster\ --serviceMyService\ --task-setsarn:aws:ecs:us-west-2:123456789012:task-set/MyCluster/MyService/ecs-svc/1234567890123456789Ausgabe:
{ "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": [] }-
API-Details finden Sie unter DescribeTaskSets
in der AWS CLI-Befehlsreferenz.
-
Das folgende Codebeispiel zeigt, wie describe-tasks verwendet wird.
- AWS CLI
-
Beispiel 1: So beschreiben Sie eine einzelne Aufgabe
Im folgenden
describe-tasks-Beispiel werden die Details einer Aufgabe in einem Cluster abgerufen. Sie können die Aufgabe angeben, indem Sie entweder die ID oder den vollständigen ARN der Aufgabe verwenden. Dieses Beispiel nutzt den vollständigen ARN der Aufgabe.aws ecs describe-tasks \ --clusterMyCluster\ --tasksarn:aws:ecs:us-east-1:123456789012:task/MyCluster/4d590253bb114126b7afa7b58EXAMPLEAusgabe:
{ "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": [] }Weitere Informationen finden Sie unter Amazon-ECS-Aufgabendefinitionen im Amazon-ECS-Entwicklerhandbuch.
Beispiel 2: So beschreiben Sie mehrere Aufgaben
Im folgenden
describe-tasks-Beispiel werden die Details mehrerer Aufgaben in einem Cluster abgerufen. Sie können die Aufgabe angeben, indem Sie entweder die ID oder den vollständigen ARN der Aufgabe verwenden. In diesem Beispiel werden die vollständigen IDs der Aufgaben genutzt.aws ecs describe-tasks \ --clusterMyCluster\ --tasks"74de0355a10a4f979ac495c14EXAMPLE""d789e94343414c25b9f6bd59eEXAMPLE"Ausgabe:
{ "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": [] }Weitere Informationen finden Sie unter Amazon-ECS-Aufgabendefinitionen im Amazon-ECS-Entwicklerhandbuch.
-
API-Details finden Sie unter DescribeTasks
in der AWS CLI-Befehlsreferenz.
-
Das folgende Codebeispiel zeigt, wie execute-command verwendet wird.
- AWS CLI
-
So führen Sie einen interaktiven /bin/sh-Befehl aus
Im folgenden
execute-command-Beispiel wird ein interaktiver /bin/sh-Befehl für einen Container namens MyContainer für eine Aufgabe mit der IDarn:aws:ecs:us-east-1:123456789012:task/MyCluster/d789e94343414c25b9f6bd59eEXAMPLEausgeführt.aws ecs execute-command \ --clusterMyCluster\ --taskarn:aws:ecs:us-east-1:123456789012:task/MyCluster/d789e94343414c25b9f6bd59eEXAMPLE\ --containerMyContainer\ --interactive \ --command"/bin/sh"Mit diesem Befehl wird keine Ausgabe zurückgegeben.
Weitere Informationen finden Sie unter Verwenden von Amazon ECS Exec für das Debugging im Amazon-ECS-Entwicklerhandbuch.
-
API-Details finden Sie unter ExecuteCommand
in der AWS CLI-Befehlsreferenz.
-
Das folgende Codebeispiel zeigt, wie get-task-protection verwendet wird.
- AWS CLI
-
So rufen Sie den Schutzstatus der Aufgabe im ECS-Service ab
Im folgenden
get-task-protection-Beispiel wird der Schutzstatus von ECS-Aufgaben bereitgestellt, die zum Amazon-ECS-Service gehören.aws ecs get-task-protection \ --clusterECS-project-update-cluster\ --tasksc43ed3b1331041f289316f958adb6a24Ausgabe:
{ "protectedTasks": [ { "taskArn": "arn:aws:ecs:us-west-2:123456789012:task/c43ed3b1331041f289316f958adb6a24", "protectionEnabled": false } ], "failures": [] }Weitere Informationen zum Schutz von Aufgaben finden Sie unter Schützen Ihrer Amazon-ECS-Aufgaben vor dem Beenden durch Abskalierungsereignisse im Amazon-ECS-Entwicklerhandbuch.
-
API-Details finden Sie unter GetTaskProtection
in der AWS CLI-Befehlsreferenz.
-
Das folgende Codebeispiel zeigt, wie list-account-settings verwendet wird.
- AWS CLI
-
Beispiel 1: So zeigen Sie die Kontoeinstellungen für ein Konto an
Das folgende
list-account-settings-Beispiel zeigt die effektiven Kontoeinstellungen für ein Konto an.aws ecs list-account-settings --effective-settingsAusgabe:
{ "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" } ] }Beispiel 2: So zeigen Sie die Kontoeinstellungen für einen bestimmten IAM-Benutzer oder eine -Rolle an
Im folgenden
list-account-settings-Beispiel werden die Kontoeinstellungen für den bestimmten IAM-Benutzer oder die -Rolle angezeigt.aws ecs list-account-settings --principal-arnarn:aws:iam::123456789012:user/MyUserAusgabe:
{ "settings": [ { "name": "serviceLongArnFormat", "value": "enabled", "principalArn": "arn:aws:iam::123456789012:user/MyUser" } ] }Weitere Informationen finden Sie unter Amazon-Ressourcennamen (ARNs) und IDs im Amazon-ECS-Entwicklerhandbuch.
-
API-Details finden Sie unter ListAccountSettings
in der AWS CLI-Befehlsreferenz.
-
Das folgende Codebeispiel zeigt, wie list-attributes verwendet wird.
- AWS CLI
-
So führen Sie die Container-Instances auf, die ein bestimmtes Attribut enthalten
Im folgenden Beispiel werden die Attribute für Container-Instances aufgeführt, die das Attribut
stack=productionim Standard-Cluster enthalten.aws ecs list-attributes \ --target-typecontainer-instance\ --attribute-namestack\ --attribute-valueproduction\ --clusterdefaultAusgabe:
{ "attributes": [ { "name": "stack", "targetId": "arn:aws:ecs:us-west-2:130757420319:container-instance/1c3be8ed-df30-47b4-8f1e-6e68ebd01f34", "value": "production" } ] }Weitere Informationen finden Sie unter Konfiguration des Container-Agenten von Amazon ECS im Amazon-ECS-Entwicklerhandbuch.
-
API-Details finden Sie unter ListAttributes
in der AWS CLI-Befehlsreferenz.
-
Das folgende Codebeispiel zeigt, wie list-clusters verwendet wird.
- AWS CLI
-
So listen Sie Ihre verfügbaren Cluster auf
Im folgenden
list-clusters-Beispiel werden alle verfügbaren Cluster aufgelistet.aws ecs list-clustersAusgabe:
{ "clusterArns": [ "arn:aws:ecs:us-west-2:123456789012:cluster/MyECSCluster1", "arn:aws:ecs:us-west-2:123456789012:cluster/AnotherECSCluster" ] }Weitere Informationen finden Sie unter Amazon-ECS-Cluster im Amazon-ECS-Entwicklerhandbuch.
-
API-Details finden Sie unter ListClusters
in der AWS CLI-Befehlsreferenz.
-
Das folgende Codebeispiel zeigt, wie list-container-instances verwendet wird.
- AWS CLI
-
So listen Sie die Container-Instances in einem Cluster auf
Im folgenden
list-container-instances-Beispiel werden alle verfügbaren Container-Instances in einem Cluster aufgelistet.aws ecs list-container-instances --clusterMyClusterAusgabe:
{ "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" ] }Weitere Informationen finden Sie unter Container-Instances in Amazon ECS im Amazon-ECS-Entwicklerhandbuch.
-
API-Details finden Sie unter ListContainerInstances
in der AWS CLI-Befehlsreferenz.
-
Das folgende Codebeispiel zeigt, wie list-service-deployments verwendet wird.
- AWS CLI
-
So listen Sie Servicebereitstellungen auf
Im folgenden
list-service-deployments-Beispiel werden die Servicebereitstellungen für den Service mit dem Namenexample-serviceabgerufen.aws ecs list-service-deployments \ --servicearn:aws:ecs:us-east-1:123456789012:service/example-cluster/example-serviceAusgabe:
{ "serviceDeployments": [ { "serviceDeploymentArn": "arn:aws:ecs:us-east-1:123456789012:service-deployment/example-cluster/example-service/ejGvqq2ilnbKT9qj0vLJe", "serviceArn": "arn:aws:ecs:us-east-1:123456789012:service/example-cluster/example-service", "clusterArn": "arn:aws:ecs:us-east-1:123456789012:cluster/example-cluster", "startedAt": "2024-10-31T08:03:32.510000-04:00", "createdAt": "2024-10-31T08:03:30.917000-04:00", "finishedAt": "2024-10-31T08:05:04.527000-04:00", "targetServiceRevisionArn": "arn:aws:ecs:us-east-1:123456789012:service-revision/example-cluster/example-service/1485800978477494678", "status": "SUCCESSFUL" } ] }Weitere Informationen finden Sie unter Anzeigen des Serviceverlaufs mithilfe von Amazon-ECS-Servicebereitstellungen im Amazon-ECS-Entwicklerhandbuch.
-
API-Details finden Sie unter ListServiceDeployments
in der AWS CLI-Befehlsreferenz.
-
Das folgende Codebeispiel zeigt, wie list-services-by-namespace verwendet wird.
- AWS CLI
-
So listen Sie die Services in einem Namespace auf
Das folgende
list-services-by-namespace-Beispiel listet alle Services auf, die für den angegebenen Namespace in Ihrer Standardregion konfiguriert sind.aws ecs list-services-by-namespace \ --namespaceservice-connectAusgabe:
{ "serviceArns": [ "arn:aws:ecs:us-west-2:123456789012:service/MyCluster/MyService", "arn:aws:ecs:us-west-2:123456789012:service/tutorial/service-connect-nginx-service" ] }Weitere Informationen finden Sie unter Service Connect im Amazon-ECS-Entwicklerhandbuch.
-
API-Details finden Sie unter ListServicesByNamespace
in der AWS CLI-Befehlsreferenz.
-
Das folgende Codebeispiel zeigt, wie list-services verwendet wird.
- AWS CLI
-
So listen Sie die Services in einem Cluster auf
Das folgende
list-services-Beispiel zeigt, wie Sie die Services auflisten, die in einem Cluster ausgeführt werden.aws ecs list-services --clusterMyClusterAusgabe:
{ "serviceArns": [ "arn:aws:ecs:us-west-2:123456789012:service/MyCluster/MyService" ] }Weitere Informationen finden Sie unter Services im Amazon-ECS-Entwicklerhandbuch.
-
API-Details finden Sie unter ListServices
in der AWS CLI-Befehlsreferenz.
-
Das folgende Codebeispiel zeigt, wie list-tags-for-resource verwendet wird.
- AWS CLI
-
So listen Sie die Tags für eine Ressource auf
Im folgenden
list-tags-for-resource-Beispiel werden die Tags für einen bestimmten Cluster aufgelistet.aws ecs list-tags-for-resource \ --resource-arnarn:aws:ecs:us-west-2:123456789012:cluster/MyClusterAusgabe:
{ "tags": [ { "key": "key1", "value": "value1" }, { "key": "key2", "value": "value2" }, { "key": "key3", "value": "value3" } ] }-
API-Details finden Sie unter ListTagsForResource
in der AWS CLI-Befehlsreferenz.
-
Das folgende Codebeispiel zeigt, wie list-task-definition-families verwendet wird.
- AWS CLI
-
Beispiel 1: So listen Sie die registrierten Aufgabendefinitionsfamilien auf
Im folgenden
list-task-definition-families-Beispiel werden alle registrierten Aufgabendefinitionsfamilien aufgelistet.aws ecs list-task-definition-familiesAusgabe:
{ "families": [ "node-js-app", "web-timer", "hpcc", "hpcc-c4-8xlarge" ] }Beispiel 2: So filtern Sie die registrierten Aufgabendefinitionsfamilien
Im folgenden
list-task-definition-families-Beispiel werden die Revisionen der Aufgabendefinitionen aufgeführt, die mit „hpcc“ beginnen.aws ecs list-task-definition-families --family-prefixhpccAusgabe:
{ "families": [ "hpcc", "hpcc-c4-8xlarge" ] }Weitere Informationen finden Sie unter Aufgabendefinitionsparameter im Amazon-ECS-Entwicklerhandbuch.
-
API-Details finden Sie unter ListTaskDefinitionFamilies
in der AWS CLI-Befehlsreferenz.
-
Das folgende Codebeispiel zeigt, wie list-task-definitions verwendet wird.
- AWS CLI
-
Beispiel 1: So listen Sie die registrierten Aufgabendefinitionen auf
Im folgenden
list-task-definitions-Beispiel werden alle registrierten Aufgabendefinitionen aufgelistet.aws ecs list-task-definitionsAusgabe:
{ "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" ] }Beispiel 2: So listen Sie die registrierten Aufgabendefinitionen in einer Familie auf
Im folgenden list-task-definitions-Beispiel werden die Revisionen der Aufgabendefinitionen einer angegebenen Familie aufgeführt.
aws ecs list-task-definitions --family-prefixwordpressAusgabe:
{ "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" ] }Weitere Informationen finden Sie unter Amazon-ECS-Aufgabendefinitionen im Amazon-ECS-Entwicklerhandbuch.
-
API-Details finden Sie unter ListTaskDefinitions
in der AWS CLI-Befehlsreferenz.
-
Das folgende Codebeispiel zeigt, wie list-tasks verwendet wird.
- AWS CLI
-
Beispiel 1: So listen Sie die Aufgaben in einem Cluster auf
Im folgenden
list-tasks-Beispiel werden alle Aufgaben in einem Cluster aufgelistet.aws ecs list-tasks --clusterdefaultAusgabe:
{ "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" ] }Beispiel 2: So listen Sie die Aufgaben auf einer bestimmten Container-Instance auf
Im folgenden
list-tasks-Beispiel werden die Aufgaben auf einer Container-Instance aufgeführt, wobei die UUID der Container-Instance als Filter verwendet wird.aws ecs list-tasks --clusterdefault--container-instancea1b2c3d4-5678-90ab-cdef-33333EXAMPLEAusgabe:
{ "taskArns": [ "arn:aws:ecs:us-west-2:123456789012:task/a1b2c3d4-5678-90ab-cdef-44444EXAMPLE" ] }Weitere Informationen finden Sie unter Amazon-ECS-Aufgabendefinitionen im Amazon-ECS-Entwicklerhandbuch.
-
API-Details finden Sie unter ListTasks
in der AWS CLI-Befehlsreferenz.
-
Das folgende Codebeispiel zeigt, wie put-account-setting-default verwendet wird.
- AWS CLI
-
So ändern Sie die Standardeinstellungen eines Kontos
Im folgenden
put-account-setting-default-Beispiel wird die Standard-Kontoeinstellung für alle IAM-Benutzer oder -Rollen in Ihrem Konto geändert. Diese Änderungen gelten für das gesamte AWS-Konto, es sei denn, ein IAM-Benutzer oder eine IAM-Rolle und überschreibt diese Einstellungen explizit (für sich selbst).aws ecs put-account-setting-default --nameserviceLongArnFormat--valueenabledAusgabe:
{ "setting": { "name": "serviceLongArnFormat", "value": "enabled", "principalArn": "arn:aws:iam::123456789012:root" } }Weitere Informationen finden Sie unter Amazon-Ressourcennamen (ARNs) und IDs im Amazon-ECS-Entwicklerhandbuch.
-
API-Details finden Sie unter PutAccountSettingDefault
in der AWS CLI-Befehlsreferenz.
-
Das folgende Codebeispiel zeigt, wie put-account-setting verwendet wird.
- AWS CLI
-
So ändern Sie die Kontoeinstellung für Ihr IAM-Benutzerkonto
Im folgenden
put-account-setting-Beispiel wird diecontainerInsights-Kontoeinstellung für Ihr IAM-Benutzerkonto aufenhancedfestgelegt. Dadurch wird Container Insights mit verbesserter Beobachtbarkeit aktiviert.aws ecs put-account-setting \ --namecontainerInsights\ --valueenhancedAusgabe:
{ "setting": { "name": "containerInsights", "value": "enhanced", "principalArn": "arn:aws:iam::123456789012:user/johndoe", "type": "user" } }Weitere Informationen finden Sie unter Ändern der Kontoeinstellungen im Amazon-ECS-Entwicklerhandbuch.
-
API-Details finden Sie unter PutAccountSetting
in der AWS CLI-Befehlsreferenz.
-
Das folgende Codebeispiel zeigt, wie put-account-settings verwendet wird.
- AWS CLI
-
So ändern Sie die Kontoeinstellungen für einen IAM-Benutzer oder eine -Rolle
Im folgenden
put-account-setting-Beispiel werden die Kontoeinstellungen für den bestimmten IAM-Benutzer oder die -Rolle geändert.aws ecs put-account-setting \ --nameserviceLongArnFormat\ --valueenabled\ --principal-arnarn:aws:iam::123456789012:user/MyUserAusgabe:
{ "setting": { "name": "serviceLongArnFormat", "value": "enabled", "principalArn": "arn:aws:iam::123456789012:user/MyUser" } }-
API-Details finden Sie unter PutAccountSettings
in der AWS CLI-Befehlsreferenz.
-
Das folgende Codebeispiel zeigt, wie put-attributes verwendet wird.
- AWS CLI
-
So erstellen Sie ein Attribut und ordnen es einer Amazon-ECS-Ressource zu
Im folgenden
put-attributes-Beispiel wird ein Attribut mit dem Namen Stack und dem Wert Production auf eine Container-Instance angewendet.aws ecs put-attributes \ --attributesname=stack,value=production,targetId=arn:aws:ecs:us-west-2:130757420319:container-instance/1c3be8ed-df30-47b4-8f1e-6e68ebd01f34Ausgabe:
{ "attributes": [ { "name": "stack", "targetId": "arn:aws:ecs:us-west-2:130757420319:container-instance/1c3be8ed-df30-47b4-8f1e-6e68ebd01f34", "value": "production" } ] }-
API-Details finden Sie unter PutAttributes
in der AWS CLI-Befehlsreferenz.
-
Das folgende Codebeispiel zeigt, wie put-cluster-capacity-providers verwendet wird.
- AWS CLI
-
Beispiel 1: So fügen Sie einem Cluster einen vorhandenen Kapazitätsanbieter hinzu
Im folgenden
put-cluster-capacity-providers-Beispiel wird einem Cluster ein vorhandener Kapazitätsanbieter hinzugefügt. Mit demcreate-capacity-provider-Befehl erstellen Sie einen Kapazitätsanbieter. Mit demdescribe-clusters-Befehl werden die aktuellen Kapazitätsanbieter und die Standardstrategie für Kapazitätsanbieter für einen Cluster beschrieben. Wenn Sie einem Cluster einen neuen Kapazitätsanbieter hinzufügen, müssen Sie zusätzlich zu dem neuen Kapazitätsanbieter, den Sie dem Cluster zuordnen möchten, alle vorhandenen Kapazitätsanbieter angeben. Außerdem müssen Sie die Standardstrategie für Kapazitätsanbieter angeben, die mit dem Cluster verknüpft werden soll. In diesem Beispiel ist dem ClusterMyClusterder KapazitätsanbieterMyCapacityProvider1zugeordnet. Sie möchten den KapazitätsanbieterMyCapacityProvider2hinzufügen und in die Standardstrategie für Kapazitätsanbieter aufnehmen, sodass die Aufgaben gleichmäßig auf beide Kapazitätsanbieter verteilt werden.aws ecs put-cluster-capacity-providers \ --clusterMyCluster\ --capacity-providersMyCapacityProvider1MyCapacityProvider2\ --default-capacity-provider-strategycapacityProvider=MyCapacityProvider1,weight=1capacityProvider=MyCapacityProvider2,weight=1Ausgabe:
{ "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" } }Weitere Informationen finden Sie unter Cluster-Kapazitätsanbieter im Amazon-ECS-Entwicklerhandbuch.
Beispiel 2: So entfernen Sie einen Kapazitätsanbieter aus einem Cluster
Im folgenden
put-cluster-capacity-providers-Beispiel wird ein Kapazitätsanbieter aus einem Cluster entfernt. Mit demdescribe-clusters-Befehl werden die aktuellen Kapazitätsanbieter, die einem Cluster zugeordnet sind, beschrieben. Wenn Sie einen Kapazitätsanbieter aus einem Cluster entfernen, müssen Sie die Kapazitätsanbieter angeben, die dem Cluster zugeordnet bleiben sollen, sowie die Standardstrategie für Kapazitätsanbieter, die dem Cluster zugeordnet werden soll. In diesem Beispiel sind dem Cluster die KapazitätsanbieterMyCapacityProvider1undMyCapacityProvider2zugeordnet. Sie möchten den KapazitätsanbieterMyCapacityProvider2entfernen und geben daher nurMyCapacityProvider1im Befehl zusammen mit der aktualisierten Standardstrategie für Kapazitätsanbieter an.aws ecs put-cluster-capacity-providers \ --clusterMyCluster\ --capacity-providersMyCapacityProvider1\ --default-capacity-provider-strategycapacityProvider=MyCapacityProvider1,weight=1,base=0Ausgabe:
{ "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" } }Weitere Informationen finden Sie unter Cluster-Kapazitätsanbieter im Amazon-ECS-Entwicklerhandbuch.
Beispiel 3: So entfernen Sie alle Kapazitätsanbieter aus einem Cluster
Im folgenden
put-cluster-capacity-providers-Beispiel werden alle vorhandenen Kapazitätsanbieter aus dem Cluster entfernt.aws ecs put-cluster-capacity-providers \ --clusterMyCluster\ --capacity-providers[]\ --default-capacity-provider-strategy[]Ausgabe:
{ "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" } }Weitere Informationen finden Sie unter Cluster-Kapazitätsanbieter im Amazon-ECS-Entwicklerhandbuch.
-
API-Details finden Sie unter PutClusterCapacityProviders
in der AWS CLI-Befehlsreferenz.
-
Das folgende Codebeispiel zeigt, wie register-task-definition verwendet wird.
- AWS CLI
-
Beispiel 1: So registrieren Sie eine Aufgabendefinition mit einer JSON-Datei
Im folgenden
register-task-definition-Beispiel wird eine Aufgabendefinition für die angegebene Familie registriert. Die Containerdefinitionen werden im JSON-Format am angegebenen Dateispeicherort abgelegt.aws ecs register-task-definition \ --cli-input-jsonfile://<path_to_json_file>/sleep360.jsonInhalt von
sleep360.json:{ "containerDefinitions": [ { "name": "sleep", "image": "busybox", "cpu": 10, "command": [ "sleep", "360" ], "memory": 10, "essential": true } ], "family": "sleep360" }Ausgabe:
{ "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 } }Weitere Informationen finden Sie unter Beispiele für Aufgabendefinitionen im Amazon-ECS-Entwicklerhandbuch.
Beispiel 2: So registrieren Sie eine Aufgabendefinition mit einem JSON-Zeichenfolgeparameter
Im folgenden
register-task-definition-Beispiel wird eine Aufgabendefinition mithilfe von Containerdefinitionen registriert, die als JSON-Zeichenfolgeparameter mit auskommentierten doppelten Anführungszeichen bereitgestellt werden.aws ecs register-task-definition \ --familysleep360\ --container-definitions "[{\"name\":\"sleep\",\"image\":\"busybox\",\"cpu\":10,\"command\":[\"sleep\",\"360\"],\"memory\":10,\"essential\":true}]"Die Ausgabe ist identisch mit dem vorherigen Beispiel.
Weitere Informationen finden Sie unter Erstellen einer Aufgabendefinition im Amazon-ECS-Entwicklerhandbuch.
-
API-Details finden Sie unter RegisterTaskDefinition
in der AWS CLI-Befehlsreferenz.
-
Das folgende Codebeispiel zeigt, wie run-task verwendet wird.
- AWS CLI
-
Beispiel 1: So führen Sie eine Aufgabe auf Ihrem Standard-Cluster aus
Im folgenden
run-task-Beispiel wird eine Aufgabe auf dem Standard-Cluster ausgeführt und ein Client-Token verwendet.aws ecs run-task \ --clusterdefault\ --task-definitionsleep360:1\ --client-token550e8400-e29b-41d4-a716-446655440000Ausgabe:
{ "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": [] }Weitere Informationen finden Sie unter Ausführen einer Anwendung als eigenständige Aufgabe im Amazon-ECS-Entwicklerhandbuch.
Beispiel 2: So konfigurieren Sie ein Amazon-EBS-Volume für eine eigenständige Aufgabe
Im folgenden
run-task-Beispiel wird ein verschlüsseltes Amazon-EBS-Volume für eine Fargate-Aufgabe auf dem Standard-Cluster konfiguriert. Sie müssen über eine Amazon-ECS-Infrastrukturrolle verfügen, die mit der angehängten verwalteten RichtlinieAmazonECSInfrastructureRolePolicyForVolumeskonfiguriert ist. Sie müssen eine Aufgabendefinition mit demselben Volume-Namen wie in derrun-task-Anforderung angeben. In diesem Beispiel werden die Option--cli-input-jsonund eine JSON-Eingabedatei mit dem Namenebs.jsonverwendet.aws ecs run-task \ --cli-input-jsonfile://ebs.jsonInhalt von
ebs.json:{ "cluster": "default", "taskDefinition": "mytaskdef", "launchType": "FARGATE", "networkConfiguration":{ "awsvpcConfiguration":{ "assignPublicIp": "ENABLED", "securityGroups": ["sg-12344321"], "subnets":["subnet-12344321"] } }, "volumeConfigurations": [ { "name": "myEBSVolume", "managedEBSVolume": { "volumeType": "gp3", "sizeInGiB": 100, "roleArn":"arn:aws:iam::1111222333:role/ecsInfrastructureRole", "encrypted": true, "kmsKeyId": "arn:aws:kms:region:111122223333:key/1234abcd-12ab-34cd-56ef-1234567890ab" } } ] }Ausgabe:
{ "tasks": [ { "attachments": [ { "id": "ce868693-15ca-4083-91ac-f782f64000c9", "type": "ElasticNetworkInterface", "status": "PRECREATED", "details": [ { "name": "subnetId", "value": "subnet-070982705451dad82" } ] }, { "id": "a17ed863-786c-4372-b5b3-b23e53f37877", "type": "AmazonElasticBlockStorage", "status": "CREATED", "details": [ { "name": "roleArn", "value": "arn:aws:iam::123456789012:role/ecsInfrastructureRole" }, { "name": "volumeName", "value": "myEBSVolume" }, { "name": "deleteOnTermination", "value": "true" } ] } ], "attributes": [ { "name": "ecs.cpu-architecture", "value": "x86_64" } ], "availabilityZone": "us-west-2b", "clusterArn": "arn:aws:ecs:us-west-2:123456789012:cluster/default", "containers": [ { "containerArn": "arn:aws:ecs:us-west-2:123456789012:container/default/7f1fbd3629434cc4b82d72d2f09b67c9/e21962a2-f328-4699-98a3-5161ac2c186a", "taskArn": "arn:aws:ecs:us-west-2:123456789012:task/default/7f1fbd3629434cc4b82d72d2f09b67c9", "name": "container-using-ebs", "image": "amazonlinux:2", "lastStatus": "PENDING", "networkInterfaces": [], "cpu": "0" } ], "cpu": "1024", "createdAt": "2025-01-23T10:29:46.650000-06:00", "desiredStatus": "RUNNING", "enableExecuteCommand": false, "group": "family:mytaskdef", "lastStatus": "PROVISIONING", "launchType": "FARGATE", "memory": "3072", "overrides": { "containerOverrides": [ { "name": "container-using-ebs" } ], "inferenceAcceleratorOverrides": [] }, "platformVersion": "1.4.0", "platformFamily": "Linux", "tags": [], "taskArn": "arn:aws:ecs:us-west-2:123456789012:task/default/7f1fbd3629434cc4b82d72d2f09b67c9", "taskDefinitionArn": "arn:aws:ecs:us-west-2:123456789012:task-definition/mytaskdef:4", "version": 1, "ephemeralStorage": { "sizeInGiB": 20 }, "fargateEphemeralStorage": { "sizeInGiB": 20 } } ], "failures": [] }Weitere Informationen finden Sie unter Verwenden von Amazon-EBS-Volumes mit Amazon ECS im Amazon-ECS-Entwicklerhandbuch.
-
API-Details finden Sie unter RunTask
in der AWS CLI-Befehlsreferenz.
-
Das folgende Codebeispiel zeigt, wie start-task verwendet wird.
- AWS CLI
-
Beispiel 1: So starten Sie eine neue Aufgabe
Im folgenden
start-task-Beispiel wird eine Aufgabe mit der neuesten Revision dersleep360-Aufgabendefinition auf der angegebenen Container-Instance im Standard-Cluster gestartet.aws ecs start-task \ --task-definitionsleep360\ --container-instances765936fadbdd46b5991a4bd70c2a43d4Ausgabe:
{ "tasks": [ { "taskArn": "arn:aws:ecs:us-west-2:123456789012:task/default/666fdccc2e2d4b6894dd422f4eeee8f8", "clusterArn": "arn:aws:ecs:us-west-2:123456789012:cluster/default", "taskDefinitionArn": "arn:aws:ecs:us-west-2:123456789012:task-definition/sleep360:3", "containerInstanceArn": "arn:aws:ecs:us-west-2:123456789012:container-instance/default/765936fadbdd46b5991a4bd70c2a43d4", "overrides": { "containerOverrides": [ { "name": "sleep" } ] }, "lastStatus": "PENDING", "desiredStatus": "RUNNING", "cpu": "128", "memory": "128", "containers": [ { "containerArn": "arn:aws:ecs:us-west-2:123456789012:container/75f11ed4-8a3d-4f26-a33b-ad1db9e02d41", "taskArn": "arn:aws:ecs:us-west-2:123456789012: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": [] }Weitere Informationen finden Sie unter Planen Ihrer Container in Amazon ECS im Amazon-ECS-Entwicklerhandbuch.
Beispiel 2: So konfigurieren Sie ein Amazon-EBS-Volume beim Start einer Aufgabe
Im folgenden
start-task-Beispiel wird ein verschlüsseltes Amazon-EBS-Volume für eine Aufgabe auf der angegebenen Container-Instance konfiguriert. Sie müssen über eine Amazon-ECS-Infrastrukturrolle verfügen, die mit der angehängten verwalteten RichtlinieAmazonECSInfrastructureRolePolicyForVolumeskonfiguriert ist. Sie müssen eine Aufgabendefinition mit demselben Volume-Namen wie in derstart-task-Anforderung angeben. In diesem Beispiel werden die Option--cli-input-jsonund eine JSON-Eingabedatei mit dem Namenebs.jsonund dem folgenden Inhalt verwendet.aws ecs start-task \ --cli-input-jsonfile://ebs.json\ --container-instances765936fadbdd46b5991a4bd70c2a43d4Inhalt von
ebs.json:{ "cluster": "default", "taskDefinition": "mytaskdef", "networkConfiguration":{ "awsvpcConfiguration":{ "assignPublicIp": "ENABLED", "securityGroups": ["sg-12344321"], "subnets":["subnet-12344321"] } }, "volumeConfigurations": [ { "name": "myEBSVolume", "managedEBSVolume": { "volumeType": "gp3", "sizeInGiB": 100, "roleArn":"arn:aws:iam::123456789012:role/ecsInfrastructureRole", "encrypted": true, "kmsKeyId": "arn:aws:kms:region:123456789012:key/1234abcd-12ab-34cd-56ef-1234567890ab" } } ] }Ausgabe:
{ "tasks": [ { "attachments": [ { "id": "aea29489-9dcd-49f1-8164-4d91566e1113", "type": "ElasticNetworkInterface", "status": "PRECREATED", "details": [ { "name": "subnetId", "value": "subnet-12344321" } ] }, { "id": "f29e1222-9a1e-410f-b499-a12a7cd6d42e", "type": "AmazonElasticBlockStorage", "status": "CREATED", "details": [ { "name": "roleArn", "value": "arn:aws:iam::123456789012:role/ecsInfrastructureRole" }, { "name": "volumeName", "value": "myEBSVolume" }, { "name": "deleteOnTermination", "value": "true" } ] } ], "attributes": [ { "name": "ecs.cpu-architecture", "value": "arm64" } ], "availabilityZone": "us-west-2c", "clusterArn": "arn:aws:ecs:us-west-2:123456789012:cluster/default", "containerInstanceArn": "arn:aws:ecs:us-west-2:123456789012:container-instance/default/765936fadbdd46b5991a4bd70c2a43d4", "containers": [ { "containerArn": "arn:aws:ecs:us-west-2:123456789012:container/default/bb122ace3ed84add92c00a351a03c69e/a4a9ed10-51c7-4567-9653-50e71b94f867", "taskArn": "arn:aws:ecs:us-west-2:123456789012:task/default/bb122ace3ed84add92c00a351a03c69e", "name": "container-using-ebs", "image": "amazonlinux:2", "lastStatus": "PENDING", "networkInterfaces": [], "cpu": "0" } ], "cpu": "1024", "createdAt": "2025-01-23T14:51:05.191000-06:00", "desiredStatus": "RUNNING", "enableExecuteCommand": false, "group": "family:mytaskdef", "lastStatus": "PROVISIONING", "launchType": "EC2", "memory": "3072", "overrides": { "containerOverrides": [ { "name": "container-using-ebs" } ], "inferenceAcceleratorOverrides": [] }, "tags": [], "taskArn": "arn:aws:ecs:us-west-2:123456789012:task/default/bb122ace3ed84add92c00a351a03c69e", "taskDefinitionArn": "arn:aws:ecs:us-west-2:123456789012:task-definition/mytaskdef:4", "version": 1 } ], "failures": [] }Weitere Informationen finden Sie unter Verwenden von Amazon-EBS-Volumes mit Amazon ECS im Amazon-ECS-Entwicklerhandbuch.
-
API-Details finden Sie unter StartTask
in der AWS CLI-Befehlsreferenz.
-
Das folgende Codebeispiel zeigt, wie stop-task verwendet wird.
- AWS CLI
-
So beenden Sie eine Aufgabe
Mit dem folgenden
stop-task-Befehl wird die Ausführung der angegebenen Aufgabe im Standard-Cluster beendet.aws ecs stop-task \ --task666fdccc2e2d4b6894dd422f4eeee8f8Ausgabe:
{ "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": [] } }-
API-Details finden Sie unter StopTask
in der AWS CLI-Befehlsreferenz.
-
Das folgende Codebeispiel zeigt, wie tag-resource verwendet wird.
- AWS CLI
-
So markieren Sie eine Ressource
Im folgenden
tag-resource-Beispiel wird der angegebenen Ressource ein einzelnes Tag hinzugefügt.aws ecs tag-resource \ --resource-arnarn:aws:ecs:us-west-2:123456789012:cluster/MyCluster--tagskey=key1,value=value1Mit diesem Befehl wird keine Ausgabe zurückgegeben.
So fügen Sie einer Ressource mehrere Tags hinzu
Im folgenden
tag-resource-Beispiel werden der angegebenen Ressource mehrere Tags hinzugefügt.aws ecs tag-resource \ --resource-arnarn:aws:ecs:us-west-2:123456789012:cluster/MyCluster\ --tagskey=key1,value=value1key=key2,value=value2key=key3,value=value3Mit diesem Befehl wird keine Ausgabe zurückgegeben.
-
API-Details finden Sie unter TagResource
in der AWS CLI-Befehlsreferenz.
-
Das folgende Codebeispiel zeigt, wie untag-resource verwendet wird.
- AWS CLI
-
So entfernen Sie ein Tag von einer Ressource
Im folgenden
untag-resource-Beispiel werden die aufgeführten Tags von der angegebenen Ressource entfernt.aws ecs untag-resource \ --resource-arnarn:aws:ecs:us-west-2:123456789012:cluster/MyCluster\ --tag-keyskey1,key2Mit diesem Befehl wird keine Ausgabe zurückgegeben.
-
API-Details finden Sie unter UntagResource
in der AWS CLI-Befehlsreferenz.
-
Das folgende Codebeispiel zeigt, wie update-cluster-settings verwendet wird.
- AWS CLI
-
So ändern Sie die Einstellungen für Ihren Cluster
Im folgenden
update-cluster-settings-Beispiel wird CloudWatch Container Insights mit verbesserter Beobachtbarkeit für den ClusterMyClusteraktiviert.aws ecs update-cluster-settings \ --clusterMyCluster\ --settingsname=containerInsights,value=enhancedAusgabe:
{ "cluster": { "clusterArn": "arn:aws:ecs:us-esat-1:123456789012:cluster/MyCluster", "clusterName": "default", "status": "ACTIVE", "registeredContainerInstancesCount": 0, "runningTasksCount": 0, "pendingTasksCount": 0, "activeServicesCount": 0, "statistics": [], "tags": [], "settings": [ { "name": "containerInsights", "value": "enhanced" } ] } }Weitere Informationen finden Sie unter Ändern der Kontoeinstellungen im Amazon-ECS-Entwicklerhandbuch.
-
API-Details finden Sie unter UpdateClusterSettings
in der AWS CLI-Befehlsreferenz.
-
Das folgende Codebeispiel zeigt, wie update-cluster verwendet wird.
- AWS CLI
-
Beispiel 1: So aktualisieren Sie den ECS-Cluster und aktivieren containerInsights
Im folgenden
update-cluster-Beispiel wird der containerInsights-Wert in einem bereits erstellten Cluster aufenabledaktualisiert. Standardmäßig ist er deaktiviert.aws ecs update-cluster \ --clusterECS-project-update-cluster\ --settingsname=containerInsights,value=enabledAusgabe:
"cluster": { "clusterArn": "arn:aws:ecs:us-west-2:123456789012:cluster/ECS-project-update-cluster", "clusterName": "ECS-project-update-cluster", "status": "ACTIVE", "registeredContainerInstancesCount": 0, "runningTasksCount": 0, "pendingTasksCount": 0, "activeServicesCount": 0, "statistics": [], "tags": [], "settings": [ { "name": "containerInsights", "value": "enabled" } ], "capacityProviders": [ "Infra-ECS-Cluster-ECS-project-update-cluster-d6bb6d5b-EC2CapacityProvider-3fIpdkLywwFt" ], "defaultCapacityProviderStrategy": [ { "capacityProvider": "Infra-ECS-Cluster-ECS-project-update-cluster-d6bb6d5b-EC2CapacityProvider-3fIpdkLywwFt", "weight": 1, "base": 0 } ], "attachments": [ { "id": "069d002b-7634-42e4-b1d4-544f4c8f6380", "type": "as_policy", "status": "CREATED", "details": [ { "name": "capacityProviderName", "value": "Infra-ECS-Cluster-ECS-project-update-cluster-d6bb6d5b-EC2CapacityProvider-3fIpdkLywwFt" }, { "name": "scalingPolicyName", "value": "ECSManagedAutoScalingPolicy-152363a6-8c65-484c-b721-42c3e070ae93" } ] }, { "id": "08b5b6ca-45e9-4209-a65d-e962a27c490a", "type": "managed_draining", "status": "CREATED", "details": [ { "name": "capacityProviderName", "value": "Infra-ECS-Cluster-ECS-project-update-cluster-d6bb6d5b-EC2CapacityProvider-3fIpdkLywwFt" }, { "name": "autoScalingLifecycleHookName", "value": "ecs-managed-draining-termination-hook" } ] }, { "id": "45d0b36f-8cff-46b6-9380-1288744802ab", "type": "sc", "status": "ATTACHED", "details": [] } ], "attachmentsStatus": "UPDATE_COMPLETE", "serviceConnectDefaults": { "namespace": "arn:aws:servicediscovery:us-west-2:123456789012:namespace/ns-igwrsylmy3kwvcdx" } }Beispiel 2: So aktualisieren Sie den ECS-Cluster, um einen standardmäßigen Service-Connect-Namespace festzulegen
Im folgenden
update-cluster-Beispiel wird der ECS-Cluster aktualisiert, indem ein standardmäßiger Service-Connect-Namespace festgelegt wird.aws ecs update-cluster \ --clusterECS-project-update-cluster\ --service-connect-defaultsnamespace=testAusgabe:
{ "cluster": { "clusterArn": "arn:aws:ecs:us-west-2:123456789012:cluster/ECS-project-update-cluster", "clusterName": "ECS-project-update-cluster", "status": "ACTIVE", "registeredContainerInstancesCount": 0, "runningTasksCount": 0, "pendingTasksCount": 0, "activeServicesCount": 0, "statistics": [], "tags": [], "settings": [ { "name": "containerInsights", "value": "enabled" } ], "capacityProviders": [ "Infra-ECS-Cluster-ECS-project-update-cluster-d6bb6d5b-EC2CapacityProvider-3fIpdkLywwFt" ], "defaultCapacityProviderStrategy": [ { "capacityProvider": "Infra-ECS-Cluster-ECS-project-update-cluster-d6bb6d5b-EC2CapacityProvider-3fIpdkLywwFt", "weight": 1, "base": 0 } ], "attachments": [ { "id": "069d002b-7634-42e4-b1d4-544f4c8f6380", "type": "as_policy", "status": "CREATED", "details": [ { "name": "capacityProviderName", "value": "Infra-ECS-Cluster-ECS-project-update-cluster-d6bb6d5b-EC2CapacityProvider-3fIpdkLywwFt" }, { "name": "scalingPolicyName", "value": "ECSManagedAutoScalingPolicy-152363a6-8c65-484c-b721-42c3e070ae93" } ] }, { "id": "08b5b6ca-45e9-4209-a65d-e962a27c490a", "type": "managed_draining", "status": "CREATED", "details": [ { "name": "capacityProviderName", "value": "Infra-ECS-Cluster-ECS-project-update-cluster-d6bb6d5b-EC2CapacityProvider-3fIpdkLywwFt" }, { "name": "autoScalingLifecycleHookName", "value": "ecs-managed-draining-termination-hook" } ] }, { "id": "45d0b36f-8cff-46b6-9380-1288744802ab", "type": "sc", "status": "DELETED", "details": [] }, { "id": "3e6890c3-609c-4832-91de-d6ca891b3ef1", "type": "sc", "status": "ATTACHED", "details": [] }, { "id": "961b8ec1-c2f1-4070-8495-e669b7668e90", "type": "sc", "status": "DELETED", "details": [] } ], "attachmentsStatus": "UPDATE_COMPLETE", "serviceConnectDefaults": { "namespace": "arn:aws:servicediscovery:us-west-2:123456789012:namespace/ns-dtjmxqpfi46ht7dr" } } }Weitere Informationen zu Service Connect finden Sie unter Verwenden von Service Connect, um Amazon-ECS-Services mit Kurznamen zu verbinden im Amazon-ECS-Entwicklerhandbuch.
-
API-Details finden Sie unter UpdateCluster
in der AWS CLI-Befehlsreferenz.
-
Das folgende Codebeispiel zeigt, wie update-container-agent verwendet wird.
- AWS CLI
-
So aktualisieren Sie den Container-Agenten auf einer Container-Instance von Amazon ECS
Im folgenden
update-container-agent-Beispiel wird der Container-Agent auf der angegebenen Container-Instance im Standard-Cluster aktualisiert.aws ecs update-container-agent --clusterdefault--container-instancea1b2c3d4-5678-90ab-cdef-11111EXAMPLEAusgabe:
{ "containerInstance": { "status": "ACTIVE", ... "agentUpdateStatus": "PENDING", "versionInfo": { "agentVersion": "1.0.0", "agentHash": "4023248", "dockerVersion": "DockerVersion: 1.5.0" } } }Weitere Informationen finden Sie unter Aktualisieren des Container-Agenten von Amazon ECS im Amazon-ECS-Entwicklerhandbuch.
-
API-Details finden Sie unter UpdateContainerAgent
in der AWS CLI-Befehlsreferenz.
-
Das folgende Codebeispiel zeigt, wie update-container-instances-state verwendet wird.
- AWS CLI
-
So aktualisieren Sie den Status einer Container-Instance
Im folgenden
update-container-instances-state-Beispiel wird der Status der angegebenen Container-Instance aufDRAININGaktualisiert, wodurch sie aus dem Cluster entfernt wird, in dem sie registriert ist.aws ecs update-container-instances-state \ --container-instances765936fadbdd46b5991a4bd70c2a43d4\ --statusDRAININGAusgabe:
{ "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": [] }-
API-Details finden Sie unter UpdateContainerInstancesState
in der AWS CLI-Befehlsreferenz.
-
Das folgende Codebeispiel zeigt, wie update-service-primary-task-set verwendet wird.
- AWS CLI
-
So aktualisieren Sie den primären Aufgabensatz für einen Service
Im folgenden
update-service-primary-task-set-Beispiel wird der primäre Aufgabensatz für den angegebenen Service aktualisiert.aws ecs update-service-primary-task-set \ --clusterMyCluster\ --serviceMyService\ --primary-task-setarn:aws:ecs:us-west-2:123456789012:task-set/MyCluster/MyService/ecs-svc/1234567890123456789Ausgabe:
{ "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 } }-
API-Details finden Sie unter UpdateServicePrimaryTaskSet
in der AWS CLI-Befehlsreferenz.
-
Das folgende Codebeispiel zeigt, wie update-service verwendet wird.
- AWS CLI
-
Beispiel 1: So ändern Sie die in einem Service verwendete Aufgabendefinition
Im folgenden
update-service-Beispiel wird der Servicemy-http-serviceauf die Verwendung der Aufgabendefinitionamazon-ecs-sampleaktualisiert.aws ecs update-service \ --clustertest\ --servicemy-http-service\ --task-definitionamazon-ecs-sampleAusgabe:
{ "service": { "serviceArn": "arn:aws:ecs:us-west-2:123456789012:service/test/my-http-service", "serviceName": "my-http-service", "clusterArn": "arn:aws:ecs:us-west-2:123456789012:cluster/test", "loadBalancers": [], "serviceRegistries": [], "status": "ACTIVE", "desiredCount": 2, "runningCount": 2, "pendingCount": 0, "launchType": "FARGATE", "platformVersion": "1.4.0", "platformFamily": "Linux", "taskDefinition": "arn:aws:ecs:us-west-2:123456789012:task-definition/amazon-ecs-sample:2", "deploymentConfiguration": { "deploymentCircuitBreaker": { "enable": true, "rollback": true }, "maximumPercent": 200, "minimumHealthyPercent": 100, "alarms": { "alarmNames": [], "rollback": false, "enable": false } }, "deployments": [ { "id": "ecs-svc/7419115625193919142", "status": "PRIMARY", "taskDefinition": "arn:aws:ecs:us-west-2:123456789012:task-definition/amazon-ecs-sample:2", "desiredCount": 0, "pendingCount": 0, "runningCount": 0, "failedTasks": 0, "createdAt": "2025-02-21T13:26:02.734000-06:00", "updatedAt": "2025-02-21T13:26:02.734000-06:00", "launchType": "FARGATE", "platformVersion": "1.4.0", "platformFamily": "Linux", "networkConfiguration": { "awsvpcConfiguration": { "subnets": [ "subnet-12344321" ], "securityGroups": [ "sg-12344321" ], "assignPublicIp": "ENABLED" } }, "rolloutState": "IN_PROGRESS", "rolloutStateReason": "ECS deployment ecs-svc/7419115625193919142 in progress." }, { "id": "ecs-svc/1709597507655421668", "status": "ACTIVE", "taskDefinition": "arn:aws:ecs:us-west-2:123456789012:task-definition/old-amazon-ecs-sample:4", "desiredCount": 2, "pendingCount": 0, "runningCount": 2, "failedTasks": 0, "createdAt": "2025-01-24T11:13:07.621000-06:00", "updatedAt": "2025-02-02T16:11:30.838000-06:00", "launchType": "FARGATE", "platformVersion": "1.4.0", "platformFamily": "Linux", "networkConfiguration": { "awsvpcConfiguration": { "subnets": [ "subnet-12344321" ], "securityGroups": [ "sg-12344321" ], "assignPublicIp": "ENABLED" } }, "rolloutState": "COMPLETED", "rolloutStateReason": "ECS deployment ecs-svc/1709597507655421668 completed." } ], "roleArn": "arn:aws:iam::123456789012:role/aws-service-role/ecs.amazonaws.com/AWSServiceRoleForECS", "events": [ { "id": "e40b4d1c-80d9-4834-aaf3-6a268e530e17", "createdAt": "2025-02-21T10:31:26.037000-06:00", "message": "(my-http-service) has reached a steady state." }, { "id": "6ac069ad-fc8b-4e49-a35d-b5574a964c8e", "createdAt": "2025-02-21T04:31:22.703000-06:00", "message": "(my-http-service) has reached a steady state." }, { "id": "265f7d37-dfd1-4880-a846-ec486f341919", "createdAt": "2025-02-20T22:31:22.514000-06:00", "message": "(my-http-service) has reached a steady state." } ], "createdAt": "2024-10-30T17:12:43.218000-05:00", "placementConstraints": [], "placementStrategy": [], "networkConfiguration": { "awsvpcConfiguration": { "subnets": [ "subnet-12344321", ], "securityGroups": [ "sg-12344321" ], "assignPublicIp": "ENABLED" } }, "healthCheckGracePeriodSeconds": 0, "schedulingStrategy": "REPLICA", "deploymentController": { "type": "ECS" }, "createdBy": "arn:aws:iam::123456789012:role/AIDACKCEVSQ6C2EXAMPLE", "enableECSManagedTags": true, "propagateTags": "NONE", "enableExecuteCommand": false, "availabilityZoneRebalancing": "DISABLED" } }Weitere Informationen finden Sie unter Aktualisieren eines Amazon-ECS-Service mithilfe der Konsole im Amazon-ECS-Entwicklerhandbuch.
Beispiel 2: So ändern Sie die Anzahl der Aufgaben in einem Service
Im folgenden
update-service-Beispiel wird die gewünschte Aufgabenanzahl des Servicemy-http-serviceauf 2 aktualisiert.aws ecs update-service \ --clusterMyCluster\ --servicemy-http-service\ --desired-count2Ausgabe:
{ "service": { "serviceArn": "arn:aws:ecs:us-east-1:123456789012:service/MyCluster/my-http-service", "serviceName": "my-http-service", "clusterArn": "arn:aws:ecs:us-east-1:123456789012:cluster/MyCluster", "loadBalancers": [], "serviceRegistries": [], "status": "ACTIVE", "desiredCount": 2, "runningCount": 1, "pendingCount": 0, "capacityProviderStrategy": [ { "capacityProvider": "FARGATE", "weight": 1, "base": 0 } ], "platformVersion": "LATEST", "platformFamily": "Linux", "taskDefinition": "arn:aws:ecs:us-east-1:123456789012:task-definition/MyTaskDefinition", "deploymentConfiguration": { "deploymentCircuitBreaker": { "enable": true, "rollback": true }, "maximumPercent": 200, "minimumHealthyPercent": 100, "alarms": { "alarmNames": [], "rollback": false, "enable": false } }, "deployments": [ { "id": "ecs-svc/1976744184940610707", "status": "PRIMARY", "taskkDefinition": "arn:aws:ecs:us-east-1:123456789012:task-definition/MyTaskDefinition", "desiredCount": 1, "pendingCount": 0, "runningCount": 1, "failedTasks": 0, "createdAt": "2024-12-03T16:24:25.225000-05:00", "updatedAt": "2024-12-03T16:25:15.837000-05:00", "capacityProviderStrategy": [ { "capacityProvider": "FARGATE", "weight": 1, "base": 0 } ], "platformVersion": "1.4.0", "platformFamily": "Linux", "networkConfiguration": { "awsvpcConfiguration": { "subnets": [ "subnet-0d0eab1bb38d5ca64", "subnet-0db5010045995c2d5" ], "securityGroups": [ "sg-02556bf85a191f59a" ], "assignPublicIp": "ENABLED" } }, "rolloutState": "COMPLETED", "rolloutStateReason": "ECS deployment ecs-svc/1976744184940610707 completed." } ], "roleArn": "arn:aws:iam::123456789012:role/aws-service-role/ecs.amazonaws.com/AWSServiceRoleForECS", "events": [ { "id": "f27350b9-4b2a-4e2e-b72e-a4b68380de45", "createdAt": "2024-12-30T13:24:07.345000-05:00", "message": "(service my-http-service) has reached a steady state." }, { "id": "e764ec63-f53f-45e3-9af2-d99f922d2957", "createdAt": "2024-12-30T12:32:21.600000-05:00", "message": "(service my-http-service) has reached a steady state." }, { "id": "28444756-c2fa-47f8-bd60-93a8e05f3991", "createdAt": "2024-12-08T19:26:10.367000-05:00", "message": "(service my-http-service) has reached a steady state." } ], "createdAt": "2024-12-03T16:24:25.225000-05:00", "placementConstraints": [], "placementStrategy": [], "networkConfiguration": { "awsvpcConfiguration": { "subnets": [ "subnet-0d0eab1bb38d5ca64", "subnet-0db5010045995c2d5" ], "securityGroups": [ "sg-02556bf85a191f59a" ], "assignPublicIp": "ENABLED" } }, "healthCheckGracePeriodSeconds": 0, "schedulingStrategy": "REPLICA", "deploymentController": { "type": "ECS" }, "createdBy": "arn:aws:iam::123456789012:role/Admin", "enableECSManagedTags": true, "propagateTags": "NONE", "enableExecuteCommand": false, "availabilityZoneRebalancing": "ENABLED" } }Weitere Informationen finden Sie unter Aktualisieren eines Amazon-ECS-Service mithilfe der Konsole im Amazon-ECS-Entwicklerhandbuch.
Beispiel 3: So konfigurieren Sie Amazon-EBS-Volumes für Anhänge beim Service-Update
Im folgenden
update-service-Beispiel wird der Servicemy-http-serviceaktualisiert, sodass er Amazon-EBS-Volumes verwendet. Sie müssen über eine Amazon-ECS-Infrastrukturrolle verfügen, die mit der angehängten verwalteten RichtlinieAmazonECSInfrastructureRolePolicyForVolumeskonfiguriert ist. Sie müssen eine Aufgabendefinition mit demselben Volume-Namen wie in derupdate-service-Anforderung angeben undconfiguredAtLaunchauftruefestlegen. In diesem Beispiel werden die Option--cli-input-jsonund eine JSON-Eingabedatei mit dem Namenebs.jsonverwendet.aws ecs update-service \ --cli-input-jsonfile://ebs.jsonInhalt von
ebs.json:{ "cluster": "mycluster", "taskDefinition": "mytaskdef", "service": "my-http-service", "desiredCount": 2, "volumeConfigurations": [ { "name": "myEbsVolume", "managedEBSVolume": { "roleArn":"arn:aws:iam::123456789012:role/ecsInfrastructureRole", "volumeType": "gp3", "sizeInGiB": 100, "iops": 3000, "throughput": 125, "filesystemType": "ext4" } } ] }Ausgabe:
{ "service": { "serviceArn": "arn:aws:ecs:us-west-2:123456789012:service/mycluster/my-http-service", "serviceName": "my-http-service", "clusterArn": "arn:aws:ecs:us-west-2:123456789012:cluster/mycluster", "loadBalancers": [], "serviceRegistries": [], "status": "ACTIVE", "desiredCount": 2, "runningCount": 2, "pendingCount": 0, "launchType": "FARGATE", "platformVersion": "LATEST", "platformFamily": "Linux", "taskDefinition": "arn:aws:ecs:us-west-2:123456789012:task-definition/mytaskdef:1", "deploymentConfiguration": { "deploymentCircuitBreaker": { "enable": true, "rollback": true }, "maximumPercent": 200, "minimumHealthyPercent": 100, "alarms": { "alarmNames": [], "rollback": false, "enable": false } }, "deployments": [ { "id": "ecs-svc/2420458347226626275", "status": "PRIMARY", "taskDefinition": "arn:aws:ecs:us-west-2:123456789012:task-definition/mytaskdef:1", "desiredCount": 0, "pendingCount": 0, "runningCount": 0, "failedTasks": 0, "createdAt": "2025-02-21T15:07:20.519000-06:00", "updatedAt": "2025-02-21T15:07:20.519000-06:00", "launchType": "FARGATE", "platformVersion": "1.4.0", "platformFamily": "Linux", "networkConfiguration": { "awsvpcConfiguration": { "subnets": [ "subnet-12344321", ], "securityGroups": [ "sg-12344321" ], "assignPublicIp": "ENABLED" } }, "rolloutState": "IN_PROGRESS", "rolloutStateReason": "ECS deployment ecs-svc/2420458347226626275 in progress.", "volumeConfigurations": [ { "name": "ebs-volume", "managedEBSVolume": { "volumeType": "gp3", "sizeInGiB": 100, "iops": 3000, "throughput": 125, "roleArn": "arn:aws:iam::123456789012:role/ecsInfrastructureRole", "filesystemType": "ext4" } } ] }, { "id": "ecs-svc/5191625155316533644", "status": "ACTIVE", "taskDefinition": "arn:aws:ecs:us-west-2:123456789012:task-definition/mytaskdef:2", "desiredCount": 2, "pendingCount": 0, "runningCount": 2, "failedTasks": 0, "createdAt": "2025-02-21T14:54:48.862000-06:00", "updatedAt": "2025-02-21T14:57:22.502000-06:00", "launchType": "FARGATE", "platformVersion": "1.4.0", "platformFamily": "Linux", "networkConfiguration": { "awsvpcConfiguration": { "subnets": [ "subnet-12344321" ], "securityGroups": [ "sg-12344321" ], "assignPublicIp": "ENABLED" } }, "rolloutState": "COMPLETED", "rolloutStateReason": "ECS deployment ecs-svc/5191625155316533644 completed." } ], "roleArn": "arn:aws:iam::123456789012:role/aws-service-role/ecs.amazonaws.com/AWSServiceRoleForECS", "events": [ { "id": "b5823113-c2c5-458e-9649-8c2ed38f23a5", "createdAt": "2025-02-21T14:57:22.508000-06:00", "message": "(service my-http-service) has reached a steady state." }, { "id": "b05a48e8-da35-4074-80aa-37ceb3167357", "createdAt": "2025-02-21T14:57:22.507000-06:00", "message": "(service my-http-service) (deployment ecs-svc/5191625155316533644) deployment completed." }, { "id": "a10cd55d-4ba6-4cea-a655-5a5d32ada8a0", "createdAt": "2025-02-21T14:55:32.833000-06:00", "message": "(service my-http-service) has started 1 tasks: (task fb9c8df512684aec92f3c57dc3f22361)." }, ], "createdAt": "2025-02-21T14:54:48.862000-06:00", "placementConstraints": [], "placementStrategy": [], "networkConfiguration": { "awsvpcConfiguration": { "subnets": [ "subnet-12344321" ], "securityGroups": [ "sg-12344321" ], "assignPublicIp": "ENABLED" } }, "healthCheckGracePeriodSeconds": 0, "schedulingStrategy": "REPLICA", "deploymentController": { "type": "ECS" }, "createdBy": "arn:aws:iam::123456789012:role/AIDACKCEVSQ6C2EXAMPLE", "enableECSManagedTags": true, "propagateTags": "NONE", "enableExecuteCommand": false, "availabilityZoneRebalancing": "ENABLED" } }Weitere Informationen finden Sie unter Verwenden von Amazon-EBS-Volumes mit Amazon ECS im Amazon-ECS-Entwicklerhandbuch.
Beispiel 4: So aktualisieren Sie einen Service dahingehend, dass er keine Amazon-EBS-Volumes mehr verwendet
Im folgenden
update-service-Beispiel wird der Servicemy-http-serviceaktualisiert, sodass er keine Amazon-EBS-Volumes mehr verwendet. Sie müssen eine Aufgabendefinition angeben, bei derconfiguredAtLaunchauffalsefestgelegt ist.aws ecs update-service \ --clustermycluster\ --task-definitionmytaskdef\ --servicemy-http-service\ --desired-count2\ --volume-configurations"[]"Ausgabe:
{ "service": { "serviceArn": "arn:aws:ecs:us-west-2:123456789012:service/mycluster/my-http-service", "serviceName": "my-http-service", "clusterArn": "arn:aws:ecs:us-west-2:123456789012:cluster/mycluster", "loadBalancers": [], "serviceRegistries": [], "status": "ACTIVE", "desiredCount": 2, "runningCount": 2, "pendingCount": 0, "launchType": "FARGATE", "platformVersion": "LATEST", "platformFamily": "Linux", "taskDefinition": "arn:aws:ecs:us-west-2:123456789012:task-definition/mytaskdef:3", "deploymentConfiguration": { "deploymentCircuitBreaker": { "enable": true, "rollback": true }, "maximumPercent": 200, "minimumHealthyPercent": 100, "alarms": { "alarmNames": [], "rollback": false, "enable": false } }, "deployments": [ { "id": "ecs-svc/7522791612543716777", "status": "PRIMARY", "taskDefinition": "arn:aws:ecs:us-west-2:123456789012:task-definition/mytaskdef:3", "desiredCount": 0, "pendingCount": 0, "runningCount": 0, "failedTasks": 0, "createdAt": "2025-02-21T15:25:38.598000-06:00", "updatedAt": "2025-02-21T15:25:38.598000-06:00", "launchType": "FARGATE", "platformVersion": "1.4.0", "platformFamily": "Linux", "networkConfiguration": { "awsvpcConfiguration": { "subnets": [ "subnet-12344321" ], "securityGroups": [ "sg-12344321" ], "assignPublicIp": "ENABLED" } }, "rolloutState": "IN_PROGRESS", "rolloutStateReason": "ECS deployment ecs-svc/7522791612543716777 in progress." }, { "id": "ecs-svc/2420458347226626275", "status": "ACTIVE", "taskDefinition": "arn:aws:ecs:us-west-2:123456789012:task-definition/myoldtaskdef:1", "desiredCount": 2, "pendingCount": 0, "runningCount": 2, "failedTasks": 0, "createdAt": "2025-02-21T15:07:20.519000-06:00", "updatedAt": "2025-02-21T15:10:59.955000-06:00", "launchType": "FARGATE", "platformVersion": "1.4.0", "platformFamily": "Linux", "networkConfiguration": { "awsvpcConfiguration": { "subnets": [ "subnet-12344321" ], "securityGroups": [ "sg-12344321" ], "assignPublicIp": "ENABLED" } }, "rolloutState": "COMPLETED", "rolloutStateReason": "ECS deployment ecs-svc/2420458347226626275 completed.", "volumeConfigurations": [ { "name": "ebs-volume", "managedEBSVolume": { "volumeType": "gp3", "sizeInGiB": 100, "iops": 3000, "throughput": 125, "roleArn": "arn:aws:iam::123456789012:role/ecsInfrastructureRole", "filesystemType": "ext4" } } ] } ], "roleArn": "arn:aws:iam::123456789012:role/aws-service-role/ecs.amazonaws.com/AWSServiceRoleForECS", "events": [ { "id": "4f2c3ca1-7800-4048-ba57-bba210ada2ad", "createdAt": "2025-02-21T15:10:59.959000-06:00", "message": "(service my-http-service) has reached a steady state." }, { "id": "4b36a593-2d40-4ed6-8be8-b9b699eb6198", "createdAt": "2025-02-21T15:10:59.958000-06:00", "message": "(service my-http-service) (deployment ecs-svc/2420458347226626275) deployment completed." }, { "id": "88380089-14e2-4ef0-8dbb-a33991683371", "createdAt": "2025-02-21T15:09:39.055000-06:00", "message": "(service my-http-service) has stopped 1 running tasks: (task fb9c8df512684aec92f3c57dc3f22361)." }, { "id": "97d84243-d52f-4255-89bb-9311391c61f6", "createdAt": "2025-02-21T15:08:57.653000-06:00", "message": "(service my-http-service) has stopped 1 running tasks: (task 33eff090ad2c40539daa837e6503a9bc)." }, { "id": "672ece6c-e2d0-4021-b5da-eefb14001687", "createdAt": "2025-02-21T15:08:15.631000-06:00", "message": "(service my-http-service) has started 1 tasks: (task 996c02a66ff24f3190a4a8e0c841740f)." }, { "id": "a3cf9bea-9be6-4175-ac28-4c68360986eb", "createdAt": "2025-02-21T15:07:36.931000-06:00", "message": "(service my-http-service) has started 1 tasks: (task d5d23c39f89e46cf9a647b9cc6572feb)." }, { "id": "b5823113-c2c5-458e-9649-8c2ed38f23a5", "createdAt": "2025-02-21T14:57:22.508000-06:00", "message": "(service my-http-service) has reached a steady state." }, { "id": "b05a48e8-da35-4074-80aa-37ceb3167357", "createdAt": "2025-02-21T14:57:22.507000-06:00", "message": "(service my-http-service) (deployment ecs-svc/5191625155316533644) deployment completed." }, { "id": "a10cd55d-4ba6-4cea-a655-5a5d32ada8a0", "createdAt": "2025-02-21T14:55:32.833000-06:00", "message": "(service my-http-service) has started 1 tasks: (task fb9c8df512684aec92f3c57dc3f22361)." }, { "id": "42da91fa-e26d-42ef-88c3-bb5965c56b2f", "createdAt": "2025-02-21T14:55:02.703000-06:00", "message": "(service my-http-service) has started 1 tasks: (task 33eff090ad2c40539daa837e6503a9bc)." } ], "createdAt": "2025-02-21T14:54:48.862000-06:00", "placementConstraints": [], "placementStrategy": [], "networkConfiguration": { "awsvpcConfiguration": { "subnets": [ "subnet-12344321" ], "securityGroups": [ "sg-12344321" ], "assignPublicIp": "ENABLED" } }, "healthCheckGracePeriodSeconds": 0, "schedulingStrategy": "REPLICA", "deploymentController": { "type": "ECS" }, "createdBy": "arn:aws:iam::123456789012:role/AIDACKCEVSQ6C2EXAMPLE", "enableECSManagedTags": true, "propagateTags": "NONE", "enableExecuteCommand": false, "availabilityZoneRebalancing": "ENABLED" } }Weitere Informationen finden Sie unter Verwenden von Amazon-EBS-Volumes mit Amazon ECS im Amazon-ECS-Entwicklerhandbuch.
Beispiel 5: So aktivieren Sie die Neuverteilung von Availability Zones für einen Service
Im folgenden
update-service-Beispiel wird die Neuverteilung von Availability Zones für den Servicemy-http-serviceaktiviert.aws ecs update-service \ --clusterMyCluster\ --servicemy-http-service\ --availability-zone-rebalancingENABLEDAusgabe:
{ "service": { "serviceArn": "arn:aws:ecs:us-east-1:123456789012:service/MyCluster/my-http-service", "serviceName": "my-http-service", "clusterArn": "arn:aws:ecs:us-east-1:123456789012:cluster/MyCluster", "loadBalancers": [], "serviceRegistries": [], "status": "ACTIVE", "desiredCount": 2, "runningCount": 1, "pendingCount": 0, "capacityProviderStrategy": [ { "capacityProvider": "FARGATE", "weight": 1, "base": 0 } ], "platformVersion": "LATEST", "platformFamily": "Linux", "taskDefinition": "arn:aws:ecs:us-east-1:123456789012:task-definition/MyTaskDefinition", "deploymentConfiguration": { "deploymentCircuitBreaker": { "enable": true, "rollback": true }, "maximumPercent": 200, "minimumHealthyPercent": 100, "alarms": { "alarmNames": [], "rollback": false, "enable": false } }, "deployments": [ { "id": "ecs-svc/1976744184940610707", "status": "PRIMARY", "taskkDefinition": "arn:aws:ecs:us-east-1:123456789012:task-definition/MyTaskDefinition", "desiredCount": 1, "pendingCount": 0, "runningCount": 1, "failedTasks": 0, "createdAt": "2024-12-03T16:24:25.225000-05:00", "updatedAt": "2024-12-03T16:25:15.837000-05:00", "capacityProviderStrategy": [ { "capacityProvider": "FARGATE", "weight": 1, "base": 0 } ], "platformVersion": "1.4.0", "platformFamily": "Linux", "networkConfiguration": { "awsvpcConfiguration": { "subnets": [ "subnet-0d0eab1bb38d5ca64", "subnet-0db5010045995c2d5" ], "securityGroups": [ "sg-02556bf85a191f59a" ], "assignPublicIp": "ENABLED" } }, "rolloutState": "COMPLETED", "rolloutStateReason": "ECS deployment ecs-svc/1976744184940610707 completed." } ], "roleArn": "arn:aws:iam::123456789012:role/aws-service-role/ecs.amazonaws.com/AWSServiceRoleForECS", "events": [], "createdAt": "2024-12-03T16:24:25.225000-05:00", "placementConstraints": [], "placementStrategy": [], "networkConfiguration": { "awsvpcConfiguration": { "subnets": [ "subnet-0d0eab1bb38d5ca64", "subnet-0db5010045995c2d5" ], "securityGroups": [ "sg-02556bf85a191f59a" ], "assignPublicIp": "ENABLED" } }, "healthCheckGracePeriodSeconds": 0, "schedulingStrategy": "REPLICA", "deploymentController": { "type": "ECS" }, "createdBy": "arn:aws:iam::123456789012:role/Admin", "enableECSManagedTags": true, "propagateTags": "NONE", "enableExecuteCommand": false, "availabilityZoneRebalancing": "ENABLED" } }Weitere Informationen finden Sie unter Aktualisieren eines Amazon-ECS-Service mithilfe der Konsole im Amazon-ECS-Entwicklerhandbuch.
-
API-Details finden Sie unter UpdateService
in der AWS CLI-Befehlsreferenz.
-
Das folgende Codebeispiel zeigt, wie update-task-protection verwendet wird.
- AWS CLI
-
Beispiel 1: So aktivieren Sie den Aufgabenschutz für ECS-Aufgaben
Im folgenden
update-task-protection-Beispiel wird Ihre ECS-Aufgabe vor einem Abbruch während des Abskalierens durch Bereitstellungen oder Service-AutoScaling geschützt. Sie können einen benutzerdefinierten Ablaufzeitraum für den Aufgabenschutz zwischen 1 und 2 880 Minuten (48 Stunden) angeben. Wenn Sie keinen Ablaufzeitraum angeben, beträgt die Standardzeit für die Aktivierung des Aufgabenschutzes 2 Stunden.aws ecs update-task-protection \ --clusterECS-project-update-cluster\ --tasksc43ed3b1331041f289316f958adb6a24\ --protection-enabled \ --expires-in-minutes300Ausgabe:
{ "protectedTasks": [ { "taskArn": "arn:aws:ecs:us-west-2:123456789012:task/c43ed3b1331041f289316f958adb6a24", "protectionEnabled": true, "expirationDate": "2024-09-14T19:53:36.687000-05:00" } ], "failures": [] }Beispiel 2: So deaktivieren Sie den Aufgabenschutz für ECS-Aufgaben
Im folgenden
update-task-protection-Beispiel wird der Aufgabenschutz deaktiviert, sodass die Aufgaben nicht mehr während des Abskalierens durch Bereitstellungen oder Service-AutoScaling geschützt sind.aws ecs update-task-protection \ --clusterECS-project-update-cluster\ --tasksc43ed3b1331041f289316f958adb6a24\ --no-protection-enabledAusgabe:
{ "protectedTasks": [ { "taskArn": "arn:aws:ecs:us-west-2:123456789012:task/c43ed3b1331041f289316f958adb6a24", "protectionEnabled": false } ], "failures": [] }Weitere Informationen zum Schutz von Aufgaben finden Sie unter Schützen Ihrer Amazon-ECS-Aufgaben vor dem Beenden durch Abskalierungsereignisse im Amazon-ECS-Entwicklerhandbuch.
-
API-Details finden Sie unter UpdateTaskProtection
in der AWS CLI-Befehlsreferenz.
-
Das folgende Codebeispiel zeigt, wie update-task-set verwendet wird.
- AWS CLI
-
So aktualisieren Sie einen Aufgabensatz
Im folgenden
update-task-set-Beispiel wird ein Aufgabensatz aktualisiert, um die Skalierung anzupassen.aws ecs update-task-set \ --clusterMyCluster\ --serviceMyService\ --task-setarn:aws:ecs:us-west-2:123456789012:task-set/MyCluster/MyService/ecs-svc/1234567890123456789\ --scalevalue=50,unit=PERCENTAusgabe:
{ "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 } }-
API-Details finden Sie unter UpdateTaskSet
in der AWS CLI-Befehlsreferenz.
-