

As traduções são geradas por tradução automática. Em caso de conflito entre o conteúdo da tradução e da versão original em inglês, a versão em inglês prevalecerá.

# Exportação de um backup
<a name="backups-exporting"></a>

A Amazon ElastiCache suporta a exportação de seu backup ElastiCache para Redis OSS para um bucket do Amazon Simple Storage Service (Amazon S3), que lhe dá acesso externo. ElastiCache Você pode exportar um backup usando o ElastiCache console AWS CLI, o ou a ElastiCache API.

Exportar um backup pode ser útil se você precisar iniciar um cluster em outra AWS região. Você pode exportar seus dados em uma AWS região, copiar o arquivo.rdb para a nova AWS região e usar esse arquivo.rdb para semear o novo cache em vez de esperar que o novo cluster seja preenchido por meio do uso. Para obter informações sobre como criar um novo cluster, consulte [Tutorial: propagação de um novo cluster baseado em nós com um backup criado externamente](backups-seeding-redis.md). Outra razão pela qual você pode querer exportar os dados do seu cache é para usar o arquivo .rdb para processamento off-line.

**Importante**  
 O ElastiCache backup e o bucket do Amazon S3 para os quais você deseja copiá-lo devem estar na mesma AWS região.  
Embora os backups copiados para um bucket do Amazon S3 sejam criptografados, recomendamos que você não conceda a outras pessoas acesso ao bucket do Amazon S3 no qual deseja armazená-los.
A exportação de um backup para o Amazon S3 não é compatível com clusters que usam classificação de dados em níveis. Para obter mais informações, consulte [Classificação por níveis de dados em ElastiCache](data-tiering.md).
A exportação de um backup está disponível para: clusters Valkey baseados em nós, clusters Redis OSS baseados em nós e caches com tecnologia sem servidor do Valkey, Memcached e Redis OSS. A exportação de um backup não está disponível para clusters baseados em nós do Memcached.

Antes de exportar um backup para um bucket do Amazon S3, você deve ter um bucket do Amazon S3 na mesma AWS região do backup. Conceda ElastiCache acesso ao bucket. As duas primeiras etapas mostram como fazer isso.

## Criar um bucket do Amazon S3.
<a name="backups-exporting-create-s3-bucket"></a>

As etapas a seguir usam o console do Amazon S3 para criar um bucket do Amazon S3 onde você exporta e armazena seu ElastiCache backup.

**Como criar um bucket do Amazon S3**

