

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

# Replica tra cluster per Amazon Service OpenSearch
<a name="replication"></a>

Con la replica tra cluster in Amazon OpenSearch Service, puoi replicare indici utente, mappature e metadati da un dominio di servizio a un altro. OpenSearch L'utilizzo della replica tra cluster aiuta a garantire il ripristino di emergenza in caso di interruzione e consente di replicare i dati su data center geograficamente distanti per ridurre la latenza. Paghi le tariffe [standard di trasferimento AWS dei dati per i dati trasferiti](https://aws.amazon.com/opensearch-service/pricing/) tra domini. 

**La replica tra cluster segue un modello di replica attiva-passiva in cui l'indice *locale* o dei *follower* estrae i dati dall'indice remoto o leader.** L'indice leader si riferisce all'origine dei dati o all'indice da cui si desidera replicare i dati. L'indice dei follower si riferisce alla destinazione dei dati o all'indice in cui si desidera replicare i dati.

La replica tra cluster è disponibile nei domini che eseguono Elasticsearch 7.10 o 1.1 o versioni successive. OpenSearch 

**Nota**  
Questa documentazione descrive come configurare la replica tra cluster dal punto di vista di Amazon OpenSearch Service. Ciò include l'utilizzo Console di gestione AWS di per configurare connessioni tra cluster, cosa non possibile in un cluster autogestito. OpenSearch Per la documentazione completa, incluso un riferimento alle impostazioni e un riferimento completo all'API, consulta [Replica tra cluster nella documentazione](https://docs.opensearch.org/latest/tuning-your-cluster/replication-plugin/index/). OpenSearch 

**Topics**
+ [Limitazioni](#replication-limitations)
+ [Prerequisiti](#replication-prereqs)
+ [Requisiti per le autorizzazioni](#replication-permissions)
+ [Configurazione di una connessione tra cluster](#replication-connect)
+ [Avvio della replica](#replication-start)
+ [Conferma della replica](#replication-confirm)
+ [Sospensione e ripristino della replica](#replication-pause-resume)
+ [Arresto della replica](#replication-stop)
+ [Auto-follow](#replication-autofollow)
+ [Aggiornamento dei domini connessi](#replication-upgrade)

## Limitazioni
<a name="replication-limitations"></a>

La replica tra cluster ha le seguenti limitazioni:
+ Non puoi replicare i dati tra domini Amazon OpenSearch Service e cluster autogestiti OpenSearch o Elasticsearch.
+ Non puoi replicare un indice da un dominio follower a un altro dominio di follower. Se desideri replicare un indice su più domini di follower, puoi replicarlo solo dal singolo dominio leader.
+ Un dominio può essere connesso, tramite una combinazione di connessioni in entrata e in uscita, a un massimo di altri 20 domini.
+ Quando si configura inizialmente una connessione tra cluster, il dominio leader deve trovarsi nella stessa versione o in una versione successiva rispetto al dominio follower.
+ Non è possibile utilizzarlo CloudFormation per connettere domini.
+ Non è possibile utilizzare la replica tra cluster su istanze M3 o istanze espandibili (T2 e T3).
+ Non è possibile replicare i dati tra indici freddi UltraWarm o tra diversi indici. Entrambi gli indici devono essere nell'archiviazione ad accesso frequente.
+ Quando elimini un indice dal dominio leader, l'indice corrispondente nel dominio del follower non viene eliminato automaticamente.
+ [La replica tra cluster non è supportata tra default e opt-in.](https://docs.aws.amazon.com/general/latest/gr/rande-manage.html) Entrambi i domini devono trovarsi nelle regioni predefinite o nelle regioni opt-in.

## Prerequisiti
<a name="replication-prereqs"></a>

Prima di configurare la replica tra cluster, assicurati che i domini soddisfino i seguenti requisiti:
+ Elasticsearch 7.10 o 1.1 o versioni successive OpenSearch 
+ [Controllo granulare degli accessi](fgac.md) abilitato
+ [Node-to-node crittografia](ntn.md) abilitata
+ Gli indici Leader devono essere `index.soft_deletes.enabled` impostati su. `true` Gli indici creati in Elasticsearch 7.0 o OpenSearch 1.0 e versioni successive hanno questa impostazione abilitata per impostazione predefinita. Tuttavia, gli indici creati in Elasticsearch 6.x e successivamente aggiornati mantengono. `soft_deletes=false` Per replicare tali indici, è necessario prima reindicizzarli.

  Per verificare se in un indice sono abilitate le eliminazioni automatiche:

  ```
  GET <index-name>/_settings?include_defaults=true&flat_settings=true&filter_path=*.settings.index.soft_deletes.enabled
  ```

  In caso `soft_deletes` `false` affermativo, reindicizza i dati in un nuovo indice prima di iniziare la replica.

## Requisiti per le autorizzazioni
<a name="replication-permissions"></a>

Per avviare la replica, è necessario includere l'autorizzazione `es:ESCrossClusterGet` sul dominio remoto (principale). Consigliamo la seguente policy IAM sul dominio remoto. Questa policy consente anche di eseguire altre operazioni, come l'indicizzazione dei documenti e l'esecuzione di ricerche standard:

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

****  

```
{
  "Version":"2012-10-17",		 	 	 
  "Statement": [
    {
      "Effect": "Allow",
      "Principal": {
        "AWS": [
          "*"
        ]
      },
      "Action": [
        "es:ESHttp*"
      ],
      "Resource": "arn:aws:es:us-east-1:111122223333:domain/leader-domain/*"
    },
    {
      "Effect": "Allow",
      "Principal": {
        "AWS": "*"
      },
      "Action": "es:ESCrossClusterGet",
      "Resource": "arn:aws:es:us-east-1:111122223333:domain/leader-domain"
    }
  ]
}
```

------

Assicurarsi che l'autorizzazione `es:ESCrossClusterGet` sia applicata per `/leader-domain` e non per `/leader-domain/*`.

Affinché gli utenti non amministratori possano eseguire attività di replica, devono essere mappati alle autorizzazioni appropriate. La maggior parte delle autorizzazioni corrisponde a [operazioni REST API](https://docs.opensearch.org/latest/tuning-your-cluster/replication-plugin/api/) specifiche. Ad esempio, l'autorizzazione `indices:admin/plugins/replication/index/_resume` consente di riprendere la replica di un indice. Per un elenco completo delle autorizzazioni, consulta Autorizzazioni di [replica](https://docs.opensearch.org/latest/tuning-your-cluster/replication-plugin/permissions/#replication-permissions) nella documentazione. OpenSearch 

**Nota**  
I comandi per avviare la replica e creare una regola di replica sono casi speciali. Poiché richiamano processi in background sui domini leader e follower, è necessario inserire un e nella richiesta. `leader_cluster_role` `follower_cluster_role` OpenSearch Il servizio utilizza questi ruoli in tutte le attività di replica del backend. Per informazioni sulla mappatura e l'utilizzo di questi ruoli, consulta [Mappare i ruoli del cluster leader e follower](https://docs.opensearch.org/latest/tuning-your-cluster/replication-plugin/permissions/#map-the-leader-and-follower-cluster-roles) nella documentazione. OpenSearch

## Configurazione di una connessione tra cluster
<a name="replication-connect"></a>

Per replicare gli indici da un dominio all'altro, è necessario configurare una connessione tra cluster tra i domini. Il modo più semplice per connettere i domini è dalla scheda **Connessioni** del pannello di controllo del dominio. È inoltre possibile utilizzare l'[API di configurazione](https://docs.aws.amazon.com/opensearch-service/latest/APIReference/Welcome.html) o [AWS CLI](https://docs.aws.amazon.com/cli/latest/reference/opensearch/create-outbound-connection.html). Poiché la replica tra cluster segue un modello "pull" (ovvero di estrazione), le connessioni vengono avviate dal dominio follower.

**Nota**  
Se in precedenza sono stati collegati due domini per eseguire [ricerche tra cluster](cross-cluster-search.md), non sarà possibile utilizzare la stessa connessione per la replica. La connessione è contrassegnata come `SEARCH_ONLY` nella console. Per eseguire la replica tra due domini precedentemente connessi, è necessario eliminare la connessione e ricrearla. Una volta fatto questo, la connessione è disponibile sia per la ricerca tra cluster che per la replica tra cluster.

**Per impostare una connessione**

1. Nella console di Amazon OpenSearch Service, seleziona il dominio del follower, vai alla scheda **Connessioni** e scegli **Richiesta**.

1. Per **Alias di connessione**, specifica un nome per la connessione.

1. Scegli se connetterti a un dominio nella tua regione Account AWS e in un altro account o regione.
   + Per connetterti a un dominio nella tua regione Account AWS e nella tua regione, seleziona il dominio e scegli **Richiedi**.
   + **Per connetterti a un dominio in un'altra regione Account AWS o in un'altra regione, specifica l'ARN del dominio remoto e scegli Richiesta.**

OpenSearch Il servizio convalida la richiesta di connessione. Se i domini non sono compatibili, la connessione ha esito negativo. Se la convalida ha esito positivo, viene inviata al dominio di destinazione per l'approvazione. Una volta che dominio di destinazione ha approvato la richiesta, sarà possibile iniziare la replica. 

La replica tra cluster supporta la replica bidirezionale. Ciò significa che è possibile creare una connessione in uscita dal dominio A al dominio B e un'altra connessione in uscita dal dominio B al dominio A. È quindi possibile impostare la replica in modo che il dominio A segua un indice nel dominio B e il dominio B segua un indice nel dominio A.

## Avvio della replica
<a name="replication-start"></a>

Dopo aver stabilito una connessione tra cluster, potrai iniziare a replicare i dati. Innanzitutto, crea un indice da replicare nel dominio principale: 

```
PUT leader-01
```

Per replicare tale indice, invia questo comando al dominio follower:

```
PUT _plugins/_replication/follower-01/_start
{
   "leader_alias": "connection-alias",
   "leader_index": "leader-01",
   "use_roles":{
      "leader_cluster_role": "all_access",
      "follower_cluster_role": "all_access"
   }
}
```

È possibile trovare l'alias di connessione nella scheda **Connessioni** nel pannello di controllo del dominio.

In questo esempio si presuppone che un amministratore stia emettendo la richiesta e utilizzi `all_access` per il `leader_cluster_role` e `follower_cluster_role` per semplicità. Negli ambienti di produzione, tuttavia, si consiglia di creare utenti di replica sugli indici leader e follower e di mapparli di conseguenza. I nomi utente devono essere identici. Per informazioni su questi ruoli e su come mapparli, consulta [Mappare i ruoli del cluster leader e follower](https://docs.opensearch.org/latest/tuning-your-cluster/replication-plugin/permissions/#map-the-leader-and-follower-cluster-roles) nella OpenSearch documentazione.

## Conferma della replica
<a name="replication-confirm"></a>

Per confermare che la replica è in corso, ottieni lo stato di replica:

```
GET _plugins/_replication/follower-01/_status

{
  "status" : "SYNCING",
  "reason" : "User initiated",
  "leader_alias" : "connection-alias",
  "leader_index" : "leader-01",
  "follower_index" : "follower-01",
  "syncing_details" : {
    "leader_checkpoint" : -5,
    "follower_checkpoint" : -5,
    "seq_no" : 0
  }
}
```

I valori dei checkpoint principale e follower iniziano come numeri interi negativi e riflettono il numero di partizioni presenti (-1 per una partizione, -5 per cinque partizioni e così via). I valori aumentano e diventano numeri interi positivi con ogni modifica apportata. Se i valori sono uguali, significa che gli indici sono completamente sincronizzati. È possibile utilizzare questi valori di checkpoint per misurare la latenza di replica nei domini.

Per convalidare ulteriormente la replica, aggiungi un documento all'indice principale:

```
PUT leader-01/_doc/1
{
   "Doctor Sleep":"Stephen King"
}
```

Quindi conferma che viene visualizzato sull'indice follower:

```
GET follower-01/_search

{
    ...
    "max_score" : 1.0,
    "hits" : [
      {
        "_index" : "follower-01",
        "_type" : "_doc",
        "_id" : "1",
        "_score" : 1.0,
        "_source" : {
          "Doctor Sleep" : "Stephen King"
        }
      }
    ]
  }
}
```

## Sospensione e ripristino della replica
<a name="replication-pause-resume"></a>

È possibile sospendere temporaneamente la replica se è necessario risolvere problemi o ridurre il carico sul dominio principale. Invia questa richiesta al dominio follower. Assicurati di includere un corpo della richiesta vuoto:

```
POST _plugins/_replication/follower-01/_pause
{}
```

Quindi ottieni lo stato per assicurarti che la replica sia sospesa:

```
GET _plugins/_replication/follower-01/_status

{
  "status" : "PAUSED",
  "reason" : "User initiated",
  "leader_alias" : "connection-alias",
  "leader_index" : "leader-01",
  "follower_index" : "follower-01"
}
```

Una volta completate le modifiche, riprendi la replica. Invia questa richiesta al dominio follower. Assicurati di includere un corpo della richiesta vuoto:

```
POST _plugins/_replication/follower-01/_resume
{}
```

Non è possibile riprendere la replica dopo che è stata sospesa per più di 12 ore. È necessario interrompere la replica, eliminare l'indice di follower e riavviare la replica del leader.

## Arresto della replica
<a name="replication-stop"></a>

Quando si interrompe completamente la replica, l'indice follower smette di seguire l'indice principale e diventa un indice standard. Non è possibile riavviare una replica dopo averla arrestata.

Interrompi la replica dal dominio follower. Assicurati di includere un corpo della richiesta vuoto:

```
POST _plugins/_replication/follower-01/_stop
{}
```

## Auto-follow
<a name="replication-autofollow"></a>

È possibile definire un set di regole di replica in base a un singolo dominio principale che replicano automaticamente gli indici che corrispondono a uno schema specificato. Quando un indice nel dominio leader corrisponde a uno dei modelli (ad esempio,`books*`), viene creato un indice di follower corrispondente nel dominio del follower. OpenSearch Il servizio replica tutti gli indici esistenti che corrispondono al modello, nonché i nuovi indici creati dall'utente. Non replica gli indici già presenti nel dominio follower.

Per replicare tutti gli indici (ad eccezione degli indici creati dal sistema e di quelli già esistenti nel dominio follower), utilizzare un modello con carattere jolly (`*`). 

### Creazione di una regola di replica
<a name="replication-rule-create"></a>

Crea una regola di replica nel dominio follower e specifica il nome della connessione tra cluster:

```
POST _plugins/_replication/_autofollow
{
   "leader_alias" : "connection-alias",
   "name": "rule-name",
   "pattern": "books*",
   "use_roles":{
      "leader_cluster_role": "all_access",
      "follower_cluster_role": "all_access"
   }
}
```

È possibile trovare l'alias di connessione nella scheda **Connessioni** nel pannello di controllo del dominio.

In questo esempio si presuppone che un amministratore stia emettendo la richiesta e usa `all_access` come ruoli per i domini principale e follower per semplicità. Negli ambienti di produzione, tuttavia, si consiglia di creare utenti di replica sugli indici leader e follower e di mapparli di conseguenza. I nomi utente devono essere identici. Per informazioni su questi ruoli e su come mapparli, consulta [Mappare i ruoli del cluster leader e follower](https://docs.opensearch.org/latest/tuning-your-cluster/replication-plugin/permissions/#map-the-leader-and-follower-cluster-roles) nella OpenSearch documentazione.

Per recuperare un elenco di regole di replica esistenti in un dominio, utilizza l'[operazione API auto-follow](https://docs.opensearch.org/latest/tuning-your-cluster/replication-plugin/api/#get-auto-follow-stats).

Per testare la regola, crea un indice che corrisponda al pattern sul dominio principale:

```
PUT books-are-fun
```

Quindi controlla che la replica venga visualizzata sul dominio follower:

```
GET _cat/indices

health status index          uuid                     pri rep docs.count docs.deleted store.size pri.store.size
green  open   books-are-fun  ldfHO78xYYdxRMULuiTvSQ     1   1          0            0       208b           208b
```

### Eliminazione di una regola di replica
<a name="replication-rule-delete"></a>

Quando si elimina una regola di replica, OpenSearch Service interrompe la replica di *nuovi* indici che corrispondono al modello, ma continua l'attività di replica esistente finché non si [interrompe](#replication-stop) la replica di tali indici.

Elimina le regole di replica dal dominio follower:

```
DELETE _plugins/_replication/_autofollow
{
   "leader_alias" : "connection-alias",
   "name": "rule-name"
}
```

## Aggiornamento dei domini connessi
<a name="replication-upgrade"></a>

Per aggiornare la versione del motore di due domini con una connessione tra cluster, aggiorna prima il dominio follower e poi il dominio leader. Non eliminate la connessione tra di essi, altrimenti la replica si interrompe e non sarà possibile riprenderla.