Le traduzioni sono generate tramite traduzione automatica. In caso di conflitto tra il contenuto di una traduzione e la versione originale in Inglese, quest'ultima prevarrà.
Specificare la configurazione del volume Amazon EBS nell'implementazione di Amazon ECS
Dopo aver registrato una definizione di attività con il parametro configuredAtLaunch impostato su true, puoi configurare un volume Amazon EBS durante l'implementazione quando esegui un'attività autonoma o quando crei o aggiorni un servizio. Per ulteriori informazioni su come posticipare la configurazione del volume all'ora di avvio utilizzando il parametro configuredAtLaunch, consultare Rimanda la configurazione del volume all'ora di avvio nella definizione di un'attività di Amazon ECS.
Per configurare un volume, puoi utilizzare Amazon ECS APIs oppure puoi passare un file JSON come input per i seguenti comandi: AWS CLI
-
run-taskper eseguire un'attività ECS autonoma. -
start-taskper eseguire un'attività ECS autonoma in un'istanza di container specifica. Questo comando non è applicabile alle attività di Fargate. -
create-serviceper creare un nuovo servizio ECS. -
update-serviceper aggiornare un servizio esistente.
Nota
Affinché un contenitore della tua attività possa scrivere sul volume Amazon EBS montato, deve disporre delle autorizzazioni di file system appropriate. Quando specifichi un utente non root nella definizione del contenitore, Amazon ECS configura automaticamente il volume con autorizzazioni basate sul gruppo che consentono all'utente specificato di leggere e scrivere sul volume. Se non viene specificato alcun utente, il contenitore funziona come root e ha pieno accesso al volume.
È possibile anche configurare un volume Amazon EBS utilizzando Console di gestione AWS. Per ulteriori informazioni, consultare Esecuzione di un'applicazione come attività Amazon ECS, Creazione di un'implementazione di aggiornamenti continui di Amazon ECS e Aggiornamento di un servizio Amazon ECS.
Il seguente frammento di codice JSON mostra tutti i parametri di un volume Amazon EBS che può essere configurato al momento dell'implementazione. Per utilizzare questi parametri per la configurazione del volume, sostituire con le proprie informazioni. Per ulteriori informazioni sui parametri di configurazione, consultare Volume configurations.user input placeholders
"volumeConfigurations": [ { "name": "ebs-volume", "managedEBSVolume": { "encrypted":true, "kmsKeyId": "arn:aws:kms:us-east-1:111122223333:key/1234abcd-12ab-34cd-56ef-1234567890ab", "volumeType": "gp3", "sizeInGiB":10, "snapshotId": "snap-12345", "volumeInitializationRate":100, "iops":3000, "throughput":125, "tagSpecifications": [ { "resourceType": "volume", "tags": [ { "key": "key1", "value": "value1" } ], "propagateTags": "NONE" } ], "roleArn": "arn:aws:iam::1111222333:role/ecsInfrastructureRole", "terminationPolicy": { "deleteOnTermination":true//can't be configured for service-managed tasks, always true }, "filesystemType": "ext4" } } ]
Importante
Assicurarsi che volumeName, specificato nella configurazione, sia uguale a volumeName, specificato nella definizione dell'attività.
Per informazioni sulla verifica dello stato del volume dell'allegato, consultare Risoluzione dei problemi relativi ai volumi di Amazon EBS collegati alle attività di Amazon ECS . Per informazioni sul ruolo dell'infrastruttura Amazon ECS AWS Identity and Access Management (IAM) necessario per l'allegato del volume EBS, consulta. Ruolo IAM dell’infrastruttura Amazon ECS
Di seguito sono riportati alcuni frammenti di esempio JSON che mostrano la configurazione dei volumi Amazon EBS. Questi esempi possono essere utilizzati salvando gli snippet in file JSON e passando i file come parametri (utilizzando il parametro) per i --cli-input-json
file:// comandi. AWS CLI Sostituisci filename con le informazioni appropriate.user input placeholders
Configurare un volume per un'attività autonoma
Il seguente frammento mostra la sintassi per configurare i volumi di Amazon EBS per l'allegato a un'attività autonoma. Il seguente frammento di codice JSON mostra la sintassi per la configurazione delle impostazioni volumeType, sizeInGiB, encrypted e kmsKeyId. La configurazione specificata nel file JSON viene utilizzata per creare e allegare un volume EBS all'attività autonoma.
{ "cluster": "mycluster", "taskDefinition": "mytaskdef", "volumeConfigurations": [ { "name": "datadir", "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" } } ] }
Configurare un volume al momento della creazione del servizio
Il seguente frammento mostra la sintassi per configurare i volumi di Amazon EBS per l'allegato alle attività gestite da un servizio. I volumi provengono dallo snapshot specificato utilizzando il parametro snapshotId a una velocità di 200 MiB/s. La configurazione specificata nel file JSON viene utilizzata per creare e allegare un volume EBS a ogni attività gestita da un servizio.
{ "cluster": "mycluster", "taskDefinition": "mytaskdef", "serviceName": "mysvc", "desiredCount":2, "volumeConfigurations": [ { "name": "myEbsVolume", "managedEBSVolume": { "roleArn":"arn:aws:iam::1111222333:role/ecsInfrastructureRole", "snapshotId": "snap-12345", "volumeInitializationRate": 200 } } ] }
Configura un volume al momento dell'aggiornamento del servizio
Il seguente frammento di codice JSON mostra la sintassi per l'aggiornamento di un servizio che in precedenza non aveva volumi Amazon EBS configurati per il collegamento alle attività. È necessario fornire l'ARN di una revisione della definizione dell'attività con configuredAtLaunch impostato su true. Il seguente frammento di codice JSON mostra la sintassi per la configurazione delle impostazioni volumeType, sizeInGiB, throughput, iops e filesystemType. Questa configurazione viene utilizzata per creare e allegare un volume EBS a ogni attività gestita da un servizio.
{ "cluster": "mycluster", "taskDefinition": "mytaskdef", "service": "mysvc", "desiredCount":2, "volumeConfigurations": [ { "name": "myEbsVolume", "managedEBSVolume": { "roleArn":"arn:aws:iam::1111222333:role/ecsInfrastructureRole", "volumeType": "gp3", "sizeInGiB":100, "iops":3000, "throughput":125, "filesystemType": "ext4" } } ] }
Configurare un servizio per non utilizzare più i volumi Amazon EBS
Il seguente frammento di codice JSON mostra la sintassi per aggiornare un servizio in modo che non utilizzi più i volumi Amazon EBS. È necessario fornire l'ARN di una definizione di attività con configuredAtLaunch impostato su false o una definizione di attività senza il parametro configuredAtLaunch. È inoltre necessario fornire un oggetto volumeConfigurations vuoto.
{ "cluster": "mycluster", "taskDefinition": "mytaskdef", "service": "mysvc", "desiredCount":2, "volumeConfigurations": [] }
Policy di terminazione per i volumi di Amazon EBS
Quando si termina un'attività Amazon ECS, questo utilizza il valore deleteOnTermination per determinare se il volume Amazon EBS associato all'attività terminata deve essere eliminato. Per impostazione predefinita, i volumi EBS collegati alle attività vengono eliminati quando l'attività viene terminata. Per le attività autonome, è possibile modificare questa impostazione per preservare il volume al termine dell'attività.
Nota
I volumi collegati alle attività gestite da un servizio non vengono conservati e vengono sempre eliminati al termine della stessa.
Tag volumi Amazon EBS
È possibile etichettare i volumi Amazon EBS utilizzando l'oggetto tagSpecifications. Utilizzando l'oggetto, è possibile fornire tag personalizzati e impostare la propagazione dei tag dalla definizione dell'attività o dal servizio, a seconda che il volume sia collegato a un'attività autonoma o a un'attività in un servizio. Il numero massimo di tag che è possibile collegare a un volume è pari a 50.
Importante
Amazon ECS allega automaticamente i tag AmazonECSManaged e AmazonECSCreated riservati a un volume Amazon EBS. Ciò significa che è possibile controllare l'allegato di un massimo di 48 tag aggiuntivi a un volume. Questi tag aggiuntivi possono essere tag definiti dall'utente, gestiti da ECS o propagati.
Se si desidera aggiungere tag gestiti da Amazon ECS al proprio volume, è necessario impostare enableECSManagedTags su true nella propria chiamata UpdateService, CreateService, RunTask o StartTask. Se si attivano i tag gestiti da Amazon ECS, quest'ultimo etichetterà automaticamente il volume con informazioni su cluster e servizi (aws:ecs: e clusterNameaws:ecs:). Per ulteriori informazioni sull'etichettare le risorse di Amazon ECS, consultare Tagging your Amazon ECS resources.serviceName
Il seguente frammento di codice JSON mostra la sintassi per etichettare ogni volume Amazon EBS collegato a ciascuna attività in un servizio con un tag definito dall'utente. Per utilizzare questo esempio per la creazione di un servizio, sostituisci con le tue informazioni.user input
placeholders
{ "cluster": "mycluster", "taskDefinition": "mytaskdef", "serviceName": "mysvc", "desiredCount":2, "enableECSManagedTags": true, "volumeConfigurations": [ { "name": "datadir", "managedEBSVolume": { "volumeType": "gp3", "sizeInGiB":100, "tagSpecifications": [ { "resourceType": "volume", "tags": [ { "key": "key1", "value": "value1" } ], "propagateTags": "NONE" } ], "roleArn":"arn:aws:iam:1111222333:role/ecsInfrastructureRole", "encrypted":true, "kmsKeyId": "arn:aws:kms:region:111122223333:key/1234abcd-12ab-34cd-56ef-1234567890ab" } } ] }
Importante
È necessario specificare un tipo di risorsa volume per etichettare i volumi Amazon EBS.