

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

# Private image replication in Amazon ECR
<a name="replication"></a>

Puoi configurare il tuo registro privato Amazon ECR in modo da supportare la replica dei tuoi repository. Amazon ECR supporta sia la replica tra regioni che tra account. Affinché si verifichi la replica tra account, l'account di destinazione deve configurare una policy di autorizzazione del registro per consentire la replica dal registro. Per ulteriori informazioni, consulta [Autorizzazioni di registro private in Amazon ECR](registry-permissions.md).

**Topics**
+ [Requisiti delle politiche di replica tra account](#replication-policy-clarification)
+ [Considerazioni per la replica di immagini private](#replication-considerations)
+ [Esempi di replica di immagini private per Amazon ECR](registry-settings-examples.md)
+ [Configurazione della replica di immagini private in Amazon ECR](registry-settings-configure.md)
+ [Rimozione delle impostazioni di replica delle immagini private in Amazon ECR](registry-settings-remove.md)

## Requisiti delle politiche di replica tra account
<a name="replication-policy-clarification"></a>

Affinché la replica ECR tra account funzioni correttamente, è necessario comprendere quale account necessita di quali politiche configurate. Questa sezione chiarisce i requisiti delle policy sia per gli account di origine che per quelli di destinazione.

### Panoramica della configurazione delle politiche
<a name="replication-policy-overview"></a>

La replica ECR tra account richiede la configurazione delle policy solo sull'account di **destinazione**. L'account di origine non richiede alcun repository o policy di registro speciali.
+ **Account di origine**: configura le regole di replica nelle impostazioni del registro. Non sono richieste politiche aggiuntive sui repository di origine.
+ **Account di destinazione**: configura una politica di autorizzazione del registro per consentire all'account di origine di replicare le immagini.

### Requisiti della politica del registro di destinazione
<a name="destination-registry-policy-requirements"></a>

L'account di destinazione deve configurare una politica di autorizzazioni del registro che conceda all'account di origine l'autorizzazione a eseguire le seguenti azioni:
+ `ecr:ReplicateImage`- Consente all'account di origine di replicare le immagini nel registro di destinazione
+ `ecr:CreateRepository`- Consente a ECR di creare automaticamente repository nel registro di destinazione se non esistono già

**Importante**  
Se non si concede l'`ecr:CreateRepository`autorizzazione, è necessario creare manualmente repository con gli stessi nomi nell'account di destinazione prima che la replica possa avere successo.

Esempio di politica del registro di destinazione:

------
#### [ JSON ]

****  

```
{
    "Version":"2012-10-17",		 	 	 
    "Statement": [
        {
            "Sid": "AllowCrossAccountReplication",
            "Effect": "Allow",
            "Principal": {
                "AWS": "arn:aws:iam::111122223333:root"
            },
            "Action": [
                "ecr:ReplicateImage",
                "ecr:CreateRepository"
            ],
            "Resource": "*"
        }
    ]
}
```

------

### Requisiti dell'account di origine
<a name="source-account-requirements"></a>

L'account di origine deve solo:
+ Configurare le regole di replica nelle impostazioni del registro per specificare l'account e le regioni di destinazione
+ Assicurati che il principale IAM che configura la replica disponga delle autorizzazioni ECR necessarie

**Non sono richieste politiche aggiuntive sui repository di origine.** I repository di origine non necessitano di politiche di repository che concedano autorizzazioni di replica.

### Idee sbagliate comuni
<a name="common-misconceptions"></a>

Di seguito sono riportate le idee sbagliate più comuni sulle politiche di replica ECR tra account:
+ Idea **sbagliata**: il repository di origine necessita di una policy che consenta all'account di destinazione di replicare le immagini.

  **Realtà**: i repository di origine non necessitano di politiche speciali per la replica.
+ Idea **sbagliata**: sia gli account di origine che quelli di destinazione necessitano di politiche di registro.

  **Realtà**: solo l'account di destinazione necessita di una politica di autorizzazioni di registro.
+ Idea **sbagliata**: le politiche del repository e le politiche del registro sono la stessa cosa.

  **Realtà**: le politiche del repository controllano l'accesso ai singoli repository, mentre le politiche del registro controllano le operazioni a livello di registro come la replica.

### Risoluzione dei problemi di replica
<a name="replication-troubleshooting"></a>

Se la replica tra account non riesce, controlla quanto segue:
+ Verifica che per l'account di destinazione sia configurata una politica di autorizzazione del registro
+ Assicurati che la politica del registro includa entrambe `ecr:ReplicateImage` le `ecr:CreateRepository` azioni
+ Verifica che l'ID dell'account di origine sia specificato correttamente nella politica del registro di destinazione
+ Verifica che i repository di destinazione esistano (se non `ecr:CreateRepository` è concesso)
+ Controlla CloudTrail i log per le chiamate non riuscite `CreateRepository` o `ReplicateImage` le chiamate API

## Considerazioni per la replica di immagini private
<a name="replication-considerations"></a>

Quando usi la replica di immagini private, tieni presenti le considerazioni seguenti:
+ Viene replicato solo il contenuto del repository inviato o ripristinato in un repository dopo la configurazione della replica. Qualsiasi contenuto preesistente in un repository non sarà replicato. Se un'immagine viene ripristinata dopo l'attivazione della replica, verrà replicata. Se viene ripristinata prima dell'attivazione della replica, non verrà replicata.
+ Il nome del repository rimarrà lo stesso in tutte le regioni e gli account una volta che la replica sarà stata effettuata. Amazon ECR non supporta la modifica del nome del repository durante la replica.
+ La prima volta che configuri il registro privato per la replica, Amazon ECR crea un ruolo IAM collegato ai servizi per tuo conto. Il ruolo IAM collegato ai servizi concede al servizio di replica Amazon ECR l'autorizzazione necessaria per creare repository e replicare immagini nel registro. Per ulteriori informazioni, consulta [Utilizzo di ruoli collegati ai servizi per Amazon ECR](using-service-linked-roles.md).
+ Affinché si verifichi la replica tra account, la destinazione del registro privato deve concedere l'autorizzazione per consentire al registro di origine di replicare le immagini. Per questa operazione viene effettuato l'impostazione di una policy delle autorizzazioni del registro privato. Per ulteriori informazioni, consulta [Autorizzazioni di registro private in Amazon ECR](registry-permissions.md).
+ Se le policy di autorizzazione per un registro privato vengono modificate per rimuovere un'autorizzazione, le repliche in corso precedentemente concesse potrebbero essere completate.
+ Affinché si verifichi la replica tra regioni, sia l'account di origine che quello di destinazione devono essere abilitati alla regione prima di eseguire qualsiasi azione di replica all'interno o verso quella regione. Per ulteriori informazioni, consulta [Gestione delle regioni AWS](https://docs.aws.amazon.com/general/latest/gr/rande-manage.html) nella *Riferimenti generali di Amazon Web Services*.
+ La replica tra regioni non è supportata tra le partizioni. AWS Ad esempio, un repository in `us-west-2` non può essere replicato in ` cn-north-1`. Per ulteriori informazioni sulle AWS partizioni, vedere il formato [ARN AWS](https://docs.aws.amazon.com/general/latest/gr/aws-arns-and-namespaces.html#arns-syntax) *nella* Guida generale.
+ La configurazione di replica per un registro privato può contenere fino a 25 destinazioni univoche per tutte le regole, con un massimo di 10 regole totali. Ogni regola può contenere fino a 100 filtri. Ciò consente di specificare regole separate per i repository contenenti immagini utilizzate per la produzione e il test, ad esempio.
+ La configurazione di replica supporta il filtro dei repository di un registro privato che vengono replicati specificando un prefisso del repository. Per vedere un esempio, consulta [Esempio: configurazione della replica tra regioni utilizzando un filtro repository](registry-settings-examples.md#registry-settings-examples-crr-filter).
+ Un'azione di replica si verifica solo una volta per invio o ripristino dell'immagine. Ad esempio, se è stata configurata la replica tra regioni da `us-west-2` a ` us-east-1` e da `us-east-1` a `us-east-2`, un'immagine inviata a `us-west-2` si replica solo in `us-east-1`, non si replica di nuovo in `us-east-2`. Questo comportamento si applica sia alla replica tra regioni e che tra account.
+ La maggior parte delle immagini viene replicata in meno di 30 minuti, ma in rari casi la replica potrebbe richiedere più tempo.
+ La replica del registro non esegue alcuna azione di eliminazione o archiviazione. Le immagini e gli archivi replicati possono essere eliminati o archiviati quando non vengono più utilizzati.
+ Se l'immagine da replicare viene archiviata nella destinazione, verrà ripristinata nella destinazione.
+ Quando un'immagine viene archiviata in una regione di origine, non verrà archiviata in una regione di destinazione specificata dalla configurazione di replica.
+ le policy del repository, tra cui le policy IAM e le policy del ciclo di vita, non vengono replicate e non hanno alcun effetto se non sul repository per cui sono definite.
+ Le impostazioni del repository non vengono replicate per impostazione predefinita, ma è possibile replicarle utilizzando i modelli di creazione del repository. Queste impostazioni includono la mutabilità dei tag, la crittografia, le autorizzazioni del repository e le politiche del ciclo di vita. Per ulteriori informazioni sui modelli di creazione di repository, vedere. [Modelli per controllare i repository creati durante un pull through cache, la creazione in modalità push o un'azione di replica](repository-creation-templates.md)
+ Se l'immutabilità dei tag è abilitata in un repository e viene replicata un'immagine che utilizza lo stesso tag di un'immagine esistente, l'immagine viene replicata ma non conterrà il tag duplicato. In questo modo all'immagine potrebbero non essere assegnati tag.
+ Durante la replica delle immagini, se è stato configurato il montaggio dei blob, ECR verificherà che tutti i layer del repository di origine esistano già nel registro di destinazione. Se nel registro di destinazione esistono già dei livelli, ECR li monterà. 

**Nota**  
Se il registro di origine è diverso dal registro di destinazione, sarà necessario abilitare il montaggio dei blob per entrambi i registri affinché ECR monti i layer replicati.

# Esempi di replica di immagini private per Amazon ECR
<a name="registry-settings-examples"></a>

Gli esempi seguenti riportano casi d'uso comuni per la replica di immagini private. Se configuri la replica utilizzando AWS CLI, puoi utilizzare gli esempi JSON come punto di partenza per creare il tuo file JSON. **Se configuri la replica utilizzando il Console di gestione AWS, vedrai un codice JSON simile quando esamini la regola di replica nella pagina Rivedi e invia.**

## Esempio: configurazione della replica tra regioni in un'unica regione di destinazione
<a name="registry-settings-examples-crr-single"></a>

Di seguito viene illustrato un esempio per la configurazione della replica tra regioni all'interno di un unico registro. In questo esempio si presuppone che l'ID account sia ` 111122223333` e che si sta specificando questa configurazione di replica in una regione diversa da `us-west-2`.

```
{
    "rules": [
        {
            "destinations": [
                {
                    "region": "us-west-2",
                    "registryId": "111122223333"
                }
            ]
        }
    ]
}
```

## Esempio: configurazione della replica tra regioni utilizzando un filtro repository
<a name="registry-settings-examples-crr-filter"></a>

Di seguito viene illustrato un esempio per la configurazione della replica tra regioni per repository che corrispondono a un valore del nome di prefisso. In questo esempio si presuppone che l'ID account sia ` 111122223333` e che si sta specificando questa configurazione di replica in una regione diversa da `us-west-1` e che ci siano repository con prefisso `prod`.

```
{
	"rules": [{
		"destinations": [{
			"region": "us-west-1",
			"registryId": "111122223333"
		}],
		"repositoryFilters": [{
			"filter": "prod",
			"filterType": "PREFIX_MATCH"
		}]
	}]
}
```

## Esempio: configurazione della replica tra regioni più regioni di destinazione
<a name="registry-settings-examples-crr-multipledestinations"></a>

Di seguito viene illustrato un esempio per la configurazione della replica tra regioni all'interno di un unico registro. Questo esempio presuppone che l'ID del tuo account sia ` 111122223333` e che tu stia specificando questa configurazione di replica in una regione diversa da o. `us-west-1` `us-west-2`

```
{
    "rules": [
        {
            "destinations": [
                {
                    "region": "us-west-1",
                    "registryId": "111122223333"
                },
                {
                    "region": "us-west-2",
                    "registryId": "111122223333"
                }
            ]
        }
    ]
}
```

## Esempio: configurazione della replica tra account
<a name="registry-settings-examples-crossaccount"></a>

Di seguito viene illustrato un esempio per la configurazione della replica tra account per il registro. In questo esempio viene configurata la replica per l'account `444455556666` e per la regione `us-west-2`.

**Importante**  
Affinché si verifichi la replica tra account, l'account di destinazione deve configurare una policy delle autorizzazioni del registro per consentire la replica dal registro. Per ulteriori informazioni, consulta [Autorizzazioni di registro private in Amazon ECR](registry-permissions.md).

```
{
    "rules": [
        {
            "destinations": [
                {
                    "region": "us-west-2",
                    "registryId": "444455556666"
                }
            ]
        }
    ]
}
```

## Esempio: specifica di più regole in una configurazione
<a name="registry-settings-examples-multiple-rules"></a>

Di seguito viene illustrato un esempio per la configurazione di più regole di replica per il registro. In questo esempio viene configurata la replica per l'account * 111122223333* con una regola che replica i repository con un prefisso `prod` alla regione `us-west-2` e i repository con un prefisso `test` alla regione `us-east-2`. Una configurazione di replica può contenere fino a 10 regole, ognuna delle quali specifica fino a 25 destinazioni.

```
{
	"rules": [{
			"destinations": [{
				"region": "us-west-2",
				"registryId": "111122223333"
			}],
			"repositoryFilters": [{
				"filter": "prod",
				"filterType": "PREFIX_MATCH"
			}]
		},
		{
			"destinations": [{
				"region": "us-east-2",
				"registryId": "111122223333"
			}],
			"repositoryFilters": [{
				"filter": "test",
				"filterType": "PREFIX_MATCH"
			}]
		}
	]
}
```

## Esempio: rimozione di tutte le impostazioni di replica
<a name="registry-settings-examples-remove"></a>

Di seguito viene illustrato un esempio di rimozione di tutte le impostazioni di replica dal registro. Per rimuovere le impostazioni di replica, è necessario configurare un array di regole vuoto.

```
{
    "rules": []
}
```

**Importante**  
La rimozione delle impostazioni di replica non elimina gli archivi o le immagini precedentemente replicati. È necessario eliminare manualmente il contenuto replicato se non è più necessario.

# Configurazione della replica di immagini private in Amazon ECR
<a name="registry-settings-configure"></a>

Configura la replica per regione per il tuo registro privato. È possibile configurare la replica tra regioni o la replica tra account.

Per esempi di uso comune della replica, consulta [Esempi di replica di immagini private per Amazon ECR](registry-settings-examples.md).

## Per configurare le impostazioni di replica del registro (Console di gestione AWS)
<a name="registry-settings-configure-console"></a>

1. Apri la console Amazon ECR nei [https://console.aws.amazon.com/ecr/repository](https://console.aws.amazon.com/ecr/repositories).

1. Dalla barra di navigazione, scegli la regione in cui configurare le impostazioni di replica del registro.

1. Nel pannello di navigazione, seleziona **Private registry (Registro privato)**.

1. Nella pagina del **registro privato**, scegli **Impostazioni**, quindi scegli **Modifica** in Configurazione della **replica**.

1. Alla pagina **Replication (Replica)**, scegliere **Add replication rule (Aggiunta di regola di replica)**.

1. Alla pagina **Destination types (Tipi di destinazione)**, scegliere se abilitare la replica tra regioni, la replica tra account o entrambe, quindi scegliere **Next (Successivo)**.

1. Se la replica tra regioni è abilitata, per **Configure destination regions (Configurare regioni di destinazione)** scegliere una o più **Destination regions (Regioni di destinazione)** e quindi scegliere **Next (Successivo)**.

1. Se la replica tra account è abilitata, per **Cross-account replication (Replica tra account)** scegliere l'impostazione di replica tra account per il registro. Per **Destination account (Account di destinazione)**, immettere l'ID account per l'account di destinazione e una o più **Destination regions (Regioni di destinazione)** a cui replicare. Scegliere **Destination account \$1 (Account di destinazione \$1)** per configurare account aggiuntivi come destinazioni di replica.
**Importante**  
Affinché si verifichi la replica tra account, l'account di destinazione deve configurare una policy delle autorizzazioni del registro per consentire la replica dal registro. Per ulteriori informazioni, consulta [Autorizzazioni di registro private in Amazon ECR](registry-permissions.md).

1. (Facoltativo) Alla pagina **Add filters (Aggiungi filtri)**, specificare uno o più filtri per la regola di replica, quindi scegliere **Add (Aggiungi)**. Ripetere questo passaggio per ogni filtro da associare all'operazione di replica. Un filtro deve essere specificato come prefisso del nome del repository. Se non viene aggiunto alcun filtro, il contenuto di tutti i repository viene replicato. Scegliere **Next (Successivo)** una volta aggiunti tutti i filtri.

1. Alla pagina **Review and submit (Verifica e invia)**, verificare la configurazione della regola di replica e quindi scegliere **Submit rule (Invia regola)**.

## Per configurare le impostazioni di replica del registro (AWS CLI)
<a name="registry-settings-configure-cli"></a>

1. Creare un file JSON contenente le regole di replica da definire per il registro. Una configurazione di replica può contenere fino a 10 regole, con un massimo di 25 destinazioni specifiche in tutte le regole e 100 filtri per ciascuna regola. Per configurare la replica tra regioni all'interno del proprio account, è necessario specificare il proprio ID account. Per ulteriori esempi, consulta [Esempi di replica di immagini private per Amazon ECR](registry-settings-examples.md).

   ```
   {
   	"rules": [{
   		"destinations": [{
   			"region": "destination_region",
   			"registryId": "destination_accountId"
   		}],
   		"repositoryFilters": [{
   			"filter": "repository_prefix_name",
   			"filterType": "PREFIX_MATCH"
   		}]
   	}]
   }
   ```

1. Crea una configurazione di replica per il tuo registro.

   ```
   aws ecr put-replication-configuration \
        --replication-configuration file://replication-settings.json \
        --region us-west-2
   ```

1. Confermare le impostazioni del registro.

   ```
   aws ecr describe-registry \
        --region us-west-2
   ```

# Rimozione delle impostazioni di replica delle immagini private in Amazon ECR
<a name="registry-settings-remove"></a>

Per rimuovere o disabilitare le impostazioni di replica per il registro privato, è necessario configurare una configurazione di replica vuota. Non è presente alcun comando di rimozione dedicato in. AWS CLI

## Per rimuovere le impostazioni di replica del registro ()Console di gestione AWS
<a name="registry-settings-remove-console"></a>

1. Apri la console Amazon ECR nei [https://console.aws.amazon.com/ecr/repository](https://console.aws.amazon.com/ecr/repositories).

1. Dalla barra di navigazione, scegli la regione da cui rimuovere le impostazioni di replica del registro.

1. Nel pannello di navigazione, seleziona **Private registry (Registro privato)**.

1. Nella pagina del **registro privato**, scegli **Impostazioni**, quindi scegli **Modifica** in **Configurazione della replica.**

1. Rimuovi tutte le regole di replica esistenti scegliendo l'opzione di eliminazione per ogni regola.

1. Scegliete **Salva** per applicare la configurazione di replica vuota.

## Per rimuovere le impostazioni di replica del registro ()AWS CLI
<a name="registry-settings-remove-cli"></a>

1. Crea un file JSON con un array di regole vuoto per rimuovere tutte le impostazioni di replica.

   ```
   {
       "rules": []
   }
   ```

1. Applica la configurazione di replica vuota al registro.

   ```
   aws ecr put-replication-configuration \
        --replication-configuration file://empty-replication-settings.json \
        --region us-west-2
   ```

1. Conferma che le impostazioni di replica sono state rimosse.

   ```
   aws ecr describe-registry \
        --region us-west-2
   ```

   L'output dovrebbe mostrare un valore vuoto `replicationConfiguration` senza regole.

**Importante**  
La rimozione delle impostazioni di replica non elimina gli archivi o le immagini precedentemente replicati. È necessario eliminare manualmente il contenuto replicato se non è più necessario.