

 AWS Cloud9 non è più disponibile per i nuovi clienti. I clienti esistenti di AWS Cloud9 possono continuare a utilizzare il servizio come di consueto. [Ulteriori informazioni](https://aws.amazon.com/blogs/devops/how-to-migrate-from-aws-cloud9-to-aws-ide-toolkits-or-aws-cloudshell/)

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à.

# Spostamento di un AWS Cloud9 IDE dai volumi Amazon EBS
<a name="move-environment"></a>

Puoi spostare un ambiente di AWS Cloud9 sviluppo da un'istanza Amazon EC2 a un'altra. Ad esempio, è possibile eseguire una delle seguenti operazioni:
+ Trasferire un ambiente da un'istanza Amazon EC2 compromessa o che viene eseguita in modo imprevisto rispetto a un'istanza integra.
+ Trasferire un ambiente da un'istanza precedente a una che utilizza i più recenti aggiornamenti di sistema.
+ Aumentare o diminuire le risorse di calcolo di un'istanza, poiché l'ambiente è utilizzato in modo eccessivo sull'istanza corrente.

Puoi eseguire l'aggiornamento da un'AMI AWS Cloud9 supportata a un'altra migrando a un nuovo ambiente AWS Cloud9 EC2, mantenendo i file di progetto. Potresti voler eseguire l'aggiornamento a un'altra versione dell'AMI perché: 
+ L'AMI dell'ambiente corrente è stata raggiunta end-of-life e non è più supportata.
+ Il pacchetto necessario non è aggiornato nell'AMI corrente. 

È anche possibile ridimensionare il volume di Amazon Elastic Block Store (Amazon EBS) associato a un'istanza Amazon EC2 per un ambiente. Ad esempio, è possibile eseguire una o entrambe le seguenti operazioni:
+ Aumentare la dimensione di un volume, poiché lo spazio di archiviazione sull'istanza è quasi esaurito.
+ Diminuire le dimensioni di un volume per evitare di pagare lo spazio di archiviazione inutilizzato.

Prima di spostare o ridimensionare un ambiente, puoi provare ad arrestare alcuni processi in esecuzione nell'ambiente o aggiungere un file di scambio all'ambiente. Per ulteriori informazioni su come gestire la memoria insufficiente o l'utilizzo elevato della CPU, consulta [*Risoluzione dei problemi*](troubleshooting.md#troubleshooting-ide-low-memory).

**Nota**  
Questo argomento descrive solo lo spostamento di un ambiente da un'istanza Amazon EC2 a un'altra o il ridimensionamento di un volume Amazon EBS. Per ridimensionare un ambiente o per modificare lo spazio di archiviazione di un server in uso, consulta la documentazione del server.

Infine, puoi crittografare le risorse Amazon EBS per garantire la sicurezza di entrambe data-at-rest e data-in-transit tra un'istanza e lo storage EBS collegato.

## Spostamento di un ambiente
<a name="move-environment-move"></a>

Prima di avviare il processo di spostamento, occorre tenere presente le condizioni seguenti:
+ Non è possibile spostare un ambiente in un'istanza Amazon EC2 dello stesso tipo. Per le operazioni di spostamento, è necessario scegliere una nuova istanza Amazon EC2 di tipo diverso.
**Importante**  
Se sposti il tuo ambiente in un altro tipo di istanza Amazon EC2, quel tipo di istanza deve essere supportato anche dalla versione AWS Cloud9 corrente. Regione AWS Per controllare i tipi di istanza disponibili in ogni regione, vai alla pagina **Configure settings** (Configura impostazioni) che viene visualizzata quando [si crea un ambiente EC2 con la console](create-environment-main.md#create-environment-console). La tua scelta nella sezione **Tipo di istanza** è determinata dal Regione AWS tipo selezionato nella parte superiore destra della console. 
+ È necessario arrestare l'istanza Amazon EC2 associata all'ambiente prima di poter modificare il tipo di istanza. Quando l'istanza viene arrestata, nessuno sarà in grado di utilizzare l'ambiente a essa associato.
+ AWS sposta l'istanza su un nuovo hardware, tuttavia l'ID dell'istanza non cambia.
+ Se l'istanza è in esecuzione in un Amazon VPC e ha un IPv4 indirizzo pubblico, AWS rilascia l'indirizzo e assegna all'istanza un nuovo indirizzo pubblico IPv4 . L'istanza conserva i suoi IPv4 indirizzi privati e tutti gli indirizzi IP o IPv6 indirizzi IP elastici.
+ Prevedi i tempi di inattività durante l'arresto dell'istanza. Il processo potrebbe richiedere alcuni minuti.

**Per spostare un ambiente**

1. (Facoltativo) Se il nuovo tipo di istanza richiede driver non installati sull'istanza esistente, connettiti all'istanza e installa i driver. Per ulteriori informazioni, consulta la sezione [Compatibilità per il ridimensionamento delle istanze](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/ec2-instance-resize.html#resize-limitations) nella Guida per l'utente di *Amazon* EC2.

1. Chiudi tutte le schede del browser Web in cui è attualmente visualizzato l'ambiente.
**Importante**  
Se non chiudi tutte le schede del browser Web che attualmente visualizzano l'ambiente, AWS Cloud9 potrebbe interferire con il completamento di questa procedura. In particolare, AWS Cloud9 potrebbe provare a riavviare l'istanza Amazon EC2 associata all'ambiente nel momento sbagliato durante questa procedura. L'istanza deve rimanere arrestata fino all'ultima fase di questa procedura.

1. Accedi a Console di gestione AWS, se non hai già effettuato l'accesso, all'indirizzo [https://console.aws.amazon.com](https://console.aws.amazon.com/).

   Ti consigliamo di accedere utilizzando le credenziali di livello di amministratore nel tuo. Account AWS Se non riesci a farlo, rivolgiti al tuo amministratore. Account AWS 

1. Aprire la console Amazon EC2. Per farlo, nell'elenco **Services (Servizi)**, scegliere **EC2**.

1. Nella barra di AWS navigazione, scegli l'ambiente Regione AWS che contiene l'ambiente che desideri spostare (ad esempio, **Stati Uniti orientali (Ohio))**.

1. Nel pannello di navigazione di servizio, espandi **Instances** (Istanze), quindi scegli **Instances** (Istanze).

1. Nell'elenco delle istanze, scegli l'istanza associata all'ambiente che desideri spostare. Per un ambiente EC2, il nome dell'istanza inizia con `aws-cloud9-` seguito dal nome dell'ambiente. Ad esempio, se il nome dell'ambiente è `my-demo-environment`, il nome dell'istanza inizia con `aws-cloud9-my-demo-environment`.

1. Se lo stato dell'**istanza non è stato** **interrotto**, scegli **Azioni**, **Stato dell'istanza**, **Stop**. Quando viene richiesto, scegli **Yes, Stop** (Sì, arresta). Possono essere necessari alcuni minuti per arrestare l'istanza.

1. Quando il campo **Instance State** (Stato istanza) è **stopped** (arrestato), con l'istanza ancora selezionata, scegli **Actions**, **Instance Settings**, **Change Instance Type** (Azioni, Impostazioni istanza, Modifica tipo di istanza).

1. Nella finestra di dialogo **Change Instance Type** (Modifica tipo di istanza), scegli il nuovo **Instance Type** (Tipo di istanza) che deve utilizzare l'ambiente.
**Nota**  
Se il tipo di istanza desiderato non è visualizzato nell'elenco, significa che non è compatibile con la configurazione dell'istanza, ad esempio potrebbe non essere compatibile a causa del tipo di virtualizzazione.

1. (Opzionale) Se il tipo di istanza scelto supporta l'ottimizzazione EBS, selezionare **EBS-optimized (Ottimizzato per EBS)** per attivare l'ottimizzazione EBS oppure deselezionare **EBS-optimized (Ottimizzato per EBS)** per disattivare l'ottimizzazione EBS.
**Nota**  
Se il tipo di istanza scelto è ottimizzato per EBS per impostazione predefinita, l'opzione **EBS-optimized** (Ottimizzato per EBS) è selezionata e non è possibile deselezionarla.

1. Scegli **Apply** (Applica) per applicare le nuove impostazioni.
**Nota**  
Se un altro tipo di istanza per **Instance Type** (Tipo di istanza) non viene scelto precedentemente in questa procedura, dopo aver scelto **Apply** (Applica) non accade nulla.

1. Riapri l'ambiente. Per ulteriori informazioni, consulta [Aprire un ambiente in AWS Cloud9](open-environment.md).

Per ulteriori informazioni sulla procedura precedente, consulta [Modifica del tipo di istanza nella Guida](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/ec2-instance-resize.html) per l'utente di *Amazon EC2*.

## Spostamento di un ambiente AWS Cloud9 EC2 in un'altra Amazon Machine Image (AMI)
<a name="moving-ec2-environ-to-ami"></a>

 

Questo argomento spiega come migrare un ambiente AWS Cloud9 EC2 da un'AMI Amazon Linux a un'altra AWS Cloud9 AMI supportata. 

**Nota**  
Se desideri spostare il tuo ambiente su una nuova istanza senza aggiornare la versione del sistema operativo, consulta. [Spostamento di un ambiente](#move-environment-move)

È possibile migrare i dati tra ambienti utilizzando una delle seguenti procedure:

**Per spostare un ambiente scaricando l'archivio su un computer locale**

1. Crea un nuovo ambiente nella stessa zona di disponibilità con un'immagine di base diversa:

   1. Completa i passaggi indicati nella [Creare un ambiente EC2](create-environment-main.md) sezione per creare un nuovo ambiente. 
**Nota**  
Durante la scelta della **piattaforma**, seleziona la piattaforma su cui vuoi migrare il tuo ambiente.

   1. Per impostazione predefinita, gli ambienti vengono creati con un volume da 10 GiB. Se non disponi di spazio sufficiente per caricare o decomprimere l'archivio nel nuovo ambiente, completa i passaggi della [Ridimensionamento di un volume Amazon EBS utilizzato da un ambiente](move-environment-resize.md) procedura per ridimensionare le dimensioni del volume Amazon EBS.

1. Apri l'ambiente che desideri migrare nell'IDE. AWS Cloud9 

1. Dopo il caricamento dell' AWS Cloud9 IDE, selezionate **File** > **Scarica progetto** dal menu per scaricare l'archivio con i contenuti della directory del progetto ambientale.

1. Apri AWS Cloud9 IDE nel nuovo ambiente.

1. Scegli **File** > **Carica file locali...** per caricare l'archivio.

1. (Facoltativo) Per eseguire il backup della vecchia `.c9` directory`.c9.backup`, nel terminale di ambiente, esegui il seguente comando: 

   ```
   cp .c9 .c9.backup
   ```

   Potrebbero essere necessari questi file di backup se desideri ripristinare i file di configurazione in un secondo momento.

1. Per decomprimere l'archivio, esegui il seguente comando: 

   ```
   tar xzvf <old_environment_name>.tar.gz -C ~/
   ```

1. Per eliminare l'archivio dalla directory del progetto, esegui il seguente comando:

   ```
   rm <old_environment_name>.tar.gz
   ```

   Assicuratevi che il nuovo ambiente funzioni come previsto.

1. Ora puoi eliminare il vecchio ambiente.

**Per spostare un ambiente utilizzando il volume Amazon EBS**

Se non riesci a scaricare l'archivio o se l'archivio risultante è troppo grande, puoi utilizzare il volume Amazon EBS per migrare. Inoltre, questo metodo consente di copiare file che si trovano all'esterno della `~/environment` directory.

1. Chiudi tutte le schede AWS Cloud9 IDE aperte nell'ambiente esistente. 

1. Completate i seguenti passaggi per arrestare l'istanza esistente:

   1. Nella AWS Cloud9 console, seleziona l'ambiente in cui navigare per visualizzarne i dettagli.

   1. Nella pagina dei **dettagli dell'ambiente**, nella scheda dell'**istanza EC2**, scegli **Gestisci istanza EC2**.

   1. Nella console EC2, seleziona l'istanza per accedere ai dettagli dell'istanza. 

   1. Assicurati che **lo stato dell'istanza** sia impostato su Arrestato**.** In caso contrario, seleziona **Stop instance** **dall'elenco a discesa Instance State**. Quando viene richiesto, scegli **Arresta**. Possono essere necessari alcuni minuti per arrestare l'istanza. 

1. Crea un nuovo ambiente nella stessa zona di disponibilità con un'immagine di base diversa:

   1. Completa i passaggi indicati nella [Creare un ambiente EC2](create-environment-main.md) sezione per creare un nuovo ambiente. 
**Nota**  
Durante la scelta della **piattaforma**, seleziona la piattaforma su cui vuoi migrare il tuo ambiente.

   1. Per impostazione predefinita, gli ambienti vengono creati con un volume da 10 GiB. Se non disponi di spazio sufficiente per spostare i file dal volume di origine al nuovo ambiente, completa i passaggi della [Ridimensionamento di un volume Amazon EBS utilizzato da un ambiente](move-environment-resize.md) procedura per ridimensionare le dimensioni del volume Amazon EBS.

1. Completa i seguenti passaggi per scollegare il volume dall'istanza esistente:

   1. Nella pagina di **riepilogo dell'istanza**, scegli la scheda **Archiviazione** e seleziona il volume. Il nome del dispositivo del volume selezionato deve essere lo stesso specificato nel **nome del dispositivo principale** della sezione **Dettagli del dispositivo principale**.

   1. Nella pagina dei dettagli del volume, scegli **Azioni** > **Scollega volume**.

   1. Dopo aver scollegato correttamente il volume, scegli **Azioni** > **Allega volume**, quindi trova e seleziona l'istanza del nuovo ambiente dall'elenco a discesa. Il nome dell'istanza Amazon EC2 selezionata deve contenere il nome dell' AWS Cloud9 ambiente preceduto da. `aws-cloud9`

1. Apri AWS Cloud9 IDE nel nuovo ambiente.

1. Dopo il caricamento dell'ambiente, per identificare il dispositivo del volume appena collegato, esegui il seguente comando nel terminale: 

   ```
   lsblk
   ```

   Nell'output di esempio seguente, la partizione `nvme0n1` del dispositivo root `nvme0n1p1` è già montata, quindi anche la `nvme1n1p1` partizione deve essere montata. Il percorso completo del dispositivo è: `/dev/nvme1n1p1`

   ```
   Admin:~/environment $ lsblk
   NAME          MAJ:MIN RM SIZE RO TYPE MOUNTPOINTS
   nvme0n1       259:0    0  10G  0 disk 
   ├─nvme0n1p1   259:2    0  10G  0 part /
   ├─nvme0n1p127 259:3    0   1M  0 part 
   └─nvme0n1p128 259:4    0  10M  0 part /boot/efi
   nvme1n1       259:1    0  10G  0 disk 
   ├─nvme1n1p1   259:5    0  10G  0 part 
   └─nvme1n1p128 259:6    0   1M  0 part
   ```
**Nota**  
L'output varia quando si esegue questo comando nel terminale.

1. Completa i seguenti passaggi nel terminale di ambiente per montare il volume esistente:

   1. Per creare una directory temporanea in cui verrà montata la partizione del volume, esegui il seguente comando:

      ```
      MOUNT_POINT=$(mktemp -d)
      ```

   1. In base all'output di esempio del `lsblk` comando, specificate il seguente percorso del dispositivo da montare:

      ```
      MOUNT_DEVICE=/dev/nvme1n1p1
      ```
**Nota**  
L'output varia quando si esegue questo comando nel terminale.

   1. Per montare il volume esistente, esegui il seguente comando: 

      ```
      sudo mount $MOUNT_DEVICE $MOUNT_POINT
      ```

   1. Completa i seguenti passaggi per verificare se il volume esistente è montato correttamente:

      1. Per assicurarti che il volume sia incluso nell'output, esegui il comando seguente: 

         ```
         df -h
         ```

      1. Per verificare il contenuto del volume, esegui il comando seguente:

         ```
         ls $MOUNT_POINT/home/ec2-user/environment/
         ```

1. (Facoltativo) Per eseguire il backup della vecchia `.c9` directory`.c9.backup`, nel terminale di ambiente, esegui il seguente comando: 

   ```
   cp .c9 .c9.backup
   ```

   Potrebbero essere necessari questi file di backup se desideri ripristinare i file di configurazione in un secondo momento.

1. Per copiare il vecchio ambiente dal volume esistente, esegui il comando seguente:

   ```
   cp -R $MOUNT_POINT/home/ec2-user/environment ~
   ```
**Nota**  
Se necessario, potete anche copiare file o directory al di fuori della directory dell'ambiente utilizzando il comando precedente. 

   Assicuratevi che il nuovo ambiente funzioni come previsto.

1. Per smontare il dispositivo precedente, esegui uno dei due comandi seguenti: 

   ```
   sudo umount $MOUNT_DEVICE
   ```

   ```
   sudo umount $MOUNT_POINT
   ```

1. **Scegliete **Scollega volume** dall'elenco a discesa **Azioni** per scollegare il volume collegato nel passaggio 3.**

1. Ora puoi eliminare il vecchio ambiente e il relativo volume.
**Nota**  
Poiché il volume non è più collegato all'istanza Amazon EC2 dell'ambiente, dovrai rimuoverlo manualmente. Puoi farlo selezionando **Elimina** nella pagina dei **dettagli del volume**.

# Ridimensionamento di un volume Amazon EBS utilizzato da un ambiente
<a name="move-environment-resize"></a>

Questo passaggio mostra come ridimensionare un volume Amazon EBS.

1. Apri l'ambiente associato all'istanza Amazon EC2 per il volume Amazon EBS da ridimensionare.

1. Nell' AWS Cloud9 IDE per l'ambiente, crea un file con i seguenti contenuti, quindi salva il file con l'estensione `.sh` (ad esempio,`resize.sh`).
**Nota**  
Questo script funziona per i volumi Amazon EBS collegati a istanze EC2 in esecuzione, AL2023 Amazon Linux 2, Amazon Linux o Ubuntu Server ed è configurato per l'uso. IMDSv2  
Lo script ridimensiona anche i volumi Amazon EBS esposti come dispositivi a NVMe blocchi su istanze Nitro basate. Per un elenco di istanze basate sul sistema Nitro, consulta [le istanze Nitro basate](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/instance-types.html#ec2-nitro-instances) nella *Amazon* EC2 User Guide.

   ```
   #!/bin/bash
   
   # Specify the desired volume size in GiB as a command line argument. If not specified, default to 20 GiB.
   SIZE=${1:-20}
   
   # Get the ID of the environment host Amazon EC2 instance.
   TOKEN=$(curl -s -X PUT "http://169.254.169.254/latest/api/token" -H "X-aws-ec2-metadata-token-ttl-seconds: 60")
   INSTANCEID=$(curl -s -H "X-aws-ec2-metadata-token: $TOKEN" -v http://169.254.169.254/latest/meta-data/instance-id 2> /dev/null)
   REGION=$(curl -s -H "X-aws-ec2-metadata-token: $TOKEN" -v http://169.254.169.254/latest/meta-data/placement/region 2> /dev/null)
   
   # Get the ID of the Amazon EBS volume associated with the instance.
   VOLUMEID=$(aws ec2 describe-instances \
     --instance-id $INSTANCEID \
     --query "Reservations[0].Instances[0].BlockDeviceMappings[0].Ebs.VolumeId" \
     --output text \
     --region $REGION)
   
   # Resize the EBS volume.
   aws ec2 modify-volume --volume-id $VOLUMEID --size $SIZE
   
   # Wait for the resize to finish.
   while [ \
     "$(aws ec2 describe-volumes-modifications \
       --volume-id $VOLUMEID \
       --filters Name=modification-state,Values="optimizing","completed" \
       --query "length(VolumesModifications)"\
       --output text)" != "1" ]; do
   sleep 1
   done
   
   # Check if we're on an NVMe filesystem
   if [[ -e "/dev/xvda" && $(readlink -f /dev/xvda) = "/dev/xvda" ]]
   then
   # Rewrite the partition table so that the partition takes up all the space that it can.
     sudo growpart /dev/xvda 1
   # Expand the size of the file system.
   # Check if we're on AL2 or AL2023
     STR=$(cat /etc/os-release)
     SUBAL2="VERSION_ID=\"2\""
     SUBAL2023="VERSION_ID=\"2023\""
     if [[ "$STR" == *"$SUBAL2"* || "$STR" == *"$SUBAL2023"* ]]
     then
       sudo xfs_growfs -d /
     else
       sudo resize2fs /dev/xvda1
     fi
   
   else
   # Rewrite the partition table so that the partition takes up all the space that it can.
     sudo growpart /dev/nvme0n1 1
   
   # Expand the size of the file system.
   # Check if we're on AL2 or AL2023
     STR=$(cat /etc/os-release)
     SUBAL2="VERSION_ID=\"2\""
     SUBAL2023="VERSION_ID=\"2023\""
     if [[ "$STR" == *"$SUBAL2"* || "$STR" == *"$SUBAL2023"* ]]
     then
       sudo xfs_growfs -d /
     else
       sudo resize2fs /dev/nvme0n1p1
     fi
   fi
   ```

1. Da una sessione del terminale nell'IDE , passa alla directory contenente il file `resize.sh`. Quindi esegui uno dei comandi riportati di seguito, sostituendo `20` con le dimensioni in GiB che desideri applicare per ridimensionare il volume Amazon EBS:
   + 

     ```
     bash resize.sh 20
     ```
   + 

     ```
     chmod +x resize.sh
     ./resize.sh 20
     ```

# Crittografa i volumi Amazon EBS che utilizza AWS Cloud9
<a name="encrypting-volumes"></a>

Questo argomento mostra come crittografare i volumi Amazon EBS per le istanze EC2 utilizzate dagli ambienti di sviluppo. AWS Cloud9 

La crittografia Amazon EBS crittografa i seguenti dati:
+ Dati a riposo all'interno del volume
+ Tutti i dati in transito tra il volume e l'istanza
+ Tutti gli snapshot creati dal volume
+ Tutti i volumi creati dagli snapshot

Sono disponibili due opzioni di crittografia per i volumi Amazon EBS utilizzati da ambienti di sviluppo EC2 AWS Cloud9 :
+ **Crittografia per impostazione predefinita**: è possibile configurare il proprio Account AWS affinché venga applicata la crittografia alle nuove copie di volumi e snapshot EBS create. La crittografia per impostazione predefinita è abilitata a livello di Regione AWS. Pertanto, non è possibile abilitarla per singoli volumi o snapshot nella regione. Inoltre, Amazon EBS esegue la crittografia del volume creato all'avvio dell'istanza e quindi è necessario abilitare questa impostazione prima di creare un ambiente EC2. Per ulteriori informazioni, consulta [Encryption by default](https://docs.aws.amazon.com/ebs/latest/userguide/ebs-encryption.html#encryption-by-default) nella *Amazon EC2 User* Guide. 
+ **Crittografia di un volume Amazon EBS esistente utilizzato da un ambiente EC2**: puoi crittografare volumi Amazon EBS specifici già creati per le istanze EC2. Questa opzione prevede l'utilizzo di AWS Key Management Service (AWS KMS) per gestire l'accesso ai volumi crittografati. Per la procedura pertinente, consulta [Crittografa un volume Amazon EBS esistente che utilizza AWS Cloud9](#encrypting-existing-volume).

**Importante**  
Se il tuo AWS Cloud9 IDE utilizza volumi Amazon EBS crittografati per impostazione predefinita, il ruolo AWS Identity and Access Management collegato al servizio AWS Cloud9 richiede l'accesso a tali volumi EBS. AWS KMS key Se l'accesso non viene fornito, l' AWS Cloud9 IDE potrebbe non riuscire ad avviarsi e il debug potrebbe essere difficile.  
Per fornire l'accesso, aggiungi il ruolo collegato al servizio per AWS Cloud9`AWSServiceRoleForAWSCloud9`, alla chiave KMS utilizzata dai tuoi volumi Amazon EBS. Per ulteriori informazioni su questa attività, consulta [Creare un AWS Cloud9 IDE che utilizzi volumi Amazon EBS con crittografia predefinita](https://docs.aws.amazon.com/prescriptive-guidance/latest/patterns/create-an-aws-cloud9-ide-that-uses-amazon-ebs-volumes-with-default-encryption.html) in *AWS Prescriptive* Guidance Patterns.

## Crittografa un volume Amazon EBS esistente che utilizza AWS Cloud9
<a name="encrypting-existing-volume"></a>

La crittografia di un volume Amazon EBS esistente implica l'utilizzo AWS KMS per creare una chiave KMS. Dopo aver creato uno snapshot del volume da sostituire, utilizza la chiave KMS per crittografare una copia dello snapshot.

Successivamente, crea un volume crittografato con tale snapshot. Quindi sostituisci il volume non crittografato scollegandolo dall'istanza EC2 e collega il volume crittografato. 

Infine, devi aggiornare la policy delle chiavi per la chiave gestita dal cliente per abilitare l'accesso per il ruolo di servizio AWS Cloud9 . 

**Nota**  
La procedura seguente è incentrata sull'utilizzo di una chiave gestita dal cliente per crittografare un volume. Puoi anche usare un Chiave gestita da AWS for an Servizio AWS nel tuo account. L'alias di Amazon EBS è `aws/ebs`. Se scegli questa opzione di default per la crittografia, ignora la fase 1 relativa alla creazione di una chiave gestita dal cliente. Ignora anche la fase 8 relativa all'aggiornamento della policy delle chiavi in quanto Questo perché non puoi modificare la politica chiave per un Chiave gestita da AWS.<a name="creating-encrypted-volume"></a>

**Per crittografare un volume Amazon EBS esistente**

1. Nella AWS KMS console, crea una chiave KMS simmetrica. Per ulteriori informazioni, consulta [Creazione di KMS simmetriche](https://docs.aws.amazon.com/kms/latest/developerguide/create-keys.html#create-symmetric-cmk) nella *Guida per gli sviluppatori di AWS Key Management Service *.

1. Nella console Amazon EC2 arresta l'istanza supportata da Amazon EBS utilizzata dall'ambiente. Puoi [interrompere l'istanza utilizzando la console o la riga di comando](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/Stop_Start.html).

1. Nel pannello di navigazione della console Amazon EC2, scegli **Snapshots** (Snapshot) [per creare uno snapshot del volume esistente](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/ebs-creating-snapshot.html#ebs-create-snapshot) da crittografare.

1. Nel pannello di navigazione della console Amazon EC2, scegli **Snapshots** (Snapshot) [per copiare lo snapshot](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/ebs-copy-snapshot.html). Nella finestra di dialogo **Copy snapshot** (Copia snapshot), esegui le seguenti operazioni per abilitare la crittografia:
   + Scegli **Encrypt this snapshot** (Esegui la crittografia di questo snapshot). 
   + Per **Master Key** (Chiave master), seleziona la chiave KMS creata precedentemente. (Se stai usando un Chiave gestita da AWS, mantieni l'impostazione **aws/ebs (predefinita)**.)

1. [Crea un nuovo volume dallo snapshot crittografato](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/ebs-creating-volume.html#ebs-create-volume-from-snapshot). 
**Nota**  
I volumi Amazon EBS creati da snapshot crittografati vengono crittografati automaticamente. 

1. [Scollega il volume Amazon EBS precedente](https://docs.aws.amazon.com/ebs/latest/userguide/ebs-detaching-volume.html) dall'istanza Amazon EC2. 

1. [Allega il nuovo volume crittografato](https://docs.aws.amazon.com/ebs/latest/userguide/ebs-attaching-volume.html) all'istanza Amazon EC2.

1. Aggiorna la politica chiave per la chiave KMS [utilizzando la visualizzazione Console di gestione AWS predefinita, la visualizzazione delle Console di gestione AWS politiche](https://docs.aws.amazon.com/kms/latest/developerguide/key-policy-modifying.html#key-policy-modifying-how-to) o l'API. AWS KMS Aggiungi le seguenti dichiarazioni politiche chiave per consentire al AWS Cloud9 servizio di accedere alla chiave KMS. `AWSServiceRoleForAWSCloud9`
**Nota**  
Se stai usando un Chiave gestita da AWS, salta questo passaggio.

   ```
   {
       "Sid": "Allow use of the key",
       "Effect": "Allow",
       "Principal": {
           "AWS": "arn:{Partition}:iam::{AccountId}:role/aws-service-role/cloud9.amazonaws.com/AWSServiceRoleForAWSCloud9"
       },
       "Action": [
           "kms:Encrypt",
           "kms:Decrypt",
           "kms:ReEncrypt*",
           "kms:GenerateDataKey*",
           "kms:DescribeKey"
       ],
       "Resource": "*"
      },
      {
       "Sid": "Allow attachment of persistent resources",
       "Effect": "Allow",
       "Principal": {
           "AWS": "arn:{Partition}:iam::{AccountId}:role/aws-service-role/cloud9.amazonaws.com/AWSServiceRoleForAWSCloud9"
       },
       "Action": [
           "kms:CreateGrant",
           "kms:ListGrants",
           "kms:RevokeGrant"
       ],
       "Resource": "*",
       "Condition": {
           "Bool": {
               "kms:GrantIsForAWSResource": "true"
           }
       }
   }
   ```

1. Riavvia l'istanza Amazon EC2. Per ulteriori informazioni sul riavvio di un'istanza Amazon EC2, [consulta Arresta e](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/Stop_Start.html) avvia l'istanza.