1. Faça login no Console de gerenciamento da AWS e abra o console do Amazon S3 em [ https://console.aws.amazon.com/s3/](https://console.aws.amazon.com/s3/).

1. Escolha **Criar bucket**.

1. Em **Create a Bucket - Select a Bucket Name and Region**, faça o seguinte:

   1. Em **Nome do bucket**, digite um nome para o bucket do Amazon S3.

      O nome do seu bucket do Amazon S3 deve ser DNS-compliant. Caso contrário, não ElastiCache conseguirá acessar seu arquivo de backup. As regras para a conformidade de DNS são:
      + Os nomes devem ter no mínimo 3 e no máximo 63 caracteres de extensão.
      + Os nomes devem ser uma série de um ou mais rótulos separados por um ponto (.) em que cada rótulo:
        + Começa com uma letra minúscula ou um número.
        + Termina com uma letra minúscula ou um número.
        + Contém somente letras minúsculas, números e traços.
      + Os nomes não podem ser formatado como um endereço IP (por exemplo, 192.0.2.0).

   1. Na ** lista de ** regiões, escolha uma AWS região para seu bucket do Amazon S3. Essa AWS região deve ser a mesma AWS região do ElastiCache backup que você deseja exportar.

   1. Escolha **Criar**.

Para obter mais informações sobre como criar um bucket do Amazon S3, consulte [Criação de um bucket](https://docs.aws.amazon.com/AmazonS3/latest/userguide/CreatingaBucket.html), no *Guia do usuário do Amazon Simple Storage Service*. 

## Conceda ElastiCache acesso ao seu bucket Amazon S3
<a name="backups-exporting-grant-access"></a>

ElastiCache requer acesso ao seu bucket do Amazon S3 para copiar um snapshot nele. Recomendamos conceder acesso usando uma política de bucket do Amazon S3 em vez de listas de controle de acesso (ACLs).

**Atenção**  
Mesmo que os backups copiados em um bucket do Amazon S3 sejam criptografados, seus dados podem ser acessados por qualquer pessoa com acesso ao seu bucket do Amazon S3. Portanto, recomendamos que você configure políticas do IAM para impedir o acesso não autorizado a esse bucket do Amazon S3. Para obter mais informações, consulte [Gerenciamento de acesso](https://docs.aws.amazon.com/AmazonS3/latest/userguide/s3-access-control.html) no *Guia do usuário do Amazon S3*.

Adicione a seguinte política de bucket ao seu bucket do Amazon S3. `{{amzn-s3-demo-bucket}}`Substitua pelo nome do seu bucket do Amazon S3 e `{{region}}` pela AWS região do seu bucket (por exemplo,`us-east-1`).

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

****  

```
{
    "Version":"2012-10-17",		 	 	 
    "Statement": [
        {
            "Sid": "ElastiCacheSnapshotExport",
            "Effect": "Allow",
            "Principal": {
                "Service": "{{region}}.elasticache-snapshot.amazonaws.com"
            },
            "Action": [
                "s3:PutObject",
                "s3:GetObject",
                "s3:ListBucket",
                "s3:GetBucketAcl",
                "s3:ListMultipartUploadParts",
                "s3:ListBucketMultipartUploads"
            ],
            "Resource": [
                "arn:aws:s3:::{{amzn-s3-demo-bucket}}",
                "arn:aws:s3:::{{amzn-s3-demo-bucket}}/*"
            ]
        }
    ]
}
```

------

**Para adicionar a política de bucket usando o console Amazon S3**

1. Faça login no Console de gerenciamento da AWS e abra o console do Amazon S3 em [ https://console.aws.amazon.com/s3/](https://console.aws.amazon.com/s3/).

1. Escolha o nome do bucket do Amazon S3 para o qual você deseja copiar o backup. Esse deve ser o bucket do S3 que você criou em [Criar um bucket do Amazon S3.](#backups-exporting-create-s3-bucket).

1. Escolha a aba **Permissões**.

1. Em **Bucket policy** (Política de bucket), escolha **Edit** (Editar).

1. Cole a política do bucket no editor de políticas. Substitua os `{{amzn-s3-demo-bucket}}` espaços reservados `{{region}}` e pelos seus valores.

1. Escolha **Salvar alterações**.

Para obter mais informações sobre a migração de ACLs para políticas de bucket, consulte [ Conceder acesso à Amazon ElastiCache (Redis OSS) ao seu bucket do S3 ](https://docs.aws.amazon.com/AmazonS3/latest/userguide/object-ownership-migrating-acls-prerequisites.html#object-ownership-elasticache-redis) no Guia do usuário do * Amazon S3. *

## Permissões de IAM necessárias para o chamador
<a name="backups-exporting-caller-iam"></a>

Para chamar a operação de exportação, você deve ter permissões para chamar `elasticache:CopySnapshot` e acessar o bucket de destino do Amazon S3. Você pode chamar essa operação usando o ElastiCache console AWS CLI, a ou a `CopySnapshot` operação ElastiCache da API. Essas permissões do IAM são separadas da política de bucket do Amazon S3 que concede ao ElastiCache serviço acesso ao bucket. Para obter informações sobre a política de bucket, consulte[Conceda ElastiCache acesso ao seu bucket Amazon S3](#backups-exporting-grant-access).

A política do IAM a seguir mostra as permissões mínimas de que você precisa. `{{amzn-s3-demo-bucket}}`Substitua pelo nome do seu bucket Amazon S3 de destino.

```
{
    "Version": "2012-10-17",
    "Statement": [
        {
            "Sid": "ElastiCacheCopySnapshot",
            "Effect": "Allow",
            "Action": "elasticache:CopySnapshot",
            "Resource": "*"
        },
        {
            "Sid": "S3BucketAccess",
            "Effect": "Allow",
            "Action": [
                "s3:PutObject",
                "s3:GetObject",
                "s3:DeleteObject",
                "s3:ListBucket",
                "s3:GetBucketLocation"
            ],
            "Resource": [
                "arn:aws:s3:::{{amzn-s3-demo-bucket}}",
                "arn:aws:s3:::{{amzn-s3-demo-bucket}}/*"
            ]
        },
        {
            "Sid": "S3GlobalAccess",
            "Effect": "Allow",
            "Action": "s3:ListAllMyBuckets",
            "Resource": "arn:aws:s3:::*"
        }
    ]
}
```

**Importante**  
A `s3:ListAllMyBuckets` ação é uma operação no nível da conta. Seu `Resource` elemento deve ser `"*"` ou`"arn:aws:s3:::*"`. Definir o escopo dessa ação para um ARN de bucket específico a torna ineficaz e causa o erro: “O Elasticache não conseguiu validar se o usuário autenticado tem acesso ao bucket do S3”. Para obter mais informações, consulte as ações do [ Amazon S3 relacionadas às contas ](https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-with-s3-policy-actions.html#using-with-s3-policy-actions-related-to-accounts) no Guia do usuário do * Amazon S3. *

## Exportar um ElastiCache backup
<a name="backups-exporting-procedures"></a>

Agora você criou seu bucket do S3 e concedeu ElastiCache permissões para acessá-lo. Em seguida, você pode usar o ElastiCache console, a AWS CLI ou a ElastiCache API para exportar seu instantâneo para ele. 

### Exportando um ElastiCache backup (Console)
<a name="backups-exporting-CON"></a>

As etapas a seguir usam o ElastiCache console para exportar um backup para um bucket do Amazon S3 para que você possa acessá-lo de fora ElastiCache. O bucket do Amazon S3 deve estar na mesma AWS região do ElastiCache backup.

**Para exportar um ElastiCache backup para um bucket do Amazon S3**

1. Faça login no Console de gerenciamento da AWS e abra o ElastiCache console em [ https://console.aws.amazon.com/elasticache/](https://console.aws.amazon.com/elasticache/).

1. Para ver uma lista dos seus backups, no painel de navegação esquerdo, escolha **Backups**.

1. Na lista de backups, escolha a caixa à esquerda do nome do backup que você deseja exportar. 

1. Escolha **Exportar**.

1. Em ** Exportar backup**, faça o seguinte: 

   1. Na caixa **New backup name** (Novo nome de backup), digite um nome para seu novo backup.

      O nome deve ter entre 1 e 1.000 caracteres e poder ser UTF-8 codificado.

      ElastiCache adiciona um identificador de instância e `.rdb` ao valor que você insere aqui. Por exemplo, se você inserir `my-exported-backup`, ElastiCache criará `my-exported-backup-0001.rdb`.

   1. Na lista **Target S3 Location** (Local do S3 de destino), escolha o nome do bucket do Amazon S3 para o qual você deseja copiar seu backup (o bucket que você criou em [Criar um bucket do Amazon S3.](#backups-exporting-create-s3-bucket)).

      A localização do S3 de ** destino ** deve ser um bucket do Amazon S3 na AWS região do backup com as seguintes permissões para que o processo de exportação seja bem-sucedido.
      + Acesso ao objeto: **Ler** e **Escrever**.
      + Permissões de acesso: **Ler**.

      Para obter mais informações, consulte [Conceda ElastiCache acesso ao seu bucket Amazon S3](#backups-exporting-grant-access). 

   1. Escolha **Copiar**.

**nota**  
Se seu bucket do S3 não tiver as permissões necessárias ElastiCache para exportar um backup para ele, você receberá uma das seguintes mensagens de erro. Retorne para [Conceda ElastiCache acesso ao seu bucket Amazon S3](#backups-exporting-grant-access) a fim de adicionar as permissões especificadas e tente exportar o backup novamente.  
ElastiCache não recebeu permissões de LEITURA %s no S3 Bucket.  
**Solução:** adicione permissões de Leitura no bucket.
ElastiCache não recebeu permissões de gravação %s no S3 Bucket.  
**Solução:** adicione permissões de Gravação no bucket.
ElastiCache não recebeu as permissões READ\_ACP %s no bucket do S3.  
**Solução:** adicione permissão de acesso de **Leitura** no bucket.

Se você quiser copiar seu backup para outra AWS região, use o Amazon S3 para copiá-lo. Para obter mais informações, consulte [Cópia de objetos](https://docs.aws.amazon.com/AmazonS3/latest/userguide/MakingaCopyofanObject.html) no *Guia do usuário do Amazon Simple Storage Service*.

### Exportação de um backup ElastiCache sem servidor (AWS CLI)
<a name="backups-exporting-CLI"></a>

**Exportação de um backup de um cache sem servidor**

Exporte o backup para um bucket do Amazon S3 usando a operação `export-serverless-cache-snapshot` da CLI com os seguintes parâmetros:

**Parâmetros**
+ `--serverless-cache-snapshot-name` - Nome do backup a ser copiado.
+ `--s3-bucket-name`: nome do bucket do Amazon S3 no qual você deseja exportar o backup. Uma cópia do backup é feita no bucket especificado.

  `--s3-bucket-name`Deve ser um bucket do Amazon S3 na AWS região do backup com as seguintes permissões para que o processo de exportação seja bem-sucedido.
  + Acesso ao objeto: **Ler** e **Escrever**.
  + Permissões de acesso: **Ler**.

A operação a seguir copia um backup para my-s3-bucket.

Para Linux, macOS ou Unix:

```
aws elasticache export-serverless-cache-snapshot \
    --serverless-cache-snapshot-name {{automatic.my-redis-2023-11-27}} \
    --s3-bucket-name {{my-s3-bucket}}
```

Para Windows:

```
aws elasticache export-serverless-cache-snapshot ^
    --serverless-cache-snapshot-name {{automatic.my-redis-2023-11-27}} ^
    --s3-bucket-name {{my-s3-bucket}}
```

### Exportação de um backup de cluster baseado em nós ElastiCache (AWS CLI)
<a name="backups-exporting-self-designed-CON"></a>

**Exportar um backup de um cluster baseado em nós**

Exporte o backup para um bucket do Amazon S3 usando a operação `copy-snapshot` da CLI com os seguintes parâmetros:

**Parâmetros**
+ `--source-snapshot-name` - Nome do backup a ser copiado.
+ `--target-snapshot-name` - Nome da cópia do backup.

  O nome deve ter entre 1 e 1.000 caracteres e poder ser UTF-8 codificado.

  ElastiCache adiciona um identificador de instância e `.rdb` ao valor inserido aqui. Por exemplo, se você inserir `my-exported-backup`, ElastiCache criará `my-exported-backup-0001.rdb`.
+ `--target-bucket`: nome do bucket do Amazon S3 no qual você deseja exportar o backup. Uma cópia do backup é feita no bucket especificado.

  `--target-bucket`Deve ser um bucket do Amazon S3 na AWS região do backup com as seguintes permissões para que o processo de exportação seja bem-sucedido.
  + Acesso ao objeto: **Ler** e **Escrever**.
  + Permissões de acesso: **Ler**.

  Para obter mais informações, consulte [Conceda ElastiCache acesso ao seu bucket Amazon S3](#backups-exporting-grant-access).

A operação a seguir copia um backup para my-s3-bucket.

Para Linux, macOS ou Unix:

```
aws elasticache copy-snapshot \
    --source-snapshot-name {{automatic.my-redis-primary-2016-06-27-03-15}} \
    --target-snapshot-name {{my-exported-backup}} \
    --target-bucket {{my-s3-bucket}}
```

Para Windows:

```
aws elasticache copy-snapshot ^
    --source-snapshot-name {{automatic.my-redis-primary-2016-06-27-03-15}} ^
    --target-snapshot-name {{my-exported-backup}} ^
    --target-bucket {{my-s3-bucket}}
```