

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

# Gerenciar os recursos do Amazon DocumentDB
<a name="managing-documentdb"></a>

Essas seções abrangem os vários componentes e suas tarefas relacionadas para gerenciar sua implementação do Amazon DocumentDB (compativel com MongoDB).

**Topics**
+ [Visão geral de tarefas operacionais](operational_tasks.md)
+ [Clusters globais](global-clusters.md)
+ [Gerenciamento de clusters do](db-clusters.md)
+ [Gerenciar instâncias](db-instances.md)
+ [Gerenciamento de grupos de sub-redes](document-db-subnet-groups.md)
+ [Alta disponibilidade e replicação](replication.md)
+ [Gerenciamento de Índices](managing-indexes.md)
+ [Gerenciamento da compactação de documentos](doc-compression.md)
+ [Gerenciando a compactação baseada em dicionário](dict-compression.md)
+ [Gerenciamento de eventos](managing-events.md)
+ [Escolher regiões e zonas de disponibilidade](regions-and-azs.md)
+ [Gerenciando grupos de parâmetros de cluster](cluster_parameter_groups.md)
+ [Noções básicas sobre endpoints](endpoints.md)
+ [Entendendo o Amazon DocumentDB ARNs](documentdb-arns.md)
+ [Marcar recursos](tagging.md)
+ [Manutenção do Amazon DocumentDB](db-instance-maintain.md)
+ [Noções básicas dos perfis vinculados ao serviço](service-linked-roles.md)
+ [Usar fluxos de alterações](change_streams.md)
+ [Usando o agrupamento](collation.md)
+ [Usando visualizações](views.md)
+ [Usar AWS Lambda com fluxos de alterações](using-lambda.md)

# Visão geral das tarefas operacionais do Amazon DocumentDB
<a name="operational_tasks"></a>

Esta seção aborda as tarefas operacionais do seu cluster do Amazon DocumentDB e como realizar essas tarefas usando a AWS CLI.

**Topics**
+ [Adicionar uma réplica a um cluster do Amazon DocumentDB](#operational_tasks-add_replica)
+ [Descrever clusters e instâncias](#operational_tasks-list_clusters_and_instances)
+ [Criar um snapshot de cluster](#operational_tasks-creating_snapshot)
+ [Restauração a partir de um snapshot](#operational_tasks-restore_from_snapshot)
+ [Remover uma instância de um cluster](#operational_tasks-remove_instance_from_cluster)
+ [Excluir um cluster](#operational_tasks-delete_cluster)

## Adicionar uma réplica a um cluster do Amazon DocumentDB
<a name="operational_tasks-add_replica"></a>

Depois de criar a instância principal para seu cluster do Amazon DocumentDB, você pode adicionar uma ou mais *réplicas*. Uma réplica é uma instância somente leitura que serve a duas finalidades:
+ **Escalabilidade** — se houver um grande número de clientes que exijam acesso simultâneo, você poderá adicionar mais réplicas para leitura em escala.
+ **Alta disponibilidade** — se a instância principal falhar, o Amazon DocumentDB executará um failover automaticamente em uma instância de réplica e a designará como a nova principal. Se uma réplica falhar, outras instâncias no cluster ainda poderão atender as solicitações até que o nó com falha possa ser recuperado. 

Cada cluster do Amazon DocumentDB pode oferecer suporte a até 15 réplicas.

**nota**  
Para obter a máxima tolerância a falhas, você deve implantar as réplicas em Zonas de Disponibilidade separadas. Isso ajuda a garantir que seu cluster do Amazon DocumentDB possa continuar a funcionar, mesmo que toda uma Zona de Disponibilidade fique indisponível.

O exemplo de AWS CLI a seguir mostra como adicionar uma nova réplica. O parâmetro `--availability-zone` coloca a réplica na zona de disponibilidade especificada.

```
aws docdb create-db-instance \
    --db-instance-identifier sample-instance \
    --db-cluster-identifier sample-cluster \
    --engine docdb \
    --db-instance-class db.r5.large \
    --availability-zone us-east-1a
```

## Descrever clusters e instâncias
<a name="operational_tasks-list_clusters_and_instances"></a>

O exemplo AWS CLI a seguir lista todos os clusters do Amazon DocumentDB em uma Região. Para determinados atributos de gerenciamento, como o gerenciamento do ciclo de vida de clusters e instâncias, o Amazon DocumentDB aproveita a tecnologia operacional compartilhada com o Amazon RDS. O parâmetro de filtro `filterName=engine,Values=docdb` só retorna clusters do Amazon DocumentDB. 

Para obter mais informações sobre como descrever e modificar clusters, consulte [Ciclo de vida do cluster do Amazon DocumentDB](db-cluster-life-cycle.md).

```
aws docdb describe-db-clusters --filter Name=engine,Values=docdb
```

A saída dessa operação é semelhante à seguinte.

```
{
    "DBClusters": [
        {
            "AvailabilityZones": [
                "us-east-1c",
                "us-east-1b",
                "us-east-1a"
            ],
            "BackupRetentionPeriod": 1,
            "DBClusterIdentifier": "sample-cluster-1",
            "DBClusterParameterGroup": "sample-parameter-group",
            "DBSubnetGroup": "default",
            "Status": "available",
            ...
        },
        {
            "AvailabilityZones": [
                "us-east-1c",
                "us-east-1b",
                "us-east-1a"
            ],
            "BackupRetentionPeriod": 1,
            "DBClusterIdentifier": "sample-cluster-2",
            "DBClusterParameterGroup": "sample-parameter-group",
            "DBSubnetGroup": "default",
            "Status": "available",
            ...
        },
        {
            "AvailabilityZones": [
                "us-east-1c",
                "us-east-1b",
                "us-east-1a"
            ],
            "BackupRetentionPeriod": 1,
            "DBClusterIdentifier": "sample-cluster-3",
            "DBClusterParameterGroup": "sample-parameter-group",
            "DBSubnetGroup": "default",
            "Status": "available",
            ...
        }
    ]
}
```

O exemplo AWS CLI a seguir lista as instâncias em um cluster do Amazon DocumentDB. Para obter mais informações sobre como descrever e modificar clusters, consulte [Ciclo de vida da instância do Amazon DocumentDB](db-instance-life-cycle.md). 

```
aws docdb describe-db-clusters \
    --db-cluster-identifier sample-cluster \
    --query 'DBClusters[*].[DBClusterMembers]'
```

A saída é semelhante ao apontado abaixo. Nesta saída, há duas instâncias. A instância principal é `sample-instance-1` (`"IsClusterWriter": true`). Há também uma instância de réplica, `sample-instance2` (`"IsClusterWriter: false"`).

```
[
    [
        [
            {
                "DBInstanceIdentifier": "sample-instance-1",
                "IsClusterWriter": true,
                "DBClusterParameterGroupStatus": "in-sync",
                "PromotionTier": 1
            },
            {
                "DBInstanceIdentifier": "sample-cluster-2",
                "IsClusterWriter": false,
                "DBClusterParameterGroupStatus": "in-sync",
                "PromotionTier": 1
            }
        ]
    ]
]
```

## Criar um snapshot de cluster
<a name="operational_tasks-creating_snapshot"></a>

Uma *captura de tela* de cluster é um backup completo dos dados no seu cluster do Amazon DocumentDB. Quando a captura de tela estiver sendo criada, o Amazon DocumentDB lerá os dados diretamente do volume de cluster. Por causa disso, você pode criar uma captura de tela mesmo que seu cluster não tenha nenhuma instância em execução no momento. O tempo necessário para criar uma captura de tela depende do tamanho do volume do cluster.

O Amazon DocumentDB oferece suporte a backups automáticos, que ocorrem diariamente durante a janela de backup preferencial — um período de 30 minutos durante o dia. O exemplo AWS CLI a seguir mostra como visualizar a janela de backup do cluster:

```
aws docdb describe-db-clusters \
    --db-cluster-identifier sample-cluster \
    --query 'DBClusters[*].PreferredBackupWindow'
```

A saída mostra a janela de backup (em UTC):

```
[
    "00:18-00:48"
]
```

Você pode definir a janela de backup ao criar o cluster do Amazon DocumentDB. Você também pode alterar a janela de backup, conforme mostrado no exemplo a seguir. Se você não definir uma janela de backup, o Amazon DocumentDB atribuirá uma automaticamente ao cluster.

```
aws docdb modify-db-cluster \
    --db-cluster-identifier sample-cluster \
    --preferred-backup-window "02:00-02:30"
```

Além dos backups automáticos, você pode criar manualmente uma captura de tela de cluster a qualquer momento. Ao fazer isso, você especifica o cluster cujo backup deseja fazer e um nome exclusivo para a captura de tela, para que você possa restaurar a partir dela posteriormente.

O exemplo da AWS CLI a seguir mostra como criar uma captura de tela dos dados.

```
aws docdb create-db-cluster-snapshot \
    --db-cluster-identifier sample-cluster \
    --db-cluster-snapshot-identifier sample-cluster-snapshot
```

## Restauração a partir de um snapshot
<a name="operational_tasks-restore_from_snapshot"></a>

Você pode restaurar uma captura de tela de cluster em um novo cluster do Amazon DocumentDB. Para fazer isso, forneça o nome da captura de tela e o nome de um novo cluster. Não é possível restaurar a partir de uma captura de tela para um cluster existente. Em vez disso, o Amazon DocumentDB criará um cluster quando você fizer a restauração e o preencher com os dados da captura de tela. 

O exemplo a seguir mostra todas as capturas de tela de um determinado cluster `sample-cluster`.

```
aws docdb describe-db-cluster-snapshots \
    --db-cluster-identifier sample-cluster \
    --query 'DBClusterSnapshots[*].[DBClusterSnapshotIdentifier,SnapshotType,Status]'
```

A saída é semelhante ao apontado abaixo. Uma captura de tela manual é criada manualmente, enquanto uma captura de tela automatizada é criado pelo Amazon DocumentDB dentro da janela de backup do cluster.

```
[
        "sample-cluster-snapshot", 
        "manual", 
        "available"
    ], 
    [
        "rds:sample-cluster", 
        "automated", 
        "available"
    ]
]
```

O exemplo a seguir mostra como restaurar um cluster do Amazon DocumentDB a partir de uma captura de tela.

```
aws docdb restore-db-cluster-from-snapshot \
    --engine docdb \
    --db-cluster-identifier new-sample-cluster \
    --snapshot-identifier sample-cluster-snapshot
```

O novo cluster não tem nenhuma instância associada a ele, portanto, para interagir com o cluster, adicione uma instância a ele.

```
aws docdb create-db-instance \
    --db-instance-identifier new-sample-instance \
    --db-instance-class db.r5.large \
    --engine docdb \
    --db-cluster-identifier new-sample-cluster
```

É possível usar as seguintes operações AWS CLI para monitorar o andamento da criação do cluster e da instância: Quando os status do cluster e da instância estiverem disponíveis, você poderá se conectar ao endpoint do novo cluster e acessar seus dados.

```
aws docdb describe-db-clusters \
    --db-cluster-identifier new-sample-cluster  \
    --query 'DBClusters[*].[Status,Endpoint]'
```

```
aws docdb describe-db-instances \
    --db-instance-identifier new-sample-instance \
    --query 'DBInstances[*].[DBInstanceStatus]'
```

## Remover uma instância de um cluster
<a name="operational_tasks-remove_instance_from_cluster"></a>

O Amazon DocumentDB armazena todos os dados no volume do cluster. Os dados persistem nesse volume de cluster, mesmo se você remover todas as instâncias do cluster. Se precisar acessar os dados novamente, adicione uma instância ao cluster a qualquer momento e continue de onde parou.

O exemplo a seguir mostra como remover uma instância de seu cluster do Amazon DocumentDB.

```
aws docdb delete-db-instance \
    --db-instance-identifier sample-instance
```

## Excluir um cluster
<a name="operational_tasks-delete_cluster"></a>

Para excluir um cluster do Amazon DocumentDB, é necessário primeiro remover todas as instâncias. O exemplo AWS CLI a seguir retorna informações sobre as instâncias em um cluster. Se essa operação retornar qualquer identificador de instância, você terá que excluir cada uma das instâncias. Para obter mais informações, consulte [Remover uma instância de um cluster](#operational_tasks-remove_instance_from_cluster). 

```
aws docdb describe-db-clusters \
    --db-cluster-identifier sample-cluster \
    --query 'DBClusters[*].DBClusterMembers[*].DBInstanceIdentifier'
```

Quando não houver mais instâncias restantes, você poderá excluir o cluster. Nesse momento, você deve escolher uma das seguintes opções:
+ **Criar uma captura de tela final** — capture todos os dados do cluster em uma captura de tela para recriar uma instância com esses dados posteriormente. O exemplo a seguir mostra como fazê-lo:

  ```
  aws docdb delete-db-cluster \
      --db-cluster-identifier sample-cluster \
      --final-db-snapshot-identifier sample-cluster-snapshot
  ```
+ **Ignore o snapshot final** — descarte permanentemente todos os dados do cluster. Essa ação não pode ser revertida. O exemplo a seguir mostra como fazê-lo:

  ```
  aws docdb delete-db-cluster \
      --db-cluster-identifier sample-cluster \
      --skip-final-snapshot
  ```

# Visão geral dos clusters globais do Amazon DocumentDB
<a name="global-clusters"></a>

## O que é um cluster global?
<a name="w2aac33b9b3"></a>

Um cluster global consiste em uma região primária e até 10 regiões secundárias somente de leitura. Você emite operações de gravação diretamente no cluster primário na região primária e o Amazon DocumentDB automaticamente replica os dados para as regiões secundárias usando a infraestrutura dedicada. Geralmente, a latência é inferior a um segundo.

## Por que os clusters globais são úteis?
<a name="w2aac33b9b5"></a>
+ **Recuperação de paralisações em toda a região**: no caso de uma paralisação em toda a região, você pode promover um dos clusters secundários a um cluster primário em minutos, com um objetivo de tempo de recuperação (RTO) típico de menos de um minuto. Normalmente, o objetivo de ponto de recuperação (RPO) é medido em segundos, mas isso depende do atraso em toda a rede no momento da falha.
+ **Leitura global com latência local**: se você tem escritórios em todo o mundo, é possível usar um cluster global para manter suas principais fontes de informações atualizadas na Região principal. Escritórios em outras Regiões podem acessar as informações em sua própria Região com latência local.
+ **Clusters secundários escaláveis**: você pode dimensionar seus clusters secundários adicionando mais instâncias somente para leitura a uma região secundária. O cluster secundário é somente leitura, portanto pode oferecer suporte a até 16 instâncias de réplica somente leitura, em vez do limite normal de 15 para um único cluster.
+ **Replicação rápida de clusters de primários para secundários**: replicação realizada por um cluster global tem pouco impacto no desempenho do cluster de banco de dados primário. Os recursos das instâncias de banco de dados são totalmente dedicados para atender as workloads de leitura e gravação.

## Quais são as limitações atuais dos clusters globais?
<a name="w2aac33b9b7"></a>
+ Os clusters globais não são compatíveis com a versão 3.6 do Amazon DocumentDB.
+ Os clusters globais são compatíveis com todos os tipos de instância, exceto db.t3, db.t4g e db.r4.
+ Os clusters globais não estão disponíveis nas regiões a seguir: América do Sul (São Paulo), Europa (Milão), China (Pequim) e China (Ningxia).
+ Não há suporte para transição e failover global quando as regiões estão em versões de mecanismo diferentes. Há suporte para failover manual quando existe uma incompatibilidade entre as versões do mecanismo.
+ Somente o cluster primário realiza operações de gravação. Os clientes que realizam operações de gravação se conectam ao endpoint do cluster primário.
+ É possível ter no máximo 10 regiões secundárias e uma região primária no seu cluster.
+ Um cluster secundário não pode ser interrompido. Um cluster primário não pode ser interrompido se tiver clusters secundários associados a ele. Somente um cluster regional que não tenha clusters secundários pode ser interrompido.
+ Réplicas anexadas ao cluster secundário podem ser reiniciadas em determinadas circunstâncias. Se a instância da região primária for reiniciada ou sofrer failover, as réplicas da região secundária também serão reiniciadas. O cluster fica indisponível até que todas as réplicas estejam novamente sincronizadas com a instância do gravador do cluster de banco de dados primário. Esse comportamento é esperado. Certifique-se de que você entendeu o impacto no seu cluster global antes de fazer alterações no cluster primário.
+ Você não pode usar fluxos de alteração em clusters secundários.

**Topics**
+ [O que é um cluster global?](#w2aac33b9b3)
+ [Por que os clusters globais são úteis?](#w2aac33b9b5)
+ [Quais são as limitações atuais dos clusters globais?](#w2aac33b9b7)
+ [Guia de início rápido](global-clusters.get-started.md)
+ [Gerenciar clusters globais](global-clusters.manage.md)
+ [Conectar clusters globais](global-clusters-connect.md)
+ [Monitorar clusters globais](global-clusters-monitor.md)
+ [Recuperação de desastres](global-clusters-disaster-recovery.md)

# Guia de início rápido: clusters globais
<a name="global-clusters.get-started"></a>

**Topics**
+ [Configuração](#global-clusters.config)
+ [Criar um cluster global](#global-clusters-create)
+ [Adição de uma região a um cluster global](#global-clusters.add-region)
+ [Compartilhar um snapshot](#global-clusters.snapshot)

## Configuração
<a name="global-clusters.config"></a>

O cluster global do Amazon DocumentDB abrange pelo menos dois. Regiões da AWS A região primária oferece suporte a um cluster que tem uma instância primária (gravadora) e até 15 instâncias de réplica, enquanto uma região secundária executa um cluster somente de leitura composto inteiramente por até 16 instâncias de réplica. Um cluster global pode ter até cinco regiões secundárias. A tabela lista o máximo de clusters, instâncias e réplicas permitidos em um cluster global.


| Description | Primária Região da AWS | Secundário Região da AWS | 
| --- | --- | --- | 
| Clusters | 1 | 5 (máximo) | 
| Instâncias do gravador | 1 | 0 | 
| Instâncias somente leitura (réplicas do Amazon DocumentDB), por cluster | 15 (máximo) | 16 (total) | 
| Instâncias somente leitura (máximo permitido, considerando o número real de regiões secundárias) | 15 - s | s = número total de secundários Regiões da AWS | 

Os clusters têm os seguintes requisitos específicos:
+ **Requisitos de classe de instância de banco de dados** — Você só pode usar as classes de instância `db.r5` e `db.r6g`. 
+ **Região da AWS requisitos** — O cluster primário deve estar em uma região e pelo menos um cluster secundário deve estar em uma região diferente da mesma conta. É possível criar até cinco clusters secundários (somente de leitura), e cada um deve estar em uma região diferente. Em outras palavras, não pode haver dois clusters na mesma região.
+ **Requisitos de nome**: os nomes escolhidos para cada um de seus clusters devem ser exclusivos em todas as regiões. Não é possível usar o mesmo nome para clusters diferentes, mesmo que eles estejam em regiões diferentes.

## Criação de um cluster global do Amazon DocumentDB
<a name="global-clusters-create"></a>

Você está pronto para criar seu primeiro cluster global? Nesta seção, explicaremos como criar um novo cluster global com novos clusters e instâncias de banco de dados, usando Console de gerenciamento da AWS ou AWS CLI com as instruções a seguir. 

### Usando o Console de gerenciamento da AWS
<a name="global-clusters-create-console"></a>

1. No Console de gerenciamento da AWS, navegue até **Amazon DocumentDB**.

1. Ao acessar o console do Amazon DocumentDB, escolha **Clusters.**  
![\[A página Clusters no console do Amazon DocumentDB.\]](http://docs.aws.amazon.com/pt_br/documentdb/latest/developerguide/images/global-clusters/quick-start/choose-cluster.png)

1. Escolha **Criar**.  
![\[O botão Criar, exibido no canto superior direito da tabela Clusters.\]](http://docs.aws.amazon.com/pt_br/documentdb/latest/developerguide/images/global-clusters/quick-start/choose-create.png)

1. Preencha a seção **Configuração** do formulário **Criar cluster do Amazon DocumentDB**:
   + **Identificador de cluster**: você pode inserir um identificador exclusivo para essa instância ou permitir que o Amazon DocumentDB forneça o identificador da instância com base no identificador do cluster.
   + Versão do mecanismo: escolha **4.0.0**
   + Classe de instância: escolha **db.r5.large**
   + Número de instâncias: escolha **3**.  
![\[Formulário Opções de configuração para criação de um cluster do Amazon DocumentDB.\]](http://docs.aws.amazon.com/pt_br/documentdb/latest/developerguide/images/global-clusters/quick-start/create-config.png)

1. Na seção **Autenticação**, preencha um nome de usuário principal e uma senha mestra.  
![\[Formulário de autenticação para especificação de um nome de usuário principal e senha para um novo cluster do Amazon DocumentDB.\]](http://docs.aws.amazon.com/pt_br/documentdb/latest/developerguide/images/global-clusters/quick-start/create-auth.png)

1. Escolha **Exibir configurações avançadas**.  
![\[Botão de alternância Exibir configurações avançadas ao lado dos botões Cancelar e Criar cluster.\]](http://docs.aws.amazon.com/pt_br/documentdb/latest/developerguide/images/global-clusters/quick-start/show-advanced.png)

1. Na seção **Configurações de rede**:
   + Mantenha as opções padrão para **nuvem privada virtual (VPC)** e **Grupo de sub-redes**.  
![\[Formulário Configurações de rede mostrando as opções de VPC, grupo de sub-redes e grupos de segurança de VPC. Os campos VPC e Grupo de sub-redes têm as opções padrão selecionadas.\]](http://docs.aws.amazon.com/pt_br/documentdb/latest/developerguide/images/global-clusters/quick-start/default-vpc-1.png)
   + Em **Grupos de segurança de VPC**, um **padrão (VPC)** já deve ter sido adicionado.  
![\[Formulário Configurações de rede mostrando a VPC padrão já adicionada.\]](http://docs.aws.amazon.com/pt_br/documentdb/latest/developerguide/images/global-clusters/quick-start/default-vpc-2.png)
   + Insira `DocDB` no campo **Grupos de segurança de VPC** e selecione **DocDB-Inbound (VFC)**.  
![\[VFC DocDB-Inbound selecionada no menu suspenso Grupos de segurança de VPC.\]](http://docs.aws.amazon.com/pt_br/documentdb/latest/developerguide/images/global-clusters/quick-start/inbound-vfc.png)

1. Para **Opções de cluster** e **E ncryption-at-rest**, deixe nas seleções padrão.  
![\[Opções de cluster e Encryption-at-rest formulários com as opções padrão selecionadas.\]](http://docs.aws.amazon.com/pt_br/documentdb/latest/developerguide/images/global-clusters/quick-start/leave-default-1.png)

1. Em **Backup** e **Exportações de logs**, mantenha as seleções padrão.  
![\[Formulários Backup e Exportação de logs com as opções padrão selecionadas.\]](http://docs.aws.amazon.com/pt_br/documentdb/latest/developerguide/images/global-clusters/quick-start/leave-default-2.png)

1. Em **Manutenção**, **Tags** e **Proteção contra exclusão**, mantenha as seleções padrão.  
![\[Formulários Manutenção, Tags e Proteção contra exclusão com as opções padrão selecionadas.\]](http://docs.aws.amazon.com/pt_br/documentdb/latest/developerguide/images/global-clusters/quick-start/leave-default-3.png)

1. Agora clique no botão que diz **Criar cluster**.  
![\[O botão Criar cluster é exibido no final do processo de criação do cluster.\]](http://docs.aws.amazon.com/pt_br/documentdb/latest/developerguide/images/global-clusters/quick-start/create-cluster.png)

### Usando o AWS CLI
<a name="global-clusters-create-cli"></a>

Para criar um cluster regional do Amazon DocumentDB, chame o. [create-global-cluster AWS CLI](https://awscli.amazonaws.com/v2/documentation/api/latest/reference/docdb/create-global-cluster.html) O AWS CLI comando a seguir cria um cluster Amazon DocumentDB chamado. `global-cluster-id` Para obter mais informações sobre a proteção contra exclusão, consulte [Excluir um cluster do Amazon DocumentDB](db-cluster-delete.md). 

Além disso, `--engine-version` é um parâmetro opcional padrão para a versão mais recente do mecanismo principal. A versão padrão atual do mecanismo é `5.0.0` (nota: o Amazon DocumentDB 8.0 está disponível, mas deve ser explicitamente especificado como). `8.0.0` Quando novas versões principais do mecanismo forem lançadas, a versão padrão `--engine-version` será atualizada para refletir a última versão principal do mecanismo. Como resultado, para cargas de trabalho de produção, especialmente aquelas que dependem de scripts, automação ou CloudFormation modelos, recomendamos que você especifique explicitamente a `--engine-version` para a versão principal pretendida.

Se um `db-subnet-group-name` ou `vpc-security-group-id` não for especificado, o Amazon DocumentDB usará o grupo de sub-redes padrão e o grupo de segurança da Amazon VPC para a região em questão.

No exemplo a seguir, substitua cada *user input placeholder* por suas próprias informações.

Para Linux, macOS ou Unix:

```
aws docdb create-db-cluster \
      --global-cluster-identifier global-cluster-id \
      --source-db-cluster-identifier arn:aws:rds:us-east-1:111122223333:cluster-id
```

Para Windows:

```
aws docdb create-db-cluster ^
      --global-cluster-identifier global-cluster-id ^
      --source-db-cluster-identifier arn:aws:rds:us-east-1:111122223333:cluster-id
```

A saída dessa operação é semelhante ao seguinte (formato JSON).

```
{
    "DBCluster": {
        "StorageEncrypted": false,
        "DBClusterMembers": [],
        "Engine": "docdb",
        "DeletionProtection" : "enabled",
        "ClusterCreateTime": "2018-11-26T17:15:19.885Z",
        "DBSubnetGroup": "default",
        "EngineVersion": "4.0.0",
        "MasterUsername": "masteruser",
        "BackupRetentionPeriod": 1,
        "DBClusterArn": "arn:aws:rds:us-east-1:123456789012:cluster:cluster-id",
        "DBClusterIdentifier": "cluster-id",
        "MultiAZ": false,
        "DBClusterParameterGroup": "default.docdb4.0",
        "PreferredBackupWindow": "09:12-09:42",
        "DbClusterResourceId": "cluster-KQSGI4MHU4NTDDRVNLNTU7XVAY",
        "PreferredMaintenanceWindow": "tue:04:17-tue:04:47",
        "Port": 27017,
        "Status": "creating",
        "ReaderEndpoint": "cluster-id.cluster-ro-sfcrlcjcoroz.us-east-1.docdb.amazonaws.com",
        "AssociatedRoles": [],
        "HostedZoneId": "ZNKXTT8WH85VW",
        "VpcSecurityGroups": [
            {
                "VpcSecurityGroupId": "sg-77186e0d",
                "Status": "active"
            }
        ],
        "AvailabilityZones": [
            "us-east-1a",
            "us-east-1c",
            "us-east-1e"
        ],
        "Endpoint": "cluster-id.cluster-sfcrlcjcoroz.us-east-1.docdb.amazonaws.com"
    }
}
```

Leva alguns minutos para criar o cluster. Você pode usar o Console de gerenciamento da AWS ou AWS CLI para monitorar o status do seu cluster. Para obter mais informações, consulte [Monitoramento do status de um cluster do Amazon DocumentDB](monitoring_docdb-cluster_status.md). 

**Importante**  
Quando você usa o AWS CLI para criar um cluster regional do Amazon DocumentDB, nenhuma instância é criada. Consequentemente, é necessário criar explicitamente uma instância principal e qualquer instância de réplica de que precise. Você pode usar o console ou AWS CLI criar as instâncias. Para obter mais informações, consulte [Adicionar uma instância do Amazon DocumentDB a um cluster](db-instance-add.md) e [CreateDBCluster](API_CreateDBCluster.md) na Referência da API do Amazon DocumentDB. 

Quando seu cluster regional estiver disponível, será possível adicionar um cluster secundário em outra região com as instruções a seguir: [Adicionar um Região da AWS a um cluster global do Amazon DocumentDB](#global-clusters.add-region). Quando você adicionar uma região, seu cluster regional se tornará seu cluster primário, e você terá um novo cluster secundário na região escolhida.

## Adicionar um Região da AWS a um cluster global do Amazon DocumentDB
<a name="global-clusters.add-region"></a>

Um cluster global precisa de pelo menos um cluster secundário em uma região diferente do cluster primário, e é possível adicionar até cinco clusters secundários. Observe que, para cada cluster secundário que você adicionar, deverá reduzir em um o número de réplicas permitidas no cluster primário. Por exemplo, se o seu cluster global tiver cinco regiões secundárias, o cluster primário poderá ter apenas 10 (em vez de 15) réplicas. Para obter mais informações, consulte [Requisitos de configuração de um cluster global Amazon DocumentDB](https://docs.aws.amazon.com/documentdb/latest/developerguide/global-clusters.get-started.html#global-clusters.config).

### Usando o Console de gerenciamento da AWS
<a name="global-clusters-add-region-console"></a>

1. Faça login no Console de gerenciamento da AWS e abra o console do Amazon DocumentDB.

1. No painel de navegação, escolha **Clusters**.  
![\[A página Clusters no console do Amazon DocumentDB.\]](http://docs.aws.amazon.com/pt_br/documentdb/latest/developerguide/images/global-clusters/quick-start/choose-cluster.png)

1. Escolha o cluster ao qual você deseja adicionar ao cluster secundário. Certifique-se de que o cluster seja `Available`.  
![\[Lista de clusters regionais e globais mostrando o status disponível, com mydocdbglobalcluster destacado.\]](http://docs.aws.amazon.com/pt_br/documentdb/latest/developerguide/images/global-clusters/quick-start/choose-cluster-2.png)

1. Selecione a lista suspensa de **Ações** e escolha **Adicionar região**.  
![\[A lista suspensa Ações na interface Clusters mostra a opção Adicionar região.\]](http://docs.aws.amazon.com/pt_br/documentdb/latest/developerguide/images/global-clusters/quick-start/add-region.png)

1. Na página **Adicionar uma Região da AWS**, escolha a região secundária. Observe que você não pode escolher uma região que já tenha um cluster secundário para o mesmo cluster global. Além disso, não ela pode ser a mesma região que o cluster primário. Se essa for a primeira região que estiver adicionando, também será necessário especificar um identificador de cluster global de sua escolha.  
![\[Escolha uma região secundária usando o menu suspenso em Adicionar um Região da AWS formulário.\]](http://docs.aws.amazon.com/pt_br/documentdb/latest/developerguide/images/global-clusters/quick-start/add-region-2.png)

1. Preencha os campos restantes para o cluster secundário na nova região e selecione **Criar cluster**. Depois de terminar de adicionar a região, será possível vê-la na lista de **Clusters** no Console de gerenciamento da AWS.  
![\[Etapas finais da adição de uma região a um cluster, mostrando o formulário de configuração, a estimativa de custo por hora e o botão Criar cluster.\]](http://docs.aws.amazon.com/pt_br/documentdb/latest/developerguide/images/global-clusters/quick-start/select-add-region.png)

### Usando o AWS CLI
<a name="global-clusters-add-region-cli"></a>
+ Use o comando da CLI `create-db-cluster` com o nome `(--global-cluster-identifier)` de seu cluster global. Para outros parâmetros, faça o seguinte:
  + Para`--region`, escolha uma Região da AWS diferente da sua região principal.
  + Escolha valores específicos para os parâmetros `--engine` e `--engine-version`. 
  + Para um cluster criptografado, especifique seu primário Região da AWS como o `--source-region` de criptografia.

O exemplo a seguir cria um novo cluster do Amazon DocumentDB e o anexa ao cluster global como um cluster secundário somente leitura. Na última etapa, a instância é adicionada ao novo cluster.

No exemplo a seguir, substitua cada *user input placeholder* por suas próprias informações.

Para Linux, macOS ou Unix:

```
aws docdb --region secondary-region-id \
  create-db-cluster \
    --db-cluster-identifier cluster-id \
    --global-cluster-identifier global-cluster-id \
    --engine-version version \
    --engine docdb

aws docdb --region secondary-region-id \
  create-db-instance \
    --db-cluster-identifier cluster-id \
    --global-cluster-identifier global-cluster-id \
    --engine-version version \
    --engine docdb
```

Para Windows:

```
aws docdb --region secondary-region-id ^
  create-db-cluster ^
    --db-cluster-identifier cluster-id ^
    --global-cluster-identifier global-cluster-id ^
    --engine-version version ^
    --engine docdb

aws docdb --region secondary-region-id ^
  create-db-instance ^
    --db-cluster-identifier cluster-id ^
    --global-cluster-identifier global-cluster-id ^
    --engine-version version ^
    --engine docdb
```

## Usando um snapshot para seu cluster Amazon DocumentDB global
<a name="global-clusters.snapshot"></a>

É possível restaurar um snapshot de um cluster do Amazon DocumentDB para usar como ponto de partida para seu cluster global. Para fazer isso, você deve restaurar o snapshot e criar um novo cluster. Isso servirá como o cluster principal do seu cluster global. Em seguida, adicione uma outra região ao cluster restaurado, transformando-o em um cluster global. 

# Gerenciar um cluster global do Amazon DocumentDB
<a name="global-clusters.manage"></a>

Realize a maVocê realiza a maioria das operações de gerenciamento nos clusters individuais que compõem um cluster global.ioria das operações de gerenciamento nos clusters individuais que constituem um banco de dados global do . Ao selecionar **Recursos relacionados ao grupo** na página **Clusters** do console, você verá o cluster primário e os clusters secundários agrupados sob o cluster global associado.

A guia **Configuração** de um cluster global mostra Regiões da AWS onde os clusters estão sendo executados, a versão e o identificador global do cluster.

**Topics**
+ [Modificar clusters globais](#global-clusters.modify)
+ [Modificar parâmetros](#global-clusters.modify-parameters)
+ [Remover clusters globais](#global-clusters.remove)
+ [Excluir clusters globais](#global-clusters.delete)
+ [Clusters sem cabeça](#global-clusters.headless)

## Modificar um cluster global do Amazon DocumentDB
<a name="global-clusters.modify"></a>

A página **Clusters** na Console de gerenciamento da AWS lista todos os seus clusters globais, mostrando o cluster primário e os clusters secundários de cada um. O cluster global tem suas próprias definições de configuração. Especificamente, ele tem regiões associadas a seus clusters primário e secundário.

Quando você faz alterações no cluster global, você tem a chance de cancelar as alterações.

Quando você escolhe Continue, você confirma as alterações.

## Modificando parâmetros de um cluster global do Amazon DocumentDB
<a name="global-clusters.modify-parameters"></a>

É possível configurar os grupos de parâmetros do cluster independentemente para cada cluster dentro do cluster global. A maioria dos parâmetros funciona da mesma forma que para outros tipos de clusters do Amazon DocumentDB. Recomendamos que você mantenha as configurações consistentes entre todos os clusters em um banco de dados global. Isso ajuda a evitar mudanças inesperadas de comportamento se você promover um cluster secundário para ser o primário.

Por exemplo, use as mesmas configurações para os fusos horários e os conjuntos de caracteres a fim de evitar um comportamento inconsistente caso um cluster diferente assuma como o cluster primário.

## Remover um cluster de um cluster global do Amazon DocumentDB
<a name="global-clusters.remove"></a>

Há várias situações em que você pode querer remover clusters do seu cluster global. Por exemplo, você pode querer remover um cluster de um clster global se o cluster primário se tornar degradado ou isolado. Em seguida, ele se torna um cluster provisionado autônomo que pode ser usado para criar um novo cluster global. Para saber mais, consulte [Realizar um failover manual para um cluster global do Amazon DocumentDB](global-clusters-disaster-recovery.md#manual-failover).

Você também pode querer remover clusters porque deseja excluir um cluster global que não é mais necessário. Não é possível excluir o cluster global até que você desanexe todos os clusters associados, deixando o primário por último. Para obter mais informações, consulte [Exclusão de um cluster global do Amazon DocumentDB](#global-clusters.delete).

**nota**  
Quando um cluster é separado do cluster global, ele não é mais sincronizado com o primário. Ele se torna um cluster provisionado autônomo com recursos completos. read/write Além disso, ele não está mais visível no console do Amazon DocumentDB. Ela só é visível quando você seleciona a região no console em que o cluster estava localizado.

Você pode remover clusters do seu cluster global usando a Console de gerenciamento da AWS AWS CLI, a ou a API do RDS.

------
#### [ Using the Console de gerenciamento da AWS ]

1. Faça login no Console de gerenciamento da AWS e navegue até o console do Amazon DocumentDB.

1. No painel de navegação esquerdo, escolha **Clusters**.  
![\[Imagem: a caixa de navegação Clusters mostrando uma lista dos links de cluster existentes e seus links de instância correspondentes.\]](http://docs.aws.amazon.com/pt_br/documentdb/latest/developerguide/images/global-clusters/choose-cluster.png)

1. Expanda o cluster global para que você possa ver todos os clusters secundários. Selecione os clusters secundários que você deseja remover. Escolha **Ações** e, no menu suspenso, escolha **Remover do global**.  
![\[Imagem: a caixa de navegação Clusters mostrando a seleção de um cluster secundário existente e destacando a ação “Remover do global”.\]](http://docs.aws.amazon.com/pt_br/documentdb/latest/developerguide/images/global-clusters/remove-global.png)

1. Será exibido um prompt solicitando a confirmação de que você deseja desconectar o secundário do cluster global. Escolha **Remover e promover** para remover o cluster do cluster global.  
![\[Imagem: o prompt Remover e promover.\]](http://docs.aws.amazon.com/pt_br/documentdb/latest/developerguide/images/global-clusters/remove-promote.png)

Agora esse cluster não está mais servindo como secundário e não está mais sincronizado com o cluster primário. É um cluster autônomo com read/write capacidade total.

Depois de remover ou excluir todos os clusters secundários, remova o cluster primário da mesma maneira. Não é possível desanexar ou remover o cluster primário do cluster global até que você tenha removido todos os clusters secundários. O cluster global pode permanecer na lista de clusters, com zero regiões AZs e. É possível excluir se não quiser mais usar esse cluster global.

------
#### [ Using the AWS CLI ]

Para remover um cluster de um cluster global, execute o comando CLI `remove-from-global-cluster` com os seguintes parâmetros:
+ `--global-cluster-identifier`: o nome (identificador) do seu cluster global.
+ `--db-cluster-identifier` — O nome de cada cluster a ser removido do cluster global. 

Os exemplos a seguir removem primeiro um cluster secundário e depois o cluster primário de um cluster global.

Para Linux, macOS ou Unix:

```
aws docdb --region secondary_region \
  remove-from-global-cluster \
    --db-cluster-identifier secondary_cluster_ARN \
    --global-cluster-identifier global_cluster_id

aws docdb --region primary_region \
  remove-from-global-cluster \
    --db-cluster-identifier primary_cluster_ARN \
    --global-cluster-identifier global_cluster_id
```

Repita o comando `remove-from-global-cluster` `--db-cluster-identifier` `secondary_cluster_ARN` para cada região secundária em seu cluster global.

Para Windows:

```
aws docdb --region secondary_region ^
  remove-from-global-cluster ^
    --db-cluster-identifier secondary_cluster_ARN ^
    --global-cluster-identifier global_cluster_id

aws docdb --region primary_region ^
  remove-from-global-cluster ^
    --db-cluster-identifier primary_cluster_ARN ^
    --global-cluster-identifier global_cluster_id
```

Repita o comando `remove-from-global-cluster` `--db-cluster-identifier` `secondary_cluster_ARN` para cada região secundária em seu cluster global.

------

## Exclusão de um cluster global do Amazon DocumentDB
<a name="global-clusters.delete"></a>

Para excluir um cluster global, faça o seguinte:
+ Remova todos os clusters secundários do cluster global. Cada cluster se torna um cluster autônomo. Veja a seção anterior,[Remover um cluster de um cluster global do Amazon DocumentDB](#global-clusters.remove).
+ Em cada cluster autônomo, exclua todas as réplicas.
+ Remova o cluster primário do cluster global. Isso se torna um cluster autônomo.
+ No cluster primário, primeiro exclua todas as réplicas e, em seguida, exclua a instância primária. A exclusão da instância primária do cluster recém-autônomo também remove, normalmente, o cluster e o cluster global.

------
#### [ Using the Console de gerenciamento da AWS ]

1. Faça login no Console de gerenciamento da AWS e navegue até o console do Amazon DocumentDB.

1. Escolha **Clusters** e encontre o cluster global que você deseja excluir.  
![\[Imagem: a caixa de navegação Clusters mostrando uma lista dos links de cluster existentes e seus links de instância correspondentes.\]](http://docs.aws.amazon.com/pt_br/documentdb/latest/developerguide/images/global-clusters/choose-cluster.png)

1. Com seu cluster global selecionado, escolha **Excluir** no menu **Ações**.  
![\[Imagem: a caixa de navegação Clusters mostrando a seleção de um cluster global e destacando a ação “Excluir”.\]](http://docs.aws.amazon.com/pt_br/documentdb/latest/developerguide/images/global-clusters/delete-cluster.png)

Confirme se todos os clusters foram removidos do cluster global. O cluster global deve mostrar zero regiões AZs e um tamanho de zero clusters. Se o cluster global contiver clusters, você ainda não poderá excluí-lo. Primeiro, você terá que seguir as instruções da etapa anterior, **[Remover um cluster de um cluster global do Amazon DocumentDB](#global-clusters.remove)**.

------
#### [ Using the AWS CLI ]

Para excluir um cluster global, execute o comando `delete-global-cluster` CLI com o nome do Região da AWS e o identificador global do cluster, conforme mostrado no exemplo a seguir.

Para Linux, macOS ou Unix:

```
aws docdb --region primary_region delete-global-cluster \
   --global-cluster-identifier global_cluster_id
```

Para Windows:

```
aws docdb --region primary_region delete-global-cluster ^
   --global-cluster-identifier global_cluster_id
```

------

## Criação de um cluster sem cabeça do Amazon DocumentDB em uma região secundária
<a name="global-clusters.headless"></a>

Embora um cluster global do Amazon DocumentDB exija pelo menos um cluster secundário em um cluster Região da AWS diferente do primário, você pode usar uma configuração sem cabeçalho para o cluster secundário. Um cluster secundário sem cabeça do Amazon DocumentDB é aquele sem uma instância. Esse tipo de configuração pode reduzir as despesas de um cluster global. Em um cluster do Amazon DocumentDB, a computação e o armazenamento são desacoplados. Sem a instância, você não é cobrado pela computação, apenas pelo armazenamento. Se for configurado corretamente, o volume de armazenamento de um secundário sem cabeça é mantido em sincronia com o cluster primário. 

Você adiciona o cluster secundário como normalmente faz ao criar um cluster global do Amazon DocumentDB. No entanto, depois que o cluster primário iniciar a replicação para o secundário, você excluirá a instância somente leitura do cluster secundário. Esse cluster secundário agora é considerado "sem cabeça" porque não tem mais uma instância. No entanto, o volume de armazenamento é mantido em sincronia com o cluster principal do Amazon DocumentDB. 

**Importante**  
Recomendamos clusters sem cabeça apenas para clientes que possam tolerar falhas em toda a região por mais de 15 minutos. Isso ocorre porque a recuperação de uma falha em toda a região com um cluster secundário sem cabeça exigirá que o usuário crie uma nova instância após a falha. Uma nova instância pode levar de 10 a 15 minutos para ficar disponível.

### Como Adicionar um Cluster Secundário sem Cabeça ao seu Cluster Global
<a name="w2aac33b9c13c17b9"></a>

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

1. No painel de navegação esquerdo, escolha **Clusters**. 

1. Escolha o cluster global que precisa de um cluster secundário. Certifique-se de que o cluster primário seja `Available`. 

1. Para **Ações**, selecione **Adicionar região**.

1. Na página **Adicionar uma região**, escolha a região secundária.
**nota**  
Não é possível escolher uma região que já tenha um cluster secundário para o mesmo cluster global. Além disso, não pode ser a mesma região que o cluster primário. 

1. Preencha os campos restantes para o cluster secundário na nova região. Essas são as mesmas opções de configuração de qualquer instância de cluster. 

1. Adicionar região. Depois de terminar de adicionar a região ao seu cluster global, você a verá na lista de `Clusters` no Console de gerenciamento da AWS. 

1. Verifique o status do cluster secundário e de sua instância de leitura antes de continuar, usando o Console de gerenciamento da AWS ou AWS CLI o. Aqui está um exemplo de comando se você usar o AWS CLI: 

   ```
   $ aws docdb describe-db-clusters --db-cluster-identifier secondary-cluster-id --query '*[].[Status]' --output text
   ```

   Pode levar vários minutos para que o status de um cluster secundário recém-adicionado mude de criado para disponível. Quando o cluster estiver disponível, será possível excluir a instância do leitor. 

1. Selecione a instância do leitor no cluster secundário e, em seguida, selecione **Excluir**. 

1. Depois de excluir a instância do leitor, o cluster secundário continua fazendo parte do cluster global. Ele não deve ter nenhuma instância associada a ele.

**nota**  
É possível usar esse cluster secundário sem cabeça do Amazon DocumentDB para recuperar manualmente o cluster global do Amazon DocumentDB de uma interrupção não planejada na região primária, se essa interrupção ocorrer. 

# Conexão com um cluster global do Amazon DocumentDB
<a name="global-clusters-connect"></a>

A forma como você se conecta a um cluster global depende de se você precisa gravar no cluster ou ler a partir do cluster.
+ Para solicitações ou consultas somente para leitura, conecte-se ao endpoint do leitor para o cluster em sua Região da AWS.
+ Para executar instruções Data Manipulation Language (DML) ou Data Definition Language (DDL), conecte-se ao endpoint cluster do cluster primário. Esse endpoint pode estar em um local Região da AWS diferente do seu aplicativo.

Ao exibir um cluster global no console, é possível ver todos os endpoints de finalidade geral associados a todos os clusters.

A forma como você se conecta a um cluster global depende de se você precisa gravar no banco de dados ou ler a partir do banco de dados. Para operações de DDL, DML e leitura às quais você gostaria de atender na região primária, você deve se conectar ao seu cluster primário. Recomendamos a conexão com o cluster primário usando o endpoint do cluster no modo conjunto de réplicas, com uma preferência de leitura de `secondaryPreferred=true`. Isso roteará o tráfego de gravação para a instância de gravação do seu cluster primário e o tráfego de leitura para a instância de réplica do seu cluster primário.

Para tráfego somente de leitura entre regiões, você deve se conectar a um de seus clusters secundários. Recomendamos a conexão com o cluster secundário usando o endpoint do cluster e o modo de conjunto de réplicas. Como todas as instâncias são instâncias de réplica somente para leitura, você não precisa especificar uma preferência de leitura. Para minimizar latência, escolha o endpoint de leitor que está na sua Região ou na Região mais próxima de você.

# Monitorar clusters globais do Amazon DocumentDB
<a name="global-clusters-monitor"></a>

O Amazon DocumentDB (com compatibilidade com o MongoDB) se integra CloudWatch para que você possa coletar e analisar métricas operacionais para seus clusters. Você pode monitorar essas métricas usando o CloudWatch console, o console do Amazon DocumentDB, o AWS Command Line Interface (AWS CLI) ou a CloudWatch API.

Para monitorar um cluster global, use as CloudWatch métricas a seguir.


| Métrica | Description | 
| --- | --- | 
| GlobalClusterReplicatedWriteIO | O número médio de I/O operações de gravação cobradas replicadas do volume do cluster no volume primário Região da AWS para o volume do cluster no secundário Região da AWS, relatado em intervalos de 5 minutos. O número de ReplicatedWriteIOs replicados para cada região secundária é o mesmo que o número de VolumeWriteIOPs na região realizados pela região primária. | 
| GlobalClusterDataTransferBytes | A quantidade de dados transferidos do cluster primário Região da AWS para o secundário Região da AWS, medida em bytes. | 
| GlobalClusterReplicationLag | A quantidade de atraso, em milissegundos, ao replicar eventos de alteração do cluster primário Região da AWS para o secundário Região da AWS | 

Para obter mais informações sobre como visualizar essas métricas, consulte [Visualização de CloudWatch dados](https://docs.aws.amazon.com/documentdb/latest/developerguide/cloud_watch.html#cloud_watch-view_data).

# Recuperação de desastres e clusters globais do Amazon DocumentDB
<a name="global-clusters-disaster-recovery"></a>

**Topics**
+ [Realizar um failover gerenciado para um cluster global do Amazon DocumentDB](#managed-failover)
+ [Realizar um failover manual para um cluster global do Amazon DocumentDB](#manual-failover)
+ [Como realizar uma transição para um cluster global do Amazon DocumentDB](#global-cluster-switchover)
+ [Desbloqueio da transição ou do failover de um cluster global](#unblocking-gc-so-fo)

Ao usar um cluster global, você pode se recuperar rapidamente de desastres, como falhas na região. A recuperação de desastres é normalmente medida usando valores de RTO e RPO.
+ **Objetivo de tempo de recuperação (RTO)**: tempo que um sistema leva para retornar a um estado de trabalho após um desastre. Em outras palavras, o RTO mede o tempo de inatividade. Para um cluster global, RTO em minutos.
+ **Objetivo de ponto de recuperação (RPO)**: quantidade de dados que podem ser perdidos (medidos no tempo). Para um cluster global, o RPO é normalmente medido em segundos. 
+ Para recuperar de uma paralisação não planejada, você pode executar um failover entre regiões para um dos secundários em seu cluster global. Quando o cluster global tem várias regiões secundárias, lembre-se de desanexar todas as regiões secundárias que quiser promover a primárias. Em seguida, promova uma dessas regiões secundárias para ser a nova Região da AWS primária. Por fim, crie novos clusters em cada uma das outras regiões secundárias e anexe esses clusters ao seu cluster global.

## Realizar um failover gerenciado para um cluster global do Amazon DocumentDB
<a name="managed-failover"></a>

Essa abordagem destina-se à continuidade dos negócios no caso de um desastre regional real ou de uma interrupção completa do nível de serviço.

Durante um failover gerenciado, o cluster primário sofre failover para que você escolha a região secundária, enquanto a topologia de replicação existente do cluster global do Amazon DocumentDB é mantida. O cluster secundário escolhido promove um dos nós somente leitura ao status de gravador completo. Essa etapa permite que o cluster assuma a função de cluster primário. O banco de dados ficará indisponível por um curto período enquanto o cluster estiver assumindo a nova função. Os dados que não foram replicados do cluster primário antigo para o cluster secundário escolhido são perdidos quando esse secundário se torna o novo primário. O volume primário antigo faz o possível para tirar um snapshot antes de sincronizar com o novo primário, para que os dados não replicados sejam preservados no instantâneo.

**nota**  
Você só poderá realizar um failover de cluster gerenciado entre regiões em um cluster global do Amazon DocumentDB se os clusters primário e todos os secundários tiverem as mesmas versões de mecanismo. Se as versões do mecanismo forem incompatíveis, será possível executar o failover manualmente seguindo as etapas em [Realizar um failover manual para um cluster global do Amazon DocumentDB](#manual-failover).  
Se as versões de mecanismo da região não corresponderem, o failover será bloqueado. Verifique se há atualizações pendentes e aplique-as para garantir que todas as versões de mecanismo da região correspondam e que o failover global do cluster seja desbloqueado. Para obter mais informações, consulte [Desbloqueio da transição ou do failover de um cluster global](#unblocking-gc-so-fo).

Para minimizar a perda de dados, recomendamos que você faça o seguinte antes de usar esse recurso:
+ Deixe as aplicações off-line para evitar que as gravações sejam enviadas para o cluster primário do cluster global do Amazon DocumentDB.
+ Verifique os tempos de atraso de todos os clusters secundários do Amazon DocumentDB. Escolher a região secundária com o menor atraso de replicação pode minimizar a perda de dados na atual região primária com falha. Verifique os tempos de atraso de todos os clusters secundários do Amazon DocumentDB no cluster global visualizando a métrica `GlobalClusterReplicationLag` na Amazon. CloudWatch Essa métrica informa a que distância (em milissegundos) está a replicação de um cluster secundário em relação ao cluster primário.

  Para obter mais informações sobre CloudWatch métricas do Amazon DocumentDB, consulte. [Métricas do Amazon DocumentDB](cloud_watch.md#cloud_watch-metrics_list)

Durante um failover gerenciado, o cluster secundário escolhido é promovido à sua nova função como primário. No entanto, ele não herda as várias opções de configuração do cluster primário. Uma incompatibilidade na configuração pode levar a problemas de performance, incompatibilidades de workload e outros comportamentos anômalos. Para evitar esses problemas, recomendamos que você resolva as diferenças entre os clusters globais do Amazon DocumentDB para o seguinte:
+ **Configurar um grupo de parâmetros do cluster do Amazon DocumentDB para o novo primário, se necessário**: você pode configurar seus grupos de parâmetros de cluster do Amazon DocumentDB independentemente para cada cluster no cluster global do Amazon DocumentDB. Por isso, quando você promove um cluster secundário para assumir a função primária, o grupo de parâmetros do secundário pode ser configurado diferentemente do primário. Em caso afirmativo, modifique o grupo de parâmetros do cluster secundário promovido para estar em conformidade com as configurações do cluster principal. Para saber como, consulte [Modificando grupos de parâmetros de cluster do Amazon DocumentDB](cluster_parameter_groups-modify.md).
+ **Configure ferramentas e opções de monitoramento, como CloudWatch eventos e alarmes da Amazon** — Configure o cluster promovido com a mesma capacidade de registro, alarmes e assim por diante, conforme necessário para o cluster global. Tal como acontece com os parameter groups, a configuração desses recursos não é herdada do primário no processo de failover. Algumas CloudWatch métricas, como atraso na replicação, só estão disponíveis para regiões secundárias. Assim, um failover altera a forma de visualizar essas métricas e definir alarmes para elas, e pode exigir alterações em qualquer painel predefinido. Para obter mais informações sobre clusters e monitoramento do Amazon DocumentDB, consulte [Monitoramento do Amazon DocumentDB](monitoring_docdb.md).

Normalmente, o cluster secundário escolhido assume o perfil principal dentro de um minuto. Assim que o nó de gravação da nova região principal estiver disponível, será possível conectar suas aplicações a ele e retomar suas workloads. Depois que o Amazon DocumentDB promove o novo cluster primário, ele reconstrói automaticamente todos os clusters adicionais da região secundária.

Como os clusters globais do Amazon DocumentDB usam replicação assíncrona, o atraso na replicação em cada região secundária pode variar. O Amazon DocumentDB reconstrói essas regiões secundárias para ter exatamente os mesmos point-in-time dados do novo cluster da região primária. A duração da tarefa de reconstrução completa pode levar de alguns minutos a várias horas, dependendo do tamanho do volume de armazenamento e da distância entre as regiões. Quando os clusters da região secundária terminam de ser reconstruídos com base na nova região primária, eles ficam disponíveis para acesso de leitura. Assim que o novo gravador principal for promovido e disponibilizado, o cluster da nova região primária poderá lidar com operações de leitura e gravação no cluster global do Amazon DocumentDB.

Para restaurar a topologia original do cluster global, o Amazon DocumentDB monitora a disponibilidade da antiga região primária. Assim que essa região estiver íntegra e disponível novamente, o Amazon DocumentDB a adicionará automaticamente ao cluster global como uma região secundária. Antes de criar o novo volume de armazenamento na antiga região primária, o Amazon DocumentDB tenta capturar um snapshot do volume de armazenamento antigo no ponto da falha. Ele faz isso para que você possa usá-lo para recuperar os dados perdidos. Se essa operação for bem-sucedida, o Amazon DocumentDB colocará esse snapshot chamado “rds: docdb-unplanned-global-failover - name-of-old-primary -db-cluster-timestamp” na seção de snapshot do. Console de gerenciamento da AWS Você também pode ver esse snapshot listado nas informações retornadas pela operação de API `DescribeDBClusterSnapshots`.

**nota**  
O snapshot do volume de armazenamento antigo é um snapshot do sistema sujeito ao período de retenção de backup configurado no antigo cluster primário. Para preservar esse instantâneo fora do período de retenção, você pode copiá-lo para salvá-lo como um snapshot manual. Para saber mais sobre como copiar snapshots, incluindo os preços, consulte [Cópia de um snapshot de cluster](backup_restore-copy_cluster_snapshot.md#backup_restore-copy_a_cluster_snapshot).

Depois que a topologia original for restaurada, será possível fazer failback do clustert global para a região primária original executando uma operação de transição quando fizer mais sentido para seus negócios e sua workload. Para isso, siga as etapas em [Como realizar uma transição para um cluster global do Amazon DocumentDB](#global-cluster-switchover).

Você pode fazer o failover do seu cluster global do Amazon DocumentDB usando a Console de gerenciamento da AWS, a ou a AWS CLI API do Amazon DocumentDB.

------
#### [ Using the Console de gerenciamento da AWS ]

**Realize um failover gerenciado no seu cluster global do Amazon DocumentDB**

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

1. No painel de navegação, escolha **Clusters**.

1. Localize e escolha o cluster global do Amazon DocumentDB do qual você deseja fazer failover.  
![\[Imagem: tabela de cluster com cluster global selecionado.\]](http://docs.aws.amazon.com/pt_br/documentdb/latest/developerguide/images/failover-cluster-table.png)

1. Escolha **Transição ou failover** no menu **Ações**.

1. Na caixa de diálogo exibida, escolha **Failover** e, em seguida, escolha o cluster secundário na lista suspensa do campo **Novo cluster primário**.  
![\[Imagem: caixa de diálogo global de alternância ou failover de cluster.\]](http://docs.aws.amazon.com/pt_br/documentdb/latest/developerguide/images/switch-fail-confirm.png)

1. Digite “confirmar” no último campo. Depois, selecione **Confirmar**.

   O status do cluster primário muda para "**Em failover**". Essa condição deve levar aproximadamente um minuto. Durante esse período, o status do novo cluster primário mostra "**Modificando…**". Depois que o novo primário for promovido, ele mostrará "**Disponível**" e poderá veicular transações de leitura e gravação. As regiões secundárias, incluindo a antiga primária, mostrarão "**Ressincronização…**" enquanto é ressincronizada com a nova primária." Semelhante ao novo primário, ele só poderá servir a transação quando o status mudar para "**Disponível**".

1. Quando concluído, o cluster primário original se torna o cluster secundário. O cluster secundário selecionado se torna o cluster primário.  
![\[Imagem: tabela de cluster mostrando o novo cluster primário.\]](http://docs.aws.amazon.com/pt_br/documentdb/latest/developerguide/images/failover-complete.png)

------
#### [ Using the AWS CLI ]

**Realize um failover gerenciado no seu cluster global do Amazon DocumentDB**

Execute o comando [https://awscli.amazonaws.com/v2/documentation/api/latest/reference/docdb/failover-global-cluster.html](https://awscli.amazonaws.com/v2/documentation/api/latest/reference/docdb/failover-global-cluster.html) da CLI para fazer failover sobre seu cluster global do Amazon DocumentDB. Com o comando, passe valores para as opções a seguir:
+ `--region`
+ `--global-cluster-identifier`
+ `--target-db-cluster-identifier`
+ `--allow-data-loss`

Nos exemplos a seguir, substitua cada um *user input placeholder* pelas informações do seu cluster.

Para Linux, macOS ou Unix:

```
aws docdb failover-global-cluster \
   --region region_of_selected_secondary \
   --global-cluster-identifier global_cluster_id \
   --target-db-cluster-identifier arn_of_secondary_to_promote \
   --allow-data-loss
```

Para Windows:

```
aws docdb failover-global-cluster ^
   --region region_of_selected_secondary ^
   --global-cluster-identifier global_cluster_id ^
   --target-db-cluster-identifier arn_of_secondary_to_promote ^
   --allow-data-loss
```

------

## Realizar um failover manual para um cluster global do Amazon DocumentDB
<a name="manual-failover"></a>

Se um cluster inteiro em um Região da AWS ficar indisponível, você poderá promover outro cluster no cluster global para ter read/write capacidade.

É possível ativar manualmente o mecanismo de failover do cluster global se um cluster em uma Região da AWS diferente seja uma opção melhor para ser o cluster primário. Por exemplo, você pode aumentar a capacidade de um dos clusters secundários e promovê-lo para ser o cluster primário. Ou o equilíbrio da atividade entre eles Regiões da AWS pode mudar, de modo que mudar o cluster primário para um diferente Região da AWS pode resultar em menor latência para as operações de gravação.

O procedimento a seguir descreve o que fazer para promover um dos clusters secundários em um cluster global do Amazon DocumentDB.

Como promover um cluster secundário:

1. Pare de emitir instruções DML e outras operações de gravação no cluster primário durante Região da AWS a interrupção.

1. Identifique um cluster de um secundário Região da AWS para usar como um novo cluster primário. Se você tiver dois (ou mais) secundários Regiões da AWS em seu cluster global, escolha o cluster secundário que tenha o menor tempo de espera.

1. Desanexe o cluster secundário escolhido do banco de dados global.

   A remoção de um cluster secundário de um cluster global interrompe imediatamente a replicação do primário para esse secundário e o transforma em um cluster provisionado autônomo com recursos completos. read/write Qualquer outro cluster secundário associado ao cluster primário na região com a interrupção ainda estará disponível e poderá aceitar chamadas do seu aplicativo. Eles também consomem recursos. Como você está recriando o cluster global para evitar problemas de cérebro dividido, entre outros, remova os outros clusters secundários antes de criar o cluster global nas etapas a seguir.

   Para obter as etapas detalhadas para desanexar, consulte [Remover um cluster de um cluster global do Amazon DocumentDB](global-clusters.manage.md#global-clusters.remove).

1. Esse cluster se torna o cluster principal de um novo cluster global quando você começa a adicionar Regiões a ele, na próxima etapa.

1. Adicione um Região da AWS ao cluster. Quando você faz isso, o processo de replicação de primário para secundário começa.

1. Adicione mais Regiões da AWS conforme necessário para recriar a topologia necessária para dar suporte ao seu aplicativo. Certifique-se de que as gravações de aplicações sejam enviadas para o cluster correto antes, durante e depois de fazer alterações como essas, para evitar inconsistências de dados entre os clusters do cluster global (problemas de cérebro dividido).

1. Quando a interrupção for resolvida e você estiver pronto para reatribuir a Região da AWS original como o cluster primário, siga as mesmas etapas em sentido inverso:

1. Remova um dos clusters secundários do cluster global. Isso permitirá que ele atenda ao read/write tráfego. 

1. Redirecione todo o tráfego de leitura para o cluster primário na Região da AWS original.

1. Adicione um Região da AWS para configurar um ou mais clusters secundários da Região da AWS mesma forma que antes.

Os clusters globais do Amazon DocumentDB podem ser gerenciados usando AWS SDKs, permitindo que você crie soluções para automatizar o processo global de failover de clusters para casos de uso de recuperação de desastres e planejamento de continuidade de negócios. Uma dessas soluções é disponibilizada para nossos clientes sob o licenciamento do Apache 2.0 e pode ser acessada em nosso repositório de ferramentas [aqui](https://github.com/awslabs/amazon-documentdb-tools/tree/master/global-clusters-automation). Essa solução utiliza o Amazon Route 53 para gerenciamento de endpoints e fornece AWS Lambda funções que podem ser acionadas com base em eventos apropriados.

## Como realizar uma transição para um cluster global do Amazon DocumentDB
<a name="global-cluster-switchover"></a>

Ao usar transições, é possível alterar a região do cluster primário rotineiramente. Essa abordagem destina-se a ambientes controlados, como manutenção operacional e outros procedimentos operacionais planejados.

Há três casos de uso comuns para o uso de transições.
+ Para requisitos de “alternância regional” impostos a setores específicos. Por exemplo, os regulamentos de serviços financeiros podem querer que os sistemas de nível 0 mudem para uma região diferente por vários meses a fim de garantir que os procedimentos de recuperação de desastres sejam executados regularmente.
+ Para aplicativos follow-the-sun "” multirregionais. Por exemplo, uma empresa pode querer fornecer gravações de menor latência em diferentes regiões com base no horário comercial em diferentes fusos horários.
+ Como um zero-data-loss método para retornar à região primária original após um failover.

**nota**  
As transições foram projetadas para serem usadas em um cluster global íntegro do Amazon DocumentDB. Para se recuperar de uma interrupção não planejada, siga o procedimento apropriado em [Realizar um failover manual para um cluster global do Amazon DocumentDB](#manual-failover).  
Para realizar uma transição, todas as regiões secundárias devem estar executando exatamente a mesma versão de mecanismo primário. Se as versões de mecanismo da região não corresponderem, a transição será bloqueada. Verifique se há atualizações pendentes e aplique-as para garantir que todas as versões de mecanismo da região correspondam e que a transição global do cluster seja desbloqueada. Para obter mais informações, consulte [Desbloqueio da transição ou do failover de um cluster global](#unblocking-gc-so-fo).

Durante uma transição, o Amazon DocumentDB muda o cluster primário para a região secundária escolhida e mantém a topologia de replicação existente do cluster global. Antes de iniciar o processo de transição, o Amazon DocumentDB espera que todos os clusters da região secundária estejam totalmente sincronizados com o cluster da região primária. Em seguida, o cluster de banco de dados na região primária torna-se somente leitura e o cluster secundário escolhido promove um dos respectivos nós somente leitura ao status de gravador completo. A promoção desse nó a um gravador permite que esse cluster secundário assuma a função de cluster primário. Como todos os clusters secundários foram sincronizados com o primário no início do processo, o novo primário continua as operações para o cluster global do Amazon DocumentDB sem perder dados. Seu banco de dados fica indisponível por um curto período enquanto os clusters primários e secundários selecionados estão assumindo suas novas funções.

Para otimizar a disponibilidade da aplicação, recomendamos que você faça o seguinte antes de usar esse recurso:
+ Execute essa operação em períodos de pouca demanda ou em outro momento quando as gravações no cluster primário forem mínimas.
+ Deixe as aplicações off-line para evitar que as gravações sejam enviadas para o cluster primário do cluster global do Amazon DocumentDB.
+ Verifique os tempos de atraso de todos os clusters secundários do Amazon DocumentDB no cluster global visualizando a métrica `GlobalClusterReplicationLag` na Amazon. CloudWatch Essa métrica informa a que distância (em milissegundos) está a replicação de um cluster secundário em relação ao cluster primário. Esse valor é diretamente proporcional ao tempo que o Amazon DocumentDB levará para concluir a transição. Portanto, quanto maior o valor do atraso, mais tempo a transição levará.

  Para obter mais informações sobre CloudWatch métricas do Amazon DocumentDB, consulte. [Métricas do Amazon DocumentDB](cloud_watch.md#cloud_watch-metrics_list)

Durante uma transição, o cluster de banco de dados secundário escolhido é promovido à nova função como primário. No entanto, ele não herda as várias opções de configuração do cluster de banco de dados primário. Uma incompatibilidade na configuração pode levar a problemas de performance, incompatibilidades de workload e outros comportamentos anômalos. Para evitar esses problemas, recomendamos que você resolva as diferenças entre os clusters globais do Amazon DocumentDB para o seguinte:
+ **Configurar um grupo de parâmetros do cluster do Amazon DocumentDB para o novo primário, se necessário**: você pode configurar seus grupos de parâmetros de cluster do Amazon DocumentDB independentemente para cada cluster no cluster global do Amazon DocumentDB. Isso significa que quando você promove um cluster de banco de dados secundário para assumir a função primária, o parameter group do secundário pode ser configurado de forma diferente do que para o primário. Em caso afirmativo, modifique o parameter group do cluster de banco de dados secundário promovido para estar em conformidade com as configurações do cluster principal. Para saber como, consulte [Gerenciando grupos de parâmetros de cluster do Amazon DocumentDB](cluster_parameter_groups.md).
+ **Configure ferramentas e opções de monitoramento, como Amazon CloudWatch Events e alarmes** — Configure o cluster promovido com a mesma capacidade de registro, alarmes e assim por diante, conforme necessário para o cluster global. Tal como ocorre com os grupos de parâmetros, a configuração desses recursos não é herdada do primário no processo de transição. Algumas CloudWatch métricas, como atraso na replicação, só estão disponíveis para regiões primárias. Assim, uma transição altera a forma de visualizar essas métricas e definir alarmes para elas, e pode exigir alterações em qualquer painel predefinido. Para obter mais informações, consulte [Monitoramento do Amazon DocumentDB](monitoring_docdb.md).

**nota**  
Normalmente, a transição de função pode levar alguns minutos.

Quando o processo de transição for concluído, o cluster de do Amazon DocumentDB promovido poderá lidar com operações de gravação para o cluster global.

Você pode alternar seu cluster global do Amazon DocumentDB usando o Console de gerenciamento da AWS ou o: AWS CLI

------
#### [ Using the Console de gerenciamento da AWS ]

**Realize uma transição no seu cluster global do Amazon DocumentDB**

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

1. No painel de navegação, escolha **Clusters**.

1. Localize e selecione o cluster global do Amazon DocumentDB do qual você deseja realizar a transição.  
![\[Imagem: tabela de cluster com cluster global selecionado.\]](http://docs.aws.amazon.com/pt_br/documentdb/latest/developerguide/images/switchover-cluster-table.png)

1. Escolha **Transição ou failover** no menu **Ações**.

1. Na caixa de diálogo exibida, escolha **Transição** e, em seguida, escolha o cluster secundário na lista suspensa do campo **Novo cluster primário**.  
![\[Imagem: caixa de diálogo de transição de cluster com o cluster secundário selecionado.\]](http://docs.aws.amazon.com/pt_br/documentdb/latest/developerguide/images/switch-fail-confirm-2.png)

1. Escolha **Confirmar**.

   O status do cluster primário muda para "**Trocar**". Essa condição deve levar aproximadamente três minutos. Durante esse período, o status de todos os clusters regionais é "**Modificando...**". Depois que as regiões forem sincronizadas e o novo primário for promovido, ele mostrará "**Disponível**" em todos os campos de status e poderá atender às transações.

1. Quando concluído, o cluster primário original se torna o cluster secundário. O cluster secundário selecionado se torna o cluster primário.  
![\[Imagem: tabela de cluster mostrando o novo cluster primário.\]](http://docs.aws.amazon.com/pt_br/documentdb/latest/developerguide/images/failover-complete.png)

------
#### [ Using the AWS CLI ]

**Realize uma transição no seu cluster global do Amazon DocumentDB**

Execute o comando [https://awscli.amazonaws.com/v2/documentation/api/latest/reference/docdb/switchover-global-cluster.html](https://awscli.amazonaws.com/v2/documentation/api/latest/reference/docdb/switchover-global-cluster.html) da CLI para fazer a transição do seu cluster global do Amazon DocumentDB. Com o comando, passe valores para as opções a seguir:
+ `--region`
+ `--global-cluster-identifier`
+ `--target-db-cluster-identifier`

Nos exemplos a seguir, substitua cada um *user input placeholder* pelas informações do seu cluster.

Para Linux, macOS ou Unix:

```
aws docdb switchover-global-cluster \
   --region region_of_primary \
   --global-cluster-identifier global_cluster_id \
   --target-db-cluster-identifier arn_of_secondary_to_promote
```

Para Windows:

```
aws docdb switchover-global-cluster ^
   --region region_of_primary ^
   --global-cluster-identifier global_cluster_id ^
   --target-db-cluster-identifier arn_of_secondary_to_promote
```

------

## Desbloqueio da transição ou do failover de um cluster global
<a name="unblocking-gc-so-fo"></a>

As transições e os failovers globais do cluster são bloqueados quando nem todos os clusters regionais no cluster global estão na mesma versão de mecanismo. Se as versões não corresponderem, será possível ver esse erro em resposta ao chamar uma transição ou um failover: O cluster de banco de dados de destino especificado está executando uma versão de mecanismo com um nível de patch diferente do cluster de banco de dados de origem. Recomendamos aplicar rotineiramente as versões mais recentes de mecanismo para garantir que você esteja executando as atualizações mais recentes para manter seus clusters globais em bom estado.

Para resolver esse erro, atualize primeiro todas as regiões secundárias e depois a região primária para a mesma versão de mecanismo aplicando todos os itens de ação de manutenção pendentes. Para visualizar os itens de ação de manutenção pendentes e aplicar as alterações necessárias para corrigir o problema, execute as instruções em uma das guias a seguir:

------
#### [ Using the Console de gerenciamento da AWS ]

Para desbloquear uma transição ou um failover global de clusters, você deve determinar se há alguma ação de manutenção pendente para seus clusters e aplicá-la. Siga estas etapas para visualizar e aplicar as ações de manutenção:

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

1. No painel de navegação, escolha **Clusters**.

1. Na tabela **Clusters**, localize seu cluster global na coluna **Identificador do cluster**. Em seu cluster global, anote cada cluster secundário e o cluster primário e execute as etapas a seguir para cada um.

1. Em cada cluster secundário:

   1. Se uma atualização estiver disponível para seu cluster, ela será indicada como **Disponível**, **Obrigatória** ou **Próxima janela** na coluna **Manutenção**.

   1. Para executar uma ação, escolha o cluster para mostrar seus detalhes e, em seguida, escolha **Manutenção e backups**. Os itens de **manutenção pendentes** são exibidos.

   1. Em **Descrição**, se houver indicação de que “Uma nova atualização de manutenção está disponível”, selecione-a e escolha **Aplicar agora**.

1. Em seu cluster primário:

   1. Se uma atualização estiver disponível para seu cluster, ela será indicada como **Disponível**, **Obrigatória** ou **Próxima janela** na coluna **Manutenção**.

   1. Para executar uma ação, escolha o cluster para mostrar seus detalhes e, em seguida, escolha **Manutenção e backups**. Os itens de **manutenção pendentes** são exibidos.

   1. Em **Descrição**, se houver indicação de que “Uma nova atualização de manutenção está disponível”, selecione-a e escolha **Aplicar agora**.

------
#### [ Using the AWS CLI ]

Para desbloquear uma transição ou um failover de cluster global, você deve determinar se há alguma ação de manutenção pendente para o cluster e aplicá-la. Siga estas etapas para visualizar e aplicar ações de manutenção primeiro nos clusters secundários e depois no cluster primário do seu cluster global:

1. Execute o seguinte, primeiro no cluster regional de cada região secundária e depois no cluster regional da região primária.

1. Execute o comando [https://awscli.amazonaws.com/v2/documentation/api/latest/reference/docdb/describe-pending-maintenance-actions.html](https://awscli.amazonaws.com/v2/documentation/api/latest/reference/docdb/describe-pending-maintenance-actions.html) da CLI com a opção `--resource-identifier` para determinar se alguma ação de manutenção está disponível para seu cluster regional do Amazon DocumentDB.

   Nos exemplos a seguir, substitua cada um *user input placeholder* pelas informações do seu cluster.

   Para Linux, macOS ou Unix:

   ```
   aws docdb describe-pending-maintenance-action \
      --resource-identifier arn:aws:rds:us-east-1:001234567890:cluster:docdb-2025-03-27-19-21-15
   ```

   Para Windows:

   ```
   aws docdb describe-pending-maintenance-action ^
      --resource-identifier arn:aws:rds:us-east-1:001234567890:cluster:docdb-2025-03-27-19-21-15
   ```

   O resultado deve ser semelhante a este:

   ```
   {
       "PendingMaintenanceActions": [
           {
               "ResourceIdentifier": "arn:aws:rds:us-east-1:001234567890:cluster:docdb-2025-03-27-19-21-15",
               "PendingMaintenanceActionDetails": [
                   {
                       "Action": "system-update",
                       "CurrentApplyDate": "2025-04-11T03:01:00Z",
                       "Description": "db-version-upgrade",
                       "ForcedApplyDate": "2025-06-18T03:01:00Z",
                       "AutoAppliedAfterDate": "2025-05-11T03:01:00Z"
                       "OptInStatus": "pending"
                   }
               ]
           }
       ]
   }
   ```

1. Se for necessária uma ação de manutenção, execute o comando [https://awscli.amazonaws.com/v2/documentation/api/latest/reference/docdb/apply-pending-maintenance-action.html](https://awscli.amazonaws.com/v2/documentation/api/latest/reference/docdb/apply-pending-maintenance-action.html) da CLI com as opções a seguir:
   + `--resource-identifier`
   + `--apply-action`
   + `--opt-in-type`
   + `--region`

   Nos exemplos a seguir, substitua cada um *user input placeholder* pelas informações do seu cluster.

   Para Linux, macOS ou Unix:

   ```
   aws docdb apply-pending-maintenance-action \
      --resource-identifier arn:aws:rds:us-east-1:001234567890:cluster:docdb-2025-03-27-19-21-15 \
      --apply-action system-update \
      --opt-in-type immediate \
      --region us-east-1
   ```

   Para Windows:

   ```
   aws docdb apply-pending-maintenance-action ^
      --resource-identifier arn:aws:rds:us-east-1:001234567890:cluster:docdb-2025-03-27-19-21-15 ^
      --apply-action system-update ^
      --opt-in-type immediate ^
      --region us-east-1
   ```

1. Depois que a ação de manutenção for concluída, execute o comando [https://awscli.amazonaws.com/v2/documentation/api/latest/reference/docdb/describe-pending-maintenance-actions.html](https://awscli.amazonaws.com/v2/documentation/api/latest/reference/docdb/describe-pending-maintenance-actions.html) novamente para garantir que não haja outras ações pendentes para seu cluster.

   O resultado que você deseja é:

   ```
   {
       "PendingMaintenanceActions": []
   }
   ```

------
#### [ Using the Amazon DocumentDB API ]

Para desbloquear uma transição ou um failover de cluster global, você deve determinar se há alguma ação de manutenção pendente para o cluster e aplicá-la. Use o seguinte APIs para visualizar e aplicar ações de manutenção:

1. Execute o seguinte, primeiro no cluster regional de cada região secundária e depois no cluster regional da região primária.

1. Chame a API [https://docs.aws.amazon.com/documentdb/latest/developerguide/API_PendingMaintenanceAction.html](https://docs.aws.amazon.com/documentdb/latest/developerguide/API_PendingMaintenanceAction.html) para determinar se alguma ação de manutenção está disponível para seu cluster global do Amazon DocumentDB.

1. Aplique todas as alterações chamando a API [https://docs.aws.amazon.com/documentdb/latest/developerguide/API_ApplyPendingMaintenanceAction.html](https://docs.aws.amazon.com/documentdb/latest/developerguide/API_ApplyPendingMaintenanceAction.html).

------

# Gerenciar clusters do Amazon DocumentDB
<a name="db-clusters"></a>

Para gerenciar um cluster do Amazon DocumentDB, é necessário ter uma política do IAM com as permissões de ambiente de gerenciamento apropriadas do Amazon DocumentDB. Essas permissões permitem criar, modificar e excluir clusters e instâncias. A política `AmazonDocDBFullAccess` fornece todas as permissões necessárias para administrar um cluster do Amazon DocumentDB. 

Os tópicos a seguir mostram como executar várias tarefas ao trabalhar com clusters do Amazon DocumentDB, inclusive criação, exclusão, modificação, conexão e visualização.

**Topics**
+ [Noções básicas de clusters](db-clusters-understanding.md)
+ [Configurações do cluster](db-cluster-parameters.md)
+ [Configurações de armazenamento de cluster](db-cluster-storage-configs.md)
+ [Determinar o status de um cluster](db-cluster-status.md)
+ [Ciclo de vida do cluster](db-cluster-life-cycle.md)
+ [Escalar clusters](db-cluster-manage-performance.md)
+ [Clonar um volume para um cluster](db-cluster-cloning.md)
+ [Entender a tolerância a falhas de cluster](db-cluster-fault-tolerance.md)

# Noções básicas de clusters
<a name="db-clusters-understanding"></a>

O Amazon DocumentDB separa computação de armazenamento, transfere replicação de dados e backup para o volume do cluster. Um volume de cluster fornece uma camada de armazenamento durável, confiável e altamente disponível, que replica dados de seis maneiras em três Zonas de Disponibilidade. As réplicas permitem maior disponibilidade de dados e leitura em escala. Cada cluster pode ter sua escala aumentada verticalmente em até 15 réplicas.


| Substantivo | Description | Operações de API (verbos) | 
| --- | --- | --- | 
|  Cluster  |  Consiste em uma ou mais instâncias e em um volume de armazenamento de cluster que gerencia os dados para essas instâncias.  |  `create-db-cluster` `delete-db-cluster` `describe-db-clusters` `modify-db-cluster` | 
| Instância | A leitura e a gravação de dados no volume de armazenamento do cluster são feitas por meio de instâncias. Em um determinado cluster, há dois tipos de instâncias: principal e de réplica. Um cluster sempre tem uma instância principal e pode ter entre 0 e 15 réplicas. |  `create-db-instance` `delete-db-instance` `describe-db-instances` `modify-db-instance` `describe-orderable-db-instance-options` `reboot-db-instance` | 
| Volume do cluster | Um volume de armazenamento de banco de dados virtual que abrange três Zonas de Disponibilidade, no qual cada Zona de Disponibilidade conta com duas cópias dos dados do cluster. | N/D | 
|  Instância principal  |  Oferece suporte a operações de leitura e gravação, além de realizar todas as modificações de dados no volume do cluster. Cada cluster tem uma instância principal.  | N/D | 
|  Instância de réplica  |  É compatível apenas com operações de leitura. Cada cluster do Amazon DocumentDB pode ter até 15 instâncias de réplica além da instância principal. Várias réplicas distribuem workloads de leitura. Ao localizar réplicas em Zonas de Disponibilidade separadas, você também pode aumentar a disponibilidade do banco de dados.  | N/D | 
|  Endpoint do cluster  |  Um endpoint para um cluster do Amazon DocumentDB que se conecta à instância principal atual do mesmo. Cada cluster do Amazon DocumentDB tem um endpoint de cluster e uma instância principal.  | N/D | 
|  Endpoint de leitor  |  Um endpoint para um cluster do Amazon DocumentDB que se conecta a uma das réplicas disponíveis para esse cluster. Cada cluster do Amazon DocumentDB tem um endpoint de leitor. Se houver mais de uma réplica, o endpoint de leitor direcionará cada solicitação de conexão para uma das réplicas do Amazon DocumentDB.  | N/D | 
|  Endpoint da instância  |  Um endpoint para uma instância em um cluster do Amazon DocumentDB que se conecta a uma instância específica. Cada instância em um cluster, independente do tipo, tem seu próprio endpoint de instância exclusivo.  | N/D | 

# Configurações de cluster do Amazon DocumentDB
<a name="db-cluster-parameters"></a>

Ao criar ou modificar um cluster, é importante entender quais parâmetros são imutáveis e quais podem ser modificados após o cluster ser criado. A tabela a seguir lista todos as configurações ou os parâmetros que são específicos de um cluster. Conforme especificado na tabela, alguns são modificáveis, outros não.

**nota**  
Essas configurações não devem ser confundidas com grupos de parâmetros de cluster do Amazon DocumentDB e seus parâmetros. Para obter mais informações sobre parameter groups de cluster, consulte [Gerenciando grupos de parâmetros de cluster do Amazon DocumentDB](cluster_parameter_groups.md). 


| Parâmetro | Modificável | Observações | 
| --- | --- | --- | 
| DBClusterIdentifier | Sim |  Restrições de nomenclatura: [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/pt_br/documentdb/latest/developerguide/db-cluster-parameters.html)  | 
| Engine | Não | Deve ser docdb. | 
| BackupRetentionPeriod | Sim | Defina um período entre [1 e 35] dias. | 
| DBClusterParameterGroupName | Sim |  Restrições de nomenclatura: [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/pt_br/documentdb/latest/developerguide/db-cluster-parameters.html)  | 
| DBSubnetGroupName | Não | Depois que um cluster for criado, você não poderá modificar a sub-rede do cluster. | 
| EngineVersion | Não | O valor pode ser 5.0.0 (padrão), 4.0.0 ou 3.6.0. | 
| KmsKeyId | Não | Se você optar por criptografar seu cluster, não poderá alterar a AWS KMS chave usada para criptografar seu cluster. | 
| MasterUsername | Não |  Depois que um cluster for criado, você não poderá modificar o `MasterUsername`. Restrições de nomenclatura: [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/pt_br/documentdb/latest/developerguide/db-cluster-parameters.html)  | 
| MasterUserPassword | Sim |  Restrições: [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/pt_br/documentdb/latest/developerguide/db-cluster-parameters.html)  | 
| Port | Sim | O número da porta se aplica a todas as instâncias no cluster. | 
| PreferredBackupWindow | Sim |  | 
| PreferredMaintenanceWindow | Sim |  | 
| StorageEncrypted | Não | Se você optar por criptografar seu cluster, ele não poderá ser descriptografado. | 
| StorageType | Sim |  O tipo de armazenamento do cluster de banco de dados: Padrão (`standard`) ou Otimizado para E/S (`iopt1`). Padrão: `standard` Esse parâmetro pode ser configurado com `CreateDBCluster` e `ModifyDBCluster`. Para obter mais informações, consulte [Configurações de armazenamento de cluster do Amazon DocumentDB](db-cluster-storage-configs.md).  | 
| Tags | Sim |  | 
| VpcSecurityGroupIds | Não | Depois que um cluster for criado, você não poderá modificar a VPC em que o cluster reside. | 

# Configurações de armazenamento de cluster do Amazon DocumentDB
<a name="db-cluster-storage-configs"></a>

A partir do Amazon DocumentDB 5.0, os clusters baseados em instâncias oferecem suporte a dois tipos de configurações de armazenamento:
+ **Armazenamento padrão do Amazon DocumentDB**: projetado para clientes com consumo baixo a moderado I/O . Se você espera que seus I/O custos sejam inferiores a 25% do seu cluster total do Amazon DocumentDB, essa opção pode ser ideal para você. Com a configuração de armazenamento padrão do Amazon DocumentDB, você é cobrado pay-per-request I/O com base nas cobranças de instância e armazenamento. Isso significa que seu faturamento pode variar de um ciclo para outro com base no uso. A configuração é personalizada para acomodar I/O as demandas flutuantes de sua aplicação.
+ **Armazenamento otimizado para E/S do Amazon DocumentDB**: projetado para clientes que priorizam a previsibilidade de preços ou têm aplicativos intensivos. I/O As I/O-optimized configuration offers improved performance, increased throughput, and reduced latency for customers with I/O intensive workloads. If you expect your I/O costs to exceed 25% of your total Amazon DocumentDB cluster costs, this option offers enhanced price performance. With the Amazon DocumentDB I/O-optimized storage configuration, you won't be charged based on I/O operações, garantindo custos previsíveis em cada ciclo de faturamento. A configuração estabiliza os custos e, ao mesmo tempo, melhora a performance.

Você pode mudar seus clusters de banco de dados existentes uma vez a cada 30 dias para o Amazon DocumentDB. Os clusters I/O-optimized storage. You can switch back to Amazon DocumentDB standard storage at any time. The next date to modify the storage configuration to I/O otimizados podem ser rastreados com o `describe-db-clusters` comando usando AWS CLI ou por meio da página de Console de gerenciamento da AWS configuração do cluster.

Você pode criar um novo cluster de banco de dados, incluindo a configuração otimizada para E/S do Amazon DocumentDB, ou converter seus clusters de banco de dados existentes com alguns cliques [Console de gerenciamento da AWS](https://console.aws.amazon.com/docdb/), com uma única alteração de parâmetro no [AWS Command Line Interface ()AWS CLI](https://aws.amazon.com/cli/) ou por meio dele. [AWS SDKs](https://aws.amazon.com/developer/tools/) Não é necessário tempo de inatividade ou reinicialização das instâncias durante ou após a modificação da configuração de armazenamento.

![\[Imagem: uma tabela descrevendo as diferenças entre o armazenamento padrão e o armazenamento otimizado do Amazon DocumentDB.\]](http://docs.aws.amazon.com/pt_br/documentdb/latest/developerguide/images/io-diagram-1.png)


## Criar um cluster otimizado para E/S
<a name="w2aac33c11c13c15"></a>



------
#### [ Using the Console de gerenciamento da AWS ]

Para criar ou modificar um cluster otimizado para E/S usando o Console de gerenciamento da AWS:

1. No console de gerenciamento do Amazon DocumentDB, em **Clusters**, escolha **Criar** ou selecione o cluster e escolha **Ações** e, em seguida, escolha **Modificar**.

1. Se você estiver criando um novo cluster, escolha **Cluster baseado em instância** na seção **Tipo de cluster** (essa é a opção padrão).  
![\[Imagem: uma captura de tela do console das opções de tipo de cluster.\]](http://docs.aws.amazon.com/pt_br/documentdb/latest/developerguide/images/create-cluster/cc-type.png)

1. Na seção **Configuração**, em **Configuração de armazenamento do cluster**, escolha **Amazon DocumentDB Otimizado para E/S**.  
![\[Imagem: uma captura de tela do console das opções de configuração de armazenamento em cluster.\]](http://docs.aws.amazon.com/pt_br/documentdb/latest/developerguide/images/storage-config-1.png)

1. Conclua a criação ou modificação do cluster e escolha **Criar cluster** ou **Modificar cluster**.

   Para obter o processo completo de criação de cluster, consulte [Criação de um cluster e de uma instância primária usando o Console de gerenciamento da AWS](db-cluster-create.md#db-cluster-create-con).

   Para obter o processo completo de modificação de cluster, consulte [Modificar um cluster do Amazon DocumentDB](db-cluster-modify.md).

------
#### [ Using the AWS CLI ]

Para criar um cluster otimizado para E/S usando a AWS CLI:

Nos exemplos a seguir, substitua cada um *user input placeholder* por suas próprias informações.

Para Linux, macOS ou Unix:

```
aws docdb create-db-cluster \
      --db-cluster-identifier sample-cluster \
      --engine docdb \
      --engine-version 5.0.0 \
      --storage-type iopt1 \
      --deletion-protection \
      --master-username username \
      --master-user-password password
```

Para Windows:

```
aws docdb create-db-cluster ^
      --db-cluster-identifier sample-cluster ^
      --engine docdb ^
      --engine-version 5.0.0 ^
      --storage-type iopt1 ^
      --deletion-protection ^
      --master-username username ^
      --master-user-password password
```

------

## Análise de custos para determinar a configuração de armazenamento
<a name="w2aac33c11c13c17"></a>

Com o Amazon DocumentDB, você tem a flexibilidade de escolher a configuração de armazenamento para todos os seus clusters de banco de dados. Para alocar adequadamente seus clusters entre o padrão e o otimizado para E/S, você pode monitorar seus custos do Amazon DocumentDB em termos de cluster. Para fazer isso, você pode adicionar tags aos clusters existentes, habilitar a marcação de alocação de custos em seu [painel do Gerenciamento de Faturamento e Custos da AWS](https://aws.amazon.com/pricing/) e analisar os custos de um determinado cluster no [AWS Cost Explorer Service](https://aws.amazon.com/aws-cost-management/aws-cost-explorer/). Para obter informações sobre análise de custos, consulte nosso blog [Usar tags de alocação de custos](https://aws.amazon.com/blogs/database/using-cost-allocation-tags-with-amazon-documentdb-with-mongodb-compatibility/).

# Determinar o status de um cluster
<a name="db-cluster-status"></a>

Você pode determinar o status de um cluster usando o Console de gerenciamento da AWS ou AWS CLI.

------
#### [ Using the Console de gerenciamento da AWS ]

Use o procedimento a seguir para ver o status do seu cluster Amazon DocumentDB usando o Console de gerenciamento da AWS

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

1. No painel de navegação, escolha **Clusters**.

1. Na coluna **Identificador de cluster**, encontre o nome do cluster desejado. Depois, para descobrir o status do cluster, leia essa linha até a coluna **Status**, conforme mostrado abaixo.  
![\[Captura de tela da página de clusters com exemplo de cluster mostrando o status ativo.\]](http://docs.aws.amazon.com/pt_br/documentdb/latest/developerguide/images/db-cluster-status-con.png)

------
#### [ Using the AWS CLI ]

Use a operação `describe-db-clusters` para ver o status do cluster do Amazon DocumentDB utilizando AWS CLI. 

O código a seguir descobre o status do cluster `sample-cluster`.

Para Linux, macOS ou Unix:

```
aws docdb describe-db-clusters \
    --db-cluster-identifier sample-cluster  \
    --query 'DBClusters[*].[DBClusterIdentifier,Status]'
```

Para Windows:

```
aws docdb describe-db-clusters ^
    --db-cluster-identifier sample-cluster  ^
    --query 'DBClusters[*].[DBClusterIdentifier,Status]'
```

A saída dessa operação é semelhante ao seguinte (formato JSON).

```
[
    [
        "sample-cluster",
        "available"
    ]
]
```

------

# Ciclo de vida do cluster do Amazon DocumentDB
<a name="db-cluster-life-cycle"></a>

O ciclo de vida de um cluster do Amazon DocumentDB inclui a criação, a descrição, a modificação e a exclusão do cluster. Esta seção fornece informações sobre como concluir esses processos. 

**Topics**
+ [Criação de um cluster](db-cluster-create.md)
+ [Descrever clusters](db-cluster-view-details.md)
+ [Modificar um cluster](db-cluster-modify.md)
+ [Determinar manutenção pendente](db-cluster-determine-pending-maintenance.md)
+ [Atualizar patch da versão do mecanismo de um cluster](db-cluster-version-upgrade.md)
+ [Interromper e iniciar um cluster](db-cluster-stop-start.md)
+ [Excluir um cluster](db-cluster-delete.md)

# Criar um cluster do Amazon DocumentDB
<a name="db-cluster-create"></a>

Um cluster do Amazon DocumentDB consiste em instâncias e em um volume de cluster que representa os dados para o mesmo. O volume do cluster é replicado de seis maneiras em três Zonas de Disponibilidade, como volume único e virtual. O cluster contém uma instância principal e, como opção, até 15 instâncias de réplica. 

As seções a seguir mostram como criar um cluster Amazon DocumentDB usando o Console de gerenciamento da AWS ou o. AWS CLI Em seguida, você pode adicionar instâncias de réplica adicionais para esse cluster. Quando o console é usado para criar o cluster do Amazon DocumentDB, uma instância primária é criada automaticamente ao mesmo tempo. Se você usar o AWS CLI para criar seu cluster Amazon DocumentDB, depois que o status do cluster estiver *disponível*, você deverá criar a instância primária para esse cluster.

## Pré-requisitos
<a name="db-cluster-create-prerequisites"></a>

Veja a seguir os pré-requisitos para a criação de um cluster do Amazon DocumentDB.

Se você não tiver um Conta da AWS, conclua as etapas a seguir para criar um.

**Para se inscrever em um Conta da AWS**

1. Abra a [https://portal.aws.amazon.com/billing/inscrição.](https://portal.aws.amazon.com/billing/signup)

1. Siga as instruções online.

   Parte do procedimento de inscrição envolve receber uma chamada telefônica ou uma mensagem de texto e inserir um código de verificação pelo teclado do telefone.

   Quando você se inscreve em um Conta da AWS, um *Usuário raiz da conta da AWS*é criado. O usuário-raiz tem acesso a todos os Serviços da AWS e recursos na conta. Como prática recomendada de segurança, atribua o acesso administrativo a um usuário e use somente o usuário-raiz para executar [tarefas que exigem acesso de usuário-raiz](https://docs.aws.amazon.com/IAM/latest/UserGuide/id_root-user.html#root-user-tasks).

### Pré-requisitos da VPC
<a name="db-cluster-create-prerequisites-vpc"></a>

É possível criar apenas um cluster do Amazon DocumentDB em uma Amazon Virtual Private Cloud (Amazon VPC). Seu Amazon VPC deve ter no mínimo uma sub-rede em pelo menos duas Zonas de Disponibilidade para que você possa usá-la com um cluster de banco de dados do Amazon DocumentDB. Ao distribuir suas instâncias de cluster por Zonas de Disponibilidade, você garante que as instâncias estejam disponíveis em seu cluster no improvável caso de ocorrer uma falha na Zona de Disponibilidade.

### Pré-requisitos de sub-rede
<a name="db-cluster-create-prerequisites-subnet-groups"></a>

Ao criar um cluster do Amazon DocumentDB, você deve escolher uma VPC e um grupo de sub-rede correspondente dentro dessa VPC para iniciar o seu cluster. Sub-redes determinam a Zona de Disponibilidade e o intervalo de IP dentro dela para executar uma instância. Para essa discussão, usaremos os termos *sub-rede* e *Zona de Disponibilidade* alternadamente. Um grupo de sub-redes é um conjunto nomeado de sub-redes (ou Zonas de Disponibilidade). Um grupo de sub-redes permite que você especifique as Zonas de Disponibilidade que deseja usar para executar instâncias do Amazon DocumentDB. Por exemplo, em um cluster com três instâncias, a fim de manter a disponibilidade alta, é recomendável que cada uma dessas instâncias seja provisionada em Zonas de Disponibilidade separadas. Dessa forma, se uma única Zona de Disponibilidade falhar, ela só afetará uma única instância.

As instâncias do Amazon DocumentDB podem ser provisionadas atualmente em até três Zonas de Disponibilidade. Mesmo que um grupo tenha mais de três sub-redes, você só pode usar três dessas sub-redes para criar um cluster do Amazon DocumentDB. Como resultado, é recomendável que, ao criar um grupo de sub-redes, você escolha somente as três sub-redes nas quais deseja implantar suas instâncias. No Leste dos EUA (Norte da Virgínia), seu grupo de sua sub-rede pode ter seis sub-redes (ou Zonas de Disponibilidade). No entanto, quando um cluster do Amazon DocumentDB é fornecido, o Amazon DocumentDB escolhe três dessas Zonas de Disponibilidade e as utiliza para fornecer instâncias. 

Por exemplo, suponha que, ao criar um cluster, o Amazon DocumentDB escolhe as Zonas de Disponibilidade \$11A, 1B e 1C\$1. Se você tentar criar uma instância na Zona de Disponibilidade \$11D\$1, a chamada de API não será bem-sucedida. Porém, se você optar por criar uma instância sem especificar uma Zona de Disponibilidade específica, o Amazon DocumentDB escolherá uma Zona de Disponibilidade em seu nome. O Amazon DocumentDB usa um algoritmo para balancear a carga das instâncias em todas as Zonas de Disponibilidade, para ajudar a alcançar alta disponibilidade. Por exemplo, se três instâncias forem fornecidas, por padrão, todas serão fornecidas em três Zonas de Disponibilidade, não em uma única Zona de Disponibilidade.

**Recomendações:**
+ A menos que você tenha um motivo específico, sempre crie um grupo de sub-rede com três sub-redes. Isso ajuda a garantir que clusters com três ou mais instâncias alcancem maior disponibilidade, pois as instâncias são provisionadas em três Zonas de Disponibilidade.
+ Sempre distribua instâncias em várias Zonas de Disponibilidade para obter alta disponibilidade. Nunca coloque todas as instâncias de um cluster em uma única Zona de Disponibilidade.
+ Como eventos de failover podem acontecer a qualquer momento, você não deve presumir que uma instância primária ou de réplica estará sempre em uma determinada Zona de Disponibilidade.

### Pré-requisitos adicionais
<a name="db-cluster-create-prerequisites-additional"></a>

Veja a seguir alguns pré-requisitos adicionais para criar um cluster do Amazon DocumentDB:
+ Se você estiver se conectando AWS usando credenciais AWS Identity and Access Management (IAM), sua conta do IAM deve ter políticas do IAM que concedam as permissões necessárias para realizar operações do Amazon DocumentDB.

  Se você estiver usando uma conta do IAM para acessar o console do Amazon DocumentDB, primeiro faça login Console de gerenciamento da AWS com sua conta do IAM. [Em seguida, acesse o console do Amazon DocumentDB em https://console.aws.amazon.com /docdb.](https://console.aws.amazon.com/docdb)
+ Se quiser personalizar os parâmetros de configuração do seu cluster, você deverá especificar um grupo de parâmetros do cluster e um grupo de parâmetros com as configurações de parâmetro obrigatórias. Para obter informações sobre como criar ou modificar um grupo de parâmetros de cluster ou um grupo de parâmetros, consulte [Gerenciando grupos de parâmetros de cluster do Amazon DocumentDB](cluster_parameter_groups.md).
+ Você deve determinar o número da TCP/IP porta que deseja especificar para seu cluster. Em algumas empresas, os firewalls bloqueiam conexões com as portas padrão do Amazon DocumentDB. Se o firewall da sua empresa bloquear a porta padrão, escolha outra porta para o cluster. Todas as instâncias em um cluster usam a mesma porta.

## Criação de um cluster e de uma instância primária usando o Console de gerenciamento da AWS
<a name="db-cluster-create-con"></a>

Os procedimentos a seguir descrevem como usar o console para iniciar um cluster do Amazon DocumentDB com uma ou mais instâncias.

### Criar um cluster: uso das configurações padrão
<a name="db-cluster-create-con-basic"></a>

**Para criar um cluster com instâncias usando as configurações padrão usando o Console de gerenciamento da AWS**

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

1. Se você quiser criar seu cluster em Região da AWS outra região que não seja o Leste dos EUA (Norte da Virgínia), escolha a Região na lista na seção superior direita do console.

1. No painel de navegação, selecione **Clusters** e, em seguida, **Criar**.
**dica**  
Caso não visualize o painel de navegação à esquerda da tela, selecione o ícone do menu (![\[Hamburger menu icon with three horizontal lines.\]](http://docs.aws.amazon.com/pt_br/documentdb/latest/developerguide/images/docdb-menu-icon.png)) no canto superior esquerdo da página.

1. Na página **Criar cluster Amazon DocumentDB**, complete o painel **Configuração**.

   1. **Identificador de cluster:** aceite o nome fornecido pelo Amazon DocumentDB ou insira um nome para o seu cluster, como, por exemplo, **sample-cluster**.

      Restrições de nomeação de cluster:
      + O comprimento é de [1 a 63] letras, números ou hífens. 
      + O primeiro caractere deve ser uma letra.
      + Não pode terminar com um hífen ou conter dois hifens consecutivos.
      + Deve ser exclusivo para todos os clusters no Amazon RDS, Neptune e Amazon DocumentDB por região. Conta da AWS

   1. **Versão do mecanismo** — aceite a versão padrão do mecanismo 5.0.0 ou, opcionalmente, escolha 8.0.0, 4.0.0 ou 3.6.0.

   1. **Classe da instância:** aceite o padrão `db.r5.large` ou escolha a classe da instância que deseja usar na lista.

   1. **Número de instâncias**— na lista, escolha o número de instâncias que você deseja criar com esse cluster. A primeira instância é a instância primária e todas as outras instâncias são instâncias de réplica somente leitura. É possível adicionar e excluir instâncias posteriormente, se necessário. Por padrão, um cluster do Amazon DocumentDB é iniciado com três instâncias (uma primária e duas réplicas).

1. Preencha a seção **Configuração de armazenamento do cluster**.

   Escolha **Amazon DocumentDB Padrão** ou **Amazon DocumentDB Otimizado para E/S**. Para obter mais informações, consulte [Configurações de armazenamento de cluster do Amazon DocumentDB](db-cluster-storage-configs.md).

1. Complete o painel **Autenticação**.

   1. **Nome de usuário**: insira um nome para o usuário principal. Para fazer login no cluster, você deve usar o nome do usuário principal.

      Restrições de nomenclatura de usuário principal:
      + O comprimento é de [1–63] caracteres alfanuméricos.
      + O primeiro caractere deve ser uma letra.
      + Não pode ser uma palavra reservada pelo mecanismo de banco de dados.

   1. Escolha uma das opções de senha a seguir:
      + **Gerenciado em AWS Secrets Manager** —Escolha essa opção se quiser AWS Secrets Manager gerenciar automaticamente sua senha de usuário principal.

        Se você escolher essa opção, configure a chave do KMS criando sua própria chave ou usando uma chave criada pelo Secrets Manager.
      + **Autogerenciado**: escolha essa opção se quiser autogerenciar sua senha de usuário principal. Se você escolher essa opção, insira uma senha para o usuário principal e, em seguida, confirme-a. Para fazer login no cluster, você deve usar a senha do usuário principal.

        Restrições de senha:
        + O comprimento é de [8–100] caracteres ASCII imprimíveis.
        + Pode usar quaisquer caracteres ASCII imprimíveis, exceto:
          + **/** (barra)
          + **"** (aspas duplas)
          + **@** (arroba)

1. Na parte inferior da tela, escolha uma das seguintes opções:
   + Para criar o cluster agora, escolha **Criar cluster**.
   + Para não criar o cluster, escolha **Cancelar**.
   + Para continuar a configurar o cluster antes de criá-lo, escolha **Mostrar configurações adicionais** e, em seguida, [Criar um cluster: configurações adicionais](#db-cluster-create-con-additional-configs).

     As configurações incluídas na seção **Configurações adicionais** são as seguintes:
     + **Configurações de rede**— o padrão é usar o grupo de segurança da VPC `default`.
     + **Opções do cluster**— o padrão é utilizar a porta 27017 e o grupo parâmetro padrão.
     + **Criptografia**— o padrão é habilitar a criptografia usando a chave `(default) aws/rds`.
**Importante**  
Depois que um cluster é criptografado, ele não pode ser descriptografado.
     + **Backup**— o padrão é reter os backups por 1 dia e permitir que o Amazon DocumentDB selecione a janela de backup.
     + **Exportações de registros** — o padrão é não exportar registros de auditoria para o CloudWatch Logs.
     + **Manutenção**— o padrão é permitir que o Amazon DocumentDB selecione a janela de manutenção.
     + **Proteção contra exclusão**— protege o seu cluster contra a exclusão acidental. O padrão para cluster criado usando o console é *habilitado*.

     Se você aceitar os configurações padrão agora, poderá alterar a maioria delas posteriormente modificando o cluster.

1. Habilite a conexão de entrada para o grupo de segurança do cluster.

   Se não alterou as configurações padrão do seu cluster, você criou um cluster usando o grupo de segurança padrão para a VPC padrão na região determinada. Para conectar-se ao Amazon DocumentDB, você deve habilitar conexões de entrada na porta 27017 (ou na porta de sua escolha) para o grupo de segurança do cluster.

   **Para adicionar uma conexão de entrada ao seu grupo de segurança do cluster**

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

   1. Na seção **Recursos** da janela principal, escolha **Grupos de segurança**.  
![\[Imagem: lista de recursos destacando a opção de link Grupos de Segurança.\]](http://docs.aws.amazon.com/pt_br/documentdb/latest/developerguide/images/docdb-ec2-security-groups.png)

   1. Na lista de grupos de segurança, localize o grupo de segurança que você usou ao criar o cluster (é mais provável o grupo de segurança *padrão*) e escolha a caixa à esquerda do nome do grupo de segurança.  
![\[Imagem: lista de grupos de segurança destacando um grupo de segurança com a caixa selecionada.\]](http://docs.aws.amazon.com/pt_br/documentdb/latest/developerguide/images/docdb-ec2-default-sg.png)

   1. No menu **Ações**, escolha **Editar regras de entrada** e, em seguida, escolha ou insira as restrições de regras.

      1. **Tipo**— na lista, escolha o protocolo para abrir para o tráfego de rede.

      1. **Protocolo**— na lista, escolha o tipo de protocolo.

      1. **Intervalo de porta**— para uma regra personalizada, insira um número ou um intervalo de porta. Certifique-se de que o número ou o intervalo de porta inclui a porta que você especificou quando criou o cluster (padrão: 27017).

      1. **Origem**— especifica o tráfego que pode alcançar sua instância. Na lista, escolha a origem do tráfego. Se você escolher **Personalizado**, especifique um único endereço IP ou um intervalo de endereços IP em notação CIDR (por exemplo, 203.0.113.5/32).

      1. **Descrição**— insira uma descrição para essa regra.

      1. Quando terminar de criar a regra, escolha **Salvar**.

### Criar um cluster: configurações adicionais
<a name="db-cluster-create-con-additional-configs"></a>

Se você deseja aceitar as configurações padrão para o seu cluster, pode ignorar as etapas a seguir e escolher **Criar cluster**. 

1. Conclua o painel **Configurações de rede**.  
![\[Captura de tela mostrando o painel de configurações de rede e as etapas para definir as configurações de rede.\]](http://docs.aws.amazon.com/pt_br/documentdb/latest/developerguide/images/create-db-cluster-console-network-settings.png)

   1. **Nuvem privada virtual (VPC)**— na lista, escolha a nuvem privada virtual Amazon que deseja iniciar nesse cluster.

   1. **Grupo de sub-rede**— na lista, escolha o grupo de sub-rede que deseja usar para esse cluster.

   1. **Grupos de segurança da VPC**— na lista, escolha o grupo de segurança da VPC para esse cluster.

1. Conclua o painel **Opções do cluster**.  
![\[Captura de tela mostrando o painel de opções do cluster com as etapas para definir as configurações do cluster.\]](http://docs.aws.amazon.com/pt_br/documentdb/latest/developerguide/images/create-db-cluster-console-cluster-options.png)

   1. **Porta do banco de dados** — Use as setas para cima e para baixo para definir a TCP/IP porta que os aplicativos usarão para se conectar à sua instância.

   1. **Grupo de parâmetros do cluster**— na lista de grupos de parâmetros, escolha o grupo de parâmetros para esse cluster.

1. Preencha o painel **Criptografia**.  
![\[Captura de tela do painel de criptografia mostrando as etapas para configurar a criptografia do cluster.\]](http://docs.aws.amazon.com/pt_br/documentdb/latest/developerguide/images/encrypt-at-rest.png)

   1. **E ncryption-at-rest** — Escolha uma das seguintes opções:
      + **Habilitar criptografia**— padrão. Todos os dados em repouso são criptografados. Se optar por criptografar seus dados, você não poderá desfazer essa ação.
      + **Desabilitar criptografia**— seus dados não estão criptografados.

   1. **AWS Chave KMS** — Isso só está disponível se você estiver criptografando seus dados. Na lista, escolha a chave que você deseja usar para criptografar os dados desse cluster. O padrão é `(default) aws/rds`.

      Se você escolher **Inserir o ARN da chave**, deverá inserir o nome do recurso da Amazon (ARN) da chave.

1. Preencha o painel **Backup**.  
![\[Captura de tela do painel Backup mostrando as etapas para configurar a janela de backup do cluster.\]](http://docs.aws.amazon.com/pt_br/documentdb/latest/developerguide/images/create-db-cluster-console-backup.png)

   1. **Período de retenção de backup**— na lista, selecione o número de dias para manter os backups automáticos desse cluster antes de excluí-los.

   1. **Janela de backup**— defina o tempo e duração diários durante os quais o Amazon DocumentDB fará backups desse cluster.

      1. **Hora de início**: na primeira lista, escolha a hora de início (UTC) para seus backups automáticos. Na segunda lista, escolha o minuto da hora em que você deseja que os backups automáticos sejam iniciados.

      1. **Duração**— na lista, selecione a quantidade de horas a serem alocadas na criação de backups automáticos.

1. Preencha o painel **Exportações de registros** selecionando os tipos de registros que você deseja exportar para o CloudWatch Logs.  
![\[Captura de tela do painel Exportações de log mostrando as etapas para configurar o registro em log do DML do cluster.\]](http://docs.aws.amazon.com/pt_br/documentdb/latest/developerguide/images/create-db-cluster-console-log-exports.png)
   + **Registros de auditoria** — Selecione essa opção para permitir a exportação de registros de auditoria para o Amazon CloudWatch Logs. Se você selecionar **Logs de auditoria**, deverá habilitar `audit_logs` no grupo de parâmetros personalizado do cluster. Para obter mais informações, consulte [Auditar eventos do Amazon DocumentDB](event-auditing.md).
   + **Registros do profiler** — Selecione essa opção para permitir a exportação dos logs do profiler da operação para o Amazon Logs. CloudWatch Se você selecionar **Logs do profiler**, deverá também modificar os seguintes parâmetros no grupo de parâmetros personalizado do cluster:
     + `profiler`— defina como `enabled`.
     + `profiler_threshold_ms`— defina como um valor `[0-INT_MAX]` para configurar o limite para operações de criação de perfil.
     + `profiler_sampling_rate`— defina como um valor `[0.0-1.0]` para configurar o percentual de operações lentas para perfilar.

     Para obter mais informações, consulte [Definir o perfil das operações do Amazon DocumentDB](profiling.md).

1. Complete o painel **Manutenção**.  
![\[Captura de tela do painel Manutenção mostrando as etapas para configurar a janela de manutenção do cluster.\]](http://docs.aws.amazon.com/pt_br/documentdb/latest/developerguide/images/create-db-cluster-console-maintenance.png)

   1. Selecione uma das seguintes opções
     + **Selecionar janela**— você pode especificar o dia da semana, a hora de início em UTC e a duração do Amazon DocumentDB para executar a manutenção do seu cluster.

       1. **Dia de início**— na lista, escolha o dia da semana para início da manutenção do cluster.

       1. **Hora de início**: nas listas, escolha a hora e minuto (UTC) para iniciar a manutenção.

       1. **Duração**— na lista, escolha quanto tempo alocar para a manutenção do cluster. Se a manutenção não puder ser concluída no horário especificado, o processo de manutenção continuará após o horário especificado, até que seja concluída.
     + **Sem preferência**— o Amazon DocumentDB seleciona o dia da semana, o horário de início e a duração para executar a manutenção.

1. Se quiser adicionar uma ou mais tags a esse cluster, preencha o painel **Tags**.  
![\[Captura de tela da caixa de seleção Habilitar proteção contra exclusão, que está selecionada.\]](http://docs.aws.amazon.com/pt_br/documentdb/latest/developerguide/images/create-db-cluster-console-tags.png)

   Para cada tag que quiser adicionar ao cluster, repita as etapas a seguir. É possível ter até 10 em um cluster.

   1. Selecione **Adicionar tags**.

   1. Digite a **Chave** da tag.

   1. Opcionalmente, digite o **Valor** da tag.

   Para remover uma tag, selecione **Remover tag**.

1. **Proteção contra exclusão** está habilitada por padrão ao criar um cluster usando o console. Para desabilitar a proteção contra exclusão, desmarque **Habilitar proteção contra exclusão**. Quando habilitada, a proteção contra exclusão impede que um cluster seja excluído. Para excluir um cluster protegido contra a exclusão, primeiro é necessário modificar o cluster para desabilitar a proteção contra exclusão.  
![\[Captura de tela da caixa de seleção Habilitar proteção contra exclusão, que está selecionada.\]](http://docs.aws.amazon.com/pt_br/documentdb/latest/developerguide/images/create-db-cluster-console-deletion-protection.png)

   Para obter mais informações sobre a proteção contra exclusão, consulte [Excluir um cluster do Amazon DocumentDB](db-cluster-delete.md).

1. Para criar o cluster, escolha **Criar cluster**. Caso contrário, escolha **Cancelar**.

## Criando um cluster usando o AWS CLI
<a name="db-cluster-create-cli"></a>

Os procedimentos a seguir descrevem como usar o AWS CLI para iniciar um cluster do Amazon DocumentDB e criar uma réplica do Amazon DocumentDB.

**Parâmetros**
+ **--db-cluster-identifier**—Obrigatório. Uma string com letras minúsculas que identifica esse cluster.    
[\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/pt_br/documentdb/latest/developerguide/db-cluster-create.html)
+ **--engine**—Obrigatório. Deve ser **docdb**.
+ **--deletion-protection \$1 --no-deletion-protection**— opcional. Quando a proteção contra exclusão estiver habilitada, ela impede que um cluster seja excluído. Quando você usa o AWS CLI, a configuração padrão é ter a proteção contra exclusão desativada.

  Para obter mais informações sobre a proteção contra exclusão, consulte [Excluir um cluster do Amazon DocumentDB](db-cluster-delete.md).
+ **--storage-type standard \$1 iopt1**—Opcional. Padrão: **standard**. Configuração de armazenamento do cluster. Os valores válidos são `standard` (Padrão) ou `iopt1` (Otimizado para E/S).
+ **--master-username**—Obrigatório. O nome do usuário usado para autenticar o usuário.    
[\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/pt_br/documentdb/latest/developerguide/db-cluster-create.html)
+ **--master-user-password**—Opcional. A senha do usuário usada para autenticar o usuário.    
[\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/pt_br/documentdb/latest/developerguide/db-cluster-create.html)
+ **--manage-master-user-password**— opcional. O Amazon DocumentDB gera a senha do usuário principal e a gerencia durante todo o ciclo de vida no Secrets Manager.

Para ver parâmetros adicionais, consulte [CreateDBCluster](API_CreateDBCluster.md).

**Para iniciar um cluster do Amazon DocumentDB usando o AWS CLI**

Para criar um cluster Amazon DocumentDB, chame o. `create-db-cluster` AWS CLI O AWS CLI comando a seguir cria um cluster Amazon DocumentDB chamado `sample-cluster` com a proteção contra exclusão ativada. Para obter mais informações sobre a proteção contra exclusão, consulte [Excluir um cluster do Amazon DocumentDB](db-cluster-delete.md).

Além disso, `--engine-version` é um parâmetro opcional padrão para a versão mais recente do mecanismo principal. A versão padrão atual do mecanismo é 5.0.0 (observação: o Amazon DocumentDB 8.0 está disponível, mas deve ser explicitamente especificado). Quando novas versões principais do mecanismo forem lançadas, a versão padrão `--engine-version` será atualizada para refletir a última versão principal do mecanismo. Como resultado, para cargas de trabalho de produção, especialmente aquelas que dependem de scripts, automação ou CloudFormation modelos, recomendamos que você especifique explicitamente a `--engine-version` para a versão principal pretendida.

**nota**  
Se um `db-subnet-group-name` ou `vpc-security-group-id` não forem especificados, o Amazon DocumentDB usará o grupo de sub-rede padrão e o grupo de segurança do Amazon VPC para a região em questão.

Para Linux, macOS ou Unix:

```
aws docdb create-db-cluster \
      --db-cluster-identifier sample-cluster \
      --engine docdb \
      --engine-version 5.0.0 \
      --deletion-protection \
      --master-username masteruser \
      --master-user-password password
```

Para Windows:

```
aws docdb create-db-cluster ^
      --db-cluster-identifier sample-cluster ^
      --engine docdb ^
      --engine-version 5.0.0 ^
      --deletion-protection ^
      --master-username masteruser ^
      --master-user-password password
```

A saída dessa operação é semelhante ao seguinte (formato JSON).

```
{
    "DBCluster": {
        "StorageEncrypted": false,
        "DBClusterMembers": [],
        "Engine": "docdb",
        "DeletionProtection" : "enabled",
        "ClusterCreateTime": "2018-11-26T17:15:19.885Z",
        "DBSubnetGroup": "default",
        "EngineVersion": "5.0.0",
        "MasterUsername": "masteruser",
        "BackupRetentionPeriod": 1,
        "DBClusterArn": "arn:aws:rds:us-east-1:123456789012:cluster:sample-cluster",
        "DBClusterIdentifier": "sample-cluster",
        "MultiAZ": false,
        "DBClusterParameterGroup": "default.docdb5.0",
        "PreferredBackupWindow": "09:12-09:42",
        "DbClusterResourceId": "cluster-KQSGI4MHU4NTDDRVNLNTU7XVAY",
        "PreferredMaintenanceWindow": "tue:04:17-tue:04:47",
        "Port": 27017,
        "Status": "creating",
        "ReaderEndpoint": "sample-cluster.cluster-ro-sfcrlcjcoroz.us-east-1.docdb.amazonaws.com",
        "AssociatedRoles": [],
        "HostedZoneId": "ZNKXTT8WH85VW",
        "VpcSecurityGroups": [
            {
                "VpcSecurityGroupId": "sg-77186e0d",
                "Status": "active"
            }
        ],
        "AvailabilityZones": [
            "us-east-1a",
            "us-east-1c",
            "us-east-1e"
        ],
        "Endpoint": "sample-cluster.cluster-sfcrlcjcoroz.us-east-1.docdb.amazonaws.com"
    }
}
```

Leva alguns minutos para criar o cluster. Você pode usar o Console de gerenciamento da AWS ou AWS CLI para monitorar o status do seu cluster. Para obter mais informações, consulte [Monitoramento do status de um cluster do Amazon DocumentDB](monitoring_docdb-cluster_status.md). 

**Importante**  
Quando você usa o AWS CLI para criar um cluster Amazon DocumentDB, nenhuma instância é criada. Consequentemente, é necessário criar explicitamente uma instância principal e qualquer instância de réplica de que precise. Você pode usar o console ou AWS CLI criar as instâncias. Para obter mais informações, consulte [Adicionar uma instância do Amazon DocumentDB a um cluster](db-instance-add.md). 

Para mais informações, consulte [https://docs.aws.amazon.com/documentdb/latest/developerguide/API_CreateDBCluster.html](https://docs.aws.amazon.com/documentdb/latest/developerguide/API_CreateDBCluster.html) na *Referência de API do Amazon DocumentDB*. 

# Descrever Clusters do Amazon DocumentDB
<a name="db-cluster-view-details"></a>

Você pode usar o Amazon DocumentDB Management Console ou o AWS CLI para ver detalhes como endpoints de conexão, grupos de segurança e grupos de parâmetros relacionados aos seus clusters do Amazon DocumentDB. VPCs

Para saber mais, consulte:
+ [Monitoramento do status de um cluster do Amazon DocumentDB](monitoring_docdb-cluster_status.md)
+ [Localizar os endpoints de um cluster](db-cluster-endpoints-find.md)

------
#### [ Using the Console de gerenciamento da AWS ]

Use o procedimento a seguir para visualizar os detalhes de um cluster especificado do Amazon DocumentDB usando o console.

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

1. No painel de navegação, escolha **Clusters**.
**dica**  
Caso não visualize o painel de navegação à esquerda da tela, selecione o ícone do menu (![\[Hamburger menu icon with three horizontal lines.\]](http://docs.aws.amazon.com/pt_br/documentdb/latest/developerguide/images/docdb-menu-icon.png)) no canto superior esquerdo da página.

1. Na lista de clusters, escolha o nome do cluster do qual você deseja ver os detalhes. As informações sobre o cluster estão organizadas nos seguintes agrupamentos:
   + **Resumo** — informações gerais sobre o cluster, incluindo a versão do mecanismo, o status do cluster, a manutenção pendente e o status do grupo de parâmetros.
   + **Conectividade e Segurança**: a seção **Conectar** lista os endpoints de conexão para conectar-se a este cluster, com o shell do mongo ou uma aplicação. A seção **Grupos de segurança** lista os grupos de segurança associados a esse cluster, suas descrições e ID da VPC. 
   + **Configuração**: a seção **Detalhes do cluster** lista detalhes sobre o cluster, como nome do recurso da Amazon (ARN), o endpoint e o grupo de parâmetros do cluster. Ela também lista as informações de backup do cluster, os detalhes de manutenção e as configurações de segurança e de rede. A seção **Instâncias de cluster** lista as instâncias que pertencem a esse cluster com a função de cada instância e o status do grupo de parâmetros do cluster.
   + **Monitoramento** — As métricas do Amazon CloudWatch Logs para esse cluster. Para obter mais informações, consulte [Monitorando o Amazon DocumentDB com CloudWatch](cloud_watch.md).
   + **Eventos e tags** — a seção **Eventos recentes** lista os eventos recentes desse cluster. O Amazon DocumentDB mantém um registro de eventos que se relacionam a seus clusters, instâncias, capturas de tela, grupos de segurança e grupos de parâmetros do cluster. Essas informações incluem a data, a hora e a mensagem associadas a cada evento. A seção **Tags** lista as tags anexadas a este cluster.

------
#### [ Using the AWS CLI ]

Para visualizar os detalhes dos seus clusters do Amazon DocumentDB usando o AWS CLI, use o `describe-db-clusters` comando conforme mostrado nos exemplos abaixo. Para obter mais informações, consulte [https://docs.aws.amazon.com/documentdb/latest/developerguide/API_DescribeDBClusters.html](https://docs.aws.amazon.com/documentdb/latest/developerguide/API_DescribeDBClusters.html) na *Referência de API para gerenciamento de recursos do Amazon DocumentDB*. 

**nota**  
Para determinados atributos de gerenciamento, como o gerenciamento do ciclo de vida de cluster e instâncias, o Amazon DocumentDB aproveita a tecnologia operacional compartilhada com o Amazon RDS. O filtro `filterName=engine,Values=docdb` retorna somente clusters do Amazon DocumentDB. 

**Example**  
**Exemplo 1: listar todos os clusters do Amazon DocumentDB**  
O AWS CLI código a seguir lista os detalhes de todos os clusters do Amazon DocumentDB em uma região.   

```
aws docdb describe-db-clusters --filter Name=engine,Values=docdb
```
A saída dessa operação é semelhante a seguinte.  

```
{
    "DBClusters": [
        {
            "AvailabilityZones": [
                "us-east-1c",
                "us-east-1b",
                "us-east-1a"
            ],
            "BackupRetentionPeriod": 1,
            "DBClusterIdentifier": "sample-cluster-1",
            "DBClusterParameterGroup": "sample-parameter-group",
            "DBSubnetGroup": "default",
            "Status": "available",
            ...
        },
        {
            "AvailabilityZones": [
                "us-east-1c",
                "us-east-1b",
                "us-east-1a"
            ],
            "BackupRetentionPeriod": 1,
            "DBClusterIdentifier": "sample-cluster-2",
            "DBClusterParameterGroup": "sample-parameter-group",
            "DBSubnetGroup": "default",
            "Status": "available",
            ...
        },
        {
            "AvailabilityZones": [
                "us-east-1c",
                "us-east-1b",
                "us-east-1a"
            ],
            "BackupRetentionPeriod": 1,
            "DBClusterIdentifier": "sample-cluster-3",
            "DBClusterParameterGroup": "sample-parameter-group",
            "DBSubnetGroup": "default",
            "Status": "available",
            ...
        }
    ]
}
```

**Example**  
**Exemplo 2: listar todos os detalhes de um cluster especificado do Amazon DocumentDB**  
O AWS CLI código a seguir lista os detalhes do cluster`sample-cluster`.  
Para Linux, macOS ou Unix:  

```
aws docdb describe-db-clusters \
   --filter Name=engine,Values=docdb \
   --db-cluster-identifier sample-cluster
```
Para Windows:  

```
aws docdb describe-db-clusters ^
   --filter Name=engine,Values=docdb ^
   --db-cluster-identifier sample-cluster
```
A saída dessa operação é semelhante à seguinte.  

```
{
    "DBClusters": [
        {
            "AllocatedStorage": 1,
            "AvailabilityZones": [
                "us-east-1c",
                "us-east-1a",
                "us-east-1d"
            ],
            "BackupRetentionPeriod": 2,
            "DBClusterIdentifier": "sample-cluster",
            "DBClusterParameterGroup": "sample-parameter-group",
            "DBSubnetGroup": "default",
            "Status": "available",
            "EarliestRestorableTime": "2023-11-07T22:34:08.148000+00:00",
            "Endpoint": "sample-cluster.node.us-east-1.amazon.com",
            "ReaderEndpoint": "sample-cluster.node.us-east-1.amazon.com",
            "MultiAZ": false,
            "Engine": "docdb",
            "EngineVersion": "5.0.0",
            "LatestRestorableTime": "2023-11-10T07:21:16.772000+00:00",
            "Port": 27017,
            "MasterUsername": "chimeraAdmin",
            "PreferredBackupWindow": "22:22-22:52",
            "PreferredMaintenanceWindow": "sun:03:01-sun:03:31",
            "ReadReplicaIdentifiers": [],
            "DBClusterMembers": [
                {
                    "DBInstanceIdentifier": "sample-instance-1",
                    "IsClusterWriter": true,
                    "DBClusterParameterGroupStatus": "in-sync",
                    "PromotionTier": 1
                },
                {
                    "DBInstanceIdentifier": "sample-instance-2",
                    "IsClusterWriter": true,
                    "DBClusterParameterGroupStatus": "in-sync",
                    "PromotionTier": 1
                },
                
            ],
            "VpcSecurityGroups": [
                {
                    "VpcSecurityGroupId": "sg-9084c2ec",
                    "Status": "active"
                }
            ],
            "HostedZoneId": "Z06853723JYKYBXTJ49RB",
            "StorageEncrypted": false,
            "DbClusterResourceId": "cluster-T4LGLANHVAPGQYYULWUDKLVQL4",
            "DBClusterArn": "arn:aws:rds:us-east-1:123456789012:cluster:sample-cluster",
            "AssociatedRoles": [],
            "IAMDatabaseAuthenticationEnabled": false,
            "ClusterCreateTime": "2023-11-06T18:05:41.568000+00:00",
            "EngineMode": "provisioned",
            "DeletionProtection": false,
            "HttpEndpointEnabled": false,
            "CopyTagsToSnapshot": false,
            "CrossAccountClone": false,
            "DomainMemberships": [],
            "TagList": [],
            "StorageType": "iopt1",
            "AutoMinorVersionUpgrade": false,
            "NetworkType": "IPV4",
            "IOOptimizedNextAllowedModificationTime": "2023-12-07T18:05:41.580000+00:00"
        }
    ]
}
```

**Example**  
**Exemplo 3: listar os detalhes específicos de um cluster Amazon DocumentDB**  
Para listar um subconjunto dos detalhes dos clusters usando o AWS CLI, adicione um `--query` que especifique quais membros do cluster a `describe-db-clusters` operação deve listar. O parâmetro `--db-cluster-identifier` é o identificador do cluster específico do qual você deseja exibir os detalhes. Para obter mais informações, consulte [Como Filtrar a Saída com a Opção `--query`](https://docs.aws.amazon.com/cli/latest/userguide/cli-usage-output.html#controlling-output-filter) no * Guia de Usuário AWS Command Line Interface *.   
O exemplo a seguir lista as instâncias em um cluster do Amazon DocumentDB.  
Para Linux, macOS ou Unix:  

```
aws docdb describe-db-clusters \
    --filter Name=engine,Values=docdb \
    --db-cluster-identifier sample-cluster \
    --query 'DBClusters[*].[DBClusterMembers]'
```
Para Windows:  

```
aws docdb describe-db-clusters ^
    --filter Name=engine,Values=docdb ^
    --db-cluster-identifier sample-cluster ^
    --query 'DBClusters[*].[DBClusterMembers]'
```
A saída dessa operação é semelhante à seguinte.  

```
[
    [
        [
            {
                "DBInstanceIdentifier": "sample-instance-1",
                "IsClusterWriter": true,
                "DBClusterParameterGroupStatus": "in-sync",
                "PromotionTier": 1
            },
            {
                "DBInstanceIdentifier": "sample-instance-2",
                "IsClusterWriter": false,
                "DBClusterParameterGroupStatus": "in-sync",
                "PromotionTier": 1
            }
        ]
    ]
]
```

------

# Modificar um cluster do Amazon DocumentDB
<a name="db-cluster-modify"></a>

Para modificar um cluster, o mesmo deve estar no estado *disponível*. Você não pode modificar um cluster interrompido. Se o cluster for interrompido, primeiro inicie-o, aguarde até que fique *disponível* e faça as modificações desejadas. Para obter mais informações, consulte [Interromper e iniciar um cluster do Amazon DocumentDB](db-cluster-stop-start.md). 

------
#### [ Using the Console de gerenciamento da AWS ]

Use o procedimento a seguir para modificar um cluster Amazon DocumentDB específico usando o console.

**Para modificar um cluster do Amazon DocumentDB**

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

1. No painel de navegação, escolha **Clusters**.
**dica**  
Caso não visualize o painel de navegação à esquerda da tela, selecione o ícone do menu (![\[Hamburger menu icon with three horizontal lines.\]](http://docs.aws.amazon.com/pt_br/documentdb/latest/developerguide/images/docdb-menu-icon.png)) no canto superior esquerdo da página.

1. Especifique o cluster que você deseja modificar escolhendo o botão à esquerda do nome do cluster.

1. Escolha **Ações** e, em seguida, **Modificar**.

1. No painel **Modificar cluster: <nome-do-cluster>**, faça as alterações desejadas. É possível fazer alterações nas seguintes áreas:
   + **Especificações do cluster**: o nome, os grupos de segurança e o gerenciamento de credenciais do cluster.
   + **Configuração de armazenamento do cluster** — o modo de armazenamento de dados do cluster. Escolha entre a configuração Padrão e Otimizado para E/S.
   + **Opções do cluster**— a porta e o grupo de parâmetros do cluster.
   + **Backup**— o período de retenção e a janela de backup do cluster.
   + **Exportações de log**— habilite ou desabilite exportação dos logs de auditoria ou de profiler.
   + **Manutenção**— defina a janela de manutenção do cluster.
   + **Proteção contra exclusão**— habilite ou desabilite a proteção contra exclusão no cluster. Por padrão, a proteção contra exclusão está habilitada.

1. Ao concluir, escolha **Continuar** para ver um resumo das alterações.

1. Se estiver satisfeito com suas alterações, poderá escolher **Modificar cluster** para modificar o cluster. Como alternativa, você pode escolher **Voltar** ou **Cancelar** para editar ou cancelar as alterações, respectivamente. 

Levará alguns minutos para que suas alterações sejam aplicadas. É possível usar o cluster somente quando seu status for *disponível*. É possível monitorar o status do cluster usando o console ou a AWS CLI. Para obter mais informações, consulte [Monitoramento do status de um cluster do Amazon DocumentDB](monitoring_docdb-cluster_status.md). 

------
#### [ Using the AWS CLI ]

Use a operação `modify-db-cluster` para modificar o cluster especificado usando a AWS CLI. Para mais informações, consulte [https://docs.aws.amazon.com/documentdb/latest/developerguide/API_ModifyDBCluster.html](https://docs.aws.amazon.com/documentdb/latest/developerguide/API_ModifyDBCluster.html) na *Referência de API do Amazon DocumentDB*.

**Parâmetros**
+ **--db-cluster-identifier**—Obrigatório. O identificador do cluster do Amazon DocumentDB que você modificará.
+ **--backup-retention-period**— opcional. O número de dias durante os quais os backups automatizados são retidos. Os valores válidos são 1–35.
+ **--storage-type**— opcional. Configuração de armazenamento do cluster. Os valores válidos são `standard` (Padrão) ou `iopt1` (Otimizado para E/S).
+ **--db-cluster-parameter-group-name**— opcional. O nome do grupo de parâmetros do cluster a ser usado.
+ **--manage-master-user-password**— opcional. O Amazon DocumentDB gera a senha do usuário principal e a gerencia durante todo o ciclo de vida no Secrets Manager.
+ **--rotate-master-user-password**—Opcional. O Secrets Manager gera uma nova versão secreta para o segredo existente. A nova versão do segredo contém a nova senha do usuário principal. O Amazon DocumentDB altera a senha do usuário principal do cluster para corresponder à senha para a nova versão do segredo.

  É necessário especificar a opção **--apply-immediately** ao alternar a senha principal.
+ **--master-user-password**—Opcional. A nova senha para o usuário do banco de dados primário.

  Restrições de senha:
  + O comprimento é de [8–100] caracteres ASCII imprimíveis.
  + Pode usar quaisquer caracteres ASCII imprimíveis, exceto:
    + **/** (barra)
    + **"** (aspas duplas)
    + **@** (arroba)
+ **--new-db-cluster-identifier**— opcional. O novo identificador do cluster durante a renomeação de um cluster. Esse valor é armazenado como uma string em minúsculas.

  Restrições de nomenclatura:
  + O comprimento é de [1 a 63] letras, números ou hifens.
  + O primeiro caractere deve ser uma letra.
  + Não pode terminar com um hífen ou conter dois hifens consecutivos.
  + Deve ser exclusivo para todos os clusters do Amazon RDS, Amazon Neptune e Amazon DocumentDB por região. Conta da AWS
+ **--preferred-backup-window**— opcional. O período diário durante o qual backups automatizados são criados, em formato Tempo Universal Coordenado (UTC).
  + Formato: `hh24:mm-hh24:mm`.
+ **--preferred-maintenance-window**— opcional. O intervalo de tempo semanal durante o qual pode ocorrer manutenção do sistema, em UTC.
  + Formato: `ddd:hh24:mm-ddd:hh24:mm`.
  + Dias válidos: `Sun`, `Mon`, `Tue`, `Wed`, `Thu`, `Fri` e `Sat`.
+ **--deletion-protection** ou **--no-deletion-protection**—opcional. Se a proteção contra exclusão deve ser habilitada neste cluster. A proteção contra exclusão impede que um cluster seja excluído acidentalmente até que o cluster seja modificado para desabilitar a proteção contra exclusão. Para obter mais informações, consulte [Excluir um cluster do Amazon DocumentDB](db-cluster-delete.md). 
+ **--apply-immediately** ou **--no-apply-immediately**—use `--apply-immediately` para aplicar a alteração imediatamente. Use `--no-apply-immediately` para aplicar a alteração durante a próxima janela de manutenção do cluster.

**Example**  
O código a seguir altera o período de retenção de backup para o cluster `sample-cluster`.  
Para Linux, macOS ou Unix:  

```
aws docdb modify-db-cluster \
       --db-cluster-identifier sample-cluster \
       --apply-immediately \
       --backup-retention-period 7
```
Para Windows:  

```
aws docdb modify-db-cluster ^
       --db-cluster-identifier sample-cluster ^
       --apply-immediately ^
       --backup-retention-period 7
```
A saída dessa operação é semelhante à seguinte.  

```
{
    "DBCluster": {
        "BackupRetentionPeriod": 7,
        "DbClusterResourceId": "cluster-VDP53QEWST7YHM36TTXOPJT5YE",
        "Status": "available",
        "DBClusterMembers": [
            {
                "PromotionTier": 1,
                "DBClusterParameterGroupStatus": "in-sync",
                "DBInstanceIdentifier": "sample-cluster-instance",
                "IsClusterWriter": true
            }
        ],
        "ReadReplicaIdentifiers": [],
        "AvailabilityZones": [
            "us-east-1b",
            "us-east-1c",
            "us-east-1a"
        ],
        "ReaderEndpoint": "sample-cluster.cluster-ro-ctevjxdlur57.us-east-1.rds.amazonaws.com",
        "DBClusterArn": "arn:aws:rds:us-east-1:123456789012:cluster:sample-cluster",
        "PreferredMaintenanceWindow": "sat:09:51-sat:10:21",
        "EarliestRestorableTime": "2018-06-17T00:06:19.374Z",
        "StorageEncrypted": false,
        "MultiAZ": false,
        "AssociatedRoles": [],
        "MasterUsername": "<your-master-user-name>",
        "DBClusterIdentifier": "sample-cluster",
        "VpcSecurityGroups": [
            {
                "Status": "active",
                "VpcSecurityGroupId": "sg-77186e0d"
            }
        ],
        "HostedZoneId": "Z2SUY0A1719RZT",
        "LatestRestorableTime": "2018-06-18T21:17:05.737Z",
        "AllocatedStorage": 1,
        "Port": 27017,
        "Engine": "docdb",
        "DBClusterParameterGroup": "default.docdb3.4",
        "Endpoint": "sample-cluster.cluster-ctevjxdlur57.us-east-1.rds.amazonaws.com",
        "DBSubnetGroup": "default",
        "PreferredBackupWindow": "00:00-00:30",
        "EngineVersion": "3.4",
        "ClusterCreateTime": "2018-06-06T19:25:47.991Z",
        "IAMDatabaseAuthenticationEnabled": false
    }
}
```

Levará alguns minutos para que suas alterações sejam aplicadas. É possível usar o cluster somente quando seu status for *disponível*. É possível monitorar o status do cluster usando o console ou a AWS CLI. Para obter mais informações, consulte [Monitoramento do status de um cluster do Amazon DocumentDB](monitoring_docdb-cluster_status.md). 

------

# Determinar manutenção pendente
<a name="db-cluster-determine-pending-maintenance"></a>

É possível determinar se você tem a versão mais recente do mecanismo do Amazon DocumentDB determinando se tem manutenção de cluster pendente.

------
#### [ Using the Console de gerenciamento da AWS ]

Você pode usar o Console de gerenciamento da AWS para determinar se um cluster tem manutenção pendente.

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

1. No painel de navegação, escolha **Clusters**.
**dica**  
Caso não visualize o painel de navegação à esquerda da tela, selecione o ícone do menu (![\[Hamburger menu icon with three horizontal lines.\]](http://docs.aws.amazon.com/pt_br/documentdb/latest/developerguide/images/docdb-menu-icon.png)) no canto superior esquerdo da página.

1. Localize a coluna **Manutenção** para determinar se um cluster tem manutenção pendente.  
![\[Snapshot do console mostrando o campo de manutenção do cluster do Amazon DocumentDB.\]](http://docs.aws.amazon.com/pt_br/documentdb/latest/developerguide/images/docdb-cluster-pending-maintenance.png)

   **Nenhum** indica que o cluster está executando a versão mais recente do mecanismo. **Disponível** indica que o cluster tem manutenção pendente, o que pode significar que é necessária uma atualização do mecanismo.

1. Se o seu cluster tiver a manutenção pendente, prossiga para as etapas em [Executar uma atualização de patch para a versão do mecanismo de um cluster](db-cluster-version-upgrade.md). 

------
#### [ Using the AWS CLI ]

Você pode usar o AWS CLI para determinar se um cluster tem a versão mais recente do mecanismo usando a `describe-pending-maintenance-actions` operação com os parâmetros a seguir.

**Parâmetros**
+ **--resource-identifier**— opcional. O ARN do recurso (cluster). Se esse parâmetro for omitido, ações de manutenção pendentes para todos os clusters serão listadas.
+ **--region**— opcional. A Região da AWS na qual você deseja executar essa operação, por exemplo, `us-east-1`.

**Example**  
Para Linux, macOS ou Unix:  

```
aws docdb describe-pending-maintenance-actions \
   --resource-identifier arn:aws:rds:us-east-1:123456789012:cluster:sample-cluster \
   --region us-east-1
```
Para Windows:  

```
aws docdb describe-pending-maintenance-actions ^
   --resource-identifier arn:aws:rds:us-east-1:123456789012:cluster:sample-cluster ^
   --region us-east-1
```
A saída dessa operação é semelhante à seguinte.  

```
{
    "PendingMaintenanceActions": [
        {
            "ResourceIdentifier": "arn:aws:rds:us-east-1:123456789012:cluster:sample-cluster",
            "PendingMaintenanceActionDetails": [
                {
                    "Description": "New feature",
                    "Action": "db-upgrade",
                    "ForcedApplyDate": "2019-02-25T21:46:00Z",
                    "AutoAppliedAfterDate": "2019-02-25T07:41:00Z",
                    "CurrentApplyDate": "2019-02-25T07:41:00Z"
                }
            ]
        }
    ]
}
```

Se o seu cluster tiver a manutenção pendente, prossiga para as etapas em [Executar uma atualização de patch para a versão do mecanismo de um cluster](db-cluster-version-upgrade.md). 

------

# Executar uma atualização de patch para a versão do mecanismo de um cluster
<a name="db-cluster-version-upgrade"></a>

Nesta seção, explicaremos como implantar uma atualização de patch usando Console de gerenciamento da AWS o. ou AWS CLI o. Uma atualização de patch é uma atualização dentro da mesma versão do mecanismo (por exemplo, uma versão do mecanismo 3.6 para uma versão mais recente). É possível atualizá-la imediatamente ou durante a próxima janela de manutenção do cluster. Para determinar se seu mecanismo precisa de uma atualização, consulte [Determinar manutenção pendente](db-cluster-determine-pending-maintenance.md). Observe que, ao aplicar a atualização, seu cluster passará por um tempo de inatividade.

**nota**  
Se você estiver tentando atualizar a partir de uma versão principal do mecanismo para outra, como 3.6 para 5.0, consulte [Atualização da versão principal implementada do Amazon DocumentDB no local](docdb-mvu.md) ou [Atualizando seu cluster Amazon DocumentDB usando AWS Database Migration Service](docdb-migration.versions.md). Uma atualização local da versão principal oferece suporte apenas ao docdb 5.0 como versão do mecanismo de destino.

Há dois requisitos de configuração para obter as atualizações de patch mais recentes para a versão do mecanismo de um cluster:
+ O status do cluster precisa ser *disponível*.
+ O cluster deve estar executando uma versão de mecanismo mais antiga.

------
#### [ Using the Console de gerenciamento da AWS ]

O procedimento a seguir atualiza a versão de mecanismo do seu cluster para uma versão mais recente usando o console. Você tem a opção de atualizar imediatamente ou durante a próxima janela de manutenção do cluster.

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

1. No painel de navegação, escolha **Clusters**. Na lista de clusters, escolha o botão à esquerda do cluster que você deseja atualizar. O status do cluster precisa ser *disponível*.
**dica**  
Caso não visualize o painel de navegação à esquerda da tela, selecione o ícone do menu (![\[Hamburger menu icon with three horizontal lines.\]](http://docs.aws.amazon.com/pt_br/documentdb/latest/developerguide/images/docdb-menu-icon.png)) no canto superior esquerdo da página.

1. No menu **Ações**, escolha uma das opções a seguir. Essas opções de menu são selecionáveis somente se o cluster que você escolheu não está executando a versão mais recente do mecanismo.  
![\[Imagem: ações de atualização do Amazon DocumentDB\]](http://docs.aws.amazon.com/pt_br/documentdb/latest/developerguide/images/docdb-upgrade-action.png)
   + **Atualizar agora**— inicia imediatamente o processo de atualização. Seu cluster ficará offline por um momento, enquanto é atualizado para a versão mais recente do mecanismo.
   + **Atualizar na próxima janela**— inicia o processo de atualização durante a próxima janela de manutenção do cluster. O cluster ficará offline por um momento, enquanto é atualizado para a versão mais recente do mecanismo.

1. Quando a janela de confirmação for aberta, escolha uma das seguintes opções:
   + **Atualizar**— para atualizar seu cluster para a versão mais recente do mecanismo, de acordo com a programação escolhida na etapa anterior.
   + **Cancelar**— para cancelar a atualização do mecanismo do cluster e continuar com a versão atual.

------
#### [ Using the AWS CLI ]

Você pode aplicar atualizações de patch ao seu cluster usando a `apply-pending-maintenance-action` operação AWS CLI e a com os parâmetros a seguir.

**Parâmetros**
+ **--resource-identifier**—Obrigatório. O ARN do cluster do Amazon DocumentDB que você vai atualizar.
+ **--apply-action**—Obrigatório. Os valores a seguir são permitidos. Para atualizar a versão de mecanismo do cluster, use `db-upgrade`.
  + **db-upgrade**
  + **system-update**
+ **--opt-in-type**—Obrigatório. Os valores a seguir são permitidos.
  + `immediate`— aplique a ação de manutenção imediatamente.
  + `next-maintenance`— aplique a ação de manutenção durante a próxima janela de manutenção.
  + `undo-opt-in`— cancele quaisquer solicitações de inclusão `next-maintenance` existentes.

**Example**  
O exemplo a seguir atualiza a versão do mecanismo `sample-cluster` para a versão 4.0.0.  
Para Linux, macOS ou Unix:  

```
aws docdb apply-pending-maintenance-action \
   --resource-identifier arn:aws:rds:us-east-1:123456789012\:cluster:sample-cluster \
   --apply-action db-upgrade \
   --opt-in-type immediate
```
Para Windows:  

```
aws docdb apply-pending-maintenance-action ^
   --resource-identifier arn:aws:rds:us-east-1:123456789012:cluster:sample-cluster ^
   --apply-action db-upgrade ^
   --opt-in-type immediate
```
A saída dessa operação é semelhante à seguinte.  

```
{
    "ResourcePendingMaintenanceActions": {
        "ResourceIdentifier": "arn:aws:rds:us-east-1:444455556666:cluster:docdb-2019-01-09-23-55-38",
        "PendingMaintenanceActionDetails": [
            {
                "CurrentApplyDate": "2019-02-20T20:57:06.904Z",
                "Description": "Bug fixes",
                "ForcedApplyDate": "2019-02-25T21:46:00Z",
                "OptInStatus": "immediate",
                "Action": "db-upgrade",
                "AutoAppliedAfterDate": "2019-02-25T07:41:00Z"
            }
        ]
    }
}
```

------

# Interromper e iniciar um cluster do Amazon DocumentDB
<a name="db-cluster-stop-start"></a>

Interromper e iniciar os clusters do Amazon DocumentDB pode ajudar a gerenciar os custos dos ambientes de teste e desenvolvimento. Em vez de criar e excluir clusters e instâncias toda vez que você usar o Amazon DocumentDB, você pode interromper temporariamente todas as instâncias em seu cluster quando elas não forem necessárias. Depois, é possível iniciá-las novamente, ao retomar os testes.

**Topics**
+ [Visão geral de como interromper e iniciar um cluster](#db-cluster-stop-start-overview)
+ [Operações que você pode realizar em um cluster interrompido](#db-cluster-stopped-operations)

## Visão geral de como interromper e iniciar um cluster
<a name="db-cluster-stop-start-overview"></a>

Durante os períodos nos quais não precisar de um cluster do Amazon DocumentDB, você pode interromper todas as instâncias nesse cluster de uma só vez. Depois, você pode iniciar o cluster novamente a qualquer momento, sempre que precisar usá-lo. Iniciar e interromper simplifica os processos de configuração e destruição dos clusters usados em desenvolvimento, teste ou atividades afins que não exijam disponibilidade contínua. Você pode parar e iniciar um cluster usando o Console de gerenciamento da AWS ou o AWS CLI com uma única ação, independentemente de quantas instâncias estejam no cluster.

Enquanto o cluster estiver interrompido, o volume de armazenamento do cluster permanece inalterado. Serão cobrados somente o armazenamento, as captura de telas manuais e o armazenamento do backup automatizado dentro da janela de retenção especificada. Não haverá cobrança por horas de instância. O Amazon DocumentDB iniciará automaticamente seu cluster depois de sete dias para garantir que ele não perca nenhuma atualização de manutenção necessária. Quando o cluster reiniciar após sete dias, você será cobrado pelas instâncias novamente. Enquanto o cluster é interrompido, não é possível consultar o volume de armazenamento porque a consulta requer que as instâncias estejam no estado disponível.

Quando um cluster do Amazon DocumentDB é interrompido, nem o cluster nem suas instâncias podem ser modificados, de maneira alguma. Isso inclui adicionar ou remover instâncias, ou excluir o cluster.

------
#### [ Using the Console de gerenciamento da AWS ]

O procedimento a seguir mostra como interromper um cluster com uma ou mais instâncias no estado disponível ou iniciar um cluster interrompido.

**Para interromper ou iniciar um cluster do Amazon DocumentDB**

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

1. No painel de navegação, escolha **Clusters**.
**dica**  
Caso não visualize o painel de navegação à esquerda da tela, selecione o ícone do menu (![\[Hamburger menu icon with three horizontal lines.\]](http://docs.aws.amazon.com/pt_br/documentdb/latest/developerguide/images/docdb-menu-icon.png)) no canto superior esquerdo da página.

1. Na lista de clusters, escolha o botão à esquerda do nome do cluster que você deseja interromper ou iniciar.

1. Escolha **Ações** e selecione a ação que deseja executar no cluster.
   + Se você quiser interromper o cluster e ele estiver disponível:

     1. Escolha **Parar**.  
![\[Imagem: interromper um cluster\]](http://docs.aws.amazon.com/pt_br/documentdb/latest/developerguide/images/db-cluster-stop.png)

        Para evitar a ativação do mecanismo de failover, a operação de interrupção interrompe primeiro as instâncias de réplica e, depois, a instância primária.

     1. Na caixa de diálogo de confirmação, confirme se deseja interromper o cluster, escolhendo **Interromper cluster** ou, para manter o cluster em execução, escolha **Cancelar**.  
![\[Imagem: Iniciar um cluster\]](http://docs.aws.amazon.com/pt_br/documentdb/latest/developerguide/images/db-cluster-stop-confirm.png)
   + Se quiser iniciar o cluster e o cluster estiver interrompido, escolha **Iniciar**.  
![\[Imagem: Iniciar um cluster\]](http://docs.aws.amazon.com/pt_br/documentdb/latest/developerguide/images/db-cluster-start.png)

1. Monitore o status do cluster e suas instâncias. Se você iniciou o cluster, poderá retomar o uso do cluster quando ele e suas instâncias estiverem *disponíveis*. Para obter mais informações, consulte [Determinar o status de um cluster](db-cluster-status.md).   
![\[Imagem: status de clusters em interrupção e início\]](http://docs.aws.amazon.com/pt_br/documentdb/latest/developerguide/images/db-cluster-stop-start-status.png)

------
#### [ Using the AWS CLI ]

Os exemplos de código a seguir mostram como interromper um cluster com uma ou mais instâncias no estado disponível ou iniciar um cluster interrompido.

Para interromper um cluster com uma ou mais instâncias disponíveis usando o AWS CLI, use a `stop-db-cluster` operação. Para iniciar um cluster interrompido, use a operação `start-db-cluster`. Ambas as operações usam o parâmetro `--db-cluster-identifier`.

**Parâmetro**
+ **--db-cluster-identifier**—Obrigatório. O nome do cluster a ser interrompido ou iniciado.

**Example — Para interromper um cluster usando o AWS CLI**  
O código a seguir interrompe o cluster `sample-cluster`. O cluster deve ter uma ou mais instâncias no estado disponível.  
Para Linux, macOS ou Unix:  

```
aws docdb stop-db-cluster \
   --db-cluster-identifier sample-cluster
```
Para Windows:  

```
aws docdb stop-db-cluster ^
   --db-cluster-identifier sample-cluster
```

**Example — Para iniciar um cluster usando o AWS CLI**  
O código a seguir inicia o cluster `sample-cluster`. O cluster deve estar interrompido no momento.  
Para Linux, macOS ou Unix:  

```
aws docdb start-db-cluster \
   --db-cluster-identifier sample-cluster
```
Para Windows:  

```
aws docdb start-db-cluster ^
   --db-cluster-identifier sample-cluster
```

------

## Operações que você pode realizar em um cluster interrompido
<a name="db-cluster-stopped-operations"></a>

Enquanto um cluster do Amazon DocumentDB está parado, você pode fazer uma point-in-time restauração em qualquer ponto dentro da janela de retenção automática de backup especificada. Para obter detalhes sobre como fazer uma point-in-time restauração, consulte[Restauração para um ponto no tempo](backup_restore-point_in_time_recovery.md). 

Não é possível modificar a configuração de um cluster do Amazon DocumentDB, ou de qualquer uma de suas instâncias, enquanto o cluster estiver interrompido. Também não é possível adicionar ou remover instâncias do cluster ou excluir o cluster, caso ainda tenha alguma instância associada. Será necessário iniciar o cluster antes de realizar uma dessas ações administrativas.

O Amazon DocumentDB aplicará as manutenções programadas em seu cluster interrompido somente depois que for reiniciado. Após sete dias, o Amazon DocumentDB inicia automaticamente um cluster interrompido, para que não fique muito atrasado em seu status de manutenção. Quando o cluster for reiniciado, você começará a ser cobrado pelas instâncias no cluster novamente.

Enquanto um cluster estiver interrompido, o Amazon DocumentDB não executa quaisquer backups automatizados, nem estende o período de retenção de backup.

# Excluir um cluster do Amazon DocumentDB
<a name="db-cluster-delete"></a>

Você pode excluir um cluster do Amazon DocumentDB usando o Console de gerenciamento da AWS ou o. AWS CLI Para excluir um cluster, o cluster deve estar no estado *disponível* e não deve ter nenhuma instância associada a ele. Se o cluster foi interrompido, primeiro inicie-o, aguarde até que fique *disponível* e então, exclua-o. Para obter mais informações, consulte [Interromper e iniciar um cluster do Amazon DocumentDB](db-cluster-stop-start.md). 

## Deletion protection (Proteção contra exclusão)
<a name="db-cluster-deletion-protection"></a>

Para proteger seu cluster contra a exclusão acidental, você pode habilitar a *proteção contra exclusão*. A proteção contra exclusão está habilitada por padrão ao criar um cluster usando o console. No entanto, a proteção contra exclusão será desabilitada por padrão, se você criar um cluster usando a AWS CLI.

O Amazon DocumentDB aplicará a proteção contra exclusão para um cluster se você executar a operação de exclusão usando o console ou AWS CLI. Se a proteção contra exclusão estiver habilitada, não será possível excluir um cluster. Para excluir um cluster com a projeção contra exclusão habilitada, primeiro é necessário modificar o cluster e desabilitar a proteção contra exclusão.

Ao usar o console com a proteção contra exclusão habilitada em um cluster, não será possível excluir a última instância do cluster, pois isso também excluirá o cluster. É possível excluir a última instância de um cluster protegido contra exclusão usando a AWS CLI. No entanto, o cluster em si ainda existirá e seus dados serão preservados. É possível acessar os dados criando novas instâncias para o cluster. Para obter mais informações sobre como habilitar e desabilitar a proteção contra exclusão, consulte: 
+ [Criar um cluster do Amazon DocumentDB](db-cluster-create.md)
+ [Modificar um cluster do Amazon DocumentDB](db-cluster-modify.md)

------
#### [ Using the Console de gerenciamento da AWS ]

Para excluir um cluster usando o Console de gerenciamento da AWS, a proteção contra exclusão deve estar desativada.

**Para determinar se um cluster está com a proteção contra exclusão habilitada:**

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

1. No painel de navegação, escolha **Clusters**.
**dica**  
Caso não visualize o painel de navegação à esquerda da tela, selecione o ícone do menu (![\[Hamburger menu icon with three horizontal lines.\]](http://docs.aws.amazon.com/pt_br/documentdb/latest/developerguide/images/docdb-menu-icon.png)) no canto superior esquerdo da página.

1. Observe que, na caixa de navegação Clusters, a coluna **Identificador do cluster** mostra tanto os clusters quanto as instâncias. Suas instâncias estão listadas em clusters, semelhante ao snapshot abaixo.  
![\[Imagem: a caixa de navegação Clusters mostrando uma lista dos links de cluster existentes e seus links de instância correspondentes.\]](http://docs.aws.amazon.com/pt_br/documentdb/latest/developerguide/images/clusters.png)

1. Escolha o nome do cluster e selecione a guia **Configuração**. Na seção **Detalhes do cluster**, localize **Proteção contra exclusão**. Se a proteção contra exclusão estiver habilitada, modifique o cluster para desabilitar a proteção contra exclusão. Para obter informações sobre como modificar um cluster, consulte [Modificar um cluster do Amazon DocumentDB](db-cluster-modify.md). 

   Após desabilitar a **Proteção contra exclusão**, você estará pronto para excluir o cluster.

**Para excluir um cluster:**

1. No painel de navegação, escolha **Clusters**. 

1. Determine se o cluster tem instâncias verificando a coluna **Identificador do cluster** para as instâncias lidas abaixo dele. Antes de excluir um cluster, é necessário excluir todas as instâncias. Para obter mais informações, consulte [Excluir uma instância do Amazon DocumentDB](db-instance-delete.md). 

1. Dependendo de o cluster ter ou não instâncias, realize uma das seguintes etapas.
   + Se o cluster não tiver instâncias, selecione o botão à esquerda do nome do cluster e escolha **Ações**. No menu suspenso, escolha **Excluir**. Preencha a caixa de diálogo **Excluir <nome-cluster>** e escolha **Excluir**. 
   + Se o cluster tiver uma ou mais instâncias, faça o seguinte:

     1. No painel de navegação, escolha **Clusters**.

     1. Exclua cada uma das instâncias do cluster escolhendo a caixa de seleção à esquerda do nome do cluster. Selecione **Ações** e escolha **Excluir**. Preencha a caixa de diálogo **Excluir <nome-cluster>** e escolha **Excluir**.

        Ao excluir a última instância, o cluster também será excluído. Para obter informações sobre a exclusão de instâncias, consulte [Excluir uma instância do Amazon DocumentDB](db-instance-delete.md). 

A exclusão do cluster demora alguns minutos. Para monitorar o status do cluster, consulte [Monitoramento do status de um cluster do Amazon DocumentDB](monitoring_docdb-cluster_status.md). 

------
#### [ Using the AWS CLI ]

Não é possível excluir um cluster que tenha instâncias associadas a ele. Para determinar quais instâncias estão associadas ao cluster, execute o comando `describe-db-clusters` e exclua todas as instâncias do cluster. Depois, se necessário, desabilite a proteção contra exclusão no cluster e, finalmente, exclua o cluster.

1. **Primeiro, exclua todas as instâncias do cluster.**

   Para determinar quais instâncias você precisa excluir, execute o comando a seguir.

   ```
   aws docdb describe-db-clusters \
       --db-cluster-identifier sample-cluster \
       --query 'DBClusters[*].[DBClusterIdentifier,DBClusterMembers[*].DBInstanceIdentifier]'
   ```

   A saída dessa operação é semelhante ao seguinte (formato JSON).

   ```
   [
       [
           "sample-cluster",
           [
               "sample-instance-1",
               "sample-instance-2"
           ]
       ]
   ]
   ```

   Se o cluster que você deseja excluir tiver instâncias, exclua-as conforme abaixo.

   ```
   aws docdb delete-db-instance \
       --db-instance-identifier sample-instance
   ```

1. **Em segundo lugar, desabilite a proteção contra exclusão**.

   Usar o AWS CLI para excluir todas as instâncias de um cluster não exclui o cluster. Também é necessário excluir o cluster, mas isso só poderá ser feito se a proteção contra exclusão estiver desabilitada.

   Para determinar se o cluster está com a proteção contra exclusão habilitada, execute o comando a seguir.
**dica**  
Para ver o status da proteção contra exclusão de todos os clusters do Amazon DocumentDB, omita o parâmetro `--db-cluster-identifier`.

   ```
   aws docdb describe-db-clusters \
       --db-cluster-identifier sample-cluster \
       --query 'DBClusters[*].[DBClusterIdentifier,DeletionProtection]'
   ```

   A saída dessa operação é semelhante à seguinte.

   ```
   [
       [
           "sample-cluster",
           "true"
       ]
   ]
   ```

   Se o cluster estiver com a proteção contra exclusão habilitada, modifique o cluster e desabilite a proteção contra exclusão. Para desabilitar a proteção contra exclusão no cluster, use o comando a seguir.

   ```
   aws docdb modify-db-cluster \
       --db-cluster-identifier sample-cluster \
       --no-deletion-protection \
       --apply-immediately
   ```

1. **Para finalizar, exclua o cluster.**

   Após desabilitar a proteção contra exclusão, você estará pronto para excluir o cluster. Para excluir um cluster, use a operação `delete-db-cluster` com os parâmetros a seguir.
   + **--db-cluster-identifier**—Obrigatório. O identificador do cluster que deseja excluir.
   + **--final-db-snapshot-identifier**— opcional. Se você quiser uma captura de tela final, inclua esse parâmetro com um nome para a captura de tela final. É necessário incluir `--final-db-snapshot-identifier` ou `--skip-final-snapshot`.

     Restrições de nomenclatura:
     + O comprimento é de [1 a 63] letras, números ou hifens.
     + O primeiro caractere deve ser uma letra.
     + Não pode terminar com um hífen ou conter dois hifens consecutivos.
     + Deve ser exclusivo para todos os clusters do Amazon RDS, Amazon Neptune e Amazon DocumentDB por região. Conta da AWS
   + **--skip-final-snapshot**— opcional. Use esse parâmetro somente se não quiser obter um captura de tela final antes de excluir seu cluster. A configuração padrão é obter uma captura de tela final. É necessário incluir `--final-db-snapshot-identifier` ou `--skip-final-snapshot`.

   O AWS CLI código a seguir exclui o cluster `sample-cluster` com um instantâneo final. A operação falhará se houver instâncias associadas ao cluster ou se a proteção contra exclusão estiver desabilitada.  
**Example**  

   Para Linux, macOS ou Unix:

   ```
   aws docdb delete-db-cluster \
       --db-cluster-identifier sample-cluster \
       --final-db-snapshot-identifier sample-cluster-final-snapshot
   ```

   Para Windows:

   ```
   aws docdb delete-db-cluster ^
       --db-cluster-identifier sample-cluster ^
       --final-db-snapshot-identifier sample-cluster-final-snapshot
   ```  
**Example**  

   O AWS CLI código a seguir exclui o cluster `sample-cluster` sem tirar um instantâneo final.

   Para Linux, macOS ou Unix:

   ```
   aws docdb delete-db-cluster \
       --db-cluster-identifier sample-cluster \
       --skip-final-snapshot
   ```

   Para Windows:

   ```
   aws docdb delete-db-cluster ^
       --db-cluster-identifier sample-cluster ^
       --skip-final-snapshot
   ```

   A saída da operação `delete-db-cluster` é o cluster que você está excluindo.

   A exclusão do cluster demora alguns minutos. Para monitorar o status do cluster, consulte [Monitorar o status de um cluster](monitoring_docdb-cluster_status.md). 

------

# Escalar clusters do Amazon DocumentDB
<a name="db-cluster-manage-performance"></a>

O Amazon DocumentDB permite escalar o armazenamento e a computação nos clusters com base em suas necessidades. Esta seção descreve como você pode escalar armazenamento, instância e leitura, para gerenciar o desempenho e a escala dos clusters e das instâncias do Amazon DocumentDB.

**Topics**
+ [Escalabilidade de armazenamento](#db-cluster-manage-scaling-storage)
+ [Escalabilidade de instâncias](#db-cluster-manage-scaling-instance)
+ [Escalabilidade de leitura](#db-cluster-manage-scaling-reads)
+ [Gravar escalabilidade](#db-cluster-manage-scaling-writes)

## Escalabilidade de armazenamento
<a name="db-cluster-manage-scaling-storage"></a>

O armazenamento do Amazon DocumentDB escala automaticamente com os dados no volume do cluster. À medida que seu volume de dados aumentar, o armazenamento do volume do cluster aumentará em incrementos de 10 GiB, até 128 TiB.

## Escalabilidade de instâncias
<a name="db-cluster-manage-scaling-instance"></a>

É possível escalar o cluster do Amazon DocumentDB conforme a necessidade e modificar a classe da instância para cada instância do cluster. O Amazon DocumentDB oferece suporte a várias classes de instância otimizadas.

Para obter mais informações, consulte [Modificar uma instância do Amazon DocumentDB](db-instance-modify.md). 

## Escalabilidade de leitura
<a name="db-cluster-manage-scaling-reads"></a>

É possível obter uma escala de leitura para o cluster do Amazon DocumentDB criando até 15 réplicas do Amazon DocumentDB no cluster. Cada réplica do Amazon DocumentDB retornará os mesmos dados do volume de cluster com atraso de réplica mínimo — geralmente inferior a 100 milissegundos após a instância principal ter gravado uma atualização. Conforme o tráfego de leitura aumenta, você pode criar réplicas adicionais do Amazon DocumentDB e conectar-se a elas para distribuir a carga de leitura para o seu cluster. As réplicas do Amazon DocumentDB não precisam ser da mesma classe da instância primária. 

Para obter mais informações, consulte [Adicionar uma instância do Amazon DocumentDB a um cluster](db-instance-add.md). 

Para escalar leitura com o Amazon DocumentDB, recomendamos que você se conecte ao seu cluster como um conjunto de réplicas e distribua as leituras para instâncias de réplica usando os recursos internos de preferência de leitura do seu driver. Para obter mais informações, consulte [Conectar-se ao Amazon DocumentDB como um conjunto de réplicas](connect-to-replica-set.md).

## Gravar escalabilidade
<a name="db-cluster-manage-scaling-writes"></a>

É possível escalar a capacidade de gravação no cluster do Amazon DocumentDB aumentando o tamanho da instância principal do cluster. Esta seção fornece dois métodos para escalar a instância principal do cluster com base em suas necessidades. A primeira opção procura minimizar o impacto na aplicação, mas exige que mais etapas sejam concluídas. A segunda opção otimiza visando simplicidade, pois tem menos etapas, mas, em compensação, representa potencial impacto maior na aplicação. 

De acordo com a aplicação, você pode escolher qual abordagem abaixo é a melhor para você. Para obter mais informações sobre custos e tamanhos de instância disponíveis, consulte a página [Definição de preço do Amazon DocumentDB Pricing](https://aws.amazon.com/documentdb/pricing/).

1. **Otimize para alta disponibilidade e desempenho**: se estiver se conectando ao cluster em [modo de conjunto de réplica](connect-to-replica-set.md) (recomendado), você pode usar o processo a seguir para minimizar o impacto na aplicação ao escalar a instância principal. Esse método minimiza o impacto porque mantém o cluster em alta disponibilidade ou acima, e os destinos em escala de leitura são adicionados ao cluster como instâncias, em vez de atualizados no local.

   1. Adicione uma ou mais réplicas do tipo de instância maior ao seu cluster (consulte [Adicionar uma instância do Amazon DocumentDB a um cluster](db-instance-add.md)). Recomendamos que todas as réplicas sejam do mesmo tipo de instância ou maior que a principal. Isso evita que uma redução não intencional no desempenho de gravação execute failover para um tipo de instância menor. Para a maioria dos clientes, isso significa duplicar temporariamente o número de instâncias no cluster e, depois, remover as réplicas menores após a conclusão da escala.

   1. Defina o nível de failover em todas as réplicas novas como prioridade zero, de forma a garantir que uma réplica do tipo de instância menor tenha a maior prioridade de failover. Para obter mais informações, consulte [Controlar o destino de failover](failover.md#failover-target_control). 

   1. Inicie um failover manual, o que promoverá uma das novas réplicas a instância principal. Para obter mais informações, consulte [Testar o failover](failover.md#failover-testing). 
**nota**  
Isso incorrerá em aproximadamente 30 segundos de tempo de inatividade para o cluster. Planeje adequadamente.

   1. Remova do cluster todas as réplicas de um tipo de instância menor que a nova principal.

   1. Defina o nível de failover de todas as instâncias de volta para a mesma prioridade (geralmente, isso significa defini-las de volta a 1).

   Como exemplo, vamos supor que você tenha um cluster com três instâncias `r5.large` (uma principal e duas réplicas), e que deseje escalar para um tipo de instância `r5.xlarge`. Para fazê-lo, primeiro adicione três instâncias de réplica `r5.xlarge` ao seu cluster e defina o nível de failover das novas réplicas `r5.xlarge` como zero. Depois, inicie um failover manual (considerando que a aplicação terá aproximadamente 30 segundos de tempo de inatividade). Quando o failover for concluído, remova todas as três instâncias `r5.large` do cluster deixando-o escalado para instâncias `r5.xlarge`.

   Para ajudar a otimizar os custos, as instâncias do Amazon DocumentDB são cobradas em incrementos de um segundo, com uma cobrança mínima de dez minutos após uma alteração no status de faturamento, como criação, modificação ou exclusão de uma instância. Para obter mais informações, consulte [Otimização de custos](best_practices.md#best_practices-cost_optimization) na documentação de práticas recomendadas.

1. **Otimize para simplificar** — essa abordagem otimiza para simplicidade. Ela não expande nem contrai o cluster, mas pode reduzir temporariamente sua capacidade de leitura.

   É possível que a alteração da classe da instância de uma réplica faça com que a mesma não atenda as solicitações por um breve período, de alguns segundos a menos de 30 segundos. Se você estiver se conectando ao seu cluster no [modo de conjunto de réplicas](connect-to-replica-set.md) (recomendado), isso reduzirá sua capacidade de leitura em uma réplica (por exemplo, para 66% da capacidade em um cluster de 3 nós, ou 75% da capacidade em um cluster de 4 nós, etc.) durante a operação em escala.

   1. Escale uma das instâncias de réplica no seu cluster. Para obter mais informações, consulte [Gerenciar classes de instância](db-instance-classes.md). 

   1. Espere até que a instância esteja disponível (consulte [Monitoramento do status de uma instância do Amazon DocumentDB](monitoring_docdb-instance_status.md)). 
**nota**  
Isso incorrerá em aproximadamente 30 segundos de tempo de inatividade para o cluster. Planeje adequadamente.

   1. Continue executando as etapas 1 e 2 até que todas as instâncias de réplicas tenham sido escaladas, uma a uma.

   1. Iniciar um failover manual. Isso promoverá uma das réplica à instância principal. Para obter mais informações, consulte [Failover do Amazon DocumentDB](failover.md).
**nota**  
Isso resultará em até 30 segundos de inatividade para seu cluster, mas, geralmente leva menos tempo do que isso. Planeje adequadamente.

   1. Escale a antiga instância primária (agora, uma réplica).

# Clonar um volume para um cluster Amazon DocumentDB
<a name="db-cluster-cloning"></a><a name="cloning"></a>

Com a clonagem do Amazon DocumentDB, você pode criar um cluster que use o mesmo volume de cluster do Amazon DocumentDB e contenha os mesmos dados do original. O processo foi projetado para ser rápido e econômico. O novo cluster e seu volume de dados associado é chamado de *clone*.. Criar um clone é mais rápido e eficiente em termos de espaço do que copiar fisicamente os dados usando outras técnicas, como restauração ou captura de tela.

O Amazon DocumentDB oferece suporte à criação de um clone provisionado do Amazon DocumentDB por meio de um cluster provisionado do Amazon DocumentDB. Quando você cria um clone usando uma configuração de implantação diferente da origem, o clone é criado usando a versão mais recente do mecanismo Amazon DocumentDB de origem. 

Quando você cria clones a partir de seus clusters do Amazon DocumentDB, os clones são criados na AWS sua conta — a mesma conta que possui o cluster Amazon DocumentDB de origem. 

**Topics**
+ [Visão geral da clonagem do Amazon DocumentDB](#db-cloning-overview)
+ [Limitações da clonagem do Amazon DocumentDB](#db-cloning-limitations)
+ [Como funciona a clonagem do Amazon DocumentDB](#db-how-db-cloning-works)
+ [Criar um clone do Amazon DocumentDB](#db-creating-db-clone)

## Visão geral da clonagem do Amazon DocumentDB
<a name="db-cloning-overview"></a>

O Amazon DocumentDB usa um *copy-on-write protocolo* para criar um clone. Esse mecanismo usa um espaço adicional mínimo para criar um clone inicial. Quando o clone é criado pela primeira vez, o Amazon DocumentDB mantém uma única cópia dos dados usados pelo cluster de origem do Amazon DocumentDB e pelo novo cluster (clonado) do Amazon DocumentDB. O armazenamento adicional é alocado somente quando as alterações são feitas nos dados (no volume de armazenamento do Amazon DocumentDB) pelo cluster de origem do Amazon DocumentDB, ou pelo clone do cluster do Amazon DocumentDB. Para saber mais sobre o copy-on-write protocolo, consulte[Como funciona a clonagem do Amazon DocumentDB](#db-how-db-cloning-works). 

A clonagem do Amazon DocumentDB é útil principalmente para configurar rapidamente ambientes de teste usando seus dados de produção, sem o risco de corromper dados. É possível utilizar clones para vários tipos de aplicações, como:
+ Experimente possíveis alterações (de esquema e de grupos de parâmetros, por exemplo) para avaliar todos os impactos. 
+ Execute operações com workloads intensivas, como exportar dados ou executar consultas analíticas no clone. 
+ Crie uma cópia do cluster de banco de dados de produção para desenvolvimento, teste ou outras finalidades.

É possível criar mais de um clone do mesmo cluster Amazon DocumentDB. Também é possível criar vários clones a partir de outro. 

Depois de criar um clone do Amazon DocumentDB, você pode configurar suas instâncias de modo diferente do cluster de origem. Por exemplo, talvez você não precise que um clone para fins de desenvolvimento atenda aos mesmos requisitos de alta disponibilidade que o cluster de produção de origem Amazon DocumentDB. Nesse caso, é possível configurar o clone com uma única instância Amazon DocumentDB em vez de várias instâncias DB usadas pelo cluster Amazon DocumentDB.

Ao concluir o uso do clone para seus testes, desenvolvimento, ou outras finalidades, será possível excluí-lo.

## Limitações da clonagem do Amazon DocumentDB
<a name="db-cloning-limitations"></a>

Atualmente, a clonagem do Amazon DocumentDB; tem as seguintes limitações:
+ É possível criar quantos clones quiser, até o número máximo de clusters DB permitido na Região da AWS. No entanto, depois 15 clones, o próximo será uma cópia completa. A operação de clonagem funciona como uma point-in-time recuperação.
+ Você não pode criar um clone em uma AWS região diferente do cluster Amazon DocumentDB de origem.
+ Não é possível criar um clone a partir de um cluster Amazon DocumentDB sem instâncias. Só é possível clonar clusters Amazon DocumentDB que tenham pelo menos uma instância DB.
+ É possível criar um clone em uma nuvem privada virtual (VPC) diferente daquela do cluster Amazon DocumentDB. Se você fizer isso, as sub-redes do VPCs devem ser mapeadas para as mesmas zonas de disponibilidade.

## Como funciona a clonagem do Amazon DocumentDB
<a name="db-how-db-cloning-works"></a>

A clonagem do Amazon DocumentDB funciona na camada de armazenamento de um cluster do Amazon DocumentDB. Ele usa um *copy-on-write*protocolo que é rápido e economiza espaço em termos da mídia durável subjacente que suporta o volume de armazenamento do Amazon DocumentDB. Saiba mais sobre os volumes de cluster do Amazon DocumentDB em [Gerenciar clusters do Amazon DocumentDB](db-clusters.md). 

**Topics**
+ [Entendendo o copy-on-write protocolo](#db-copy-on-write-protocol)
+ [Excluir um volume de cluster de origem](#db-deleting-source-cluster-volume)

### Entendendo o copy-on-write protocolo
<a name="db-copy-on-write-protocol"></a>

Um cluster do Amazon DocumentDB armazena dados em páginas do volume de armazenamento subjacente Amazon DocumentDB. 

Por exemplo, no diagrama a seguir, você descobre um cluster Amazon DocumentDB (A) com quatro páginas de dados: 1, 2, 3 e 4. Imagine que um clone, B, é criado a partir do cluster do Amazon DocumentDB. Quando o clone é criado, nenhum dado é copiado. Em vez disso, o clone aponta para o mesmo conjunto de páginas que o cluster Amazon DocumentDB de origem.

![\[O volume do cluster do Amazon DocumentDB, com 4 páginas para o cluster de origem A e o clone B\]](http://docs.aws.amazon.com/pt_br/documentdb/latest/developerguide/images/db-cloning-copy-on-write-protocol-1.png)


Quando o clone é criado, geralmente não é necessário armazenamento adicional. O copy-on-write protocolo usa o mesmo segmento na mídia de armazenamento físico que o segmento de origem. O armazenamento adicional é necessário somente se a capacidade do segmento de origem não for suficiente para todo o segmento do clone. Se for esse o caso, o segmento de origem será copiado para outro dispositivo físico. 

Nos diagramas a seguir, você pode encontrar um exemplo do copy-on-write protocolo em ação usando o mesmo cluster A e seu clone, B, conforme mostrado anteriormente. Digamos que você faça uma alteração no cluster do Amazon DocumentDB (A) que resulte em uma alteração nos dados mantidos na página 1. Em vez de gravar na página 1 original, o Amazon DocumentDB cria uma nova página, 1[A]. O volume do cluster Amazon DocumentDB para o cluster (A) agora aponta para a página 1[A], 2, 3 e 4, enquanto o clone (B) ainda faz referência às páginas originais. 

![\[Volume de cluster de origem do Amazon DocumentDB e seu clone, ambos com alterações.\]](http://docs.aws.amazon.com/pt_br/documentdb/latest/developerguide/images/db-cloning-copy-on-write-protocol-2.png)


No clone, uma alteração é feita na página 4, no volume de armazenamento. Em vez de gravar na página 4 original, o Amazon DocumentDB cria uma nova página, 4[B]. O clone agora aponta para as páginas 1, 2, 3 e para a página 4[B], enquanto o cluster (A) continua apontando para 1[A], 2, 3 e 4. 

![\[Volume de cluster de origem do Amazon DocumentDB e seu clone, ambos com alterações.\]](http://docs.aws.amazon.com/pt_br/documentdb/latest/developerguide/images/db-cloning-copy-on-write-protocol-3.png)


À medida que ocorrerem mais alterações ao longo do tempo no volume do cluster do Amazon DocumentDB original e no clone, será necessário mais armazenamento incremental para capturar e armazenar as alterações. 

### Excluir um volume de cluster de origem
<a name="db-deleting-source-cluster-volume"></a>

Quando você exclui um volume do cluster de origem com um ou mais clones associados a ele, os clones não são afetados. Os clones continuam a apontar para as páginas que pertenciam anteriormente ao volume do cluster de origem. 

## Criar um clone do Amazon DocumentDB
<a name="db-creating-db-clone"></a>

Você pode criar um clone na mesma AWS conta do cluster Amazon DocumentDB de origem. Para fazer isso, você pode usar o Console de gerenciamento da AWS ou o AWS CLI e os procedimentos a seguir.

Ao usar a clonagem do Amazon DocumentDB, você pode criar um clone provisionado por meio de um cluster provisionado do Amazon DocumentDB.

------
#### [ Using the Console de gerenciamento da AWS ]

O procedimento a seguir descreve como clonar um cluster Amazon DocumentDB usando Console de gerenciamento da AWS.

Criação de um clone usando os Console de gerenciamento da AWS resultados em um cluster do Amazon DocumentDB com uma instância do Amazon DocumentDB.

 Essas instruções se aplicam aos clusters de banco de dados pertencentes à mesma AWS conta que está criando o clone. O cluster de banco de dados deve pertencer à mesma AWS conta, pois a clonagem entre contas não é suportada no Amazon DocumentDB. 

**Para criar um clone de um cluster de banco de dados de propriedade da sua AWS conta usando o Console de gerenciamento da AWS**

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

1. No painel de navegação, escolha **Clusters**. 

1. Escolha seu cluster Amazon DocumentDB da lista e em **Ações**, escolha **Criar clone**.  
![\[A criação de um clone começa ao selecionar seu cluster Amazon DocumentDB.\]](http://docs.aws.amazon.com/pt_br/documentdb/latest/developerguide/images/db-cloning-create-clone-1.png)

   Na página Criar clone aberta, é possível configurar um **Identificador de Cluster** e uma **Classe de instância**, além de outras opções para o clone de cluster do Amazon DocumentDB. 

1. Na seção **Configurações**, faça o seguinte:

   1. Em **Identificador de cluster**, insira o nome que deseja dar ao cluster Amazon DocumentDB clonado.

   1. Em **Configuração da instância**, selecione uma **Classe de instância** apropriada para seu cluster Amazon DocumentDB clonado.  
![\[A criação de um clone começa selecionando seu cluster Amazon DocumentDB e especificando o tamanho da instância DB.\]](http://docs.aws.amazon.com/pt_br/documentdb/latest/developerguide/images/db-cloning-create-clone-2.png)

   1.  Em **Configurações de rede**, escolha um **Grupo de sub-rede** para seu caso de uso e os grupos de segurança VPC associados. 

   1.  Para **E ncryption-at-rest**, se o cluster de origem (o cluster que está sendo clonado) tiver a criptografia ativada, o cluster clonado também deverá ter a criptografia ativada. Se esse cenário for verdadeiro, as opções **Ativar criptografia** permanecerão na cor cinza (desativadas), mas com a opção **Ativar criptografia** selecionada. Por outro lado, se o cluster de origem não estiver com a criptografia habilitada, as opções **Ativar criptografia** estarão disponíveis e será possível optar por ativar ou desativar a criptografia.   
![\[Especifique as configurações de rede e criptografia para seu clone de cluster do Amazon DocumentDB.\]](http://docs.aws.amazon.com/pt_br/documentdb/latest/developerguide/images/db-cloning-create-clone-3-nw-encryption.png)

   1. Conclua a nova configuração do clone do cluster selecionando os tipos de logs a serem exportados (opcional) e inserindo uma porta específica, usada para se conectar ao cluster e ativar a proteção contra a exclusão acidental do cluster (ativada por padrão).  
![\[Conclua a nova configuração do clone do cluster selecionando opcionalmente os tipos de logs a serem exportados. Insira uma porta específica usada para se conectar ao cluster e ative a proteção contra a exclusão acidental do cluster.\]](http://docs.aws.amazon.com/pt_br/documentdb/latest/developerguide/images/db-cloning-create-clone-4-log-options-del-prot-b.png)

   1. Termine de inserir todas as configurações do clone do cluster Amazon DocumentDB. Para saber mais sobre as configurações de cluster e instância Amazon DocumentDB, consulte [Gerenciar clusters do Amazon DocumentDB](db-clusters.md). 

1. Escolha **Criar clone** para iniciar o clone do Amazon DocumentDB do cluster Amazon DocumentDB escolhido.

Ao ser criado, o clone é listado com seus outros clusters Amazon DocumentDB na seção **Bancos de dados** do console e exibe seu estado atual. O clone estará pronto para uso quando o estado for **Disponível**.

------
#### [ Using the AWS CLI ]

Usar o AWS CLI para clonar seu cluster Amazon DocumentDB envolve algumas etapas. 

O `restore-db-cluster-to-point-in-time` AWS CLI comando que você usa resulta em um cluster vazio do Amazon DocumentDB com 0 instâncias do Amazon DocumentDB. Ou seja, o comando restaura apenas o cluster Amazon DocumentDB, não as instâncias desse cluster. Faça isso separadamente depois que o clone estiver disponível. As duas etapas do processo são: 

1. Crie o clone usando o comando [restore-db-cluster-to- point-in-time](https://docs.aws.amazon.com/cli/latest/reference/rds/restore-db-cluster-to-point-in-time.html) CLI. Os parâmetros usados com esse comando controlam o tipo de capacidade e outros detalhes do cluster Amazon DocumentDB vazio (clone) sendo criado. 

1. Crie a instância do Amazon DocumentDB para o clone usando o comando [create-db-instance](https://docs.aws.amazon.com/cli/latest/reference/rds/create-db-instance.html)CLI para recriar a instância do Amazon DocumentDB no cluster restaurado do Amazon DocumentDB. 

Os comandos a seguir pressupõem que o AWS CLI esteja configurado com sua AWS região como padrão. Essa abordagem evita que você passe pelo nome `--region` em cada um dos comandos. Para obter mais informações, consulte [Configurar a AWS CLI](https://docs.aws.amazon.com/cli/latest/userguide/cli-chap-configure.html). Também é possível especificar `--region` em cada um dos comandos da CLI seguintes. 

**Topics**

**Criar o clone**

Os parâmetros específicos que você passa para o comando `[restore-db-cluster-to-point-in-time](https://docs.aws.amazon.com/cli/latest/reference/rds/restore-db-cluster-to-point-in-time.html)` da CLI variam. O que será transmitido depende do tipo de clone que você quer criar.

Use o procedimento a seguir para criar um clone provisionado do Amazon DocumentDB de um cluster provisionado. 

**Para criar um clone no mesmo modo de mecanismo que o cluster Amazon DocumentDB original**
+ Use o comando `[restore-db-cluster-to-point-in-time](https://docs.aws.amazon.com/cli/latest/reference/rds/restore-db-cluster-to-point-in-time.html)` da CLI e especifique valores para os seguintes parâmetros:
  + `--db-cluster-identifier` — escolha um nome significativo para o clone. Você nomeia o clone ao usar o comando [restore-db-cluster-to- point-in-time](https://docs.aws.amazon.com/cli/latest/reference/rds/restore-db-cluster-to-point-in-time.html) CLI. 
  + `--restore-type` — use `copy-on-write` para criar um clone do cluster DB de origem. Sem esse parâmetro, `restore-db-cluster-to-point-in-time` restaura o cluster Amazon DocumentDB em vez de criar um clone. O padrão para `restore-type` é `full-copy`.
  + `--source-db-cluster-identifier` — use o nome do cluster Amazon DocumentDB de origem que deseja clonar.
  + `--use-latest-restorable-time` — esse valor aponta para dados de volume restauráveis mais recentes para o clone. Esse parâmetro é necessário para `restore-type copy-on-write`. No entanto, você não pode usar o `restore-to-time parameter` com ele.

O exemplo a seguir mostra a criação de um clone chamado `my-clone` a partir de um cluster chamado `my-source-cluster`.

Para Linux, macOS ou Unix:

```
aws docdb restore-db-cluster-to-point-in-time \
    --source-db-cluster-identifier my-source-cluster \
    --db-cluster-identifier my-clone \
    --restore-type copy-on-write \
    --use-latest-restorable-time
```

Para Windows:

```
aws docdb restore-db-cluster-to-point-in-time ^
    --source-db-cluster-identifier my-source-cluster ^
    --db-cluster-identifier my-clone ^
    --restore-type copy-on-write ^
    --use-latest-restorable-time
```

O comando retorna o objeto JSON que contém detalhes do clone. Verifique se o cluster clonado está disponível antes de tentar criar a instância DB para o seu clone. Para obter mais informações, consulte Verificar o status e obter detalhes do clone abaixo: 

**Verificar o status e obter detalhes do clone**

É possível usar o comando a seguir para verificar o status do cluster dDB vazio recém-criado.

```
$ aws docdb describe-db-clusters --db-cluster-identifier my-clone --query '*[].[Status]' --output text
```

Ou você pode obter o status e os outros valores necessários para criar a instância de banco de dados para seu clone usando a seguinte AWS CLI consulta: 

Para Linux, macOS ou Unix:

```
aws docdb describe-db-clusters --db-cluster-identifier my-clone \
  --query '*[].{Status:Status,Engine:Engine,EngineVersion:EngineVersion}'
```

Para Windows:

```
aws docdb describe-db-clusters --db-cluster-identifier my-clone ^
  --query "*[].{Status:Status,Engine:Engine,EngineVersion:EngineVersion}"
```

Essa consulta retorna uma saída semelhante à saída abaixo.

```
[
  {
        "Status": "available",
        "Engine": "docdb",
        "EngineVersion": "4.0.0",
    }
]
```

**Criar a instância do Amazon DocumentDB para seu clone**

Use o comando [create-db-instance](https://docs.aws.amazon.com/cli/latest/reference/rds/create-db-instance.html)CLI para criar a instância de banco de dados para seu clone. 

O parâmetro `--db-instance-class` é usado para provisionar apenas clusters Amazon DocumentDB.

Para Linux, macOS ou Unix:

```
aws docdb create-db-instance \
    --db-instance-identifier my-new-db \
    --db-cluster-identifier my-clone \
    --db-instance-class  db.r5.4xlarge \
    --engine docdb
```

Para Windows:

```
aws docdb create-db-instance ^
    --db-instance-identifier my-new-db ^
    --db-cluster-identifier my-clone ^
    --db-instance-class  db.r5.4xlarge ^
    --engine docdb
```

**Parâmetros a serem usados para clonagem**

A tabela a seguir resume os vários parâmetros usados com `restore-db-cluster-to-point-in-time` para clonar clusters Amazon DocumentDB.


| Parâmetro | Description | 
| --- | --- | 
|  --source-db-cluster-identifier | Use o nome do cluster Amazon DocumentDB original que deseja clonar. | 
|  --db-cluster-identifier | Escolha um nome significativo para o clone. Nomeie seu clone com o comando ` restore-db-cluster-to-point-in-time`. Em seguida, passe esse nome para o comando `create-db-instance`.  | 
|  --restore-type | Especifique `copy-on-write` como `--restore-type` para criar um clone do cluster Amazon DocumentDB original em vez de restaurar o cluster original.  | 
|  --use-latest-restorable-time | Esse valor aponta para os dados de volume restauráveis mais recentes para o clone. | 

------

# Entender a tolerância a falhas de cluster do Amazon DocumentDB
<a name="db-cluster-fault-tolerance"></a>

Os clusters do Amazon DocumentDB são tolerantes a falhas por design. O volume de cada cluster abrange várias zonas de disponibilidade em uma única Região da AWS, e cada zona de disponibilidade contém uma cópia dos dados do volume do cluster. Esta funcionalidade significa que seu cluster pode tolerar a falha de uma Zona de Disponibilidade sem perder dados, com apenas uma breve interrupção do serviço. 

Se a instância primária em um cluster falhar, o Amazon DocumentDB fará failover automaticamente para uma nova instância primária, de uma dessas duas maneiras:
+ Ao promover uma réplica existente do Amazon DocumentDB para a nova instância principal e, em seguida, criar uma substituição para a réplica anterior. Um failover para a instância de réplica normalmente leva menos de 30 segundos. As operações de leitura e gravação poderão sofrer uma breve interrupção durante esse período. Para aumentar a disponibilidade do seu cluster, recomendamos que você crie pelo menos uma ou mais réplicas do Amazon DocumentDB em duas ou mais Zonas de Disponibilidade diferentes.
+ Criar uma nova instância principal. Isso só acontecerá se você não tiver uma instância de réplica em seu cluster, e pode levar alguns minutos para ser concluída.

Se o cluster tiver uma ou mais réplicas do Amazon DocumentDB, uma réplica do Amazon DocumentDB será promovida à instância principal durante um evento de falha. Um evento de falha resulta em uma breve interrupção, durante a qual as operações de leitura e gravação falham com uma exceção. No entanto, o serviço é restaurado normalmente em menos de 120 segundos, muitas vezes, em menos de 60 segundos. Para aumentar a disponibilidade do seu cluster, recomendamos que você crie pelo menos uma ou mais réplicas do Amazon DocumentDB em duas ou mais Zonas de Disponibilidade diferentes. 

É possível personalizar a ordem na qual suas réplicas do Amazon DocumentDB são promovidas à instância primária após uma falha atribuindo uma prioridade a cada réplica. As prioridades variam de 0, para a prioridade mais alta, a 15, para a prioridade mais baixa. Se a instância principal falhar, a réplica do Amazon DocumentDB com a prioridade mais alta será promovida à nova instância principal. É possível modificar a prioridade de uma réplica do Amazon DocumentDB a qualquer momento. Modificar a prioridade não desencadeia um failover. É possível usar a operação `modify-db-instance` com o parâmetro `--promotion-tier`. Para obter mais informações sobre como personalizar a prioridade de failover de uma instância, consulte [Failover do Amazon DocumentDB](failover.md).

A mesma prioridade pode ser compartilhada por mais de uma réplica do Amazon DocumentDB, o que resulta em níveis de promoção. Se duas ou mais réplicas do Amazon DocumentDB compartilharem a mesma prioridade, a réplica maior será promovida à principal. Se duas ou mais réplicas do Amazon DocumentDB compartilharem a mesma prioridade e o mesmo tamanho, uma réplica arbitrária no mesmo nível de promoção será promovida. 

Se o cluster não contiver quaisquer réplicas do Amazon DocumentDB, a instância principal será recriada durante um evento de falha. Um evento de falha resulta em uma interrupção, durante a qual as operações de leitura e gravação falharão com uma exceção. O serviço é reestabelecido quando a nova instância primária é criada, o que normalmente leva menos de 10 minutos. Promover uma réplica do Amazon DocumentDB à instância primária é muito mais rápido que criar uma nova instância primária. 

# Gerenciar instâncias do Amazon DocumentDB
<a name="db-instances"></a>

Os tópicos a seguir fornecem informações para ajudar a gerenciar as instâncias do Amazon DocumentDB. Eles incluem detalhes sobre classes e status de instâncias e como criar, excluir e modificar uma instância.

**Topics**
+ [Determinar o status de uma instância](#db-instance-status)
+ [Ciclo de vida da instância](db-instance-life-cycle.md)
+ [Gerenciar classes de instância](db-instance-classes.md)
+ [Instâncias baseadas em NVMe](db-instance-nvme.md)

## Determinar o status de uma instância
<a name="db-instance-status"></a>

Para ver os status válidos da instância, seus significados e como determinar o status de suas instâncias, consulte [Monitoramento do status de uma instância do Amazon DocumentDB](monitoring_docdb-instance_status.md).

# Ciclo de vida da instância do Amazon DocumentDB
<a name="db-instance-life-cycle"></a>

O ciclo de vida de uma instância do Amazon DocumentDB inclui a criação, a modificação, a manutenção e a atualização, a realização de backups e restaurações, a reinicialização e a exclusão dessa instância. Esta seção fornece informações sobre como concluir esses processos. 

**Topics**
+ [Adicionar uma instância](db-instance-add.md)
+ [Descrever instâncias](db-instance-view-details.md)
+ [Modificar uma instância](db-instance-modify.md)
+ [Reinicializar uma instância](db-instance-reboot.md)
+ [Excluir uma instância](db-instance-delete.md)

Você pode criar uma nova instância do Amazon DocumentDB usando o Console de gerenciamento da AWS ou o. AWS CLI Para adicionar uma instância a um cluster, o cluster deve estar no estado *disponível*. Não é possível adicionar uma instância a um cluster que foi interrompido. Se o cluster foi interrompido, primeiro inicie-o, aguarde até que fique *disponível* e adicione uma instância. Para obter mais informações, consulte [Interromper e iniciar um cluster do Amazon DocumentDB](db-cluster-stop-start.md). 

**nota**  
Se você criar um cluster do Amazon DocumentDB usando o console, uma instância será criada automaticamente para você ao mesmo tempo. Se você deseja criar instâncias adicionais, use um dos procedimentos a seguir.

# Adicionar uma instância do Amazon DocumentDB a um cluster
<a name="db-instance-add"></a>

------
#### [ Using the Console de gerenciamento da AWS ]

Use o procedimento a seguir para criar uma instância para o cluster usando o console do Amazon DocumentDB.

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

1. No painel de navegação, escolha **Clusters**.
**dica**  
Caso não visualize o painel de navegação à esquerda da tela, selecione o ícone do menu (![\[Hamburger menu icon with three horizontal lines.\]](http://docs.aws.amazon.com/pt_br/documentdb/latest/developerguide/images/docdb-menu-icon.png)) no canto superior esquerdo da página.

1. Para escolher o cluster ao qual você deseja adicionar uma instância, selecione o botão à esquerda do nome do cluster.

1. Escolha **Ações** e escolha **Adicionar instâncias**.

1. Na página **Adicionar instância a: <nome-do-cluster>**, repita as etapas a seguir para cada instância a ser adicionada ao cluster. É possível ter até 15.

   1. **Identificador da instância**: você pode inserir um identificador exclusivo para essa instância ou permitir que o Amazon DocumentDB forneça o identificador da instância com base no identificador do cluster.

      Restrições de nomenclatura da instância:
      + O comprimento é de [1 a 63] letras, números ou hífens.
      + O primeiro caractere deve ser uma letra.
      + Não pode terminar com um hífen ou conter dois hifens consecutivos.
      + Deve ser exclusivo para todas as instâncias do Amazon RDS, Neptune e Amazon DocumentDB por região. Conta da AWS

   1. **Classe da instância**: na lista suspensa, escolha o tipo de instância desejado para essa instância.

   1. **Nível de promoção**: na lista suspensa, escolha o nível de promoção da instância ou selecione *Nenhuma preferência* para permitir que o Amazon DocumentDB defina o nível de promoção para a instância. Números mais baixos significam maior prioridade. Para obter mais informações, consulte [Controlar o destino de failover](failover.md#failover-target_control).

   1. Para adicionar mais instâncias, escolha **Adicionar outras instâncias** e repita as etapas a, b e c.

1. Conclua a operação.
   + Para adicionar instâncias ao seu cluster, escolha **Criar**.
   + Para cancelar a operação, escolha **Cancelar**.

Leva alguns minutos para criar uma instância. Você pode usar o console ou AWS CLI visualizar o status da instância. Para obter mais informações, consulte [Monitorar o status de uma instância](monitoring_docdb-instance_status.md). 

------
#### [ Using the AWS CLI ]

Use a `create-db-instance` AWS CLI operação com os parâmetros a seguir para criar a instância primária para seu cluster.
+ **--db-instance-class** — Obrigatório. A capacidade de computação e memória da instância, por exemplo, `db.m4.large`. Nem todas as classes de instâncias estão disponíveis em todas as Regiões da AWS.
+ **--db-instance-identifier** — Obrigatório. Uma string que identifica a instância.

  Restrições de nomenclatura da instância:
  + O comprimento é de [1 a 63] letras, números ou hífens.
  + O primeiro caractere deve ser uma letra.
  + Não pode terminar com um hífen ou conter dois hifens consecutivos.
  + Deve ser exclusivo para todas as instâncias do Amazon RDS, Neptune e Amazon DocumentDB por região. Conta da AWS
+ **--engine** — Obrigatório. Deve ser `docdb`.
+ **--availability-zone** — Opcional. A zona de disponibilidade na qual você deseja que essa instância seja criada. Use esse parâmetro para localizar suas instâncias em diferentes zonas de disponibilidade para aumentar a tolerância a falhas. Para obter mais informações, consulte [Alta disponibilidade e replicação do Amazon DocumentDB](replication.md). 
+ **--promotion-tier** — Opcional. O nível de prioridade de failover dessa instância. Deve estar entre 0 e 15, com números mais baixos sendo prioridade mais alta. Para obter mais informações, consulte [Controlar o destino de failover](failover.md#failover-target_control). 

1. **Primeiro, determine em quais zonas de disponibilidade você pode criar a instância. **

   Se quiser especificar a zona de disponibilidade antes de criar a instância, execute o seguinte comando para determinar quais zonas de disponibilidade estão disponíveis para o cluster do Amazon DocumentDB.

   Para Linux, macOS ou Unix:

   ```
   aws docdb describe-db-clusters \
          --query 'DBClusters[*].[DBClusterIdentifier,AvailabilityZones[*]]'
   ```

   Para Windows:

   ```
   aws docdb describe-db-clusters ^
          --query 'DBClusters[*].[DBClusterIdentifier,AvailabilityZones[*]]'
   ```

   A saída dessa operação é semelhante à seguinte.

   ```
   [
       [
           "sample-cluster",
           [
               "us-east-1c",
               "us-east-1b",
               "us-east-1a"
           ]
       ]
   ]
   ```

1. **Segundo, determine quais classes de instância você pode criar na região. **

   Para determinar quais classes de instância estão disponíveis na sua região, execute o seguinte comando. Na saída, escolha uma classe de instância para a instância que deseja adicionar ao cluster do Amazon DocumentDB. 

   Para Linux, macOS ou Unix:

   ```
   aws docdb describe-orderable-db-instance-options \
           --engine docdb \
           --query 'OrderableDBInstanceOptions[*].DBInstanceClass'
   ```

   Para Windows:

   ```
   aws docdb describe-orderable-db-instance-options ^
           --engine docdb ^
           --query 'OrderableDBInstanceOptions[*].DBInstanceClass'
   ```

   A saída dessa operação é semelhante à seguinte.

   ```
   [
       "db.r5.16xlarge",
       "db.r5.2xlarge",
       "db.r5.4xlarge",
       "db.r5.8xlarge",
       "db.r5.large",
       "db.r5.xlarge"
   ]
   ```

1. **Por último, adicione uma instância ao cluster do Amazon DocumentDB.**

   Para adicionar uma instância ao cluster do Amazon DocumentDB, execute o seguinte comando.

   Para Linux, macOS ou Unix:

   ```
   aws docdb create-db-instance \
          --db-cluster-identifier sample-cluster \
          --db-instance-identifier sample-instance-2 \
          --availability-zone us-east-1b \
          --promotion-tier 2 \
          --db-instance-class db.r5.xlarge \
          --engine docdb
   ```

   Para Windows:

   ```
   aws docdb create-db-instance ^
          --db-cluster-identifier sample-cluster ^
          --db-instance-identifier sample-instance-2 ^
          --availability-zone us-east-1b ^
          --promotion-tier 2 ^
          --db-instance-class db.r5.xlarge ^
          --engine docdb
   ```

   A saída dessa operação é semelhante à seguinte.

   ```
   {
       "DBInstance": {
           "DBInstanceIdentifier": "sample-instance-2",
           "DBInstanceClass": "db.r5.xlarge",
           "Engine": "docdb",
           "DBInstanceStatus": "creating",
           "PreferredBackupWindow": "02:00-02:30",
           "BackupRetentionPeriod": 1,
           "VpcSecurityGroups": [
               {
                   "VpcSecurityGroupId": "sg-abcd0123",
                   "Status": "active"
               }
           ],
           "AvailabilityZone": "us-east-1b",
           "DBSubnetGroup": {
               "DBSubnetGroupName": "default",
               "DBSubnetGroupDescription": "default",
               "VpcId": "vpc-6242c31a",
               "SubnetGroupStatus": "Complete",
               "Subnets": [
                   {
                       "SubnetIdentifier": "subnet-abcd0123",
                       "SubnetAvailabilityZone": {
                           "Name": "us-west-2a"
                       },
                       "SubnetStatus": "Active"
                   },
                   {
                       "SubnetIdentifier": "subnet-wxyz0123",
                       "SubnetAvailabilityZone": {
                           "Name": "us-west-2b"
                       },
                       "SubnetStatus": "Active"
                   }
               ]
           },
           "PreferredMaintenanceWindow": "sun:11:35-sun:12:05",
           "PendingModifiedValues": {},
           "EngineVersion": "3.6.0",
           "AutoMinorVersionUpgrade": true,
           "PubliclyAccessible": false,
           "DBClusterIdentifier": "sample-cluster",
           "StorageEncrypted": true,
           "KmsKeyId": "arn:aws:kms:us-east-1:<accountID>:key/sample-key",
           "DbiResourceId": "db-ABCDEFGHIJKLMNOPQRSTUVWXYZ",
           "CACertificateIdentifier": "rds-ca-2019",
           "PromotionTier": 2,
           "DBInstanceArn": "arn:aws:rds:us-east-1:<accountID>:db:sample-instance-2"
       }
   }
   ```

Leva alguns minutos para criar a instância. Você pode usar o console ou AWS CLI visualizar o status da instância. Para obter mais informações, consulte [Monitoramento do status de uma instância do Amazon DocumentDB](monitoring_docdb-instance_status.md). 

------

# Descrever instâncias do Amazon DocumentDB
<a name="db-instance-view-details"></a>

Você pode usar o Amazon DocumentDB Management Console ou o AWS CLI para ver detalhes como endpoints de conexão, grupos de segurança, autoridade de certificação e grupos VPCs de parâmetros relacionados às suas instâncias do Amazon DocumentDB.

------
#### [ Using the Console de gerenciamento da AWS ]

Para visualizar os detalhes de suas instâncias usando o Console de gerenciamento da AWS, siga as etapas abaixo.

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

1. No painel de navegação, escolha **Clusters**.
**dica**  
Caso não visualize o painel de navegação à esquerda da tela, selecione o ícone do menu (![\[Hamburger menu icon with three horizontal lines.\]](http://docs.aws.amazon.com/pt_br/documentdb/latest/developerguide/images/docdb-menu-icon.png)) no canto superior esquerdo da página.

1. Na caixa de navegação Clusters, você verá a coluna **Identificador do Cluster**. Suas instâncias estão listadas em clusters, semelhante ao snapshot abaixo.  
![\[Tabela de clusters mostrando a lista de clusters na coluna Identificador de cluster, com instâncias aninhadas dentro de clusters.\]](http://docs.aws.amazon.com/pt_br/documentdb/latest/developerguide/images/choose-clusters.png)

1. Na lista de instâncias, escolha o nome da instância da qual você deseja ver os detalhes. As informações sobre a instância são organizadas nos seguintes agrupamentos:
   + **Resumo**: informações gerais sobre a instância, incluindo a versão do mecanismo, a classe, o status e todas as manutenções pendentes.
   + **Conectividade e segurança**: a seção **Conecte-se** lista os endpoints de conexão para se conectar a essa instância com o shell do mongo ou com uma aplicação. A seção **Grupos de segurança** lista os grupos de segurança associados a essa instância e suas descrições e ID da VPC.
   + **Configuração**: a seção **Detalhes** lista as configurações e o status da instância, incluindo o nome do recurso da Amazon (ARN), o endpoint, o perfil, a classe e a autoridade certificadora da instância. Ela também lista as configurações de segurança e de rede da instância e as informações de backup. A seção **Detalhes do cluster** lista os detalhes do cluster ao qual essa instância pertence. A seção **Instâncias de cluster** lista todas as instâncias que pertencem ao cluster com cada função e status de grupo de parâmetros de cluster de cada instância.
**nota**  
É possível modificar o cluster associado à sua instância selecionando **Modificar** ao lado do cabeçalho **Detalhes do cluster**. Para obter mais informações, consulte [Modificar um cluster do Amazon DocumentDB](db-cluster-modify.md). 
   + **Monitoramento** — as métricas de CloudWatch registros dessa instância. Para obter mais informações, consulte [Monitorando o Amazon DocumentDB com CloudWatch](cloud_watch.md). 
   + **Eventos e tags**: a seção **Eventos recentes** lista os eventos recentes dessa instância. O Amazon DocumentDB mantém um registro de eventos que se relacionam a seus clusters, instâncias, snapshots, grupos de segurança e grupos de parâmetros do cluster. Essas informações incluem a data, a hora e a mensagem associadas a cada evento. A seção **Tags** lista as tags anexadas a este cluster. Para obter mais informações, consulte [Marcação de recursos do Amazon DocumentDB](tagging.md).

------
#### [ Using the AWS CLI ]

Para visualizar os detalhes de suas instâncias do Amazon DocumentDB usando o AWS CLI, use o `describe-db-clusters` comando conforme mostrado nos exemplos abaixo. Para obter mais informações, consulte [https://docs.aws.amazon.com/documentdb/latest/developerguide/API_DescribeDBInstances.html](https://docs.aws.amazon.com/documentdb/latest/developerguide/API_DescribeDBInstances.html) na *Referência de API para gerenciamento de recursos do Amazon DocumentDB*. 

**nota**  
Para determinados atributos de gerenciamento, como o gerenciamento do ciclo de vida de cluster e instâncias, o Amazon DocumentDB aproveita a tecnologia operacional compartilhada com o Amazon RDS. O parâmetro de filtro `filterName=engine,Values=docdb` só retorna clusters do Amazon DocumentDB.

1. **Liste todas as instâncias do Amazon DocumentDB.**

   O AWS CLI código a seguir lista os detalhes de todas as instâncias do Amazon DocumentDB em uma região.

   Para Linux, macOS ou Unix:

   ```
   aws docdb describe-db-instances \
       --filter Name=engine,Values=docdb
   ```

   Para Windows:

   ```
   aws docdb describe-db-instances \
       --filter Name=engine,Values=docdb
   ```

1. **Listar todos os detalhes de uma instância especificada do Amazon DocumentDB**

   O código a seguir lista os detalhes para `sample-cluster-instance`. Incluir o parâmetro `--db-instance-identifier` com o nome de uma instância restringe a saída às informações sobre essa instância específica.

   Para Linux, macOS ou Unix:

   ```
   aws docdb describe-db-instances \
       --db-instance-identifier sample-cluster-instance
   ```

   Para Windows:

   ```
   aws docdb describe-db-instances \
       --db-instance-identifier sample-cluster-instance
   ```

   A saída dessa operação é semelhante à seguinte.

   ```
   {
       "DBInstances": [
           {
               "DbiResourceId": "db-BJKKB54PIDV5QFKGVRX5T3S6GM",
               "DBInstanceArn": "arn:aws:rds:us-east-1:012345678901:db:sample-cluster-instance-00",
               "VpcSecurityGroups": [
                   {
                       "VpcSecurityGroupId": "sg-77186e0d",
                       "Status": "active"
                   }
               ],
               "DBInstanceClass": "db.r5.large",
               "DBInstanceStatus": "creating",
               "AutoMinorVersionUpgrade": true,
               "PreferredMaintenanceWindow": "fri:09:32-fri:10:02",
               "BackupRetentionPeriod": 1,
               "StorageEncrypted": true,
               "DBClusterIdentifier": "sample-cluster",
               "EngineVersion": "3.6.0",
               "AvailabilityZone": "us-east-1a",
               "Engine": "docdb",
               "PromotionTier": 2,
               "DBInstanceIdentifier": "sample-cluster-instance",
               "PreferredBackupWindow": "00:00-00:30",
               "PubliclyAccessible": false,
               "DBSubnetGroup": {
                   "DBSubnetGroupName": "default",
                   "Subnets": [
                       {
                           "SubnetIdentifier": "subnet-4e26d263",
                           "SubnetAvailabilityZone": {
                               "Name": "us-east-1a"
                           },
                           "SubnetStatus": "Active"
                       },
                       {
                           "SubnetIdentifier": "subnet-afc329f4",
                           "SubnetAvailabilityZone": {
                               "Name": "us-east-1c"
                           },
                           "SubnetStatus": "Active"
                       },
                       {
                           "SubnetIdentifier": "subnet-b3806e8f",
                           "SubnetAvailabilityZone": {
                               "Name": "us-east-1e"
                           },
                           "SubnetStatus": "Active"
                       },
                       {
                           "SubnetIdentifier": "subnet-53ab3636",
                           "SubnetAvailabilityZone": {
                               "Name": "us-east-1d"
                           },
                           "SubnetStatus": "Active"
                       },
                       {
                           "SubnetIdentifier": "subnet-991cb8d0",
                           "SubnetAvailabilityZone": {
                               "Name": "us-east-1b"
                           },
                           "SubnetStatus": "Active"
                       },
                       {
                           "SubnetIdentifier": "subnet-29ab1025",
                           "SubnetAvailabilityZone": {
                               "Name": "us-east-1f"
                           },
                           "SubnetStatus": "Active"
                       }
                   ],
                   "VpcId": "vpc-91280df6",
                   "DBSubnetGroupDescription": "default",
                   "SubnetGroupStatus": "Complete"
               },
               "PendingModifiedValues": {},
               "KmsKeyId": "arn:aws:kms:us-east-1:012345678901:key/0961325d-a50b-44d4-b6a0-a177d5ff730b"
           }
       ]
   }
   ```

------

# Modificar uma instância do Amazon DocumentDB
<a name="db-instance-modify"></a>

Você pode modificar sua instância do Amazon DocumentDB usando o Console de gerenciamento da AWS ou o. AWS CLI Para modificar uma instância, ela deve estar no estado *disponível*. Você não pode modificar uma instância que foi interrompida. Se o cluster foi interrompido, primeiro inicie-o, aguarde até que a instância fique *disponível* e faça as modificações desejadas. Para obter mais informações, consulte [Interromper e iniciar um cluster do Amazon DocumentDB](db-cluster-stop-start.md). 

------
#### [ Using the Console de gerenciamento da AWS ]

Para modificar uma instância específica do Amazon DocumentDB usando o console, siga as etapas a seguir.

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

1. No painel de navegação, escolha **Clusters**.
**dica**  
Caso não visualize o painel de navegação à esquerda da tela, selecione o ícone do menu (![\[Hamburger menu icon with three horizontal lines.\]](http://docs.aws.amazon.com/pt_br/documentdb/latest/developerguide/images/docdb-menu-icon.png)) no canto superior esquerdo da página.

1. Na caixa de navegação Clusters, você verá a coluna **Identificador do Cluster**. Suas instâncias estão listadas em clusters, semelhante ao snapshot abaixo.  
![\[Tabela de clusters mostrando a lista de clusters na coluna Identificador de cluster, com instâncias aninhadas dentro de clusters.\]](http://docs.aws.amazon.com/pt_br/documentdb/latest/developerguide/images/choose-clusters.png)

1. Marque a caixa à esquerda da instância que você deseja modificar.

1. Escolha **Ações** e, em seguida, **Modificar**.

1. No painel **Modificar instância: <nome-da-instância>**, faça as alterações desejadas. É possível fazer as alterações a seguir:
   + **Especificações da instância**: o identificador e a classe da instância. Restrições de nomenclatura de identificador de instância:
     + **Identificador da instância** — insira um nome exclusivo para todas as instâncias de sua propriedade Conta da AWS na região atual. O identificador da instância deve conter [1 a 63] caracteres alfanuméricos ou hifens, ter uma letra como primeiro caractere e não pode terminar com um hífen nem conter dois hifens consecutivos.
     + **Classe de instância**: no menu suspenso, selecione uma classe de instância para sua instância do Amazon DocumentDB. Para obter mais informações, consulte [Gerenciar classes de instância](db-instance-classes.md).
   + **Autoridade de certificação**: certificado do servidor para essa instância. Para obter mais informações, consulte [Atualizar seus certificados TLS do Amazon DocumentDB](ca_cert_rotation.md). 
   + **Failover**: durante o failover, a instância com o nível de promoção mais alto será promovida para primária. Para obter mais informações, consulte [Failover do Amazon DocumentDB](failover.md). 
   + **Manutenção**: a janela de manutenção na qual modificações ou patches pendentes são aplicados às instâncias no cluster.

1. Ao concluir, escolha **Continuar** para ver um resumo das alterações.

1. Depois de verificar suas alterações, é possível aplicá-las imediatamente, ou durante a próxima janela de manutenção em **Programação de modificações**. Selecione **Modificar instância** para salvar as alterações. Como alternativa, você pode escolher **Cancelar** para descartar as alterações.

Levará alguns minutos para que suas alterações sejam aplicadas. É possível usar a instância somente quando seu status for *disponível*. É possível monitorar o status da instância usando o console ou a AWS CLI. Para obter mais informações, consulte [Monitoramento do status de uma instância do Amazon DocumentDB](monitoring_docdb-instance_status.md). 

------
#### [ Using the AWS CLI ]

Para modificar uma instância específica do Amazon DocumentDB usando o AWS CLI, use o `modify-db-instance` com os seguintes parâmetros. Para obter mais informações, consulte [Modificar DBInstance](https://docs.aws.amazon.com/documentdb/latest/developerguide/API_ModifyDBInstance.html). O código a seguir modifica a classe de instância para `db.r5.large` para a instância `sample-instance`.

**Parâmetros**
+ **--db-instance-identifier** — Obrigatório. O identificador da instância a ser modificada.
+ **--db-instance-class** — Opcional. A nova capacidade de computação e memória da instância. Por exemplo, `db.r5.large`. Nem todas as classes de instância estão disponíveis em todos os Regiões da AWS. Se você modificar a classe da instância, ocorrerá uma interrupção durante a alteração. A alteração será aplicada durante a próxima janela de manutenção, a menos que `ApplyImmediately` seja especificado como verdadeiro para essa solicitação.
+ **--apply-immediately** ou **--no-apply-immediately**: opcional. Especifica se essa modificação deve ser aplicada imediatamente ou se deve aguardar até a próxima janela de manutenção. Se esse parâmetro for omitido, a modificação será executada durante a próxima janela de manutenção.

**Example**  
Para Linux, macOS ou Unix:  

```
aws docdb modify-db-instance \
       --db-instance-identifier sample-instance \
       --db-instance-class db.r5.large \
       --apply-immediately
```
Para Windows:  

```
aws docdb modify-db-instance ^
       --db-instance-identifier sample-instance ^
       --db-instance-class db.r5.large ^
       --apply-immediately
```
A saída dessa operação é semelhante à seguinte.  

```
{
    "DBInstances": [
        {
            "DBInstanceIdentifier": "sample-instance-1",
            "DBInstanceClass": "db.r5.large",
            "Engine": "docdb",
            "DBInstanceStatus": "modifying",
            "Endpoint": {                     
                "Address": "sample-instance-1.node.us-east-1.docdb.amazonaws.com",
                "Port": 27017,   
                "HostedZoneId": "ABCDEFGHIJKLM"
            },
            "InstanceCreateTime": "2020-01-10T22:18:55.921Z",
            "PreferredBackupWindow": "02:00-02:30",
            "BackupRetentionPeriod": 1,
            "VpcSecurityGroups": [
                {                             
                    "VpcSecurityGroupId": "sg-abcd0123",
                    "Status": "active"
                }
            ],
            "AvailabilityZone": "us-east-1a",
            "DBSubnetGroup": {
                "DBSubnetGroupName": "default",
                "DBSubnetGroupDescription": "default",
                "VpcId": "vpc-abcd0123",
                "SubnetGroupStatus": "Complete",
                "Subnets": [
                    {
                        "SubnetIdentifier": "subnet-abcd0123",
                        "SubnetAvailabilityZone": {
                            "Name": "us-east-1a"
                        },
                        "SubnetStatus": "Active"
                    },
                    {
                        "SubnetIdentifier": "subnet-abcd0123",
                        "SubnetAvailabilityZone": {
                            "Name": "us-east-1b"
                        },
                        "SubnetStatus": "Active"
                    }
                ]
            },
            "PreferredMaintenanceWindow": "sun:10:57-sun:11:27",
            "PendingModifiedValues": {
                "DBInstanceClass": "db.r5.large"
            },
            "EngineVersion": "3.6.0",
            "AutoMinorVersionUpgrade": true,
            "PubliclyAccessible": false,
            "DBClusterIdentifier": "sample-cluster",
            "StorageEncrypted": true,
            "KmsKeyId": "arn:aws:kms:us-east-1:123456789012:key/wJalrXUtnFEMI/K7MDENG/bPxRfiCYEXAMPLEKEY",
            "DbiResourceId": "db-ABCDEFGHIJKLMNOPQRSTUVWXYZ",
            "CACertificateIdentifier": "rds-ca-2019",
            "PromotionTier": 1,                     
            "DBInstanceArn": "arn:aws:rds:us-east-1:123456789012:db:sample-instance-1",
            "EnabledCloudwatchLogsExports": [
                "profiler"
            ]
        }
    ]
}
```

Leva alguns minutos para que suas modificações sejam aplicadas. É possível usar a instância somente quando seu status for *disponível*. Você pode monitorar o status da instância usando o Console de gerenciamento da AWS ou AWS CLI. Para obter mais informações, consulte [Monitoramento do status de uma instância do Amazon DocumentDB](monitoring_docdb-instance_status.md). 

------

# Reinicializar uma instância do Amazon DocumentDB
<a name="db-instance-reboot"></a>

Ocasionalmente, você pode precisar reinicializar sua instância do Amazon DocumentDB, geralmente por motivos de manutenção. Se você fizer determinadas alterações, como alterar o grupo de parâmetros de cluster associado a um cluster, será necessário reinicializar as instâncias no cluster para que as alterações sejam implantadas. Você pode reinicializar uma instância específica usando o Console de gerenciamento da AWS ou o. AWS CLI

Reinicializar uma instância reinicia o serviço de mecanismo de banco de dados. A reinicialização resulta em uma interrupção momentânea, durante a qual o status da instância é definido como `rebooting`. Um evento do Amazon DocumentDB é criado quando a reinicialização é concluída.

A reinicialização de uma instância não resulta em um failover. Para fazer o failover de um cluster do Amazon DocumentDB, use Console de gerenciamento da AWS a ou AWS CLI a operação. `failover-db-cluster` Para obter mais informações, consulte [Failover do Amazon DocumentDB](failover.md). 

Você não poderá reinicializar sua instância se ela não estiver no estado *disponível*. Seu banco de dados pode se tornar indisponível por vários motivos, como uma modificação solicitada anteriormente ou uma ação no intervalo de manutenção. Para obter mais informações sobre os estados da instância, consulte [Monitoramento do status de uma instância do Amazon DocumentDB](monitoring_docdb-instance_status.md). 

------
#### [ Using the Console de gerenciamento da AWS ]

O procedimento a seguir reinicializa uma instância especificada usando o console.

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

1. No painel de navegação, escolha **Clusters**.
**dica**  
Caso não visualize o painel de navegação à esquerda da tela, selecione o ícone do menu (![\[Hamburger menu icon with three horizontal lines.\]](http://docs.aws.amazon.com/pt_br/documentdb/latest/developerguide/images/docdb-menu-icon.png)) no canto superior esquerdo da página.

1. Na caixa de navegação Clusters, você verá a coluna **Identificador do Cluster**. Suas instâncias estão listadas em clusters, semelhante ao snapshot abaixo.  
![\[Tabela de clusters mostrando a lista de clusters na coluna Identificador de cluster, com instâncias aninhadas dentro de clusters.\]](http://docs.aws.amazon.com/pt_br/documentdb/latest/developerguide/images/choose-clusters.png)

1. Marque a caixa à esquerda da instância que você deseja reinicializar.

1. Escolha **Ações**, escolha **Reinicializar** e depois **Reinicializar** para confirmar a reinicialização.

Demora alguns minutos para sua instância reinicializar. É possível usar a instância somente quando seu status for *disponível*. É possível monitorar o status da instância usando o console ou a AWS CLI. Para obter mais informações, consulte [Monitoramento do status de uma instância do Amazon DocumentDB](monitoring_docdb-instance_status.md). 

------
#### [ Using the AWS CLI ]

Para reinicializar uma instância do Amazon DocumentDB, use a operação `reboot-db-instance` com o parâmetro `--db-instance-identifier`. Esse parâmetro especifica o identificador da instância a ser reinicializada.

O código a seguir reinicializa a instância `sample-instance`.

**Example**  
Para Linux, macOS ou Unix:  

```
aws docdb reboot-db-instance \
       --db-instance-identifier sample-instance
```
Para Windows:  

```
aws docdb reboot-db-instance ^
       --db-instance-identifier sample-instance
```
A saída dessa operação é semelhante à seguinte.  

```
{
    "DBInstance": {
        "DBInstanceIdentifier": "sample-instance",
        "DBInstanceClass": "db.r5.large",
        "Engine": "docdb",
        "DBInstanceStatus": "rebooting",
        "Endpoint": {
            "Address": "sample-instance.node.us-east-1.docdb.amazonaws.com",
            "Port": 27017,   
            "HostedZoneId": "ABCDEFGHIJKLM"
        },
        "InstanceCreateTime": "2020-03-27T08:05:56.314Z",
        "PreferredBackupWindow": "02:00-02:30",
        "BackupRetentionPeriod": 1,
        "VpcSecurityGroups": [
            {
                "VpcSecurityGroupId": "sg-abcd0123",
                "Status": "active"
            }
        ],
        "AvailabilityZone": "us-east-1c",
        "DBSubnetGroup": {
            "DBSubnetGroupName": "default",
            "DBSubnetGroupDescription": "default",
            "VpcId": "vpc-abcd0123",
            "SubnetGroupStatus": "Complete",
            "Subnets": [
                {
                    "SubnetIdentifier": "subnet-abcd0123",
                    "SubnetAvailabilityZone": {
                        "Name": "us-east-1a"
                    },
                    "SubnetStatus": "Active"
                },
                {
                    "SubnetIdentifier": "subnet-wxyz0123",
                    "SubnetAvailabilityZone": {
                        "Name": "us-east-1b"
                    },
                    "SubnetStatus": "Active"
                }
            ]
        },
        "PreferredMaintenanceWindow": "sun:06:53-sun:07:23",
        "PendingModifiedValues": {},
        "EngineVersion": "3.6.0",
        "AutoMinorVersionUpgrade": true,
        "PubliclyAccessible": false,
        "DBClusterIdentifier": "sample-cluster",
        "StorageEncrypted": true,
        "KmsKeyId": "arn:aws:kms:us-east-1:<accountID>:key/sample-key",
        "DbiResourceId": "db-ABCDEFGHIJKLMNOPQRSTUVWXYZ",
        "CACertificateIdentifier": "rds-ca-2019",
        "PromotionTier": 1,
        "DBInstanceArn": "arn:aws:rds:us-east-1:<accountID>:db:sample-instance",
        "EnabledCloudwatchLogsExports": [
            "profiler"
        ]
    }
}
```

Demora alguns minutos para sua instância reinicializar. É possível usar a instância somente quando seu status for *disponível*. É possível monitorar o status da instância usando o console ou a AWS CLI. Para obter mais informações, consulte [Monitoramento do status de uma instância do Amazon DocumentDB](monitoring_docdb-instance_status.md). 

------

# Excluir uma instância do Amazon DocumentDB
<a name="db-instance-delete"></a>

Você pode excluir sua instância do Amazon DocumentDB usando o Console de gerenciamento da AWS ou o. AWS CLI Para excluir uma instância, ela deve estar no estado *disponível*. Você não pode excluir uma instância que foi interrompida. Se o cluster do Amazon DocumentDB que contém a instância for interrompido, primeiro inicie o cluster, aguarde até que a instância fique *disponível* e, depois, exclua-a. Para obter mais informações, consulte [Interromper e iniciar um cluster do Amazon DocumentDB](db-cluster-stop-start.md). 

**nota**  
O Amazon DocumentDB armazena todos os dados no volume do cluster. Os dados persistem nesse volume de cluster, mesmo se você remover todas as instâncias do cluster. Se precisar acessar os dados novamente, adicione uma instância ao cluster a qualquer momento e continue de onde parou.

------
#### [ Using the Console de gerenciamento da AWS ]

O procedimento a seguir excluir uma instância do Amazon DocumentDB especificada usando o console.

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

1. No painel de navegação, escolha **Clusters**.
**dica**  
Caso não visualize o painel de navegação à esquerda da tela, selecione o ícone do menu (![\[Hamburger menu icon with three horizontal lines.\]](http://docs.aws.amazon.com/pt_br/documentdb/latest/developerguide/images/docdb-menu-icon.png)) no canto superior esquerdo da página.

1. Na caixa de navegação Clusters, você verá a coluna **Identificador do Cluster**. Suas instâncias estão listadas em clusters, semelhante ao snapshot abaixo.  
![\[Tabela de clusters mostrando a lista de clusters na coluna Identificador de cluster, com instâncias aninhadas dentro de clusters.\]](http://docs.aws.amazon.com/pt_br/documentdb/latest/developerguide/images/choose-clusters.png)

1. Marque a caixa à esquerda da instância que você deseja excluir.

1. Selecione **Ações** e escolha **Excluir**.

   1. Se você estiver excluindo a última instância no cluster:
      + **Criar snapshot final do cluster?** — Escolha **Sim** se você quiser criar um snapshot final antes do cluster ser excluído. Caso contrário, escolha **Não**.
      + **Nome do snapshot final**: se você escolher criar um snapshot final, insira o identificador do novo snapshot do cluster.
      + **Excluir instância <nome da instância>?** — Insira a frase **excluir cluster inteiro** no campo para confirmar a exclusão.

   1. Se você não estiver excluindo a última instância no cluster:
      + **Excluir instância <nome da instância>?** — Insira a frase **exclua-me** no campo para confirmar a exclusão. 

1. Selecione **Excluir** para excluir a instância. 

Leva alguns minutos para uma instância ser excluída. Para monitorar o status de uma instância, consulte [Monitoramento do status de uma instância do Amazon DocumentDB](monitoring_docdb-instance_status.md). 

------
#### [ Using the AWS CLI ]

O procedimento a seguir exclui uma instância do Amazon DocumentDB usando a AWS CLI.

1. **Primeiro, determine quantas instâncias estão no cluster do Amazon DocumentDB:** 

   Para determinar quantas instâncias estão no cluster, execute o comando `describe-db-clusters` da seguinte forma.

   ```
   aws docdb describe-db-clusters \
       --db-cluster-identifier sample-cluster \
       --query 'DBClusters[*].[DBClusterIdentifier,DBClusterMembers[*].DBInstanceIdentifier]'
   ```

   A saída dessa operação é semelhante à seguinte.

   ```
   [
       [
           "sample-cluster",
           [
               "sample-instance-1",
               "sample-instance-2"
           ]
       ]
   ]
   ```

1. **Se houver mais de uma instância no cluster do Amazon DocumentDB:**

   Para excluir uma instância do Amazon DocumentDB especificada, use o comando `delete-db-instance` com o parâmetro `--db-instance-identifier`, conforme mostrado abaixo. Leva alguns minutos para uma instância ser excluída. Para monitorar o status de uma instância, consulte [Monitoramento do status de uma instância do Amazon DocumentDB](monitoring_docdb-instance_status.md). 

   ```
   aws docdb delete-db-instance \
          --db-instance-identifier sample-instance-2
   ```

   A saída dessa operação é semelhante à seguinte.

   ```
   {
       "DBInstance": {
           "DBInstanceIdentifier": "sample-instance-2",
           "DBInstanceClass": "db.r5.large",
           "Engine": "docdb",
           "DBInstanceStatus": "deleting",
           "Endpoint": {
               "Address": "sample-instance-2.node.us-east-1.docdb.amazonaws.com",
               "Port": 27017,
               "HostedZoneId": "ABCDEFGHIJKLM"
           },
           "InstanceCreateTime": "2020-03-27T08:05:56.314Z",
           "PreferredBackupWindow": "02:00-02:30",
           "BackupRetentionPeriod": 1,
           "VpcSecurityGroups": [
               {
                   "VpcSecurityGroupId": "sg-abcd0123",
                   "Status": "active"
               }
           ],
           "AvailabilityZone": "us-east-1c",
           "DBSubnetGroup": {
               "DBSubnetGroupName": "default",
               "DBSubnetGroupDescription": "default",
               "VpcId": "vpc-6242c31a",
               "SubnetGroupStatus": "Complete",
               "Subnets": [
                   {
                       "SubnetIdentifier": "subnet-abcd0123",
                       "SubnetAvailabilityZone": {
                           "Name": "us-east-1a"
                       },
                       "SubnetStatus": "Active"
                   },
                   {
                       "SubnetIdentifier": "subnet-wxyz0123",
                       "SubnetAvailabilityZone": {
                           "Name": "us-east-1b"
                       },
                       "SubnetStatus": "Active"
                   }
               ]
           },
           "PreferredMaintenanceWindow": "sun:06:53-sun:07:23",
           "PendingModifiedValues": {},
           "EngineVersion": "3.6.0",
           "AutoMinorVersionUpgrade": true,
           "PubliclyAccessible": false,
           "DBClusterIdentifier": "sample-cluster",
           "StorageEncrypted": true,
           "KmsKeyId": "arn:aws:kms:us-east-1:<accountID>:key/sample-key",
           "DbiResourceId": "db-ABCDEFGHIJKLMNOPQRSTUVWXYZ",
           "CACertificateIdentifier": "rds-ca-2019",
           "PromotionTier": 1,
           "DBInstanceArn": "arn:aws:rds:us-east-1:<accountID>:db:sample-instance-2",
           "EnabledCloudwatchLogsExports": [
               "profiler"
           ]
       }
   }
   ```

1. **Se a instância que deseja excluir for a última instância no cluster do Amazon DocumentDB: **

   Se você excluir a última instância em um cluster do Amazon DocumentDB, você também excluirá esse cluster e os snapshots automáticos e backups contínuos associados a ele.

   Para excluir a última instância no cluster, é possível excluí-lo e opcionalmente criar um snapshot final. Para obter mais informações, consulte [Excluir um cluster do Amazon DocumentDB](db-cluster-delete.md). 

------

## Proteção contra exclusão
<a name="db-instance-delete-deletion-protection"></a>

A exclusão da última instância em um cluster do Amazon DocumentDB também excluirá o cluster, os snapshots automáticos e os backups contínuos associados a ele. O Amazon DocumentDB impõe proteção contra exclusão para um cluster, independentemente de você realizar a operação de exclusão usando o. ou o. Console de gerenciamento da AWS AWS CLI Se a proteção contra exclusão estiver habilitada, não será possível excluir um cluster.

Para excluir um cluster com a projeção contra exclusão habilitada, primeiro é necessário modificar o cluster e desabilitar a proteção contra exclusão. Para obter mais informações, consulte [Excluir um cluster do Amazon DocumentDB](db-cluster-delete.md). 

# Gerenciar classes de instância
<a name="db-instance-classes"></a>

A classe de instância determina a capacidade de computação e de memória de uma instância do Amazon DocumentDB (compativel com MongoDB). A classe de instância da qual você precisa depende dos requisitos de energia e memória de processamento. 

O Amazon DocumentDB oferece suporte às famílias de classes de instância R4, R5, R6G, R8G, T3 e T4G. Essas classes são de instâncias da geração atual que são otimizadas para aplicações com uso intensivo de memória. Para obter as especificações dessas classes, consulte [Especificações de classe de instância](#db-instance-class-specs). 

**Topics**
+ [Determinar uma classe de instância](#db-instance-class-determining)
+ [Alterar a classe de uma instância](#db-instance-class-changing)
+ [Classes de instância compatíveis por região](#db-instance-classes-by-region)
+ [Especificações de classe de instância](#db-instance-class-specs)

## Determinar uma classe de instância
<a name="db-instance-class-determining"></a>

Para determinar a classe de uma instância, você pode usar a `describe-db-instances` AWS CLI operação Console de gerenciamento da AWS ou a.

------
#### [ Using the Console de gerenciamento da AWS ]

Para determinar a classe de instância para as instâncias do seu cluster, execute as etapas a seguir no console.

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

1. No painel de navegação, escolha **Clusters** para encontrar a instância do seu interesse. 
**dica**  
Caso não visualize o painel de navegação à esquerda da tela, selecione o ícone do menu (![\[Hamburger menu icon with three horizontal lines.\]](http://docs.aws.amazon.com/pt_br/documentdb/latest/developerguide/images/docdb-menu-icon.png)) no canto superior esquerdo da página.

1. Na caixa de navegação Clusters, você verá a coluna **Identificador do Cluster**. Suas instâncias estão listadas em clusters, semelhante ao snapshot abaixo.  
![\[Tabela de clusters mostrando como uma instância está aninhada sob um cluster.\]](http://docs.aws.amazon.com/pt_br/documentdb/latest/developerguide/images/choose-clusters.png)

1. Na lista de instâncias, expanda o cluster para encontrar as instâncias de seu interesse. Encontre a instância desejada. Em seguida, verifique a coluna **Tamanho** da linha da instância para visualizar a classe de instância.

   Na imagem a seguir, a classe da instância `robo3t` é `db.r5.4xlarge`.  
![\[Lista de instâncias na tabela Clusters com a coluna Tamanho mostrando o tipo de instância.\]](http://docs.aws.amazon.com/pt_br/documentdb/latest/developerguide/images/instance-class.png)

------
#### [ Using the AWS CLI ]

Para determinar a classe de uma instância usando o AWS CLI, use a `describe-db-instances` operação com os parâmetros a seguir.
+ **--db-instance-identifier**: opcional. Especifica a instância para a qual você deseja localizar a classe da instância. Se o parâmetro for omitido, `describe-db-instances` retornará uma descrição para até 100 das suas instâncias.
+ **--query**: opcional. Especifica os membros da instância a serem incluídos nos resultados. Se esse parâmetro for omitido, todos os membros da instância serão retornados.

**Example**  
O exemplo a seguir localiza o nome e a classe da instância para a instância `sample-instance-1`.  
Para Linux, macOS ou Unix:  

```
aws docdb describe-db-instances \
    --query 'DBInstances[*].[DBInstanceIdentifier,DBInstanceClass]' \
    --db-instance-identifier sample-instance-1
```
Para Windows:  

```
aws docdb describe-db-instances ^
    --query 'DBInstances[*].[DBInstanceIdentifier,DBInstanceClass]' ^
    --db-instance-identifier sample-instance-1
```
A saída dessa operação é semelhante à seguinte.  

```
[
    [
        "sample-instance-1",
        "db.r5.large"
    ]
```

**Example**  
O exemplo a seguir localiza o nome e a classe de até 100 instâncias do Amazon DocumentDB.  
Para Linux, macOS ou Unix:  

```
aws docdb describe-db-instances \
    --query 'DBInstances[*].[DBInstanceIdentifier,DBInstanceClass]' \
    --filter Name=engine,Values=docdb
```
Para Windows:  

```
aws docdb describe-db-instances ^
    --query 'DBInstances[*].[DBInstanceIdentifier,DBInstanceClass]' ^
    --filter Name=engine,Values=docdb
```
A saída dessa operação é semelhante à seguinte.  

```
[
    [
        "sample-instance-1",
        "db.r5.large"
    ],
    [
        "sample-instance-2",
        "db.r5.large"
    ],
    [
        "sample-instance-3",
        "db.r5.4xlarge"
    ],
    [
        "sample-instance-4",
        "db.r5.4xlarge"
    ]
]
```

Para obter mais informações, consulte [Descrever instâncias do Amazon DocumentDB](db-instance-view-details.md). 

------

## Alterar a classe de uma instância
<a name="db-instance-class-changing"></a>

Você pode alterar a classe da instância usando o Console de gerenciamento da AWS ou AWS CLI o. Para obter mais informações, consulte [Modificar uma instância do Amazon DocumentDB](db-instance-modify.md). 

## Classes de instância compatíveis por região
<a name="db-instance-classes-by-region"></a>

O Amazon DocumentDB é compatível com as classes de instância a seguir:
+ `R8G`—A última geração de instâncias otimizadas para memória com processadores AWS Graviton4 baseados em ARM que oferecem desempenho até 30% melhor do que as instâncias R6G.
+ `R6G`—Instâncias otimizadas para memória baseadas em processadores AWS Graviton2 baseados em ARM que oferecem desempenho até 30% melhor em relação às instâncias R5 a um custo 5% menor.
+ `R6GD`—Instâncias R6G otimizadas para memória com armazenamento local de unidade de estado sólido (SSDNVMe) baseado em memória expressa () não volátil para dados efêmeros.
+ `R5`: instâncias otimizadas para memória que oferecem desempenho até 100% melhor em relação às instâncias R4 pelo mesmo custo de instância.
+ `R4`: geração anterior de instâncias otimizadas para memória.
+ `T4G`— Tipo de instância de uso geral intermitente e de baixo custo de última geração, alimentada por processadores AWS Graviton2 baseados em ARM, que fornece um nível básico de desempenho de CPU, oferecendo um desempenho de preço até 35% melhor em relação às instâncias T3 e ideal para executar aplicativos com uso moderado de CPU que apresentam picos temporários no uso.
+ `T3`: instância de uso geral de baixo custo com capacidade de expansão que fornecem um nível de linha de base de performance de CPU com a capacidade de expansão para uso de CPU a qualquer momento e pelo tempo necessário.

Para obter especificações dessas classes de instância, consulte [Especificações de classe de instância](#db-instance-class-specs). 

**nota**  
O armazenamento otimizado para E/S só está disponível nas versões 5.0 e 8.0 do mecanismo (clusters baseados em instâncias).

Uma classe de instância específica pode ou não ser compatível em uma região. A tabela a seguir especifica quais classes de instância são compatíveis com o Amazon DocumentDB em cada região.


**Classes de instância compatíveis por região**  

|  | Classes de instância | Região | R8G | R6GD | R6G | R5 | R4 | T4G | T3 | Sem servidor | 
| --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | 
| Leste dos EUA (Ohio) | Compatível | Compatível | Compatível | Compatível | Compatível | Compatível | Compatível | Compatível | 
| Leste dos EUA (Norte da Virgínia) | Compatível | Compatível | Compatível | Compatível | Compatível | Compatível | Compatível | Compatível | 
| Oeste dos EUA (Oregon) | Compatível | Compatível | Compatível | Compatível | Compatível | Compatível | Compatível | Compatível | 
| África (Cidade do Cabo) |  |  | Compatível | Compatível |  | Compatível | Compatível | Compatível | 
| América do Sul (São Paulo) |  | Compatível | Compatível | Compatível |  | Compatível | Compatível | Compatível | 
| Ásia-Pacífico (Hong Kong) |  |  | Compatível | Compatível |  | Compatível | Compatível | Compatível | 
| Ásia-Pacífico (Hyderabad) |  |  | Compatível | Compatível |  | Compatível | Compatível | Compatível | 
| Ásia-Pacífico (Malásia) |  |  | Compatível |  |  | Compatível | Compatível |  | 
| Ásia-Pacífico (Mumbai) | Compatível | Compatível | Compatível | Compatível |  | Compatível | Compatível | Compatível | 
| Ásia-Pacífico (Osaka) |  | Compatível | Compatível | Compatível |  | Compatível | Compatível |  | 
| Ásia-Pacífico (Seul) | Compatível | Compatível | Compatível | Compatível |  | Compatível | Compatível | Compatível | 
| Ásia-Pacífico (Sydney) | Compatível | Compatível | Compatível | Compatível |  | Compatível | Compatível | Compatível | 
| Ásia-Pacífico (Jacarta) | Compatível | Compatível | Compatível | Compatível |  | Compatível | Compatível |  | 
| Ásia-Pacífico (Melbourne) |  |  | Compatível | Compatível |  | Compatível | Compatível |  | 
| Ásia-Pacífico (Singapura) | Compatível | Compatível | Compatível | Compatível |  | Compatível | Compatível | Compatível | 
| Ásia-Pacífico (Tailândia) |  |  | Compatível |  |  | Compatível | Compatível |  | 
| Ásia-Pacífico (Tóquio) | Compatível | Compatível | Compatível | Compatível |  | Compatível | Compatível | Compatível | 
| Canadá (Central) |  | Compatível | Compatível | Compatível |  | Compatível | Compatível | Compatível | 
| Europa (Frankfurt) | Compatível | Compatível | Compatível | Compatível |  | Compatível | Compatível | Compatível | 
| Europa (Zurique) |  | Compatível | Compatível | Compatível |  | Compatível | Compatível |  | 
| Europa (Irlanda) | Compatível | Compatível | Compatível | Compatível | Compatível | Compatível | Compatível | Compatível | 
| Europa (Londres) |  | Compatível | Compatível | Compatível |  | Compatível | Compatível | Compatível | 
| Europa (Milão) |  |  | Compatível | Compatível |  | Compatível | Compatível | Compatível | 
| Europa (Paris) |  | Compatível | Compatível | Compatível |  | Compatível | Compatível | Compatível | 
| Europa (Espanha) | Compatível | Compatível | Compatível | Compatível |  | Compatível | Compatível | Compatível | 
| Europa (Estocolmo) | Compatível | Compatível | Compatível | Compatível |  | Compatível | Compatível |  | 
| México (Centro) |  |  | Compatível |  |  | Compatível | Compatível |  | 
| Oriente Médio (Emirados Árabes Unidos) |  |  | Compatível | Compatível |  | Compatível | Compatível | Compatível | 
| China (Pequim) |  | Compatível | Compatível | Compatível |  | Compatível | Compatível | Compatível | 
| China (Ningxia) |  |  | Compatível | Compatível |  | Compatível | Compatível | Compatível | 
| Israel (Tel Aviv) |  |  | Compatível | Compatível |  | Compatível | Compatível | Compatível | 
| AWS GovCloud (Oeste dos EUA) | Compatível | Compatível | Compatível | Compatível |  | Compatível | Compatível | Compatível | 
| AWS GovCloud (Leste dos EUA) |  | Compatível | Compatível | Compatível |  | Compatível | Compatível | Compatível | 

## Especificações de classe de instância
<a name="db-instance-class-specs"></a>

A tabela a seguir fornece detalhes das classes de instância do Amazon DocumentDB, incluindo quais tipos de instância são aceitos em cada classe. É possível encontrar explicações para cada coluna da tabela abaixo da tabela.


| Classe de instância | vCPU1 | Memória (GiB)2 | NVMe Cache SSD em camadas (GiB) 3 | Temperatura máxima de armazenamento (GiB) 4 | Largura de banda de linha de base / rajada (Gbps) 5 | Motores de apoio 6 | 
| --- | --- | --- | --- | --- | --- | --- | 
| R8G — Classe de instância otimizada para memória da geração atual com base no Graviton4 O R8G é a mais nova família de instâncias (Graviton4), disponível somente nas versões 5.0 e 8.0 do motor. Os tamanhos db.r8g.24xlarge e db.r8g.48xlarge ainda não estão disponíveis. | 
| db.r8g.large | 2 | 16 | - | 30 | 0.937/12.5 | 5.0.0 e 8.0.0 | 
| db.r8g.xlarge | 4 | 32 | - | 60 | 1.875/12.5 | 5.0.0 e 8.0.0 | 
| db.r8g.2xlarge | 8 | 64 | - | 121 | 3.75/15.0 | 5.0.0 e 8.0.0 | 
| db.r8g.4xlarge | 16 | 128 | - | 243 | 7.5/15.0 | 5.0.0 e 8.0.0 | 
| db.r8g.8xlarge | 32 | 256 | - | 488 | 15 | 5.0.0 e 8.0.0 | 
| db.r8g.12xlarge | 48 | 384 | - | 732 | 22 | 5.0.0 e 8.0.0 | 
| db.r8g.16xlarge | 64 | 512 | - | 987 | 30 | 5.0.0 e 8.0.0 | 
| R6G — Classe de instância otimizada para memória da geração atual com base no Graviton2 | 
| db.r6g.large | 2 | 16 | - | 32 | 0,75/10 | 4.0.0, 5.0.0 e 8.0.0 | 
| db.r6g.xlarge | 4 | 32 | - | 63 | 1,25/10 | 4.0.0, 5.0.0 e 8.0.0 | 
| db.r6g.2xlarge | 8 | 64 | - | 126 | 2,5/10 | 4.0.0, 5.0.0 e 8.0.0 | 
| db.r6g.4xlarge | 16 | 128 | - | 252 | 5,0/10 | 4.0.0, 5.0.0 e 8.0.0 | 
| db.r6g.8xlarge | 32 | 256 | - | 504 | 12 | 4.0.0, 5.0.0 e 8.0.0 | 
| db.r6g.12xlarge | 48 | 384 | - | 756 | 20 | 4.0.0, 5.0.0 e 8.0.0 | 
| db.r6g.16xlarge | 64 | 512 | - | 1008 | 25 | 4.0.0, 5.0.0 e 8.0.0 | 
| R6GD — Classe de instância NVMe suportada pela geração atual baseada em Graviton2 | 
| db.r6gd.xlarge | 4 | 32 | 173 | 64 | 1,25/10 | 5.0.0 e 8.0.0 | 
| db.r6gd.2xlarge | 8 | 64 | 346 | 128 | 2,5/10 | 5.0.0 e 8.0.0 | 
| db.r6gd.4xlarge | 16 | 128 | 694 | 256 | 5,0/10 | 5.0.0 e 8.0.0 | 
| db.r6gd.8xlarge | 32 | 256 | 1388 | 512 | 12 | 5.0.0 e 8.0.0 | 
| db.r6gd.12xlarge | 48 | 384 | 2082 | 768 | 20 | 5.0.0 e 8.0.0 | 
| db.r6gd.16xlarge | 64 | 512 | 2776 | 1024 | 25 | 5.0.0 e 8.0.0 | 
| R5: classes de instância da geração anterior otimizadas para memória | 
| db.r5.large | 2 | 16 | - | 31 | 0,75/10 | 3.6.0, 4.0.0, 5.0.0 e 8.0.0 | 
| db.r5.xlarge | 4 | 32 | - | 62 | 1,25/10 | 3.6.0, 4.0.0, 5.0.0 e 8.0.0 | 
| db.r5.2xlarge | 8 | 64 | - | 124 | 2,5/10 | 3.6.0, 4.0.0, 5.0.0 e 8.0.0 | 
| db.r5.4xlarge | 16 | 128 | - | 249 | 5,0/10 | 3.6.0, 4.0.0, 5.0.0 e 8.0.0 | 
| db.r5.8xlarge | 32 | 256 | - | 504 | 10 | 3.6.0, 4.0.0, 5.0.0 e 8.0.0 | 
| db.r5.12xlarge | 48 | 384 | - | 748 | 12 | 3.6.0, 4.0.0, 5.0.0 e 8.0.0 | 
| db.r5.16xlarge | 64 | 512 | - | 1008 | 20 | 3.6.0, 4.0.0, 5.0.0 e 8.0.0 | 
| db.r5.24xlarge | 96 | 768 | - | 1500 | 25 | 3.6.0, 4.0.0, 5.0.0 e 8.0.0 | 
| R4: classes de instância da geração anterior otimizadas para memória As instâncias R4 só são compatíveis com a versão 3.6 do mecanismo. Observe que o Amazon DocumentDB 3.6 chega ao fim do suporte padrão em 30 de março de 2026. O Extended Support (pago) está disponível até março de 2029. | 
| db.r4.large | 2 | 15.25 | - | 30 | 0,75/10 | 3.6.0 somente | 
| db.r4.xlarge | 4 | 30.5 | - | 60 | 1,25/10 | 3.6.0 somente | 
| db.r4.2xlarge | 8 | 61 | - | 120 | 2,5/10 | 3.6.0 somente | 
| db.r4.4xlarge | 16 | 122 | - | 240 | 5,0/10 | 3.6.0 somente | 
| db.r4.8xlarge | 32 | 244 | - | 480 | 10 | 3.6.0 somente | 
| db.r4.16xlarge | 64 | 488 | - | 960 | 25 | 3.6.0 somente | 
| T4G: classes de instância de desempenho expansível de última geração com base no Graviton2 As instâncias da série T são executadas no modo de intermitência ilimitada de CPU. O uso contínuo além da linha de base é cobrado extra. Não há suporte para clusters globais. | 
| db.t4g.medium | 2 | 4 | - | 8.13 | 0,256/5 | 4.0.0, 5.0.0 e 8.0.0 | 
| T3: classes de instância de desempenho expansível de geração anterior | 
| db.t3.medium | 2 | 4 | - | 7,5 | 0,256/5 | 3.6.0, 4.0.0, 5.0.0 e 8.0.0 | 
|  [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/pt_br/documentdb/latest/developerguide/db-instance-classes.html)  | 

# Instâncias baseadas em NVMe
<a name="db-instance-nvme"></a>

As instâncias baseadas em NVMe oferecem performance de consulta até 7 vezes mais rápida para aplicações com grandes conjuntos de dados que excedem a memória de uma instância comum. Essas instâncias utilizam o armazenamento local de unidade de estado sólido (SSD) baseado em memória não volátil expressa (NVMe) disponível em instâncias r6gd para armazenar dados efêmeros, reduzir o acesso ao armazenamento baseado em rede e melhorar a latência de leitura e throughput.

O espaço em SSD local é dividido em duas seções:
+ **Cache hierárquico**: aproximadamente 73% do SSD local é alocado como cache de banco de dados, permitindo que o sistema armazene até cinco vezes mais páginas do banco de dados do que somente a memória principal. O SSD local atua como um cache de segundo nível, enquanto o cache de buffer existente na memória continua sendo o cache de primeiro nível. A consulta só acessa o armazenamento externo se o cache do buffer e o cache de SSD falharem.
+ **Armazenamento temporário**: os 27% restantes são reservados para armazenamento não persistente de arquivos temporários, usado para consultas complexas envolvendo classificações ou operações que consomem muitos recursos, como compilações de índices. Em instâncias regulares, o espaço temporário reside em um volume de armazenamento do Amazon Elastic Block Store (EBS). O armazenamento temporário hospedado localmente no SSD reduz a latência de consultas envolvendo classificações em até duas vezes e acelera as operações que consomem muitos recursos, como a criação de índices.

Os detalhes sobre o tipo de instâncias com suporte pelo NVMe e suas especificações podem ser encontrados em [Especificações de classe de instância](db-instance-classes.md#db-instance-class-specs).

**Topics**
+ [Casos de uso recomendados para Instâncias baseadas em NVMe](#nvme-use-cases)
+ [Uso de instâncias baseadas em NVMe com o Amazon DocumentDB](#using-nvme)
+ [Monitoramento de Instâncias baseadas em NVMe](#monitoring-nvme)

## Casos de uso recomendados para Instâncias baseadas em NVMe
<a name="nvme-use-cases"></a>

Recomendamos que você use insâncias baseadas em NVMe nos cenários a seguir:
+ **Workloads com muita leitura**: se sua workload exige muita leitura e seu conjunto de dados é maior que o cache de buffer, indicado por métricas `BufferCacheHitRatio` inferiores e `ReadIOPS` superiores, as instâncias baseadas em NVMe podem oferecer benefícios de performance.
+ **Workloads com muita atualização**: se sua workload exige muitas atualizações e a coleta de resíduos não consegue acompanhar devido à latência de leitura no armazenamento em rede, as instâncias baseadas em NVMe podem ajudar a mitigar o problema.

As instâncias baseadas em NVMe podem beneficiar vários casos de uso, incluindo:
+ **Aplicações em escala de Internet**: aplicações como processamento de pagamentos, cobrança e comércio eletrônico com acordos de serviço (SLAs) de performance rigorosa podem aproveitar as vantagens de performance das instâncias baseadas em NVMe.
+ **Painéis de relatórios em tempo real**: painéis que executam centenas de consultas para coleta de métricas/dados podem se beneficiar da baixa latência e do alto throughput de instâncias baseadas em NVMe.
+ **Aplicações generativas de IA**: as aplicações que usam a pesquisa vetorial para encontrar vizinhos exatos ou mais próximos em milhões de incorporações vetoriais podem aproveitar a alta performance de instâncias baseadas em NVMe.

## Uso de instâncias baseadas em NVMe com o Amazon DocumentDB
<a name="using-nvme"></a>

Para usar instâncias baseadas em NVMe com o Amazon DocumentDB:
+ Crie um cluster do Amazon DocumentDB e adicione uma das classes de instâncias baseada em NVMe. Para obter mais informações, consulte [Criar um cluster do Amazon DocumentDB](db-cluster-create.md).
+ Como alternativa, modifique um cluster do Amazon DocumentDB para utilizar uma das classes de instâncias baseada em NVMe. Para obter mais informações, consulte [Modificar um cluster do Amazon DocumentDB](db-cluster-modify.md).

Para verificar a disponibilidade de instâncias baseadas em NVMe em diferentes regiões da AWS, consulte [Classes de instância compatíveis por região](db-instance-classes.md#db-instance-classes-by-region).

Se você quiser voltar de uma instância baseada em NVMe para uma instância normal, modifique a classe de instância de banco de dados da sua instância Amazon DocumentDB para uma classe de instância similar sem o armazenamento NVMe. Por exemplo, se a sua classe de instância atual for db.r6gd.4xlarge, selecione ‘db.r6g.4xlarge’ para alternar de volta. Para obter mais informações, consulte [Modificar um cluster do Amazon DocumentDB](db-cluster-modify.md).

## Monitoramento de Instâncias baseadas em NVMe
<a name="monitoring-nvme"></a>

Além das métricas de instância regulares disponíveis no Amazon CloudWatch, as instâncias baseadas em NVMe emitem métricas adicionais específicas para armazenamento SSD, IOPS e throughput baseados em NVMe. 

```
NVMeStorageCacheHitRatio
FreeNVMeStorage
ReadIOPSNVMeStorage
ReadLatencyNVMeStorage
ReadThroughputNVMeStorage
WriteIOPSNVMeStorage
WriteLatencyNVMeStorage
WriteThroughputNVMeStorage
```

Para ter mais informações sobre essas métricas, consulte [NVMe- métricas de instância apoiadas](cloud_watch.md#nvme-metrics)

# Gerenciamento de grupos de sub-rede do Amazon DocumentDB
<a name="document-db-subnet-groups"></a>

Uma nuvem privada virtual (VPC) é uma rede virtual dedicada à sua Conta da AWS. Ela é isolada de maneira lógica de outras redes virtuais na Nuvem da AWS. Você pode iniciar seus recursos da AWS, como clusters do Amazon DocumentDB, na sua Amazon VPC. Você pode especificar um intervalo de endereços IP para a VPC, adicionar sub-rede, associar security groups e configurar tabelas de rota. 

Uma sub-rede é uma gama de endereços IP na sua Amazon VPC. Você pode iniciar recursos da AWS em uma sub-rede especificada. Use uma sub-rede *pública* para recursos que devem ser conectados à internet. Use uma sub-rede *privada* para recursos que não serão conectados à internet. Para obter mais informações sobre sub-redes públicas e privadas, consulte [Noções básicas de VPC e sub-rede](https://docs.aws.amazon.com/vpc/latest/userguide/VPC_Subnets.html#vpc-subnet-basics) no *Guia do usuároio da Amazon Virtual Private Cloud*. 

Um grupo de sub-redes de banco de dados é uma coleção de sub-redes que você cria em uma VPC e designa para seus clusters. Um grupo de sub-redes permite que você especifique uma VPC específica ao criar clusters. Se você usar o grupo de sub-redes `default`, ele abrangerá todas as sub-redes na VPC.

Cada grupo de sub-redes de banco de dados deve ter sub-redes em pelo menos duas zonas de disponibilidade em uma determinada região. Ao criar um cluster de banco de dados na VPC, você deve selecionar um grupo de sub-rede de banco de dados. O Amazon DocumentDB usa esse grupo de sub-rede de banco de dados e sua zona de disponibilidade preferida para selecionar uma sub-rede e um endereço IP dentro dessa sub-rede para associar ao seu cluster. Se a instância principal falhar, o Amazon DocumentDB poderá promover uma instância de réplica correspondente para ser a nova instância principal. Ela pode criar uma nova instância de réplica usando um endereço IP da sub-rede em que a instância principal anterior foi localizada.

Quando o Amazon DocumentDB cria uma instância em uma VPC, ele atribui uma interface de rede ao seu cluster usando um endereço IP selecionado do seu grupo de sub-redes de banco de dados. Recomendamos que você use o nome DNS, pois o endereço IP subjacente poderá mudar durante o failover. Para obter mais informações, consulte [Endpoints do Amazon DocumentDB](how-it-works.md#how-it-works.endpoints).

Para obter informações sobre como criar sua própria VPC e sub-redes, consulte [Como trabalhar com VPCs e sub-redes](https://docs.aws.amazon.com/vpc/latest/userguide/working-with-vpcs.html) no *Guia do usuário do Amazon Virtual Private Cloud*.

**Topics**
+ [Criação de um grupo de sub-redes do Amazon DocumentDB](document-db-subnet-group-create.md)
+ [Descrevendo um grupo de sub-redes do Amazon DocumentDB](document-db-subnet-group-describe.md)
+ [Modificar um grupo de sub-redes do Amazon DocumentDB](document-db-subnet-group-modify.md)
+ [Excluir um grupo de sub-redes do Amazon DocumentDB](document-db-subnet-group-delete.md)

# Criação de um grupo de sub-redes do Amazon DocumentDB
<a name="document-db-subnet-group-create"></a>

Ao criar um cluster do Amazon DocumentDB, você deve escolher uma Amazon VPC e um grupo de sub-rede correspondente dentro dessa Amazon VPC para iniciar o seu cluster. As sub-redes determinam a zona de disponibilidade e intervalo de IP dentro da zona de disponibilidade que você deseja usar para iniciar uma instância. 

Um grupo de sub-redes permite que você especifique as sub-redes (ou AZs) que permite a você especificar as zonas de disponibilidade que deseja usar para iniciar instâncias do Amazon DocumentDB. Por exemplo, em um cluster com três instâncias, é recomendável que cada uma dessas instâncias seja provisionada em AZs separadas - fazendo isto, otimiza para alta disponibilidade. Assim, se uma única AZ falhar, ela afetará apenas uma única instância. 

As instâncias do Amazon DocumentDB podem ser provisionadas atualmente em até três AZs. Mesmo que um grupo de sub-rede tenha mais de três sub-redes, você só poderá usar três dessas sub-redes para criar um cluster do Amazon DocumentDB. Assim, é recomendável que, ao criar um grupo de sub-redes, você escolha somente as três sub-redes nas quais deseja implantar suas instâncias. 

Por exemplo: um cluster é criado e o Amazon DocumentDB escolhe AZs \$11A, 1B e 1C\$1. Se você tentar criar uma instância na AZ \$11D\$1 a chamada de API não será bem-sucedida. No entanto, se você optar por criar uma instância, sem especificar a AZ específica, o Amazon DocumentDB escolherá uma AZ por você. O Amazon DocumentDB usa um algoritmo para balancear a carga das instâncias em todas as AZs para ajudar você a alcançar alta disponibilidade. Por exemplo, se três instâncias são provisionadas, por padrão, elas serão provisionadas em três zonas de disponibilidade e não serão provisionadas todas em uma única AZ.

Práticas recomendadas
+ A menos que você tenha um motivo específico, sempre crie um grupo de sub-rede com três sub-redes. Isso garantirá que clusters com três ou mais instâncias alcancem maior disponibilidade à medida que as instâncias sejam provisionadas em três zonas de disponibilidade.
+ Sempre distribua instâncias em vários AZs para obter alta disponibilidade. Nunca coloque todas as instâncias de um cluster em uma única AZ.
+ Como os eventos de failover podem acontecer a qualquer momento, você não deve presumir que uma instância primária ou de réplica sempre estará em uma determinada AZ.

## Como criar um grupo de sub-redes
<a name="document-db-subnet-group-how-create"></a>

Você pode usar o Console de gerenciamento da AWS ou AWS CLI para criar um grupo de sub-redes do Amazon DocumentDB:

------
#### [ Using the Console de gerenciamento da AWS ]

Use as seguintes etapas para criar um grupo de sub-redes do Amazon DocumentDB.

**Para criar um grupo de sub-redes do Amazon DocumentDB**

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

1. No painel de navegação, selecione **Subnet groups (Grupos de sub-redes)** e, depois, escolha **Create (Criar)**.
**dica**  
Caso não visualize o painel de navegação à esquerda da tela, selecione o ícone do menu (![\[Hamburger menu icon with three horizontal lines.\]](http://docs.aws.amazon.com/pt_br/documentdb/latest/developerguide/images/docdb-menu-icon.png)) no canto superior esquerdo da página.

1. Na página **Criar grupo de sub-redes**:

   1. Na seção **Detalhes do grupo de sub-redes**:

      1. **Nome**—Digite um nome significativo para o grupo de sub-redes.

      1. **Descrição**—insira uma descrição para o grupo de sub-redes.

   1. Na seção **Adicionar sub-redes**:

      1. **VPC**—Na lista, escolha uma VPC para esse grupo de sub-redes.

      1. Execute um destes procedimentos:
         + Para incluir todas as sub-redes na VPC escolhida, selecione **Add all the subnets related to this VPC (Adicionar todas as sub-redes relacionadas a essa VPC)**.
         + Para especificar sub-redes para esse grupo de sub-redes, faça o seguinte para cada zona de disponibilidade na qual você deseja incluir sub-redes. Você deve incluir pelo menos duas zonas de disponibilidade.

           1. **Zona de disponibilidade**—Na lista, escolha uma zona de disponibilidade.

           1. **Sub-rede**—Na lista, escolha uma sub-rede na zona de disponibilidade escolhida para esse grupo de sub-redes.

           1. Escolha **Adicioinar sub-rede**.

1. Escolha **Criar**. Quando o grupo de sub-rede é criado, ele é listado com seus outros grupos de sub-redes.  
![\[Screenshot: mostrando os detalhes de um grupo de sub-redes.\]](http://docs.aws.amazon.com/pt_br/documentdb/latest/developerguide/images/docdb-subnet-groups-list.png)

------
#### [ Using the AWS CLI ]

Antes de criar um grupo de sub-redes usando a AWS CLI, você deve determinar quais sub-redes estão disponíveis. Execute a seguinte operação de AWS CLI para listar as zonas de disponibilidade e as sub-redes.

**Parâmetros:**
+ **--db-subnet-group**: opcional. A especificação de um determinado grupo de sub-redes lista as zonas de disponibilidade e as sub-redes para esse grupo. Omitir esse parâmetro lista zonas de disponibilidade e as sub-redes para todos os seus grupos de sub-redes. A especificação do grupo de sub-redes `default` lista todas as sub-redes da VPC.

**Example**  
Para Linux, macOS ou Unix:  

```
aws docdb describe-db-subnet-groups \
    --db-subnet-group-name default \
    --query 'DBSubnetGroups[*].[DBSubnetGroupName,Subnets[*].[SubnetAvailabilityZone.Name,SubnetIdentifier]]'
```
Para Windows:  

```
aws docdb describe-db-subnet-groups ^
    --db-subnet-group-name default ^
    --query 'DBSubnetGroups[*].[DBSubnetGroupName,Subnets[*].[SubnetAvailabilityZone.Name,SubnetIdentifier]]'
```
A saída dessa operação é semelhante ao seguinte (formato JSON).  

```
[
    [
        "default",
        [
            [
                "us-east-1a",
                "subnet-4e26d263"
            ],
            [
                "us-east-1c",
                "subnet-afc329f4"
            ],
            [
                "us-east-1e",
                "subnet-b3806e8f"
            ],
            [
                "us-east-1d",
                "subnet-53ab3636"
            ],
            [
                "us-east-1b",
                "subnet-991cb8d0"
            ],
            [
                "us-east-1f",
                "subnet-29ab1025"
            ]
        ]
    ]
]
```
Usando a saída da operação anterior, você pode criar um novo grupo de sub-redes. O novo grupo de sub-redes deve incluir sub-redes em pelo menos duas zonas de disponibilidade.  

**Parâmetros:**
+ **--db-subnet-group-name**—Obrigatório. O nome para esse grupo de sub-redes.
+ **--db-subnet-group-description**—Obrigatório. A descrição do grupo de sub-redes.
+ **--subnet-ids**—Obrigatório. Uma lista de sub-redes a serem incluídas no grupo de sub-redes. Exemplo: : `subnet-53ab3636`.
+ Tags:**** opcionais. Uma lista de tags (pares de chave/valor) a serem anexadas a esse grupo de sub-redes.
O código a seguir cria o grupo de sub-redes `sample-subnet-group` com três sub-redes, `subnet-4e26d263`, `subnet-afc329f4` e `subnet-b3806e8f`.  
Para Linux, macOS ou Unix:  

```
aws docdb create-db-subnet-group \
    --db-subnet-group-name sample-subnet-group \
    --db-subnet-group-description "A sample subnet group" \
    --subnet-ids subnet-4e26d263 subnet-afc329f4 subnet-b3806e8f \
    --tags Key=tag1,Value=One Key=tag2,Value=2
```
Para Windows:  

```
aws docdb create-db-subnet-group ^
    --db-subnet-group-name sample-subnet-group ^
    --db-subnet-group-description "A sample subnet group" ^
    --subnet-ids subnet-4e26d263 subnet-afc329f4 subnet-b3806e8f ^
    --tags Key=tag1,Value=One Key=tag2,Value=2
```
A saída dessa operação é semelhante ao seguinte (formato JSON).  

```
{
    "DBSubnetGroup": {
        "DBSubnetGroupDescription": "A sample subnet group",
        "DBSubnetGroupName": "sample-subnet-group",
        "Subnets": [
            {
                "SubnetAvailabilityZone": {
                    "Name": "us-east-1a"
                },
                "SubnetIdentifier": "subnet-4e26d263",
                "SubnetStatus": "Active"
            },
            {
                "SubnetAvailabilityZone": {
                    "Name": "us-east-1c"
                },
                "SubnetIdentifier": "subnet-afc329f4",
                "SubnetStatus": "Active"
            },
            {
                "SubnetAvailabilityZone": {
                    "Name": "us-east-1e"
                },
                "SubnetIdentifier": "subnet-b3806e8f",
                "SubnetStatus": "Active"
            }
        ],
        "VpcId": "vpc-91280df6",
        "DBSubnetGroupArn": "arn:aws:rds:us-east-1:123SAMPLE012:subgrp:sample-subnet-group",
        "SubnetGroupStatus": "Complete"
    }
}
```

------

# Descrevendo um grupo de sub-redes do Amazon DocumentDB
<a name="document-db-subnet-group-describe"></a>

Você pode usar o Console de gerenciamento da AWS ou AWS CLI para obter os detalhes de um grupo de sub-redes do Amazon DocumentDB.

------
#### [ Using the Console de gerenciamento da AWS ]

O procedimento a seguir mostra como obter os detalhes de um grupo de sub-redes do Amazon DocumentDB.

**Para localizar os detalhes de um grupo de sub-redes**

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

1. No painel de navegação, escolha **Grupos de sub-redes**. 
**dica**  
Caso não visualize o painel de navegação à esquerda da tela, selecione o ícone do menu (![\[Hamburger menu icon with three horizontal lines.\]](http://docs.aws.amazon.com/pt_br/documentdb/latest/developerguide/images/docdb-menu-icon.png)) no canto superior esquerdo da página.

1. Para ver os detalhes de um grupo de sub-redes, escolha o nome do grupo de sub-redes.  
![\[Screenshot: mostrando os detalhes de um grupo de sub-redes.\]](http://docs.aws.amazon.com/pt_br/documentdb/latest/developerguide/images/docdb-subnet-group-details.png)

------
#### [ Using the AWS CLI ]

Para localizar os detalhes de um grupo de sub-redes do Amazon DocumentDB, use a operação `describe-db-subnet-groups` com o seguinte parâmetro.

**Parameter**
+ `--db-subnet=group-name`: opcional. Se incluído, os detalhes do grupo de sub-redes chamado serão listados. Se omitido, os detalhes para até 100 grupos de sub-redes serão listados.

**Example**  
O código a seguir lista os detalhes para o grupo de sub-redes `sample-subnet-group` que criamos na seção [Criação de um grupo de sub-redes do Amazon DocumentDB](document-db-subnet-group-create.md).  
Para Linux, macOS ou Unix:  

```
aws docdb describe-db-subnet-groups \
    --db-subnet-group-name sample-subnet-group
```
Para Windows:  

```
aws docdb describe-db-subnet-groups ^
    --db-subnet-group-name sample-subnet-group
```
A saída dessa operação é semelhante ao seguinte (formato JSON).  

```
{
    "DBSubnetGroup": {
        "DBSubnetGroupArn": "arn:aws:rds:us-east-1:123SAMPLE012:subgrp:sample-subnet-group",
        "VpcId": "vpc-91280df6",
        "SubnetGroupStatus": "Complete",
        "DBSubnetGroupName": "sample-subnet-group",
        "Subnets": [
            {
                "SubnetAvailabilityZone": {
                    "Name": "us-east-1a"
                },
                "SubnetStatus": "Active",
                "SubnetIdentifier": "subnet-4e26d263"
            },
            {
                "SubnetAvailabilityZone": {
                    "Name": "us-east-1c"
                },
                "SubnetStatus": "Active",
                "SubnetIdentifier": "subnet-afc329f4"
            },
            {
                "SubnetAvailabilityZone": {
                    "Name": "us-east-1e"
                },
                "SubnetStatus": "Active",
                "SubnetIdentifier": "subnet-b3806e8f"
            }
        ],
        "DBSubnetGroupDescription": "A sample subnet group"
    }
}
```

------

# Modificar um grupo de sub-redes do Amazon DocumentDB
<a name="document-db-subnet-group-modify"></a>

Você pode usar o Console de gerenciamento da AWS ou AWS CLI para modificar a descrição de um grupo de sub-redes ou para adicionar ou remover sub-redes de um grupo de sub-redes do Amazon DocumentDB. No entanto, você não pode modificar o grupo de sub-redes `default`.

------
#### [ Using the Console de gerenciamento da AWS ]

Você pode usar a Console de gerenciamento da AWS para alterar a descrição de um grupo de sub-redes ou para adicionar e remover sub-redes. Lembre-se de que, ao terminar, você deve ter pelo menos duas zonas de disponibilidade associadas ao seu grupo de sub-redes.

**Para modificar o grupo de sub-redes**

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

1. No painel de navegação, escolha **Grupos de sub-redes**. Em seguida, escolha o botão à esquerda do nome do grupo de sub-redes. Lembre-se de que você não pode modificar o grupo de sub-redes `default`.
**dica**  
Caso não visualize o painel de navegação à esquerda da tela, selecione o ícone do menu (![\[Hamburger menu icon with three horizontal lines.\]](http://docs.aws.amazon.com/pt_br/documentdb/latest/developerguide/images/docdb-menu-icon.png)) no canto superior esquerdo da página.

1. Escolha **Ações** e, em seguida, **Modificar**.

1. **Descrição**-Para alterar a descrição de seu grupo de sub-redes, insira uma nova descrição.

1. Para alterar as sub-redes associadas ao grupo de sub-redes, na seção **Adicionar sub-redes**, siga um ou mais destes procedimentos:
   + Para remover todas as sub-redes desse grupo, escolha **Remover todos**.
   + Para remover sub-redes específicas desse grupo, escolha **Remover** para cada sub-rede que você deseja remover.
   + Para adicionar todas as sub-redes associadas a essa VPC, escolha **Adicionar todas as sub-redes relacionadas a essa VPC**.
   + Para adicionar sub-redes específicas a esse grupo de sub-redes, faça o seguinte para cada zona de disponibilidade à qual você deseja adicionar uma sub-rede.

     1. **Zona de disponibilidade**-Na lista, escolha uma nova zona de disponibilidade.

     1. **Sub-rede**—Na lista, escolha uma sub-rede na zona de disponibilidade escolhida para esse grupo de sub-redes.

     1. Escolha **Adicioinar sub-rede**.

1. Na caixa de diálogo de confirmação:
   + Para fazer essas alterações no grupo de sub-redes, escolha **Modificar**.
   + Para manter o grupo de sub-redes inalterado, escolha **Cancelar**.

------
#### [ Using the AWS CLI ]

Você pode usar a AWS CLI para alterar a descrição de um grupo de sub-redes ou para adicionar e remover sub-redes. Lembre-se de que, ao terminar, você deve ter pelo menos duas zonas de disponibilidade associadas ao seu grupo de sub-redes. Você não pode modificar o grupo de sub-redes `default`.

**Parâmetros:**
+ `--db-subnet-group-name`—Obrigatório. O nome do grupo de sub-redes do Amazon DocumentDB que você está modificando.
+ `--subnet-ids`—Obrigatório. Uma lista de todas as sub-redes que você deseja no grupo de sub-redes após essa alteração é feita.
**Importante**  
Todas as sub-redes que estiverem no grupo, mas não estiverem nessa lista serão removidas do grupo de sub-redes. Se você desejar manter qualquer uma das sub-redes que estiverem atualmente no grupo, inclua-as nessa lista.
+ `--db-subnet-group-description`: opcional. A descrição do grupo de sub-redes.

**Example**  
O código a seguir modifica a descrição e substitui as sub-redes existentes pelas sub-redes `subnet-991cb8d0`, `subnet-53ab3636` e `subnet-29ab1025`.  
Para Linux, macOS ou Unix:  

```
aws docdb modify-db-subnet-group \
    --db-subnet-group-name sample-subnet-group \
    --subnet-ids subnet-991cb8d0 subnet-53ab3636 subnet-29ab1025 \
    --db-subnet-group-description "Modified subnet group"
```
Para Windows:  

```
aws docdb modify-db-subnet-group ^
    --db-subnet-group-name sample-subnet-group ^
    --subnet-ids subnet-991cb8d0 subnet-53ab3636 subnet-29ab1025 ^
    --db-subnet-group-description "Modified subnet group"
```
A saída dessa operação é semelhante ao seguinte (formato JSON). Observe que esse é o mesmo grupo de sub-rede que foi criado na seção [Criação de um grupo de sub-redes do Amazon DocumentDB](document-db-subnet-group-create.md). No entanto, as sub-redes no grupo de sub-rede são substituídas pelas listadas na operação `modify-db-subnet-group`.  

```
{
    "DBSubnetGroup": {
        "DBSubnetGroupArn": "arn:aws:rds:us-east-1:123SAMPLE012:subgrp:sample-subnet-group",
        "DBSubnetGroupDescription": "Modified subnet group",
        "SubnetGroupStatus": "Complete",
        "Subnets": [
            {
                "SubnetAvailabilityZone": {
                    "Name": "us-east-1d"
                },
                "SubnetStatus": "Active",
                "SubnetIdentifier": "subnet-53ab3636"
            },
            {
                "SubnetAvailabilityZone": {
                    "Name": "us-east-1b"
                },
                "SubnetStatus": "Active",
                "SubnetIdentifier": "subnet-991cb8d0"
            },
            {
                "SubnetAvailabilityZone": {
                    "Name": "us-east-1f"
                },
                "SubnetStatus": "Active",
                "SubnetIdentifier": "subnet-29ab1025"
            }
        ],
        "VpcId": "vpc-91280df6",
        "DBSubnetGroupName": "sample-subnet-group"
    }
}
```

------

# Excluir um grupo de sub-redes do Amazon DocumentDB
<a name="document-db-subnet-group-delete"></a>

Você pode usar o Console de gerenciamento da AWS ou AWS CLI para excluir um grupo de sub-redes do Amazon DocumentDB. No entanto, você não pode excluir o grupo de sub-redes `default`.

------
#### [ Using the Console de gerenciamento da AWS ]

Você pode usar o Console de gerenciamento da AWS para excluir um grupo de sub-redes. No entanto, você não pode excluir o grupo de sub-redes `default`.

**Para excluir um grupo de sub-redes**

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

1. No painel de navegação, escolha **Grupos de sub-redes**. Em seguida, escolha o botão à esquerda do nome do grupo de sub-redes. Lembre-se de que você não pode excluir o grupo de sub-redes `default`.
**dica**  
Caso não visualize o painel de navegação à esquerda da tela, selecione o ícone do menu (![\[Hamburger menu icon with three horizontal lines.\]](http://docs.aws.amazon.com/pt_br/documentdb/latest/developerguide/images/docdb-menu-icon.png)) no canto superior esquerdo da página.

1. Escolha **Ações** e, em seguida, escolha **Excluir**.

1. Na caixa de diálogo de confirmação:
   + Para excluir o grupo de sub-redes, escolha **Excluir**.
   + Para manter o grupo de sub-redes, escolha **Cancelar**.

------
#### [ Using the AWS CLI ]

Para excluir um grupo de sub-redes do Amazon DocumentDB usando a AWS CLI, use a operação `delete-db-subnet-group` com o seguinte parâmetro.

**Parameter**
+ `--db-subnet-group-name`—Obrigatório. O nome do grupo de sub-redes do Amazon DocumentDB a ser excluído. Lembre-se de que você não pode excluir o grupo de sub-redes `default`.

**Example**  
O código a seguir exclui `sample-subnet-group`.  
Para Linux, macOS ou Unix:  

```
aws docdb delete-db-subnet-group \
    --db-subnet-group-name sample-subnet-group
```
Para Windows:  

```
aws docdb delete-db-subnet-group ^
    --db-subnet-group-name sample-subnet-group
```
A operação não produzirá uma saída.

------

# Alta disponibilidade e replicação do Amazon DocumentDB
<a name="replication"></a>

Você pode obter alta disponibilidade e escalabilidade de leitura no Amazon DocumentDB (compatível com MongoDB) usando instâncias de réplica. Um único cluster do Amazon DocumentDB oferece suporte a uma única instância primária e até 15 instâncias de réplica. Essas instâncias podem ser distribuídas em zonas de disponibilidade dentro da região do cluster. A instância principal aceita o tráfego de leitura e de gravação e as instâncias de réplica aceitam somente solicitações de leitura.

O volume do cluster é composto por várias cópias dos dados do cluster. Contudo, os dados no volume do cluster são representados como um volume lógico e único para a instância primária e para réplicas do Amazon DocumentDB no cluster. No final, as instâncias de réplica tornam-se consistentes. Elas retornam os resultados da consulta com atraso de réplica mínimo, geralmente muito inferior a 100 milissegundos após a instância principal ter gravado uma atualização. O atraso da réplica varia de acordo com a taxa de mudança no banco de dados. Ou seja, durante os períodos em que um grande número de operações de gravação ocorre para o banco de dados, você pode ver um aumento no atraso da réplica. 

## Escalabilidade de leitura
<a name="replication.read-scaling"></a>

As réplicas do Amazon DocumentDB funcionam bem para a escalabilidade de leitura porque são totalmente dedicadas a operações de leitura no seu volume de cluster. As operações de gravação são gerenciadas pela instância principal. O volume do cluster é compartilhado com todas as instâncias em seu cluster. Portanto, você não precisa replicar e manter uma cópia dos dados para cada réplica do Amazon DocumentDB. 

## Alta disponibilidade
<a name="replication.high-availability"></a>

Quando você cria um cluster do Amazon DocumentDB, dependendo do número de zonas de disponibilidade no grupo de sub-redes (deve haver pelo menos duas) o Amazon DocumentDB provisiona instâncias entre as zonas de disponibilidade. Quando você cria instâncias no cluster, o Amazon DocumentDB distribui automaticamente as instâncias entre as zonas de disponibilidade em um grupo de sub-redes para balancear o cluster. Essa ação também impede que todas as instâncias estejam localizadas na mesma zona de disponibilidade.

**Exemplo**  
Para ilustrar, considere um exemplo no qual você criou um cluster que tem um grupo de sub-redes com três zonas de disponibilidade: *AZ1*, *AZ2* e *AZ3*.

Quando a primeira instância no cluster é criada, é a instância principal e é localizada em uma das zonas de disponibilidade. Neste exemplo, está *AZ1*. A segunda instância criada é uma instância de réplica e é localizada em uma das outras duas zonas de disponibilidade, digamos, *AZ2*. A terceira instância criada é uma instância de réplica e está localizada na zona de disponibilidade remanescente, ou seja, a *AZ3*. Se você criar mais instâncias, elas serão distribuídas entre as zonas de disponibilidade para alcançar o equilíbrio no cluster.

Se ocorrer uma falha na instância principal (AZ1), um failover será acionado, e uma das réplicas existentes será promovida a principal. Quando a instância principal antiga for recuperada, ela se tornará uma réplica na mesma zona de disponibilidade na qual ela foi provisionada (AZ1). Quando você provisiona um cluster de três instâncias, o Amazon DocumentDB continua preservando esse cluster de três instâncias. O Amazon DocumentDB gerencia automaticamente a detecção, o failover e a recuperação de falhas de instância sem qualquer intervenção manual.

Quando o Amazon DocumentDB executar um failover e recuperar uma instância, a instância recuperada permanecerá na zona de disponibilidade na qual ela foi originalmente provisionada. No entanto, a função da instância pode mudar de principal para réplica. Isso impede o cenário em que uma série de failovers pode resultar em todas as instâncias estando na mesma zona de disponibilidade.

Você pode especificar réplicas do Amazon DocumentDB como destinos de failover. Ou seja, se ocorrer uma falha na instância principal, a réplica especificada do Amazon DocumentDB ou a réplica de uma camada será promovida a instância principal. Há uma breve interrupção durante a qual as solicitações de leitura e gravação feitas na instância principal falharão com uma exceção. Se o cluster do Amazon DocumentDB não incluir réplicas do Amazon DocumentDB, quando a instância principal falhar, ela será recriada. Promover uma réplica do Amazon DocumentDB é muito mais rápido do que recriar a instância principal. 

Para cenários de alta disponibilidade, recomendamos criar uma ou mais réplicas do Amazon DocumentDB. Elas devem ser da mesma classe de instância que a instância principal em zonas de disponibilidade diferentes para o cluster do Amazon DocumentDB.

Para obter mais informações, consulte as informações a seguir:
+ [Entender a tolerância a falhas de cluster do Amazon DocumentDB](db-cluster-fault-tolerance.md)
+ [Failover do Amazon DocumentDB](failover.md)
  + [Controlar o destino de failover](failover.md#failover-target_control)

### Alta disponibilidade com clusters globais
<a name="replication.high-availability.global-clusters"></a>

Para obter alta disponibilidade em várias Regiões da AWS, é possível configurar [clusters globais do Amazon DocumentDB](https://docs.aws.amazon.com/documentdb/latest/developerguide/global-clusters.html). Cada cluster global abrange várias regiões, permitindo leituras globais de baixa latência e recuperação de desastres de interrupções em uma Região da AWS. O Amazon DocumentDB lidará automaticamente com a replicação de todos os dados e atualizações da região primária para cada uma das regiões secundárias.

## Adicionar réplicas do
<a name="replication.adding-replicas"></a>

A primeira instância adicionada ao cluster é a instância principal. Todas instância adicionada após a primeira instância é uma instância de réplica. Um cluster pode ter até 15 instâncias de réplica, além da instância principal.

Quando você cria um cluster usando o Console de gerenciamento da AWS, uma instância principal é criada automaticamente ao mesmo tempo. Para criar uma réplica ao mesmo tempo em que cria o cluster e a instância principal, escolha **Criar réplica em zona diferente**. Para obter mais informações, consulte a etapa 4.d em [Criar um cluster do Amazon DocumentDB](db-cluster-create.md). Para adicionar mais réplicas a um cluster do Amazon DocumentDB, consulte [Adicionar uma instância do Amazon DocumentDB a um cluster](db-instance-add.md).

Ao usar a AWS CLI para criar seu cluster, você deve criar explicitamente suas instâncias principal e de réplica. Para obter mais informações, consulte a seção "Usar a AWS CLI" dos seguintes tópicos:
+ [Criar um cluster do Amazon DocumentDB](db-cluster-create.md)
+ [Adicionar uma instância do Amazon DocumentDB a um cluster](db-instance-add.md)

# Failover do Amazon DocumentDB
<a name="failover"></a>

Em alguns casos, como determinados tipos de manutenção programada, ou no caso improvável de uma falha de nó primário ou zona de disponibilidade, o Amazon DocumentDB (compativel com MongoDB) detecta a falha e substitui o nó primário. Durante um failover, o tempo de gravação é minimizado. Isso ocorre porque a função do nó primário fará failover em uma das réplicas de leitura, em vez de ter que criar e provisionar um novo nó primário. A detecção de falhas e a promoção de réplica garantem que você possa continuar a gravar no novo primário assim que a promoção estiver concluída.

Para que o failover funcione, o cluster deve ter pelo menos duas instâncias — uma instância principal e pelo menos uma réplica.

**nota**  
Esse tópico se aplica somente aos clusters baseados em instâncias originais do Amazon DocumentDB. Ele não se aplica aos clusters elásticos ou globais.

## Controlar o destino de failover
<a name="failover-target_control"></a>

O Amazon DocumentDB fornece níveis de failover para controlar qual instância de réplica é promovida a instância principal quando ocorre um failover.

**Níveis de failover**  
Cada instância de réplica é associada a um nível de failover (0–15). Quando ocorre um failover devido à manutenção ou a uma falha de hardware improvável, a instância principal executa failover em uma réplica com o maior nível de prioridade (o nível numerado mais baixo). Se várias réplicas tiverem o mesmo nível de prioridade, a principal executará failover na réplica do nível que é mais próximo em tamanho da prévia principal.

Ao definir o nível de failover de um grupo de réplicas selecionadas como `0` (a prioridade mais alta), você pode garantir que um failover promova uma das réplicas desse grupo. Você pode impedir efetivamente que as réplicas específicas sejam promovidas a principal no caso de um failover, atribuindo um nível de baixa prioridade (número alto) a essas réplicas. Isso é útil em casos em que réplicas específicas são muito usadas por uma aplicação, e o failover em um deles teria um impacto negativo em uma aplicação crítica.

Você pode definir o nível de failover de uma instância ao criá-la ou posteriormente, modificando-o. Definir um nível de failover da instância modificando a instância não aciona um failover. Para obter mais informações, consulte os tópicos a seguir:
+ [Adicionar uma instância do Amazon DocumentDB a um cluster](db-instance-add.md)
+ [Modificar uma instância do Amazon DocumentDB](db-instance-modify.md)

Ao iniciar manualmente um failover, você tem dois meios de controlar qual instância de réplica é promovida a principal: o nível de failover, conforme descrito anteriormente, e o parâmetro `--target-db-instance-identifier`.

**--`target-db-instance-identifier`**  
Para testar, você pode forçar um evento de failover usando a operação `failover-db-cluster`. Você pode usar o parâmetro `--target-db-instance-identifier` para especificar qual réplica deve ser promovida à principal. O uso do parâmetro `--target-db-instance-identifier` substitui o nível de prioridade de failover. Se você não especificar o parâmetro `--target-db-instance-identifier`, o failover primário estará de acordo com o nível de prioridade de failover.



## O que acontece durante um failover
<a name="failover-what_happens"></a>

O failover é automaticamente controlado pelo Amazon DocumentDB para que suas aplicações possam retomar operações de banco de dados o mais rápido possível e sem intervenção administrativa.
+ Se você tiver uma instância da réplica do Amazon DocumentDB na mesma zona de disponibilidade ou em outra, ao fazer o failover: o Amazon DocumentDB alterará o registro de nome canônico (CNAME) da instância para apontar para a réplica íntegra que, por sua vez, é promovida e se torna a nova principal. Normalmente, o failover é concluído em 30 segundos do início ao fim.
+ Se você não tiver uma instância de réplica do Amazon DocumentDB (por exemplo, um cluster de instância única): o Amazon DocumentDB tentará criar uma instância na mesma zona de disponibilidade que a instância original. O melhor possível é feito para realizar essa substituição da instância original, mas pode ser que isso não tenha êxito se, por exemplo, ocorrer um problema que afete amplamente a zona de disponibilidade.

Sua aplicação deve tentar novamente fazer as conexões do banco de dados em caso de uma perda de conexão.

## Testar o failover
<a name="failover-testing"></a>

Um failover para um cluster promove uma das réplicas do Amazon DocumentDB (instâncias somente leitura) no cluster para ser a instância primária (o gravador do cluster).

Quando a instância principal falhar, o Amazon DocumentDB executará failover automaticamente em uma réplica do Amazon DocumentDB, se houver. Você pode forçar um failover quando quiser simular uma falha de uma instância principal para testes. Cada instância em um cluster tem seu próprio endereço de endpoint. Portanto, você precisa limpar e restabelecer as conexões existentes que usam os endereços de endpoint quando o failover é concluído.

Para forçar um failover, use a operação `failover-db-cluster` com esses parâmetros.
+ `--db-cluster-identifier`—Obrigatório. O nome do cluster no qual executar failover.
+ `--target-db-instance-identifier`: opcional. O nome da instância a ser promovida à instância principal.

**Example**  
A operação a seguir força um failover do cluster `sample-cluster`. Ela não especifica qual instância se tornará a nova instância principal, portanto o Amazon DocumentDB escolhe a instância de acordo com a prioridade do nível de failover.  
Para Linux, macOS ou Unix:  

```
aws docdb failover-db-cluster \
   --db-cluster-identifier sample-cluster
```
Para Windows:  

```
aws docdb failover-db-cluster ^
   --db-cluster-identifier sample-cluster
```
A operação a seguir força um failover do cluster `sample-cluster`, especificando a `sample-cluster-instance` que será promovida à função principal. (Observe `"IsClusterWriter": true` na saída.)  
Para Linux, macOS ou Unix:  

```
aws docdb failover-db-cluster \
   --db-cluster-identifier sample-cluster \
   --target-db-instance-identifier sample-cluster-instance
```
Para Windows:  

```
aws docdb failover-db-cluster ^
   --db-cluster-identifier sample-cluster ^
   --target-db-instance-identifier sample-cluster-instance
```
A saída dessa operação é semelhante ao seguinte (formato JSON).  

```
{
    "DBCluster": {
        "HostedZoneId": "Z2SUY0A1719RZT",
        "Port": 27017,
        "EngineVersion": "3.6.0",
        "PreferredMaintenanceWindow": "thu:04:05-thu:04:35",
        "BackupRetentionPeriod": 1,
        "ClusterCreateTime": "2018-06-28T18:53:29.455Z",
        "AssociatedRoles": [],
        "DBSubnetGroup": "default",
        "MasterUsername": "master-user",
        "Engine": "docdb",
        "ReadReplicaIdentifiers": [],
        "EarliestRestorableTime": "2018-08-21T00:04:10.546Z",
        "DBClusterIdentifier": "sample-cluster",
        "ReaderEndpoint": "sample-cluster.node.us-east-1.docdb.amazonaws.com",
        "DBClusterMembers": [
            {
                "DBInstanceIdentifier": "sample-cluster-instance",
                "DBClusterParameterGroupStatus": "in-sync",
                "PromotionTier": 1,
                "IsClusterWriter": true
            },
            {
                "DBInstanceIdentifier": "sample-cluster-instance-00",
                "DBClusterParameterGroupStatus": "in-sync",
                "PromotionTier": 1,
                "IsClusterWriter": false
            },
            {
                "DBInstanceIdentifier": "sample-cluster-instance-01",
                "DBClusterParameterGroupStatus": "in-sync",
                "PromotionTier": 1,
                "IsClusterWriter": false
            }
        ],
        "AvailabilityZones": [
            "us-east-1b",
            "us-east-1c",
            "us-east-1a"
        ],
        "DBClusterParameterGroup": "default.docdb3.6",
        "Endpoint": "sample-cluster.node.us-east-1.docdb.amazonaws.com",
        "IAMDatabaseAuthenticationEnabled": false,
        "AllocatedStorage": 1,
        "LatestRestorableTime": "2018-08-22T21:57:33.904Z",
        "PreferredBackupWindow": "00:00-00:30",
        "StorageEncrypted": false,
        "MultiAZ": true,
        "Status": "available",
        "DBClusterArn": "arn:aws:rds:us-east-1:123456789012:cluster:sample-cluster",
        "VpcSecurityGroups": [
            {
                "Status": "active",
                "VpcSecurityGroupId": "sg-12345678"
            }
        ],
        "DbClusterResourceId": "cluster-ABCDEFGHIJKLMNOPQRSTUVWXYZ"
    }
}
```

## Lag de replicação
<a name="troubleshooting.replication-lag"></a>

O atraso de replicação geralmente é de 50 ms ou menos. Os motivos mais comuns para aumentar o atraso da réplica são:
+ Uma alta taxa de gravação no primário que faz com que as réplicas de leitura fiquem atrás do primário.
+ Contenção nas réplicas de leitura entre consultas de longa execução (por exemplo, grandes varreduras sequenciais, consultas de agregação) e replicação de gravação recebida.
+ Número muito grande de consultas simultâneas nas réplicas de leitura.

Para minimizar o atraso na replicação, experimente estas técnicas de solução de problemas:
+ Se você tiver uma alta taxa de gravação ou alta utilização da CPU, recomendamos que você aumente a escala verticalmente das instâncias em seu cluster.
+ Se houver consultas de longa duração em suas réplicas de leitura e atualizações muito frequentes dos documentos que estão sendo consultados, considere alterar suas consultas de longa duração ou executá-las na réplica principal/gravação para evitar contenção nas réplicas de leitura.
+ Se houver um número muito grande de consultas simultâneas ou alta utilização da CPU somente nas réplicas de leitura, outra opção é aumentar a escala horizontalmente do número de réplicas de leitura para espalhar a workload.
+ Como o atraso de replicação é resultado de alto throughput de gravação e consultas de longa execução, recomendamos solucionar problemas do atraso de replicação utilizando a métrica DBClusterReplicalAgMaximum CW em combinação com o registrador de consultas lentas e métricas `WriteThroughput`/`WriteIOPS`.

Em geral, recomendamos que todas as réplicas sejam do mesmo tipo de instância, para que um failover de cluster não cause uma degradação no desempenho.

Se você estiver escolhendo entre aumentar a escala verticalmente e aumentar a escala horizontalmente (por exemplo, seis instâncias menores versus três instâncias maiores), geralmente recomendamos tentar aumentar a escala verticalmente primeiro (instâncias maiores) antes de aumentar a escala horizontalmente, pois você obterá um cache de buffer maior por instância de banco de dados.

Proativamente, você deve definir um alarme de atraso de replicação e definir seu limite para um valor que você acha que é o limite superior para o quão longe (ou “obsoleto”) seus dados em instâncias de réplica podem estar antes de começar a afetar a funcionalidade da aplicação. Em geral, aconselhamos que o limite de atraso de replicação seja excedido para vários pontos de dados antes do alarme, devido a workloads transitórias.

**nota**  
Além disso, recomendamos que você defina outro alarme para atrasos de replicação que excedam 10 segundos. Se você ultrapassar esse limite para vários pontos de dados, recomendamos que você aumente a escala verticalmente de suas instâncias ou reduza seu throughput de gravação na instância principal.

# Gerenciar índices do Amazon DocumentDB
<a name="managing-indexes"></a>

**Topics**
+ [Criação do índice do Amazon DocumentDB](#index-creation)
+ [Manutenção de índices do Amazon DocumentDB](#maintaining-indexes)

## Criação do índice do Amazon DocumentDB
<a name="index-creation"></a>

A criação de índices no Amazon DocumentDB exige que várias decisões sejam tomadas: 
+ Com que rapidez ele precisa ser concluído?
+ A coleção pode ficar inacessível enquanto a construção está ocorrendo?
+ Quanto do poder computacional de uma instância pode ser alocado para a construção?
+ Que tipo de índice deve ser criado?

Esta seção ajuda você a responder a essas perguntas e fornece os comandos e exemplos de monitoramento para criar um índice do Amazon DocumentDB em sua coleção de clusters baseada em instâncias.

### Diretrizes
<a name="indexing-guidelines"></a>

As diretrizes a seguir incluem limites básicos e compensações de configuração ao criar novos índices:
+ **Suporte à versão do Amazon DocumentDB**: embora a indexação de um único trabalhador seja suportada em todas as versões do Amazon DocumentDB, a indexação de vários trabalhadores é suportada somente nas versões 4.0 e 5.0 do Amazon DocumentDB.
+ **Compensação de desempenho** - Aumentar o número de trabalhadores no processo de criação do índice aumenta a utilização da CPU e a IO de leitura na instância primária do seu banco de dados Amazon DocumentDB. Os recursos necessários para criar um novo índice não estarão disponíveis para sua workload em execução.
+ **Clusters elásticos**: a indexação paralela não tem suporte nos clusters elásticos do Amazon DocumentDB.
+ **Máximo de trabalhadores** - O número máximo de trabalhadores que você pode configurar depende do tamanho da sua instância primária no cluster de banco de dados. É metade do número total de v CPUs na instância primária do seu cluster de banco de dados. Por exemplo, você pode executar no máximo 32 trabalhadores em uma instância db.r6g.16xlarge que tenha 64 v. CPUs
**nota**  
Não há suporte para trabalhadores paralelos em classes de instância 2xlarge e inferiores.
+ **Mínimo de trabalhadores** - O número mínimo de trabalhadores que você pode configurar é um. A configuração padrão para criação de índices em clusters baseados em instâncias é de dois trabalhadores. No entanto, você pode reduzir o número de trabalhadores para um usando a opção “threads de trabalhadores”. Isso executará o processo com um único trabalhador.
+ **Compactação de índice** - O Amazon DocumentDB não oferece suporte à compactação de índices. O tamanho dos dados para dados e índices armazenados poderá ser maior do que ao usar outras opções.
+ **Indexação de várias coleções** - Metade do v CPUs na instância primária do seu cluster de banco de dados pode ser usada para trabalhadores configurados que realizam a criação de índices em várias coleções.
+ **Tipos de índice** - Consulte [esta postagem no blog](https://aws.amazon.com/blogs/database/how-to-index-on-amazon-documentdb-with-mongodb-compatibility/) para obter uma explicação completa dos tipos de índice compatíveis no Amazon DocumentDB.

### Introdução
<a name="index-build-get-started"></a>

Para iniciar a criação de índices em uma coleção, use o comando `createIndexes`. Por padrão, o comando executará dois trabalhadores paralelos, o que aumenta a velocidade do processo de criação do índice em duas vezes.

Por exemplo, o processo de comando a seguir demonstra como criar um índice para o campo “user\$1name” em um documento e aumentar a velocidade do processo de indexação para quatro trabalhadores:

1. Crie índices usando dois trabalhadores paralelos no cluster:

   ```
   db.runCommand({"createIndexes":"test","indexes":[{"key": {"user_name":1}, "name":"username_idx"}]})
   ```

1. Para otimizar a velocidade do processo de criação do índice, você pode especificar o número de operadores usando a opção “threads de trabalhadores” (`"workers":<number>`) no comando `db.runCommand createIndexes`.

   Aumente a velocidade do processo para quatro trabalhadores paralelos:

   ```
   db.runCommand({"createIndexes":"test","indexes":[{"key": {"user_name":1}, "name":"username_idx", "workers":4}]})
   ```
**nota**  
Quanto maior o número de trabalhadores, mais rápido a criação do índice progride. No entanto, quanto maior o número de trabalhadores, maior o aumento da carga na E/S v CPUs e de leitura da sua instância primária. Garanta que seu cluster esteja suficientemente provisionado para lidar com o aumento da carga sem degradar outras workloads.

### Status do andamento da indexação
<a name="index-build-status"></a>

O processo de criação de índices funciona inicializando, escaneando coleções, classificando chaves e, finalmente, inserindo chaves por meio de um construtor de índices. O processo tem até seis estágios quando você o executa em primeiro plano e até nove estágios quando você o executa em segundo plano. É possível visualizar métricas de status, como percentual de conclusão, número total de blocos de armazenamento digitalizados, chaves classificadas e chaves inseridas, etapa por etapa.

Monitore o andamento no processo de indexação usando o comando `db.currentOp()` no shell mongo. Uma conclusão de 100% da última etapa mostra que todos os índices foram criados com sucesso:

```
db.currentOp({"command.createIndexes": { $exists : true } })
```

**nota**  
Só há suporte para a visualização do status do andamento da indexação no Amazon DocumentDB 5.0.

#### Tipos de criação de índice
<a name="index-build-types"></a>

Os quatro tipos de criação de índices são:
+ **Primeiro plano**: a construção de índices em primeiro plano bloqueia todas as outras operações do banco de dados até que o índice seja criado. A construção em primeiro plano do Amazon DocumentDB é composta por cinco estágios.
+ **Primeiro plano (exclusivo)**: a construção de índices de primeiro plano de um único documento (exclusivo) bloqueiam outras operações de banco de dados, como construções regulares de primeiro plano. Ao contrário da construção básica em primeiro plano, a compilação exclusiva usa um estágio adicional (chaves de classificação 2) para procurar chaves duplicadas. A construção em primeiro plano (exclusiva) é composta por seis estágios.
+ **Plano de fundo**: a construção de índices no plano de fundo permite que outras operações do banco de dados sejam executadas em primeiro plano enquanto o índice está sendo criado. A construção em segundo plano do Amazon DocumentDB é composta por oito estágios.
+ **Plano de fundo (exclusivo)**: a construção de índices em plano de fundo de um único documento (exclusivo) permitem que outras operações do banco de dados sejam executadas em primeiro plano enquanto o índice está sendo criado. Ao contrário da construção básica em segundo plano, a compilação exclusiva usa um estágio adicional (chaves de classificação 2) para procurar chaves duplicadas. A construção de fundo (única) é composta por nove estágios.

#### Etapas de construção do índice
<a name="index-build-stages"></a>


| Estágio | Primeiro plano | Primeiro plano (exclusivo) | Contexto | Plano de fundo (exclusivo) | 
| --- | --- | --- | --- | --- | 
|  Inicializando  |  1  |  1  |  1  |  1  | 
|  índice de construção: inicializando  |  2  |  2  |  2  |  2  | 
|  índice de construção: varredura da coleção  |  3  |  3  |  3  |  3  | 
|  índice de construção: chaves de classificação 1  |  4  |  4  |  4  |  4  | 
|  índice de construção: chaves de classificação 2  |    |  5  |    |  5  | 
|  índice de construção: inserindo chaves  |  5  |  6  |  5  |  6  | 
|  validação: índice de digitalização  |    |    |  6  |  7  | 
|  validação: classificação de tuplas  |    |    |  7  |  8  | 
|  validação: coleta de digitalização  |    |    |  8  |  9  | 
+ **inicialização** - createIndex está preparando o construtor de índices. Essa fase deve ser muito breve.
+ **índice de construção: inicialização** - O criador de índices está se preparando para criar o índice. Essa fase deve ser muito breve.
+ **índice de construção: coleção de varredura** - O construtor de índices está realizando uma varredura de coleção para coletar chaves de índice. A unidade de medida é “blocos”.
**nota**  
Se mais de um trabalhador estiver configurado para a criação do índice, ele será exibido nesse estágio. O estágio de “coleta de digitalização” é o único estágio que usa vários trabalhadores durante o processo de criação do índice. Todos os outros estágios exibirão um único trabalhador.
+ **índice de construção: chaves de classificação 1** - O construtor de índices está classificando as chaves de índice coletadas. A unidade de medida é “chaves”.
+ **índice de construção: chaves de classificação 2** - O construtor de índices está classificando as chaves de índice coletadas que correspondem às tuplas mortas. Essa fase existe apenas para a criação de índices exclusivos. A unidade de medida é “chaves”.
+ **índice de construção: inserindo chaves** - O criador de índices está inserindo chaves de índice no novo índice. A unidade de medida é “chaves”.
+ **validando: índice de varredura** - createIndex está examinando o índice para encontrar chaves que precisam ser validadas. A unidade de medida é “blocos”. 
+ **validando: classificando tuplas** - createIndex está classificando a saída da fase de varredura do índice.
+ **validando: escaneando a coleção** - CreateIndex está escaneando a coleção para validar as chaves de índice encontradas nas duas fases anteriores. A unidade de medida é “blocos”.

#### Exemplo de saída de compilação de índice
<a name="w2aac33c19b5c13c15"></a>

No exemplo de saída abaixo (criação do índice em primeiro plano), o status da criação do índice é mostrado. O campo “msg” resume o andamento da compilação indicando o estágio e o percentual de conclusão da construção. O campo “trabalhadores” indica o número de trabalhadores usados durante esse estágio da criação do índice. O campo “andamento” mostra os números reais usados para calcular o percentual de conclusão.

**nota**  
Os campos “currentIndexBuildNome”, “msg” e “progresso” não são compatíveis com o Amazon DocumentDB versão 4.0.

```
{
    "inprog" : [{
    … 
        "command": {
            "createIndexes": "test",
            "indexes": [{
                "v": 2,
                "key": {
                    "user_name": 1
                },
                "name": "user_name_1"
            }],
            "lsid": {
                "id": UUID(“094d0fba-8f41-4373-82c3-7c4c7b5ff13b”)
            },
            "$db": "test"
        },
        "currentIndexBuildName": user_name_1,
        "msg": "Index Build: building index number_1, stage 6/6 building index: 656860/1003520 (keys) 65%",
        "workers": 1,
        "progress": {
            "done": 656861,
            "total": 1003520
        },
    … 
    ],
 
    "ok" : 1
}
```

## Manutenção de índices do Amazon DocumentDB
<a name="maintaining-indexes"></a>

**Topics**
+ [Sobrecarga de índices](#db-index-bloat)
+ [Manutenção de índices usando `reIndex`](#reIndex)

### Sobrecarga de índices
<a name="db-index-bloat"></a>

O Amazon DocumentDB usa controle de simultaneidade de várias versões (MVCC) para gerenciar transações simultâneas. Quando os documentos são excluídos ou atualizados, suas versões anteriores permanecem em coleções e índices como versões “inativas”. O processo de coleta de resíduos recupera automaticamente o espaço dessas versões inativas para futuras operações.

A sobrecarga de índices ocorre quando os índices de uma coleção se tornam maiores devido ao acúmulo de entradas de índice inativas ou obsoletas ou à fragmentação nas páginas. O percentual relatado representa a quantidade de espaço de índices que pode ser usada por futuras entradas de índice. Essa sobrecarga consome espaço no cache e no armazenamento do buffer. Se você quiser remover a sobrecarga, precisará reconstruir os índices.

**Example Exemplo**  
Execute o comando apresentado a seguir para determinar o armazenamento não utilizado do seu índice:  

```
db.coll.aggregate({$indexStats:{}});
```
O resultado deve ser semelhante a este:  

```
{ 
    "name" : "_id_",
    "key" : { 
        "_id" : 1 
    },
    "host" : "devbox-test.localhost.a2z.com:27317",
    "size" : NumberLong(827392),
    "accesses" : {
        "ops" : NumberLong(40000),
        "docsRead" : NumberLong(46049),
        "since" : ISODate("2025-04-03T21:44:51.251Z") 
    },
    "cacheStats" : {
        "blksRead" : NumberLong(264),
        "blksHit" : NumberLong(140190),
        "hitRatio" : 99.8121
    }, 
    "unusedStorageSize" : {
        "unusedSizeBytes" : 409600,
        "unusedSizePercent" : 49.51
    }
}
```

É possível recriar índices sem tempo de inatividade usando o comando `reIndex`, que exige uma verificação de toda a coleção. Consulte [Manutenção de índices usando `reIndex`](#reIndex).

### Manutenção de índices usando `reIndex`
<a name="reIndex"></a>

`reIndex` é um comando usado para reconstruir um índice. Geralmente é usado quando um índice se torna corrompido ou ineficiente. Com o tempo, os índices podem acumular espaço não utilizado devido a muitas atualizações, inserções ou exclusões, levando à degradação do desempenho. A reindexação ajuda a remover esse espaço não utilizado e a restaurar a eficiência do índice.

#### Diretrizes de `reIndex`
<a name="w2aac33c19b7b7b5"></a>
+ `reIndex` é atualmente compatível somente com Amazon DocumentDB 5.0.
+ O Amazon DocumentDB oferece suporte a `reindex` de um único índice em segundo plano, permitindo vários operadores. O índice antigo pode ser usado por consultas quando o processo `reIndex` está em execução.
+ O Amazon DocumentDB oferece suporte à indexação de relatórios de andamento por meio de `currentOp`. É possível ver estágios de criação de índice semelhantes ao [Etapas de construção do índice](#index-build-stages) visualizado durante a criação do índice. A única diferença é que `reIndex` sempre tem oito estágios, independentemente de ser único ou não. Não há o estágio “criação de índice: chaves de classificação 2”.
+ `reIndex` pode ser executado simultaneamente com qualquer comando, exceto comandos relacionados a índices na mesma coleção: `createIndexes`, `dropIndexes`, `collMod` e `renameCollection`.
+ `reIndex` atualmente não é compatível com índices textuais, geoespaciais, vetoriais e parciais.

##### Criação de `reIndex`
<a name="w2aac33c19b7b7b5b5"></a>

Use o seguinte comando para recriar seu índice:

```
db.runCommand({ reIndex: "collection-name", index: "index-name"})
```

Opcionalmente, você também pode controlar o número de operadores atribuídos ao processo de reconstrução:

```
db.runCommand({ reIndex: "collection-name", index: "index-name", workers: number })
```

# Gerenciamento da compactação de documentos a nível de coleção
<a name="doc-compression"></a>

A compactação de documentos em nível de coleção do Amazon DocumentDB 5.0 permite que você reduza os custos de armazenamento e I/O ao compactar os documentos em suas coleções. É possível ativar a compactação de documentos a um nível de coleção e visualizar as métricas de compactação conforme necessário, medindo os ganhos de armazenamento por meio de métricas de compactação, como tamanho de armazenamento de documentos compactados e status de compactação. O Amazon DocumentDB 5.0 usa o algoritmo de LZ4 compactação para compactar documentos.

O Amazon DocumentDB oferece suporte à compactação de documentos a partir da versão 5.0. A seguir estão as funções de compactação de documentos em nível de coleção:
+ **Comportamento padrão** — A configuração de compactação padrão para novas coleções em um cluster 5.0 é determinada pelo parâmetro cluster`default_collection_compression`. Esse parâmetro é definido como “desativado” por padrão. 
+ **Compactação de coleções existentes**: a configuração de compactação de coleções existentes pode ser alterada usando o comando `collMod`.
+ **Alteração do limite de compactação**: o limite de compactação padrão é de 2 KB. Esse valor pode ser especificado para novas coleções usando o comando `createCollection` e alterado para coleções existentes usando o comando `collMod`.

**nota**  
A compactação de documentos do Amazon DocumentDB não tem suporte nas versões 3.6 e 4.0 do Amazon DocumentDB.

**Topics**
+ [Gerenciamento da compactação de documentos](#manage-compression)
+ [Monitoramento da compactação de documentos](#monitoring-compression)

## Gerenciamento da compactação de documentos
<a name="manage-compression"></a>

### Ativar a compactação de documentos em uma coleção
<a name="enabling-collection-compression"></a>

Ative a compactação de documentos ao criar uma coleção no Amazon DocumentDB 5.0 usando o `db.createCollection()` método:

```
db.createCollection( sample_collection,{
    storageEngine : {
        documentDB: {
            compression:{enable: <true | false>}
        }
    }
})
```

### Ativar a compactação de documentos em um cluster
<a name="enabling-cluster-compression"></a>

A compactação de documentos pode ser ativada por padrão para todas as novas coleções em um nível de cluster definindo o parâmetro de cluster `default_collection_compression` como “ativado”. Quando esse parâmetro é definido como “ativado”, as coleções recém-criadas no cluster terão a compactação ativada por padrão com um limite de compactação de 2 KB.

### Compactar coleções existentes
<a name="compress-existing-collections"></a>

Você também pode modificar as configurações de compactação de uma coleção existente usando a operação `collMod` e especificando a configuração `storageEngine` a seguir. Observe que a alteração feita usando esse comando se aplicará somente a inserted/updated documentos novos e a compactação em documentos inseridos anteriormente não será alterada.

```
db.runCommand({ 
    collMod: "orders", 
    storageEngine: { 
        documentDB: {compression: {enable: <true | false>} }
    }
})
```

### Definir os limites de compactação
<a name="set-compression-threshold"></a>

Por padrão, o limite de compactação para coleções compactadas é de 2032 bytes. Esse valor limite pode ser definido no comando `createCollection` ao criar uma nova coleção com a compactação ativada: 

```
db.createCollection( sample_collection, {
    storageEngine : {
        documentDB: {
            compression: {
                enable: true,
                threshold: <128 - 8000>
            }
        }
    }
})
```

Você também pode modificar o limite de compactação de uma coleção compactada existente usando a operação `collMod` e especificando a seguinte configuração `storageEngine`:

```
db.runCommand({ 
    collMod: "orders", 
    storageEngine: { 
        documentDB: {
            compression: {
                enable: true,
                threshold: <128 - 8000>
            }
        }
    }
})
```

Observe que o limite de compactação só pode ser definido com um valor entre 128 e 8000 bytes. Além disso, a opção `enable` precisa ser definida como “verdadeira” ao especificar o limite de compactação.

## Monitoramento da compactação de documentos
<a name="monitoring-compression"></a>

É possível verificar se uma coleção está compactada e calcular sua taxa de compactação da seguinte maneira.

Visualize as estatísticas de compressão executando o comando `db.printCollectionStats()` ou `db.collection.stats()` no shell do mongo. A saída mostra o tamanho original e o tamanho compactado, que é possível comparar para analisar os ganhos de armazenamento da compactação de documentos. Neste exemplo, são mostradas as estatísticas de uma coleção chamada “sample\$1collection”: Um fator de escala de 1024\$11024 é usado abaixo para gerar os valores `size` e `storageSize` em MB.

```
db.sample_collection.stats(1024*1024)
```

Veja a seguir um exemplo de saída do comando acima:

```
{
    "ns" : "test.sample_collection",
    "count" : 1000000,
    "size" : 3906.3,
    "avgObjSize" : 4096,
    "storageSize" : 1953.1, 
    compression:{"enabled" : true,"threshold" : 2032},
    ...
}
```
+ **tamanho** - O tamanho original da coleção de documentos.
+ **avgObjSize**- O tamanho médio do documento antes da compressão foi arredondado para a primeira casa decimal. A unidade de medida é bytes.
+ **StorageSize** - O tamanho de armazenamento da coleção após a compactação. A unidade de medida é bytes.
+ **habilitada** - Indica se a compactação está habilitada ou desabilitada.

Para calcular a taxa de compressão real, divida o tamanho da coleção pelo tamanho do armazenamento (tamanho/StorageSize). Para o exemplo acima, o cálculo é 3906,3/1953.1, o que se traduz em uma taxa de compressão de 2:1.

# Gerenciando a compactação baseada em dicionário no Amazon DocumentDB 8.0
<a name="dict-compression"></a>

O Amazon DocumentDB 8.0 introduz um novo algoritmo de compactação de documentos, zstd, como uma alternativa aprimorada a. LZ4 Quando você ativa a compactação de dicionário em uma coleção do Amazon DocumentDB 8.0 selecionando Zstd como algoritmo de compactação, os documentos da sua coleção são amostrados para criar um dicionário de compactação personalizado. Documentos novos e atualizados são compactados usando esse dicionário e o algoritmo zstd. Essa abordagem normalmente alcança taxas de compactação mais altas do que os métodos de compactação padrão, especialmente para coleções com esquemas de documentos consistentes ou nomes de campo repetidos. 

O Lz4 é um algoritmo projetado para compressão e descompressão rápidas. É conhecido por ser leve na CPU e, ao mesmo tempo, obter uma compressão perceptível. O Zstd é um algoritmo de uso geral que, com configurações padrão, usa mais CPU, mas atinge melhores taxas de compressão do que o lz4. O uso de dicionários melhora ainda mais a compactação da maioria dos documentos JSON. Alguns benefícios do algoritmo Zstd são:
+ Custos de armazenamento reduzidos: taxas de compressão mais altas significam menos uso de armazenamento e custos mais baixos.
+ MenorI/O: Compressed documents require less I/O, potencialmente melhorando o desempenho.
+ Otimizado para sua coleção: o dicionário é treinado especificamente para os padrões de dados da sua coleção.

**nota**  
A compactação baseada em dicionário não é suportada nas versões 3.6, 4.0 e 5.0 do Amazon DocumentDB.

## Considerações sobre desempenho
<a name="perf-considerations"></a>

A compactação Zstd envolve as seguintes compensações: 
+ Armazenamento versus CPU: a compactação Zstd atinge melhores taxas de compactação, mas pode usar um pouco mais de recursos da CPU em comparação com a compactação. LZ4 
+ Compressão inicial: novas coleções podem não atingir a compactação ideal até que documentos suficientes sejam inseridos para treinar um dicionário eficaz. Atualmente, um dicionário é treinado se a coleta de pelo menos 100 documentos.
+ Tipo de carga de trabalho: cargas de trabalho com uso intenso de leitura, nas quais todos os dados cabem no cache do buffer, podem sofrer um aumento na latência e no uso da CPU devido à sobrecarga de descompressão.

A compressão Zstd é particularmente eficaz para coleções com documentos pequenos, matrizes de documentos e nomes de campos repetidos.

## Habilitando a compactação baseada em dicionário
<a name="enabling-zstd"></a>

Para novas coleções, você pode usar o comando abaixo para ativar a compactação Zstd: 

```
db.createCollection("myCollection", 
    { 
        storageEngine: { 
            documentDB: { 
                compression: {
                    enable: true,
                    algorithm: "zstd"
                } 
            }
        }
    }
 )
```

Você também pode ativar ou modificar a compactação em uma coleção existente: 

```
db.runCommand({ 
    collMod: "myCollection", 
    storageEngine: { 
        documentDB: { 
            compression: {
                enable: true,
                algorithm: "zstd"
            } 
        }
    }
 })
```

Para ativar o algoritmo Zstd em todas as coleções em seu cluster, você pode modificar o grupo de parâmetros do cluster para selecionar “zstd” como o valor do parâmetro “default\$1collection\$1compression”.

## Conceitos básicos
<a name="getting-started"></a>

O Amazon DocumentDB 8.0 vem com a compactação Zstd ativada por padrão. Você sempre pode desativá-lo definindo o valor de 'default\$1compression' como desativado no grupo de parâmetros do cluster. Deve-se observar que, a partir do Amazon DocumentDB 8.0, 'enabled' não é mais uma opção válida para default\$1compression, e você deve selecionar entre Zstd e. LZ4 

## Monitoramento
<a name="monitoring"></a>

Você pode visualizar as informações de compactação de uma coleção usando um dos seguintes comandos:
+ db.runCommand (\$1collStats: “myCollection”\$1) OU
+ db.collection.stats ()

Esses comandos retornam as principais estatísticas que você pode usar para calcular a taxa de compactação:
+ compression.algorithm: O algoritmo usado (“lz4" ou “zstd”)
+ StorageSize: O armazenamento real usado pela coleção, após a compactação. Observe que esse número inclui fragmentação (ou seja, o espaço não utilizado nas páginas do banco de dados)
+ avgObjSize: o tamanho lógico médio dos documentos da coleção, descompactado. Observe que, se sua coleção tiver mais de 20 mil documentos, esse número será uma aproximação com base em uma amostra de 20 mil documentos.
+ tamanho: o tamanho lógico da coleção sem compressão. Esse número é obtido multiplicando avgObjSize pelo número total de documentos na coleção, portanto, se avgObjSize for uma aproximação, esse número também será uma aproximação.
+ contagem: Número de documentos na coleção 

As CloudWatch métricas a seguir podem ser úteis ao avaliar a compactação baseada em dicionário:
+ CPUUtilization
+ FreeableMemory
+ VolumeBytesUsed
+ VolumeReadIOPs
+ VolumeWriteIOPs

Métricas do CollStats:
+ storageSize
+ size

Além disso, pode ser útil acompanhar as métricas específicas do seu aplicativo, como latência e taxa de transferência por tipo de consulta ou API.

# Gerenciando eventos do Amazon DocumentDB
<a name="managing-events"></a>

O Amazon DocumentDB (compatível com MongoDB) mantém um registro de eventos que se relacionam a seus clusters, instâncias, snapshots, grupos de segurança e grupos de parâmetros do cluster. Essas informações incluem a data e a hora do evento, o nome e o tipo de origem do evento, além de uma mensagem que está associada ao evento.

**Importante**  
Para determinados recursos de gerenciamento, o Amazon DocumentDB usa a tecnologia operacional que é compartilhada com o Amazon RDS e o Amazon Neptune. Os limites de região, limites que são governados no nível da Região, são compartilhados entre o Amazon DocumentDB, o Amazon RDS e o Amazon Neptune. Para obter mais informações, consulte [Cotas regionais](limits.md#limits-regional_quotas).

**Topics**
+ [Visualização das categorias de eventos do Amazon DocumentDB](#viewing-event-categories)
+ [Visualizando eventos do Amazon DocumentDB](#viewing-events)

## Visualização das categorias de eventos do Amazon DocumentDB
<a name="viewing-event-categories"></a>

Cada tipo de recurso do Amazon DocumentDB tem tipos específicos de eventos que podem ser associados a ele. Você pode usar a operação de AWS CLI `describe-event-categories` para visualizar o mapeamento entre os tipos de evento e os tipos de recursos do Amazon DocumentDB.

**Parâmetros**
+ **--source-type**—Opcional. Use o parâmetro `--source-type` para ver as categorias de evento para um determinado tipo de origem. Os seguintes valores são permitidos:
  + `db-cluster`
  + `db-instance`
  + `db-parameter-group`
  + `db-security-group`
  + `db-cluster-snapshot`
+ **--filters**—Opcional. Para visualizar as categorias de eventos apenas do Amazon DocumentDB, use o filtro `--filter Name=engine,Values=docdb`.

**Example**  
O código a seguir lista as categorias de eventos associadas aos clusters.  
Para Linux, macOS ou Unix:  

```
aws docdb describe-event-categories \
    --filter Name=engine,Values=docdb \
    --source-type db-cluster
```
Para Windows:  

```
aws docdb describe-event-categories ^
    --filter Name=engine,Values=docdb ^
    --source-type db-cluster
```
A saída dessa operação é semelhante ao seguinte (formato JSON).  

```
{
    "EventCategoriesMapList": [
        {
            "EventCategories": [
                "notification",
                "failure",
                "maintenance",
                "failover"
            ],
            "SourceType": "db-cluster"
        }
    ]
}
```
O código a seguir lista as categorias de eventos associadas a cada tipo de origem do Amazon DocumentDB.  

```
aws docdb describe-event-categories
```
A saída dessa operação é semelhante ao seguinte (formato JSON).  

```
{
    "EventCategoriesMapList": [
        {
            "SourceType": "db-instance",
            "EventCategories": [
                "notification",
                "failure",
                "creation",
                "maintenance",
                "deletion",
                "recovery",
                "restoration",
                "configuration change",
                "read replica",
                "backtrack",
                "low storage",
                "backup",
                "availability",
                "failover"
            ]
        },
        {
            "SourceType": "db-security-group",
            "EventCategories": [
                "configuration change",
                "failure"
            ]
        },
        {
            "SourceType": "db-parameter-group",
            "EventCategories": [
                "configuration change"
            ]
        },
        {
            "SourceType": "db-cluster",
            "EventCategories": [
                "notification",
                "failure",
                "maintenance",
                "failover"
            ]
        },
        {
            "SourceType": "db-cluster-snapshot",
            "EventCategories": [
                "backup"
            ]
        }
    ]
}
```

## Visualizando eventos do Amazon DocumentDB
<a name="viewing-events"></a>

Você pode recuperar eventos para seus recursos do Amazon DocumentDB pelo console do Amazon DocumentDB, que mostra eventos das últimas 24 horas. Você também pode recuperar eventos para seus recursos do Amazon DocumentDB usando o comando [describe-events](https://docs.aws.amazon.com/cli/latest/reference/docdb/describe-events.html) AWS CLI ou a operação [DescribeEvents](https://docs.aws.amazon.com/documentdb/latest/developerguide/API_DescribeEvents.html) da API do Amazon DocumentDB. Se você usar a AWS CLI ou a API Amazon DocumentDB para visualizar eventos, poderá recuperar eventos até os últimos 14 dias.

------
#### [ Using the Console de gerenciamento da AWS ]

**Para visualizar todos os eventos de instâncias do Amazon DocumentDB nas últimas 24 horas**

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

1. No painel de navegação, escolha **Eventos**. Os eventos disponíveis aparecem em uma lista.

1. Use a lista **Filtro** para filtrar os eventos por tipo. Insira um termo na caixa de texto para filtrar os resultados. Por exemplo, a captura de tela a seguir mostra a filtragem de todos os eventos do Amazon DocumentDB para eventos *snapshot*.  
![\[Captura de tela da seção de eventos mostrando eventos de filtragem para snapshots.\]](http://docs.aws.amazon.com/pt_br/documentdb/latest/developerguide/images/events-filtering.png)

------
#### [ Using the AWS CLI ]

**Para visualizar todos os eventos de instância do Amazon DocumentDB dos últimos 7 dias**  
Você pode visualizar todos os eventos de instância do Amazon DocumentDB dos últimos 7 dias executando a operação [describe-events](https://docs.aws.amazon.com/cli/latest/reference/docdb/describe-events.html) AWS CLI com o parâmetro `--duration` definido como `10080` (10.080 minutos).

```
aws docdb describe-events --duration 10080
```

**Filtragem para eventos do Amazon DocumentDB**

Para ver os eventos específicos do Amazon DocumentDB, use a operação `describe-events` com os seguintes parâmetros.

**Parâmetros**
+ **--filter**—Necessário para limitar os valores retornados ao evento Amazon DocumentDB. Use **Name=engine,Values=docdb** para filtrar todos os eventos somente para o Amazon DocumentDB.
+ **--source-identifier**—Opcional. O identificador da origem do evento para o qual os eventos são retornados. Se omitido, os eventos de todas as origens são incluídos nos resultados.
+ **--source-type**—Opcional, a menos que `--source-identifier` seja fornecido, então é necessário. Se `--source-identifier` for fornecido, `--source-type` deve estar de acordo com o tipo do `--source-identifier`. Os seguintes valores são permitidos:
  + `db-cluster`
  + `db-instance`
  + `db-parameter-group`
  + `db-security-group`
  + `db-cluster-snapshot`

O exemplo a seguir lista todos os eventos do Amazon DocumentDB.

```
aws docdb describe-events --filters Name=engine,Values=docdb
```

A saída dessa operação é semelhante ao seguinte (formato JSON).

```
{
    "Events": [
        {
            "SourceArn": "arn:aws:rds:us-east-1:123SAMPLE012:db:sample-cluster-instance3",
            "Message": "instance created",
            "SourceType": "db-instance",
            "Date": "2018-12-11T21:17:40.023Z",
            "SourceIdentifier": "sample-cluster-instance3",
            "EventCategories": [
                "creation"
            ]
        },
        {
            "SourceArn": "arn:aws:rds:us-east-1:123SAMPLE012:db:docdb-2018-12-11-21-08-23",
            "Message": "instance shutdown",
            "SourceType": "db-instance",
            "Date": "2018-12-11T21:25:01.245Z",
            "SourceIdentifier": "docdb-2018-12-11-21-08-23",
            "EventCategories": [
                "availability"
            ]
        },
        {
            "SourceArn": "arn:aws:rds:us-east-1:123SAMPLE012:db:docdb-2018-12-11-21-08-23",
            "Message": "instance restarted",
            "SourceType": "db-instance",
            "Date": "2018-12-11T21:25:11.441Z",
            "SourceIdentifier": "docdb-2018-12-11-21-08-23",
            "EventCategories": [
                "availability"
            ]
        }
    ]
}
```

------

Para obter mais informações, consulte [Auditar eventos do Amazon DocumentDB](event-auditing.md).

# Escolher regiões e zonas de disponibilidade
<a name="regions-and-azs"></a>

Os recursos de computação em nuvem da Amazon são hospedados em vários locais no mundo todo. Esses locais consistem em zonas de Regiões da AWS disponibilidade. Cada uma *Região da AWS* é uma área geográfica separada. Cada região contém vários locais isolados conhecidos como *Zonas de Disponibilidade*. O Amazon DocumentDB permite que você coloque recursos, como instâncias de banco de dados, e dados em vários locais. Os recursos não são replicados, Regiões da AWS a menos que você faça isso especificamente.

A Amazon opera data centers avançados e altamente disponíveis. Embora sejam raras, podem ocorrer falhas que afetam a disponibilidade das instâncias que estão no mesmo local. Se você hospeda todas as suas instâncias em um único local afetado por tal falha, nenhuma delas fica disponível. O diagrama a seguir mostra um Região da AWS com três zonas de disponibilidade.

![\[Um diagrama de uma região que contém três Zonas de Disponibilidade a, b e c.\]](http://docs.aws.amazon.com/pt_br/documentdb/latest/developerguide/images/RegionsAndAZs.png)


É importante lembrar que cada região é totalmente independente. Qualquer atividade do Amazon DocumentDB iniciada por você (por exemplo, criar instâncias ou listar instâncias disponíveis) é executada somente em seu padrão atual Região da AWS. Você também pode alterar a região padrão no console, definindo a variável de ambiente `EC2_REGION`. Ou pode substituí-la usando o parâmetro `--region` na AWS CLI. Para obter mais informações, consulte [Configurando AWS Command Line Interface, especificamente, as](https://docs.aws.amazon.com/cli/latest/userguide/cli-chap-getting-started.html) seções sobre variáveis de ambiente e opções de linha de comando. 

Quando você cria um cluster usando o console do Amazon DocumentDB e opta por criar uma réplica em uma zona de disponibilidade diferente, o Amazon DocumentDB cria duas instâncias. Ele cria a instância primária em uma zona de disponibilidade e a instância de réplica em uma zona de disponibilidade diferente. O volume do cluster é sempre replicado em três zonas de disponibilidade.

Para criar ou trabalhar com uma instância do Amazon DocumentDB em uma instância específica Região da AWS, use o endpoint de serviço regional correspondente. 

## Disponibilidade de regiões
<a name="regions-and-azs-availability"></a>

O Amazon DocumentDB está disponível nas seguintes AWS regiões. 

**Regiões compatíveis com o Amazon DocumentDB**


| Nome da Região | Região | Zonas de disponibilidade (computação) | 
| --- | --- | --- | 
| Leste dos EUA (Ohio) | `us-east-2` | 3 | 
| Leste dos EUA (Norte da Virgínia) | `us-east-1` | 6 | 
| Oeste dos EUA (Oregon) | `us-west-2` | 4 | 
| África (Cidade do Cabo) | `af-south-1` | 3 | 
| América do Sul (São Paulo) | `sa-east-1` | 3 | 
| Ásia-Pacífico (Hong Kong) | `ap-east-1` | 3 | 
| Ásia-Pacífico (Hyderabad) | `ap-south-2` | 3 | 
| Ásia-Pacífico (Malásia) | `ap-southeast-5` | 3 | 
| Ásia-Pacífico (Mumbai) | `ap-south-1` | 3 | 
| Ásia-Pacífico (Osaka) | `ap-northeast-3` | 3 | 
| Ásia-Pacífico (Seul) | `ap-northeast-2` | 4 | 
| Ásia-Pacífico (Singapura) | `ap-southeast-1` | 3 | 
| Ásia-Pacífico (Sydney) | `ap-southeast-2` | 3 | 
| Ásia-Pacífico (Jacarta) | `ap-southeast-3` | 3 | 
| Ásia-Pacífico (Melbourne) | `ap-southeast-4` | 3 | 
| Ásia-Pacífico (Tailândia) | `ap-southeast-7` | 3 | 
| Ásia-Pacífico (Tóquio) | `ap-northeast-1` | 3 | 
| Canadá (Central) | `ca-central-1` | 3 | 
| Região China (Pequim) | `cn-north-1` | 3 | 
| China (Ningxia) | `cn-northwest-1` | 3 | 
| Europa (Frankfurt) | `eu-central-1` | 3 | 
| Europa (Zurique) | `eu-central-2` | 3 | 
| Europa (Irlanda) | `eu-west-1` | 3 | 
| Europa (Londres) | `eu-west-2` | 3 | 
| Europa (Milão) | `eu-south-1` | 3 | 
| Europa (Paris) | `eu-west-3` | 3 | 
| Europa (Espanha) | `eu-south-2` | 3 | 
| Europa (Estocolmo) | `eu-north-1` | 3 | 
| México (Centro) | `mx-central-1` | 3 | 
| Oriente Médio (Emirados Árabes Unidos) | `me-central-1` | 3 | 
| Israel (Tel Aviv) | `il-central-1` | 3 | 
| AWS GovCloud (Oeste dos EUA) | `us-gov-west-1` | 3 | 
| AWS GovCloud (Leste dos EUA) | `us-gov-east-1` | 3 | 

Por padrão, o fuso horário de um cluster de bancos de dados Amazon DocumentDB é o Tempo Universal Coordenado (UTC).

Para obter informações sobre como localizar endpoints de conexão para clusters e instâncias em uma região específica, consulte [Noções básicas sobre endpoints do Amazon DocumentDB](endpoints.md).

# Gerenciando grupos de parâmetros de cluster do Amazon DocumentDB
<a name="cluster_parameter_groups"></a>

É possível gerir a configuração do mecanismo do Amazon DocumentDB usando parâmetros em um grupo de parâmetros de cluster. Um *grupo de parâmetros de cluster* é um conjunto de valores de configuração do Amazon DocumentDB que facilita o gerenciamento dos parâmetros de seus clusters do Amazon DocumentDB. Grupos de parâmetro de cluster atuam como contêiner de valores de configuração de mecanismo que são aplicados a todas as instâncias no cluster. 

Esta seção descreve como criar, exibir e modificar grupos de parâmetros de cluster. Ele também mostra como é possível determinar qual grupo de parâmetros de cluster está associado a um determinado cluster.

**Topics**
+ [Descrevendo grupos de parâmetros de cluster](cluster_parameter_groups-describe.md)
+ [Criando grupos de parâmetros de cluster](cluster_parameter_groups-create.md)
+ [Modificando grupos de parâmetros de cluster](cluster_parameter_groups-modify.md)
+ [Modificando clusters para usar grupos de parâmetros de cluster personalizados](cluster_parameter_groups-modify_clusters.md)
+ [Copiando grupos de parâmetros de cluster](cluster_parameter_groups-copy.md)
+ [Redefinindo grupos de parâmetros de cluster](cluster_parameter_groups-reset.md)
+ [Excluindo grupos de parâmetros de cluster](cluster_parameter_groups-delete.md)
+ [Referência de parâmetros de cluster](cluster_parameter_groups-list_of_parameters.md)

# Descrever os grupos de parâmetros de cluster do Amazon DocumentDB
<a name="cluster_parameter_groups-describe"></a>

Um grupo de parâmetros de cluster `default` é criado automaticamente quando você cria o primeiro cluster Amazon DocumentDB na nova região ou usa um novo mecanismo. Os clusters subsequentes, criados na mesma região e com a mesma versão do mecanismo, são criados com o grupo de parâmetros do cluster `default`.

**Topics**
+ [Descrevendo os detalhes de um grupo de parâmetros de cluster](#cluster_parameter_groups-describe_details)
+ [Determinando um grupo de parâmetros de um cluster](#cluster_parameter_groups-determine)
+ [Determinação de clusters e instâncias associados a um grupo de parâmetros de cluster](#cluster_parameter_groups-count)

## Descrevendo os detalhes de um grupo de parâmetros de cluster do Amazon DocumentDB
<a name="cluster_parameter_groups-describe_details"></a>

Para descrever os detalhes de um determinado grupo de parâmetros de cluster, conclua as etapas a seguir usando o Console de gerenciamento da AWS ou o AWS Command Line Interface (AWS CLI).

------
#### [ Using the Console de gerenciamento da AWS ]

****

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

1. No painel de navegação, escolha **Grupos de parâmetros**. 
**dica**  
Caso não visualize o painel de navegação à esquerda da tela, selecione o ícone do menu (![\[Hamburger menu icon with three horizontal lines.\]](http://docs.aws.amazon.com/pt_br/documentdb/latest/developerguide/images/docdb-menu-icon.png)) no canto superior esquerdo da página.

1. No painel **Grupos de parâmetros de cluster**, escolha o nome do grupo de parâmetros de cluster cujos detalhes deseja visualizar.

1. A página resultante exibe os parâmetros do grupo de parâmetros, a atividade recente e as tags.
   + Em **Parâmetros de cluster**, é possível ver o nome do parâmetro, o valor atual, os valores permitidos, se o parâmetro é modificável, o tipo de aplicação, o tipo de dado e a descrição. É possível modificar parâmetros individuais selecionando o parâmetro e escolhendo **Editar** na seção **Parâmetros de cluster**. Para obter mais informações, consulte [Modificando os parâmetros de cluster do Amazon DocumentDB](cluster_parameter_groups-parameters.md).
   + Em **Eventos recentes**, é possível ver os eventos mais recentes para esse grupo de parâmetros. É possível filtrar esses eventos usando a barra de pesquisa nesta seção. Para obter mais informações, consulte [Gerenciando eventos do Amazon DocumentDB](managing-events.md).
   + Em **Tags**, você pode ver as tags nesse grupo de parâmetro do cluster. É possível adicionar ou remover tags escolhendo **Editar** na seção **Tags**. Para obter mais informações, consulte [Marcação de recursos do Amazon DocumentDB](tagging.md).

------
#### [ Using the AWS CLI ]

Você pode usar o `describe-db-cluster-parameter-groups` AWS CLI comando para visualizar o Amazon Resource Name (ARN), a família, a descrição e o nome de um único grupo de parâmetros de cluster ou de todos os grupos de parâmetros de cluster que você tem para o Amazon DocumentDB. Você também pode usar o `describe-db-cluster-parameters` AWS CLI comando para visualizar os parâmetros e seus detalhes dentro de um único grupo de parâmetros do cluster.
+ **--describe-db-cluster-parameter-groups** — para ver uma lista de todos os grupos de parâmetros de cluster e seus detalhes.
  + **--db-cluster-parameter-group-name** — Opcional. O nome do grupo de parâmetro de cluster que você deseja descrever. Se esse parâmetro for omitido, todos os grupos de parâmetro de cluster serão descritos.
+ **--describe-db-cluster-parameters** — para listar todos os parâmetros em um grupo de parâmetros e seus valores.
  + **--db-cluster-parameter-group name** — obrigatório. O nome do grupo de parâmetro de cluster que você deseja descrever.

**Example**  
O código a seguir lista até 100 grupos de parâmetros de cluster e seus ARNs, famílias, descrições e nomes.  

```
aws docdb describe-db-cluster-parameter-groups
```
A saída dessa operação é semelhante ao seguinte (formato JSON).  

```
{
          "DBClusterParameterGroups": [
              {
                  "DBClusterParameterGroupArn": "arn:aws:rds:us-east-1:012345678912:cluster-pg:default.docdb4.0",
                  "DBParameterGroupFamily": "docdb4.0",
                  "Description": "Default cluster parameter group for docdb4.0",
                  "DBClusterParameterGroupName": "default.docdb4.0"
              },
              {
                  "DBClusterParameterGroupArn": "arn:aws:rds:us-east-1:012345678912:cluster-pg:sample-parameter-group",
                  "DBParameterGroupFamily": "docdb4.0",
                  "Description": "Custom docdb4.0 parameter group",
                  "DBClusterParameterGroupName": "sample-parameter-group"
              }
          ]
}
```

**Example**  
O código a seguir lista o ARN, a família, a descrição e o nome do `sample-parameter-group`.  
Para Linux, macOS ou Unix:  

```
aws docdb describe-db-cluster-parameter-groups \
          --db-cluster-parameter-group-name sample-parameter-group
```
Para Windows:  

```
aws docdb describe-db-cluster-parameter-groups ^
          --db-cluster-parameter-group-name sample-parameter-group
```
A saída dessa operação é semelhante ao seguinte (formato JSON).  

```
{
          "DBClusterParameterGroups": [
              {
                  "DBClusterParameterGroupArn": "arn:aws:rds:us-east-1:123456789012:cluster-pg:sample-parameter-group",
                  "Description": "Custom docdb4.0 parameter group",
                  "DBParameterGroupFamily": "docdb4.0",
                  "DBClusterParameterGroupName": "sample-parameter-group"
              }
          ]
}
```

**Example**  
O código a seguir lista os valores dos parâmetros no `sample-parameter-group`.  
Para Linux, macOS ou Unix:  

```
aws docdb describe-db-cluster-parameters \
    --db-cluster-parameter-group-name sample-parameter-group
```
Para Windows:  

```
aws docdb describe-db-cluster-parameters ^
    --db-cluster-parameter-group-name sample-parameter-group
```
A saída dessa operação é semelhante ao seguinte (formato JSON).  

```
{
   "Parameters": [
         {
            "ParameterName": "audit_logs",
            "ParameterValue": "disabled",
            "Description": "Enables auditing on cluster.",
            "Source": "system",
            "ApplyType": "dynamic",
            "DataType": "string",
            "AllowedValues": "enabled,disabled",
            "IsModifiable": true,
            "ApplyMethod": "pending-reboot"
         },
         {
            "ParameterName": "change_stream_log_retention_duration",
            "ParameterValue": "17777",
            "Description": "Duration of time in seconds that the change stream log is retained and can be consumed.",
            "Source": "user",
            "ApplyType": "dynamic",
            "DataType": "integer",
            "AllowedValues": "3600-86400",
            "IsModifiable": true,
            "ApplyMethod": "pending-reboot"
         }
   ]
}
```

------

## Determinando o grupo de parâmetros de um cluster do Amazon DocumentDB
<a name="cluster_parameter_groups-determine"></a>

Para determinar qual grupo de parâmetros está associado a um determinado cluster, conclua as etapas a seguir usando o Console de gerenciamento da AWS ou AWS CLI o. 

------
#### [ Using the Console de gerenciamento da AWS ]

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

1. No painel de navegação à esquerda, escolha **Clusters**.

1. Na lista de clusters, selecione o nome do cluster desejado.

1. A página resultante exibe os detalhes do cluster selecionado. Role para baixo até **Detalhes do cluster**. Na parte inferior dessa seção, localize o nome do grupo de parâmetros sob **Grupo de parâmetros de cluster**.  
![\[Captura de tela: como mostrar um grupo de parâmetros de um cluster.\]](http://docs.aws.amazon.com/pt_br/documentdb/latest/developerguide/images/docdb-determine-parameter-group.png)

------
#### [ Using the AWS CLI ]

O AWS CLI código a seguir determina qual grupo de parâmetros está governando o cluster`sample-cluster`.

```
aws docdb describe-db-clusters \
      --db-cluster-identifier sample-cluster \
      --query 'DBClusters[*].[DBClusterIdentifier,DBClusterParameterGroup]'
```

A saída dessa operação é semelhante ao seguinte (formato JSON).

```
[
       [
           "sample-cluster",
           "sample-parameter-group"
       ]
]
```

------

## Determinação de clusters e instâncias associados a um grupo de parâmetros de cluster do Amazon DocumentDB
<a name="cluster_parameter_groups-count"></a>

Para determinar quantos clusters e instâncias estão associados a cada grupo de parâmetros, conclua as etapas a seguir usando AWS CLI o.

------
#### [ Using the AWS CLI ]

O AWS CLI código a seguir determina a quantos clusters e instâncias estão associados`sample-parameter-group`.

Para Linux, macOS ou Unix:

```
aws docdb describe-db-clusters \
      --query 'DBClusters[*].[DBClusterParameterGroup,DBClusterIdentifier,DBClusterMembers[*].DBInstanceIdentifier]' \
      --output json | \
      jq -r 'group_by(.[0]) | map({
         parameter_group_name: .[0][0],
         total_clusters: length,
         total_instances: map(.[2] | length) | add // 0
      }) | .[]'
```

Para Windows:

```
aws docdb describe-db-clusters ^
      --query 'DBClusters[*].[DBClusterParameterGroup,DBClusterIdentifier,DBClusterMembers[*].DBInstanceIdentifier]' ^
      --output json | ^
      jq -r 'group_by(.[0]) | map({
         parameter_group_name: .[0][0],
         total_clusters: length,
         total_instances: map(.[2] | length) | add // 0
      }) | .[]'
```

A saída dessa operação é semelhante ao seguinte (formato JSON).

```
{
   "parameter_group_name": "sample-parameter-group",
   "total_clusters": 50,
   "total_instances": 150
}
```

------

# Criando grupos de parâmetros de cluster do Amazon DocumentDB
<a name="cluster_parameter_groups-create"></a>

Grupos de parâmetros de cluster padrão, como `default.docdb5.0`, `default.docdb4.0`, ou `default.docdb3.6`, são criados quando você cria um cluster com uma nova versão do mecanismo em uma nova região. Os clusters subsequentes criados nessa região com a mesma versão do mecanismo herdam o grupo de parâmetros do cluster `default`. Depois de criados, os grupos de parâmetros `default` não podem ser excluídos nem renomeados. É possível modificar o comportamento do mecanismo das instâncias de cluster criando um grupo de parâmetros personalizado com valores de parâmetros preferenciais e anexando-o ao seu cluster do Amazon DocumentDB. 

O procedimento a seguir orienta na criação de um grupo de parâmetros de cluster personalizado com base na família. Depois disso, é possível [modificar os parâmetros desse grupo de parâmetros](https://docs.aws.amazon.com//documentdb/latest/developerguide/cluster_parameter_groups-modify.html).

**nota**  
Depois de modificar um grupo de parâmetros de cluster, é necessário esperar pelo menos 5 minutos antes de usar esse grupo de parâmetros em particular. Isso permite que o Amazon DocumentDB conclua a ação `create` integralmente antes que o grupo de parâmetros de cluster seja usado para um novo cluster. Você pode usar a `describe-db-cluster-parameter-groups` AWS CLI operação Console de gerenciamento da AWS ou a para verificar se o grupo de parâmetros do cluster foi criado. Para obter mais informações, consulte [Descrever os grupos de parâmetros de cluster do Amazon DocumentDB](cluster_parameter_groups-describe.md).

------
#### [ Using the Console de gerenciamento da AWS ]

**Para criar um grupos de parâmetros de cluster**

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

1. No painel de navegação, escolha **Grupos de parâmetros**. 
**dica**  
Caso não visualize o painel de navegação à esquerda da tela, selecione o ícone do menu (![\[Hamburger menu icon with three horizontal lines.\]](http://docs.aws.amazon.com/pt_br/documentdb/latest/developerguide/images/docdb-menu-icon.png)) no canto superior esquerdo da página.

1. No painel **Grupos de parâmetros de cluster**, escolha **Criar**.

1. No painel **Criar grupo de parâmetros do cluster** insira o seguinte:

   1. **Nome do grupo de parâmetros do novo cluster**: insira um nome para o grupo de parâmetros do cluster. Por exemplo, .`sample-parameter-group` Os grupos de parâmetros de cluster têm as seguintes restrições de nomenclatura:
      + O tamanho é de [1–255] caracteres alfanuméricos.
      + O primeiro caractere deve ser uma letra.
      + Não pode terminar com um hífen ou conter dois hifens consecutivos.

   1. **Família**: escolha uma versão do DocumentDB que você pretende usar para seu cluster.

   1. **Descrição** — fornece uma descrição para este grupo de parâmetros de cluster.

1. Para criar o grupo de parâmetro de cluster, escolha **Criar**. Para cancelar a operação, escolha **Cancelar**.

1. Depois de escolher **Criar**, o texto a seguir será exibido na parte superior da página, para verificar se o grupo de parâmetros de cluster foi criado com êxito:

   ```
   Successfully created cluster parameter group 'sample-parameter-group'.
   ```

------
#### [ Using the AWS CLI ]

Para criar um novo grupo de parâmetros de cluster para clusters do Amazon DocumentDB 4.0, use a AWS CLI `create-db-cluster-parameter-group` operação com os seguintes parâmetros:
+ **--db-cluster-parameter-group-name** — o nome do grupo de parâmetros de cluster personalizado. Por exemplo, .`sample-parameter-group`
+ **--db-cluster-parameter-group-family** — a família do grupo de parâmetros de cluster usada como modelo para o grupo de parâmetros de cluster personalizado.
+ **--description** — a descrição fornecida pelo usuário para esse grupo de parâmetros de cluster. O exemplo a seguir usa "`Custom docdb4.0 parameter group`".

Para Linux, macOS ou Unix:

**Example**  

```
aws docdb create-db-cluster-parameter-group \
 --db-cluster-parameter-group-name sample-parameter-group \
 --db-parameter-group-family docdb5.0 \
 --description "Custom docdb5.0 parameter group"
```
Para Windows:  

```
aws docdb create-db-cluster-parameter-group ^
 --db-cluster-parameter-group-name sample-parameter-group ^
 --db-parameter-group-family docdb5.0 ^
 --description "Custom docdb5.0 parameter group"
```
A saída dessa operação é semelhante ao seguinte (formato JSON).  

```
{
    "DBClusterParameterGroup": {
        "DBClusterParameterGroupName": "sample-parameter-group",
        "DBParameterGroupFamily": "docdb5.0",
        "Description": "Custom docdb4.0 parameter group",
        "DBClusterParameterGroupArn": "sample-parameter-group-arn"
    }
}
```

------

# Modificando grupos de parâmetros de cluster do Amazon DocumentDB
<a name="cluster_parameter_groups-modify"></a>

Esta seção explica como modificar um grupo de parâmetros *personalizado* do Amazon DocumentDB. No Amazon DocumentDB, você não pode modificar um grupo de parâmetros de cluster `default` ao criar pela primeira vez um cluster com a nova versão do mecanismo em uma nova região. Se o cluster do Amazon DocumentDB estiver usando o grupo de parâmetros de cluster padrão e você desejar modificar um valor, primeiro será necessário [criar um novo grupo de parâmetros](https://docs.aws.amazon.com//documentdb/latest/developerguide/cluster_parameter_groups-create.html), ou [copiar um grupo de parâmetros existente](https://docs.aws.amazon.com//documentdb/latest/developerguide/cluster_parameter_groups-copy.html), para então modificá-lo e, em seguida, aplicar o grupo de parâmetros modificado ao seu cluster.

Conclua as etapas a seguir para modificar um grupo personalizado de parâmetros de cluster. As ações de modificação podem demorar um pouco para se propagar. Aguarde até que o grupo de parâmetros de cluster modificado esteja disponível antes de anexá-lo ao seu cluster. Você pode usar a AWS CLI `describe-db-cluster-parameters` operação Console de gerenciamento da AWS ou a para verificar se o grupo de parâmetros do cluster foi modificado. Para obter mais informações, consulte [Descrevendo grupos de parâmetros de cluster](cluster_parameter_groups-describe.md).

------
#### [ Using the Console de gerenciamento da AWS ]

Siga estas etapas para modificar um grupo de parâmetros do Amazon DocumentDB personalizado. Não é possível modificar um grupo de parâmetros `default`. Se você deseja modificar um valor no grupo de parâmetros `default`, você pode [copiar o grupo de parâmetros de cluster padrão](https://docs.aws.amazon.com//documentdb/latest/developerguide/cluster_parameter_groups-copy.html), modificá-lo e aplicá-lo ao cluster. Para obter mais informações sobre como aplicar grupos de parâmetros ao cluster, consulte [Modificar um cluster do Amazon DocumentDB](db-cluster-modify.md).

**Para modificar um grupos de parâmetros de cluster personalizado**

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

1. No painel de navegação, no lado esquerdo do console, selecione **Grupos de parâmetros**. Na lista de grupos de parâmetro, escolha o nome do grupo de parâmetro que deseja modificar.
**dica**  
Caso não visualize o painel de navegação à esquerda da tela, selecione o ícone do menu (![\[Hamburger menu icon with three horizontal lines.\]](http://docs.aws.amazon.com/pt_br/documentdb/latest/developerguide/images/docdb-menu-icon.png)) no canto superior esquerdo da página.

1. Para cada parâmetro no grupo de parâmetro que desejar modificar, faça o seguinte:

   1. Localize o parâmetro que deseja modificar e verifique se ele é modificável e se está listado como `true` na coluna **Modificável**.

   1. Se for modificável, selecione o parâmetro e escolha **Editar** no canto superior direito da página do console.

   1. Na caixa de diálogo **Modificar `<parameter-name>`**, faça as alterações que deseja. Depois disso, escolha **Modificar parâmetro de cluster** ou **Cancelar** para descartar as alterações.

------
#### [ Using the AWS CLI ]

É possível modificar o `ParameterValue`, a `Description` ou o `ApplyMethod` de qualquer parâmetro modificável em um grupo de parâmetros de cluster personalizado do Amazon DocumentDB usando a AWS CLI. Não é possível fazer modificações diretamente em um grupo de parâmetros de cluster.

Para modificar os parâmetros de um grupo de parâmetros de cluster personalizado, use a operação `modify-db-cluster-parameter-group` com os parâmetros a seguir.
+ **--db-cluster-parameter-group-name** — Obrigatório. O nome do grupos de parâmetros de cluster que você está modificando.
+ **--parameters** — Obrigatório. Os parâmetros que você está modificando. Para obter uma lista dos parâmetros que se aplicam a todas as instâncias em um cluster do Amazon DocumentDB, consulte [Referência de parâmetros de cluster do Amazon DocumentDB](cluster_parameter_groups-list_of_parameters.md). Cada entrada de parâmetro deve incluir o seguinte:
  + **ParameterName** — O nome do parâmetro que você está modificando.
  + **ParameterValue** — o novo valor para esse parâmetro.
  + **ApplyMethod** — como você deseja aplicar as alterações nesse parâmetro. Os valores permitidos são `immediate` e `pending-reboot`.
**nota**  
Os parâmetros com `ApplyType` de `static` devem ter um `ApplyMethod` de `pending-reboot`.

**Example - Modificando o valor de um parâmetro**  
Neste exemplo, você lista os valores de parâmetro de `sample-parameter-group` e modifica o parâmetro `tls`. Em seguida, após esperar 5 minutos, você listará novamente os valores dos parâmetros do `sample-parameter-group` para vê-los alterados.  

1. Liste os parâmetros e os valores do `sample-parameter-group`.

   Para Linux, macOS ou Unix:

   ```
   aws docdb describe-db-cluster-parameters \
          --db-cluster-parameter-group-name sample-parameter-group
   ```

   Para Windows:

   ```
   aws docdb describe-db-cluster-parameters ^
          --db-cluster-parameter-group-name sample-parameter-group
   ```

   A saída dessa operação é semelhante ao seguinte (formato JSON).

   ```
   {
          "Parameters": [
              {
                  "Source": "system",
                  "ApplyType": "static",
                  "AllowedValues": "disabled,enabled",
                  "ParameterValue": "enabled",
                  "ApplyMethod": "pending-reboot",
                  "DataType": "string",
                  "ParameterName": "tls",
                  "IsModifiable": true,
                  "Description": "Config to enable/disable TLS"
              },
              {
                  "Source": "user",
                  "ApplyType": "dynamic",
                  "AllowedValues": "disabled,enabled",
                  "ParameterValue": "enabled",
                  "ApplyMethod": "pending-reboot",
                  "DataType": "string",
                  "ParameterName": "ttl_monitor",
                  "IsModifiable": true,
                  "Description": "Enables TTL Monitoring"
              }
          ]
   }
   ```

1. Modifique o parâmetro `tls` para que seu valor seja `disabled`. 

   Não é possível modificar o `ApplyMethod` porque o `ApplyType` é `static`. 

   Para Linux, macOS ou Unix:

   ```
   aws docdb modify-db-cluster-parameter-group \
          --db-cluster-parameter-group-name sample-parameter-group \
          --parameters "ParameterName"=tls,"ParameterValue"=disabled,"ApplyMethod"=pending-reboot
   ```

   Para Windows:

   ```
   aws docdb modify-db-cluster-parameter-group ^
          --db-cluster-parameter-group-name sample-parameter-group ^
          --parameters "ParameterName"=tls,"ParameterValue"=disabled,"ApplyMethod"=pending-reboot
   ```

   A saída dessa operação é semelhante ao seguinte (formato JSON).

   ```
   {
          "DBClusterParameterGroupName": "sample-parameter-group"
      }
   ```

1. Aguarde pelo menos 5 minutos.

1. Liste os valores de parâmetros de `sample-parameter-group` para verificar se o parâmetro `tls` foi modificado.

   Para Linux, macOS ou Unix:

   ```
   aws docdb describe-db-cluster-parameters \
          --db-cluster-parameter-group-name sample-parameter-group
   ```

   Para Windows:

   ```
   aws docdb describe-db-cluster-parameters ^
          --db-cluster-parameter-group-name sample-parameter-group
   ```

   A saída dessa operação é semelhante ao seguinte (formato JSON).

   ```
   {
          "Parameters": [
              {
                  "ParameterValue": "false",
                  "ParameterName": "enable_audit_logs",
                  "ApplyType": "dynamic",
                  "DataType": "string",
                  "Description": "Enables auditing on cluster.",
                  "AllowedValues": "true,false",
                  "Source": "system",
                  "IsModifiable": true,
                  "ApplyMethod": "pending-reboot"
              },
              {
                  "ParameterValue": "disabled",
                  "ParameterName": "tls",
                  "ApplyType": "static",
                  "DataType": "string",
                  "Description": "Config to enable/disable TLS",
                  "AllowedValues": "disabled,enabled",
                  "Source": "system",
                  "IsModifiable": true,
                  "ApplyMethod": "pending-reboot"
              }
          ]
   }
   ```

------

# Modificando clusters do Amazon DocumentDB para usar grupos de parâmetros de cluster personalizados
<a name="cluster_parameter_groups-modify_clusters"></a>

Ao criar um cluster do Amazon DocumentDB, um grupo de parâmetros `default.docdb4.0` é criado automaticamente para esse cluster. Não é possível modificar o grupo de parâmetros de cluster `default`. Em vez disso, é possível modificar seu cluster do Amazon DocumentDB para associar um novo grupo de parâmetros personalizado a ele. 

Esta seção explica como modificar um cluster Amazon DocumentDB existente para usar um grupo de parâmetros de cluster personalizado usando o Console de gerenciamento da AWS e o AWS Command Line Interface ()AWS CLI. 

------
#### [ Using the Console de gerenciamento da AWS ]

**Como modificar um cluster do Amazon DocumentDB para usar um novo grupo de parâmetros de cluster não padrão**

1. Antes de começar, lembre-se de criar um cluster do Amazon DocumentDB e um grupo de parâmetros de cluster. Consulte [Criar um cluster do Amazon DocumentDB](db-cluster-create.md) e [Criando grupos de parâmetros de cluster do Amazon DocumentDB](cluster_parameter_groups-create.md) para obter mais instruções.

1. Depois de criar o grupo de parâmetros de cluster, abra o console do Amazon DocumentDB em [https://console.aws.amazon.com/docdb](https://console.aws.amazon.com/docdb). No painel de navegação, escolha **Clusters** para adicionar o novo grupo de parâmetros a um cluster.

1. Escolha o cluster que deseja associar ao seu grupo de parâmetros. Escolha **Ações** e **Modificar** para modificar seu cluster.

1. Em **Opções de cluster**, escolha o novo grupo de parâmetros ao qual deseja associar o cluster.

1. Escolha **Continuar** para exibir um resumo das modificações.

1. Depois de verificar suas alterações, é possível aplicá-las imediatamente, ou durante a próxima janela de manutenção em **Programação de modificações**.

1. Escolha **Modificar cluster** para atualizar seu cluster com o novo grupo de parâmetros.

------
#### [ Using the AWS CLI ]

Antes de começar, lembre-se de criar um cluster do Amazon DocumentDB e um grupo de parâmetros de cluster. Você pode [criar um cluster Amazon DocumentDB](https://docs.aws.amazon.com//documentdb/latest/developerguide/db-cluster-create.html) usando a AWS CLI `create-db-cluster` operação. Você pode [criar um grupo de parâmetros de cluster](https://docs.aws.amazon.com//documentdb/latest/developerguide/cluster_parameter_groups-create.html) usando a AWS CLI `create-db-cluster-parameter-group` operação.

Para adicionar seu novo grupo de parâmetros de cluster ao seu cluster, use a AWS CLI `modify-db-cluster` operação com os parâmetros a seguir.
+ **-- db-cluster-identifier** — O nome do seu cluster (por exemplo,`sample-cluster`).
+ **-- db-cluster-parameter-group -name** — O nome do grupo de parâmetros ao qual você deseja associar seu cluster (por exemplo,`sample-parameter-group`).

**Example**  

```
aws docdb modify-db-cluster \
    --db-cluster-identifier sample-cluster \
    --db-cluster-parameter-group-name sample-parameter-group
```
A saída dessa operação é semelhante ao seguinte (formato JSON).  

```
"DBCluster": {
    "AvailabilityZones": [
            "us-west-2c",
            "us-west-2b",
            "us-west-2a"
    ],
    "BackupRetentionPeriod": 1,
    "DBClusterIdentifier": "sample-cluster",
    "DBClusterParameterGroup": "sample-parameter-group",
    "DBSubnetGroup": "default",
   ...
}
```

------

# Copiando grupos de parâmetros de cluster do Amazon DocumentDB
<a name="cluster_parameter_groups-copy"></a>

Você pode fazer uma cópia de um grupo de parâmetros de cluster no Amazon DocumentDB usando o Console de gerenciamento da AWS ou o AWS Command Line Interface ()AWS CLI.

------
#### [ Using the Console de gerenciamento da AWS ]

O procedimento a seguir orienta durante a criação de um novo grupo de parâmetros de cluster fazendo uma cópia de um grupo de parâmetros de cluster existente.

**Como copiar um grupo de parâmetros de cluster**

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

1. No painel de navegação, selecione **Grupos de parâmetros**.

1. No painel **Grupos de parâmetros de cluster**, escolha o nome do grupo de parâmetros de cluster que deseja copiar.

1. Escolha **Ações** e **Copiar** para copiar esse grupo de parâmetros.

1. Em **Opções de cópia**, insira um nome e uma descrição para o novo grupo de parâmetros de cluster. Depois disso, escolha **Copiar** para salvar as alterações.

------
#### [ Using the AWS CLI ]

Para fazer uma cópia de um grupo de parâmetro de cluster, use a operação `copy-db-cluster-parameter-group` com os parâmetros a seguir.
+ **--source-db-cluster-parameter-group-identifier** — Obrigatório. O nome ou nome do recurso da Amazon (ARN) do grupo de parâmetro de cluster cuja cópia você deseja fazer.

  Se os grupos de parâmetros do cluster de origem e de destino estiverem no mesmo Região da AWS, o identificador poderá ser um nome ou um ARN.

  Se os grupos de parâmetros do cluster de origem e de destino estiverem em diferentes Regiões da AWS, o identificador deverá ser um ARN.
+ **--target-db-cluster-parameter-group-identifier** — Obrigatório. O nome ou ARN da cópia do grupo de parâmetro do cluster.

  Restrições:
  + Não pode ser nulo, vazio ou estar em branco.
  + Deve conter de 1 a 255 letras, números ou hifens.
  + O primeiro caractere deve ser uma letra.
  + Não pode terminar com um hífen ou conter dois hifens consecutivos.
+ **--target-db-cluster-parameter-group-description** — Obrigatório. Uma descrição fornecida pelo usuário para a cópia do grupo de parâmetro de cluster.

**Example**  
O código a seguir faz uma cópia de `sample-parameter-group`, nomeando a cópia `sample-parameter-group-copy`.  
Para Linux, macOS ou Unix:  

```
aws docdb copy-db-cluster-parameter-group \
    --source-db-cluster-parameter-group-identifier sample-parameter-group \
    --target-db-cluster-parameter-group-identifier sample-parameter-group-copy \
    --target-db-cluster-parameter-group-description "Copy of sample-parameter-group"
```
Para Windows:  

```
aws docdb copy-db-cluster-parameter-group ^
    --source-db-cluster-parameter-group-identifier sample-parameter-group ^
    --target-db-cluster-parameter-group-identifier sample-parameter-group-copy ^
    --target-db-cluster-parameter-group-description "Copy of sample-parameter-group"
```
A saída dessa operação é semelhante ao seguinte (formato JSON).  

```
{
    "DBClusterParameterGroup": {
        "DBClusterParameterGroupArn": "arn:aws:rds:us-east-1:123456789012:cluster-pg:sample-parameter-group-copy",
        "DBClusterParameterGroupName": "sample-parameter-group-copy",
        "DBParameterGroupFamily": "docdb4.0",
        "Description": "Copy of sample-parameter-group"
    }
}
```

------

# Redefinindo grupos de parâmetros de cluster do Amazon DocumentDB
<a name="cluster_parameter_groups-reset"></a>

Você pode redefinir alguns ou todos os valores de parâmetros de um grupo de parâmetros do cluster Amazon DocumentDB para seus valores padrão usando o Console de gerenciamento da AWS ou o AWS Command Line Interface (AWS CLI) para redefinir o grupo de parâmetros do cluster.

------
#### [ Using the Console de gerenciamento da AWS ]

Siga estas etapas para redefinir alguns ou todos os valores de parâmetros de um grupo de parâmetros de cluster para seus valores padrão.

**Como redefinir os valores de parâmetros de um grupo de parâmetros de cluster**

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

1. No painel de navegação, no lado esquerdo do console, selecione **Grupos de parâmetros**.

1. No painel **Grupos de parâmetros de cluster**, escolha o nome do grupo de parâmetros de cluster que deseja redefinir.

1. Escolha **Ações** e **Redefinir** para redefinir esse grupo de parâmetros.

1. Na página **Confirmação de redefinição do grupo de parâmetros de cluster** resultante, confirme se você deseja redefinir todos os parâmetros de cluster para esse grupo de parâmetros para seus padrões. Depois disso, escolha **Redefinir** para redefinir o grupo de parâmetros. Também é possível escolher **Cancelar** para cancelar as alterações.

------
#### [ Using the AWS CLI ]

Para redefinir alguns ou todos os valores de parâmetro do grupos de parâmetros de cluster para seus valores padrão, use a operação `reset-db-cluster-parameter-group` com os parâmetros a seguir.
+ **--db-cluster-parameter-group-name** — Obrigatório. O nome do grupo de parâmetro de cluster a ser redefinido.
+ **--parameters** — Opcional. Uma lista de `ParameterName` e `ApplyMethod` no grupo de parâmetro de cluster para redefinir para seus valores padrão. Os parâmetros estáticos devem ser definidos como `pending-reboot` para entrar em vigor na próxima reinicialização da instância ou na solicitação `reboot-db-instance`. É necessário chamar `reboot-db-instance` para cada instância no cluster cujo parâmetro estático atualizado desejar aplicar.

  Esse parâmetro e `--reset-all-parameters` são mutuamente exclusivos: você pode usar um, mas não ambos.
+ **--reset-all-parameters** ou **--no-reset-all-parameters** — opcional. Especifica se é necessário redefinir todos os parâmetros (`--reset-all-parameters`) ou apenas alguns dos parâmetros (`--no-reset-all-parameters`) para seus valores padrão. O parâmetro `--reset-all-parameters` e `--parameters` são mutuamente exclusivos: você pode usar um, mas não ambos.

  Quando você redefinir o grupo inteiro, os parâmetros dinâmicos serão atualizados imediatamente. Os parâmetros estáticos são definidos como `pending-reboot` para entrarem em vigor na próxima reinicialização da instância, ou na solicitação `reboot-db-instance`. É necessário chamar `reboot-db-instance` para cada instância no cluster na qual deseja que o parâmetro estático atualizado seja aplicado.

**Example**  
**Exemplo 1: redefinindo todos os parâmetros para seus valores padrão**  
O código a seguir redefine todos os parâmetros no grupos de parâmetros de cluster `sample-parameter-group` para seus valores padrão.
Para Linux, macOS ou Unix:  

```
aws docdb reset-db-cluster-parameter-group \
       --db-cluster-parameter-group-name sample-parameter-group \
       --reset-all-parameters
```
Para Windows:  

```
aws docdb reset-db-cluster-parameter-group ^
       --db-cluster-parameter-group-name sample-parameter-group ^
       --reset-all-parameters
```
**Exemplo 2: redefinindo os parâmetros especificados para seus valores padrão**  
O código a seguir redefine o parâmetro `tls` no grupo de parâmetro de cluster `sample-parameter-group` para seu valor padrão.
Para Linux, macOS ou Unix:  

```
aws docdb reset-db-cluster-parameter-group \
       --db-cluster-parameter-group-name sample-parameter-group \
       --no-reset-all-parameters \
       --parameters ParameterName=tls,ApplyMethod=pending-reboot
```
Para Windows:  

```
aws docdb reset-db-cluster-parameter-group ^
       --db-cluster-parameter-group-name sample-parameter-group ^
       --no-reset-all-parameters ^
       --parameters ParameterName=tls,ApplyMethod=pending-reboot
```
A saída dessa operação é semelhante ao seguinte (formato JSON).  

```
{
       "DBClusterParameterGroupName": "sample-parameter-group"
   }
```
**Reiniciando uma instância de cluster**  
Antes que o valor de um parâmetro estático seja alterado, a instância do cluster deve ser reiniciada. Reinicie cada instância no cluster a qual deseje que o parâmetro estático atualizado seja aplicado.
Para Linux, macOS ou Unix:  

```
aws docdb reboot-db-instance \
       --db-instance-identifier sample-cluster-instance
```
Para Windows:  

```
aws docdb reboot-db-instance ^
       --db-instance-identifier sample-cluster-instance
```

------

# Excluindo grupos de parâmetros de cluster do Amazon DocumentDB
<a name="cluster_parameter_groups-delete"></a>

Você pode excluir um grupo de parâmetros de cluster personalizado do Amazon DocumentDB usando o Console de gerenciamento da AWS ou o AWS Command Line Interface ()AWS CLI. Não é possível excluir o grupo de parâmetros de cluster `default.docdb4.0`.

------
#### [ Using the Console de gerenciamento da AWS ]

**Para excluir um grupo de parâmetros de cluster**

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

1. No painel de navegação, escolha **Grupos de parâmetros**. 
**dica**  
Caso não visualize o painel de navegação à esquerda da tela, selecione o ícone do menu (![\[Hamburger menu icon with three horizontal lines.\]](http://docs.aws.amazon.com/pt_br/documentdb/latest/developerguide/images/docdb-menu-icon.png)) no canto superior esquerdo da página.

1. No painel **Grupos de parâmetro**, escolha o botão de opção à esquerda do grupos de parâmetros de cluster que deseje excluir.

1. Escolha **Ações** e, em seguida, **Excluir**.

1. No painel de confirmação **Excluir**, escolha **Excluir** para excluir o grupo de parâmetros de cluster. Para manter o grupo de parâmetros de cluster, escolha **Cancelar**.

------
#### [ Using the AWS CLI ]

Para excluir um grupo de parâmetros de cluster, use a operação `delete-db-cluster-parameter-group` com o parâmetro a seguir.
+ **--db-cluster-parameter-group-name** — Obrigatório. O nome do grupo de parâmetro de cluster a ser excluído. Ele deve ser um grupo de parâmetro de cluster existente. *Não é possível excluir o grupo de parâmetros de cluster `default.docdb4.0`. *

**Example - Excluindo um grupo de parâmetros de cluster**  
O exemplo a seguir mostra as três etapas para excluir um grupo de parâmetros de cluster:  

1. Descobrindo o nome do grupos de parâmetros de cluster que deseja excluir.

1. Excluindo o grupo de parâmetros de cluster especificado.

1. Verificando se o grupos de parâmetros de cluster foi excluído.
**1. Localize o nome do grupos de parâmetros de cluster que deseja excluir.**  
A lista de códigos a seguir elenca os nomes de todos os grupos de parâmetro de cluster.
Para Linux, macOS ou Unix:  

```
aws docdb describe-db-cluster-parameter-groups \
       --query 'DBClusterParameterGroups[*].[DBClusterParameterGroupName]'
```
Para Windows:  

```
aws docdb describe-db-cluster-parameter-groups ^
       --query 'DBClusterParameterGroups[*].[DBClusterParameterGroupName]'
```
A saída da operação anterior é uma lista dos nomes dos grupos de parâmetros de cluster semelhantes à seguinte (formato JSON).  

```
[
       [
           "default.docdb4.0"
       ],
       [
           "sample-parameter-group"
       ],
       [
           "sample-parameter-group-copy"
       ]
   ]
```
**2. Exclua um grupos de parâmetros de cluster específico.**  
O código a seguir exclui o grupos de parâmetros de cluster `sample-parameter-group-copy`.
Para Linux, macOS ou Unix:  

```
aws docdb delete-db-cluster-parameter-group \
       --db-cluster-parameter-group-name sample-parameter-group-copy
```
Para Windows:  

```
aws docdb delete-db-cluster-parameter-group ^
       --db-cluster-parameter-group-name sample-parameter-group-copy
```
Não há saída dessa operação.  
**3. Verifique se o grupo de parâmetros de cluster especificado foi excluído.**  
O código a seguir lista os nomes de todos os grupos de parâmetro de cluster restantes.
Para Linux, macOS ou Unix:  

```
aws docdb describe-db-cluster-parameter-groups \
       --query 'DBClusterParameterGroups[*].[DBClusterParameterGroupName]'
```
Para Windows:  

```
aws docdb describe-db-cluster-parameter-groups ^
       --query 'DBClusterParameterGroups[*].[DBClusterParameterGroupName]'
```
A saída da operação anterior é uma lista dos grupos de parâmetro de cluster semelhantes ao seguinte (formato JSON). O grupo de parâmetros de cluster que você acabou de excluir não deve estar na lista.  
A saída dessa operação é semelhante ao seguinte (formato JSON).  

```
[
       [
           "default.docdb4.0"
       ],
       [
           "sample-parameter-group"
       ]
   ]
```

------

# Referência de parâmetros de cluster do Amazon DocumentDB
<a name="cluster_parameter_groups-list_of_parameters"></a>

Quando você altera um parâmetro dinâmico e salva o grupo de parâmetro do cluster, a alteração é aplicada imediatamente, independente da configuração *Aplicar imediatamente*. Quando você altera um parâmetro estático e salva o grupo de parâmetro do cluster, a alteração do parâmetro entra em vigor depois que você reinicia manualmente a instância do cluster. É possível reiniciar uma instância usando o console do Amazon DocumentDB, ou chamando explicitamente `reboot-db-instance`.

A tabela a seguir mostra os parâmetros que se aplicam a todas as instâncias em um cluster do Amazon DocumentDB. 


**Parâmetros no nível do cluster do Amazon DocumentDB**  

| Parâmetro | Valor padrão  | Valores válidos | Modificável | Aplicar tipo | Tipo de dado | Description | 
| --- | --- | --- | --- | --- | --- | --- | 
| audit\$1logs | desabilitado | ativado, desativado, ddl, dml\$1read, dml\$1write, todos, nenhum | Sim | Dinâmico | String | Define se os registros CloudWatch de auditoria da Amazon estão habilitados. [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/pt_br/documentdb/latest/developerguide/cluster_parameter_groups-list_of_parameters.html) | 
| change\$1stream\$1log\$1retention\$1duration | 10800 | 3600-604800 | Sim | Dinâmico | Inteiro | Define a duração do tempo (em segundos) na qual o log do fluxo de alteração é retido e pode ser consumido.  | 
| default\$1collection\$1compression | desabilitado | ativado, desativado (Amazon DocumentDB 5.0)/zstd, lz4, nenhum (Amazon Document 4.0) DB8 | Sim | Dinâmico | String | Define a configuração de compactação padrão para novas coleções em um cluster [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/pt_br/documentdb/latest/developerguide/cluster_parameter_groups-list_of_parameters.html) | 
| profiler | desabilitado | habilitado, desabilitado | Sim | Dinâmico | String | Habilita a criação do perfil para operações lentas. [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/pt_br/documentdb/latest/developerguide/cluster_parameter_groups-list_of_parameters.html) | 
| profiler\$1sampling\$1rate | 1,0 | 0.0-1.0 | Sim | Dinâmico | Float | Define a taxa de amostragem de operações registradas. | 
| profiler\$1threshold\$1ms | 100 | 50-2147483646 | Sim | Dinâmico | Inteiro | Define o limite para profiler. [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/pt_br/documentdb/latest/developerguide/cluster_parameter_groups-list_of_parameters.html) | 
| planner\$1version | 3.0 | 1,0, 2,0, 3,0 | Sim | Dinâmico | Float | Define a versão do planejador de consultas a ser usada para consultas.[\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/pt_br/documentdb/latest/developerguide/cluster_parameter_groups-list_of_parameters.html) | 
| tls | habilitado | habilitado, desabilitado, fips-140-3, tls1.2\$1, tls1.3\$1 | Sim | Estático | String | Define se as conexões Transport Layer Security (TLS) são necessárias. [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/pt_br/documentdb/latest/developerguide/cluster_parameter_groups-list_of_parameters.html) | 
| ttl\$1monitor | habilitado | habilitado, desabilitado | Sim | Dinâmico | String | Define se o monitoramento Time to Live (TTL) está habilitado para o cluster. [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/pt_br/documentdb/latest/developerguide/cluster_parameter_groups-list_of_parameters.html) | 

# Modificando os parâmetros de cluster do Amazon DocumentDB
<a name="cluster_parameter_groups-parameters"></a>

No Amazon DocumentDB, os* grupos de parâmetros de cluster* consistem em *parâmetros* que se aplicam a todas as instâncias criadas no cluster. Para grupos de parâmetros de cluster personalizados, é possível modificar um valor de parâmetro a qualquer momento, ou redefinir todos os valores de parâmetro como padrão para os grupos de parâmetros criados. Esta seção descreve como visualizar os parâmetros e valores de um grupo de parâmetros de cluster do Amazon DocumentDB, além de mostrar como alterar ou atualizar esses valores.

Os parâmetros podem ser *dinâmicos* ou *estáticos*. Ao alterar um parâmetro dinâmico e salvar o grupo de parâmetros de cluster, a alteração é aplicada imediatamente, independente da configuração `Apply Immediately`. Quando você altera um parâmetro estático e salva o grupo de parâmetros do cluster, a alteração do parâmetro entra em vigor depois que você reinicia manualmente a instância do cluster.

## Visualizando os parâmetros de um grupo de parâmetros de cluster do Amazon DocumentDB
<a name="cluster_parameter_groups-describe_details_parameters"></a>

Você pode ver os parâmetros de um cluster Amazon DocumentDB e seus valores usando o Console de gerenciamento da AWS ou. AWS CLI

------
#### [ Using the Console de gerenciamento da AWS ]

**Para visualizar os detalhes de um grupos de parâmetros de cluster**

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

1. No painel de navegação, escolha **Grupos de parâmetros**. 
**dica**  
Caso não visualize o painel de navegação à esquerda da tela, selecione o ícone do menu (![\[Hamburger menu icon with three horizontal lines.\]](http://docs.aws.amazon.com/pt_br/documentdb/latest/developerguide/images/docdb-menu-icon.png)) no canto superior esquerdo da página.

1. No painel **grupos de parâmetro**, escolha o nome do grupo de parâmetro do cluster cujos detalhes deseja visualizar.

1. A página resultante exibe os seguintes valores para cada parâmetro: o nome, o valor atual, os valores permitidos, se o parâmetro é modificável, o tipo de aplicação, o tipo de dado e a descrição.  
![\[Captura de tela: nomes e valores de parâmetros.\]](http://docs.aws.amazon.com/pt_br/documentdb/latest/developerguide/images/docdb-determine-parameter-value.png)

------
#### [ Using the AWS CLI ]

Para ver os parâmetros de um grupos de parâmetros de cluster e seus valores, use a operação `describe-db-cluster-parameters` com os seguintes parâmetros.
+ **--db-cluster-parameter-group-name** — Obrigatório. O nome do grupos de parâmetros de cluster cuja lista detalhada de parâmetros você deseja.
+ **--source** — Opcional. Se fornecido, retorna apenas parâmetros para uma origem específica. As origens de parâmetros podem ser `engine-default`, `system` ou `user`.

**Example**  
O código a seguir lista os parâmetros e seus valores para o grupo de parâmetros `custom3-6-param-grp`. Para obter mais informações sobre o grupo de parâmetros, omita a linha `--query`. Para obter informações sobre todos os grupos de parâmetros, omita a linha `--db-cluster-parameter-group-name`.  
Para Linux, macOS ou Unix:  

```
aws docdb describe-db-cluster-parameters \
   --db-cluster-parameter-group-name custom3-6-param-grp \
   --query 'Parameters[*].[ParameterName,ParameterValue]'
```
Para Windows:  

```
aws docdb describe-db-cluster-parameters ^
   --db-cluster-parameter-group-name custom3-6-param-grp ^
   --query 'Parameters[*].[ParameterName,ParameterValue]'
```
A saída dessa operação é semelhante ao seguinte (formato JSON).  

```
[
    [
        "audit_logs",
        "disabled"
    ],
    [
        "tls",
        "enabled"
    ],
    [
        "ttl_monitor",
        "enabled"
    ]
]
```

------

## Modificando parâmetros de um grupo de parâmetros de cluster do Amazon DocumentDB
<a name="cluster_parameter_groups-modify_parameters"></a>

Você pode modificar os parâmetros de um grupo de parâmetros usando o Console de gerenciamento da AWS ou AWS CLI.

------
#### [ Using the Console de gerenciamento da AWS ]

**Como atualizar os parâmetros de um grupo de parâmetros de cluster**

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

1. No painel de navegação, escolha **Grupos de parâmetros**. 
**dica**  
Caso não visualize o painel de navegação à esquerda da tela, selecione o ícone do menu (![\[Hamburger menu icon with three horizontal lines.\]](http://docs.aws.amazon.com/pt_br/documentdb/latest/developerguide/images/docdb-menu-icon.png)) no canto superior esquerdo da página.

1. No painel **Grupos de parâmetros**, selecione um grupo de parâmetros do cluster cujos parâmetros deseja atualizar.

1. A página resultante mostra os parâmetros e os detalhes correspondentes para este grupo de parâmetros do cluster. Selecione um parâmetro para atualizar.

1. No canto superior direito da página, selecione **Editar** para alterar o valor do parâmetro. Para obter mais informações sobre os tipos de parâmetros de cluster, consulte [Referência de parâmetros de cluster do Amazon DocumentDB](cluster_parameter_groups-list_of_parameters.md).

1. Faça a alteração e escolha **Modificar parâmetro de cluster** para salvar as alterações. Para descartar as alterações, escolha **Cancelar**.

------
#### [ Using the AWS CLI ]

Para modificar os parâmetros de um grupo de parâmetros de cluster, use a operação `modify-db-cluster-parameter-group` com os parâmetros a seguir:
+ **--db-cluster-parameter-group-name** — Obrigatório. O nome do grupos de parâmetros de cluster que você está modificando.
+ **--parameters** — Obrigatório. O parâmetro ou os parâmetros que você está modificando. Cada entrada de parâmetro deve incluir o seguinte:
  + **ParameterName** — O nome do parâmetro que você está modificando.
  + **ParameterValue** — o novo valor para esse parâmetro.
  + **ApplyMethod** — como você deseja aplicar as alterações nesse parâmetro. Os valores permitidos são `immediate` e `pending-reboot`.
**nota**  
Os parâmetros com `ApplyType` de `static` devem ter um `ApplyMethod` de `pending-reboot`.

**Como alterar os valores dos parâmetros de um grupo de parâmetros de cluster (AWS CLI)**

O exemplo a seguir altera o parâmetro `tls`.

1. **Liste os parâmetros e os valores do `sample-parameter-group`**

   Para Linux, macOS ou Unix:

   ```
   aws docdb describe-db-cluster-parameters \
       --db-cluster-parameter-group-name sample-parameter-group
   ```

   Para Windows:

   ```
   aws docdb describe-db-cluster-parameters ^
       --db-cluster-parameter-group-name sample-parameter-group
   ```

   A saída dessa operação é semelhante ao seguinte (formato JSON).

   ```
   {
       "Parameters": [
           {
               "Source": "system",
               "ApplyType": "static",
               "AllowedValues": "disabled,enabled",
               "ParameterValue": "enabled",
               "ApplyMethod": "pending-reboot",
               "DataType": "string",
               "ParameterName": "tls",
               "IsModifiable": true,
               "Description": "Config to enable/disable TLS"
           },
           {
               "Source": "user",
               "ApplyType": "dynamic",
               "AllowedValues": "disabled,enabled",
               "ParameterValue": "enabled",
               "ApplyMethod": "pending-reboot",
               "DataType": "string",
               "ParameterName": "ttl_monitor",
               "IsModifiable": true,
               "Description": "Enables TTL Monitoring"
           }
       ]
   }
   ```

1. **Modifique o parâmetro `tls` para que seu valor seja `disabled`**. Não é possível modificar o `ApplyMethod` porque o `ApplyType` é `static`.

   Para Linux, macOS ou Unix:

   ```
   aws docdb modify-db-cluster-parameter-group \
       --db-cluster-parameter-group-name sample-parameter-group \
       --parameters "ParameterName"=tls,ParameterValue=disabled,ApplyMethod=pending-reboot"
   ```

   Para Windows:

   ```
   aws docdb modify-db-cluster-parameter-group ^
       --db-cluster-parameter-group-name sample-parameter-group ^
       --parameters "ParameterName=tls,ParameterValue=disabled,ApplyMethod=pending-reboot"
   ```

   A saída dessa operação é semelhante ao seguinte (formato JSON).

   ```
   {
       "DBClusterParameterGroupName": "sample-parameter-group"
   }
   ```

1. **Aguarde pelo menos 5 minutos.**

1. **Liste os valores dos parâmetros do `sample-parameter-group`.**

   Para Linux, macOS ou Unix:

   ```
   aws docdb describe-db-cluster-parameters \
       --db-cluster-parameter-group-name sample-parameter-group
   ```

   Para Windows:

   ```
   aws docdb describe-db-cluster-parameters ^
       --db-cluster-parameter-group-name sample-parameter-group
   ```

   A saída dessa operação é semelhante ao seguinte (formato JSON).

   ```
   {
       "Parameters": [
           {
               "ParameterName": "audit_logs",
               "ParameterValue": "disabled",
               "Description": "Enables auditing on cluster.",
               "Source": "system",
               "ApplyType": "dynamic",
               "DataType": "string",
               "AllowedValues": "enabled,disabled",
               "IsModifiable": true,
               "ApplyMethod": "pending-reboot"
           },
           {
               "ParameterName": "tls",
               "ParameterValue": "disabled",
               "Description": "Config to enable/disable TLS",
               "Source": "user",
               "ApplyType": "static",
               "DataType": "string",
               "AllowedValues": "disabled,enabled",
               "IsModifiable": true,
               "ApplyMethod": "pending-reboot"
           }
       ]
   }
   ```

------

# Noções básicas sobre endpoints do Amazon DocumentDB
<a name="endpoints"></a>

É possível usar endpoints do Amazon DocumentDB (compatível com MongoDB) para se conectar a um cluster ou instância. O Amazon DocumentDB tem três tipos diferentes de endpoints, cada um com sua própria finalidade. 

**Topics**
+ [Localizar os endpoints de um cluster](db-cluster-endpoints-find.md)
+ [Localizar o endpoint de uma instância](db-instance-endpoint-find.md)
+ [Conectar-se a endpoints](endpoints-connecting.md)

**Endpoint do cluster**  
Um endpoint de cluster é um endpoint para um cluster do Amazon DocumentDB que se conecta à instância principal atual do cluster. Cada cluster do Amazon DocumentDB tem um único endpoint de cluster e uma instância principal. No caso de um failover, o endpoint do cluster é remapeado para a nova instância principal.

**Endpoint de leitor**  
Um endpoint de leitor é o endpoint de um cluster do Amazon DocumentDB que se conecta a uma das réplicas disponíveis para esse cluster. Cada cluster do Amazon DocumentDB tem um endpoint de leitor. Se houver mais de uma réplica, o endpoint de leitor direcionará cada solicitação de conexão para uma das réplicas do Amazon DocumentDB.

**Endpoint da instância**  
Um endpoint de instância é um endpoint que se conecta a uma instância específica. Cada instância em um cluster, independentemente de ser uma instância principal ou de réplica, tem seu próprio endpoint de instância exclusivo. É melhor não usar endpoints de instância na sua aplicação. Isso ocorre porque eles podem alterar funções no caso de um failover, exigindo alterações de código em sua aplicação.

# Localizar os endpoints de um cluster
<a name="db-cluster-endpoints-find"></a>

É possível localizar o endpoint do cluster e o endpoint do leitor usando o console ou a Amazon DocumentDB do AWS CLI.

------
#### [ Using the Console de gerenciamento da AWS ]

**Para localizar os endpoints de um cluster usando o console:**

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

1. No painel de navegação, escolha **Clusters**.

1. Na lista de clusters, escolha o nome do cluster desejado.

1. Na página de detalhes do cluster, selecione a guia **Configuração**. Na seção **Configurações e status**, você encontrará o **Endpoint do cluster** e o **Endpoint do leitor**.  
![\[Seção Configurações e status mostrando os endpoints do cluster e do leitor.\]](http://docs.aws.amazon.com/pt_br/documentdb/latest/developerguide/images/db-cluster-endpoints.png)

1. Para se conectar a esse cluster, selecione a guia **Conectividade e segurança**. Localize a string de conexão para o shell do `mongo` e a string de conexão que pode ser usada no código da aplicação para se conectar ao cluster.  
![\[Seção Conectar, mostrando uma string para se conectar à instância com o shell do mongo e uma string para se conectar ao cluster com uma aplicação.\]](http://docs.aws.amazon.com/pt_br/documentdb/latest/developerguide/images/cluster-connection-strings.png)

------
#### [ Using the AWS CLI ]

Para localizar os endpoints do cluster e do leitor para seu cluster usando a AWS CLI, execute o seguinte comando `describe-db-clusters` com esses parâmetros.

**Parâmetros**
+ **--db-cluster-identifier**—Opcional. Especifica o cluster para o qual retornar os endpoints. Se omitido, retorna endpoints para até 100 dos seus clusters.
+ **--query**—Opcional. Especifica os campos a serem exibidos. Isso é útil ao reduzir a quantidade de dados que você precisa visualizar para localizar os endpoints. Se omitido, todas as informações sobre um cluster serão retornadas.
+ **--region**—Opcional. Use o parâmetro `--region` para especificar a região à qual deseja aplicar o comando. Se omitido, sua região padrão será usada.

**Example**  
O exemplo a seguir retorna o `DBClusterIdentifier`, o endpoint (endpoint de cluster) e o `ReaderEndpoint` para o `sample-cluster`.  
Para Linux, macOS ou Unix:  

```
aws docdb describe-db-clusters \
   --region us-east-1 \
   --db-cluster-identifier sample-cluster \
   --query 'DBClusters[*].[DBClusterIdentifier,Port,Endpoint,ReaderEndpoint]'
```
Para Windows:  

```
aws docdb describe-db-clusters ^
   --region us-east-1 ^
   --db-cluster-identifier sample-cluster ^
   --query 'DBClusters[*].[DBClusterIdentifier,Port,Endpoint,ReaderEndpoint]'
```
A saída dessa operação é semelhante ao seguinte (formato JSON).  

```
[
  [
     "sample-cluster",
     27017,
     "sample-cluster.cluster-corlsfccjozr.us-east-1.docdb.amazonaws.com",
     "sample-cluster.cluster-ro-corlsfccjozr.us-east-1.docdb.amazonaws.com"
  ]
]
```

Agora que você tem o endpoint de cluster, é possível se conectar ao cluster usando o `mongo` ou o `mongodb`. Para obter mais informações, consulte [Conectar-se a endpoints](endpoints-connecting.md).

------

# Localizar o endpoint de uma instância
<a name="db-instance-endpoint-find"></a>

É possível encontrar o endpoint de uma instância de banco de dados usando o console do Amazon DocumentDB ou a AWS CLI.

------
#### [ Using the Console de gerenciamento da AWS ]

**Para localizar o endpoint de uma instância usando o console**

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

1. No painel de navegação, escolha **Clusters**.
**dica**  
Caso não visualize o painel de navegação à esquerda da tela, selecione o ícone do menu (![\[Hamburger menu icon with three horizontal lines.\]](http://docs.aws.amazon.com/pt_br/documentdb/latest/developerguide/images/docdb-menu-icon.png)) no canto superior esquerdo da página.

1. Na caixa de navegação Clusters, você verá a coluna **Identificador do Cluster**. Suas instâncias estão listadas em clusters, semelhante ao snapshot abaixo.  
![\[Tabela de clusters mostrando a lista de clusters na coluna Identificador de cluster, com instâncias aninhadas dentro de clusters.\]](http://docs.aws.amazon.com/pt_br/documentdb/latest/developerguide/images/choose-clusters.png)

1. Marque a caixa à esquerda da instância na qual você está interessado.

1. Role para baixo até a seção **Detalhes**, em seguida, localize o endpoint da instância.  
![\[Captura de tela do console mostrando a página de detalhes com o endpoint da instância destacado.\]](http://docs.aws.amazon.com/pt_br/documentdb/latest/developerguide/images/db-instance-endpoint.png)

1. Para se conectar a essa instância, role até a seção **Conectar**. Localize a string de conexão para o shell `mongo` e uma string de conexão que pode ser usada no código da aplicação para se conectar à instância.  
![\[Captura de tela do console, mostrando a seção Conectar com as strings de conexão do shell do mongo e da aplicação destacadas.\]](http://docs.aws.amazon.com/pt_br/documentdb/latest/developerguide/images/instance-connection-strings.png)

------
#### [ Using the AWS CLI ]

Para localizar o endpoint da instância usando a AWS CLI, execute o seguinte comando com esses argumentos.

**Argumentos**
+ **--db-instance-identifier**—Opcional. Especifica a instância para a qual retornar o endpoint. Se omitido, retorna o endpoint para até 100 das suas instâncias.
+ **--query**—Opcional. Especifica os campos a serem exibidos. Isso é útil ao reduzir a quantidade de dados que você precisa visualizar para localizar os endpoints. Se omitido, todas as informações em uma instância serão retornadas. O campo `Endpoint` tem três membros, portanto, listá-lo na consulta, como no exemplo a seguir, retorna todos os três membros. Se você quiser apenas alguns dos membros `Endpoint`, substitua `Endpoint` na consulta pelos membros desejados, como no segundo exemplo.
+ **--region**—Opcional. Use o parâmetro `--region` para especificar a região à qual deseja aplicar o comando. Se omitido, sua região padrão será usada.

**Example**  
Para Linux, macOS ou Unix:  

```
aws docdb describe-db-instances \
    --region us-east-1 \
    --db-instance-identifier sample-cluster-instance \
    --query 'DBInstances[*].[DBInstanceIdentifier,Endpoint]'
```
Para Windows:  

```
aws docdb describe-db-instances ^
    --region us-east-1 ^
    --db-instance-identifier sample-cluster-instance ^
    --query 'DBInstances[*].[DBInstanceIdentifier,Endpoint]'
```
A saída dessa operação é semelhante ao seguinte (formato JSON).  

```
[
    [
        "sample-cluster-instance",
        {
            "Port": 27017,
            "Address": "sample-cluster-instance.corcjozrlsfc.us-east-1.docdb.amazonaws.com",
            "HostedZoneId": "Z2R2ITUGPM61AM"
        }
    ]
]
```
Ao reduzir a saída para eliminar o `HostedZoneId`do endpoint, é possível modificar sua consulta especificando `Endpoint.Port` e `Endpoint.Address`.  
Para Linux, macOS ou Unix:  

```
aws docdb describe-db-instances \
    --region us-east-1 \
    --db-instance-identifier sample-cluster-instance \
    --query 'DBInstances[*].[DBInstanceIdentifier,Endpoint.Port,Endpoint.Address]'
```
Para Windows:  

```
aws docdb describe-db-instances ^
    --region us-east-1 ^
    --db-instance-identifier sample-cluster-instance ^
    --query 'DBInstances[*].[DBInstanceIdentifier,Endpoint.Port,Endpoint.Address]'
```
A saída dessa operação é semelhante ao seguinte (formato JSON).  

```
[
    [
        "sample-cluster-instance",
        27017,
        "sample-cluster-instance.corcjozrlsfc.us-east-1.docdb.amazonaws.com"
    ]
]
```

Agora que você tem o endpoint de instância, é possível se conectar à instância usando o `mongo` ou o `mongodb`. Para obter mais informações, consulte [Conectar-se a endpoints](endpoints-connecting.md).

------

# Conectar-se a endpoints
<a name="endpoints-connecting"></a>

Quando você tiver o endpoint, seja de cluster ou instância, você pode se conectar a ele usando o shell `mongo` ou uma string de conexão.

## Conectar-se usando o shell mongo
<a name="endpoints-connecting-mongo"></a>

Use a seguinte estrutura para construir a string que você precisa para se conectar ao cluster ou à instância usando o shell `mongo`:

```
mongo \
    --ssl \
    --host Endpoint:Port \
    --sslCAFile global-bundle.pem \
    --username UserName \
    --password Password
```

**`mongo`Exemplos de shell**  
Conecte-se a um cluster:

```
mongo \
    --ssl \
    --host sample-cluster.corcjozrlsfc.us-east-1.docdb.amazonaws.com:27017 \
    --sslCAFile global-bundle.pem \
    --username UserName \
    --password Password
```

Conecte-se a uma instância:

```
mongo \
    --ssl \
    --host sample-cluster-instance.corcjozrlsfc.us-east-1.docdb.amazonaws.com:27017 \
    --sslCAFile global-bundle.pem \
    --username UserName \
    --password Password
```

## Conectar-se usando uma string de conexão
<a name="endpoints-connecting-mongodb"></a>

Use a seguinte estrutura para construir a string de conexão que você precisa para se conectar ao cluster ou à instância.

```
mongodb://UserName:Password@endpoint:port?replicaSet=rs0&ssl_ca_certs=global-bundle.pem 
```

**Exemplos de string de conexão**  
Conecte-se a um cluster:

```
mongodb://UserName:Password@sample-cluster.cluster-corlsfccjozr.us-east-1.docdb.amazonaws.com:27017?replicaSet=rs0&ssl_ca_certs=global-bundle.pem 
```

Conecte-se a uma instância:

```
mongodb://UserName:Password@sample-cluster-instance.cluster-corlsfccjozr.us-east-1.docdb.amazonaws.com:27017?replicaSet=rs0&ssl_ca_certs=global-bundle.pem 
```

 

# Entendendo o Amazon DocumentDB Amazon Resource Names () ARNs
<a name="documentdb-arns"></a>

Cada um dos recursos que você cria AWS é identificado exclusivamente com um nome de recurso da Amazon (ARN). Para determinadas operações do Amazon DocumentDB (compatível com MongoDB), você precisará identificar exclusivamente um recurso do Amazon DocumentDB especificando seu ARN. Por exemplo, quando você adiciona uma tag a um recurso, deve fornecer o ARN do recurso. 

**Topics**
+ [Criação de um ARN](#documentdb-arns-constructing)
+ [Localizar um ARN](#documentdb-arns-find)

## Criar um ARN para um recurso do Amazon DocumentDB
<a name="documentdb-arns-constructing"></a>

É possível criar um ARN para um recurso do Amazon DocumentDB usando a seguinte sintaxe. O Amazon DocumentDB compartilha o formato do Amazon Relational Database Service (Amazon RDS). ARNs O Amazon DocumentDB ARNs contém `rds` e não contém. `docdb`

`arn:aws:rds:region:account_number:resource_type:resource_id`


| Nome da região | Região | Zonas de disponibilidade (computação) | 
| --- | --- | --- | 
| Leste dos EUA (Ohio) | `us-east-2` | 3 | 
| Leste dos EUA (Norte da Virgínia) | `us-east-1` | 6 | 
| Oeste dos EUA (Oregon) | `us-west-2` | 4 | 
| África (Cidade do Cabo) | `af-south-1` | 3 | 
| América do Sul (São Paulo) | `sa-east-1` | 3 | 
| Ásia-Pacífico (Hong Kong) | `ap-east-1` | 3 | 
| Ásia-Pacífico (Hyderabad) | `ap-south-2` | 3 | 
| Ásia-Pacífico (Malásia) | `ap-southeast-5` | 3 | 
| Ásia-Pacífico (Mumbai) | `ap-south-1` | 3 | 
| Ásia-Pacífico (Osaka) | `ap-northeast-3` | 3 | 
| Ásia-Pacífico (Seul) | `ap-northeast-2` | 4 | 
| Ásia-Pacífico (Singapura) | `ap-southeast-1` | 3 | 
| Ásia-Pacífico (Sydney) | `ap-southeast-2` | 3 | 
| Ásia-Pacífico (Jacarta) | `ap-southeast-3` | 3 | 
| Ásia-Pacífico (Melbourne) | `ap-southeast-4` | 3 | 
| Ásia-Pacífico (Tailândia) | `ap-southeast-7` | 3 | 
| Ásia-Pacífico (Tóquio) | `ap-northeast-1` | 3 | 
| Canadá (Central) | `ca-central-1` | 3 | 
| Região China (Pequim) | `cn-north-1` | 3 | 
| China (Ningxia) | `cn-northwest-1` | 3 | 
| Europa (Frankfurt) | `eu-central-1` | 3 | 
| Europa (Zurique) | `eu-central-2` | 3 | 
| Europa (Irlanda) | `eu-west-1` | 3 | 
| Europa (Londres) | `eu-west-2` | 3 | 
| Europa (Milão) | `eu-south-1` | 3 | 
| Europa (Paris) | `eu-west-3` | 3 | 
| Europa (Espanha) | `eu-south-2` | 3 | 
| Europa (Estocolmo) | `eu-north-1` | 3 | 
| México (Centro) | `mx-central-1` | 3 | 
| Oriente Médio (Emirados Árabes Unidos) | `me-central-1` | 3 | 
| Israel (Tel Aviv) | `il-central-1` | 3 | 
| AWS GovCloud (Oeste dos EUA) | `us-gov-west-1` | 3 | 
| AWS GovCloud (Leste dos EUA) | `us-gov-east-1` | 3 | 

**nota**  
A arquitetura do Amazon DocumentDB separa armazenamento e computação. Para a camada de armazenamento, o Amazon DocumentDB replica seis cópias dos seus dados em três zonas de AWS disponibilidade (). AZs Os AZs listados na tabela acima são os números AZs que você pode usar em uma determinada região para provisionar instâncias de computação. Por exemplo, se você estiver lançando um cluster Amazon DocumentDB no ap-northeast-1 ap-northeast-1, seu armazenamento será replicado de seis maneiras em três, mas suas instâncias computacionais só estarão disponíveis em duas. AZs AZs

A tabela a seguir mostra o formato que deve ser usado para criar um ARN para um recurso específico do Amazon DocumentDB. O Amazon DocumentDB compartilha o formato do Amazon RDS. ARNs O Amazon DocumentDB ARNs contém `rds` e não contém. `docdb`


| Tipo de recurso | Formato/exemplo de ARN | 
| --- | --- | 
|  Instância (`db`)  |  `arn:aws:rds:region:account_number:db:resource_id` <pre>arn:aws:rds:us-east-1:1234567890:db:sample-db-instance</pre>  | 
|  Cluster (`cluster`)  |  `arn:aws:rds:region:account_number:cluster:resource_id` <pre>arn:aws:rds:us-east-1:1234567890:cluster:sample-db-cluster</pre>  | 
|  Grupo de parâmetros do cluster (`cluster-pg`)  |  `arn:aws:rds:region:account_number:cluster-pg:resource_id` <pre>arn:aws:rds:us-east-1:1234567890:cluster-pg:sample-db-cluster-parameter-group</pre>  | 
|  Grupo de segurança (`secgrp`)  |  `arn:aws:rds:region:account_number:secgrp:resource_id` <pre>arn:aws:rds:us-east-1:1234567890:secgrp:sample-public-secgrp</pre>  | 
|  Snapshot de cluster (`cluster-snapshot`)  |  `arn:aws:rds:region:account_number:cluster-snapshot:resource_id` <pre>arn:aws:rds:us-east-1:1234567890:cluster-snapshot:sample-db-cluster-snapshot</pre>  | 
|  Grupo de sub-rede (`subgrp`)  |  `arn:aws:rds:region:account_number:subgrp:resource_id` <pre>arn:aws:rds:us-east-1:1234567890:subgrp:sample-subnet-10</pre>  | 

## Localizar um ARN de recurso do Amazon DocumentDB
<a name="documentdb-arns-find"></a>

Você pode encontrar o ARN de um recurso do Amazon DocumentDB usando o Console de gerenciamento da AWS ou o. AWS CLI

------
#### [ Using the Console de gerenciamento da AWS ]

Para localizar um ARN usando o console, navegue até o recurso para o qual deseja um ARN e veja os detalhes desse recurso. 

Por exemplo, é possível obter o ARN de um cluster selecionando a guia **Configuração** na página de detalhes do cluster. O ARN pode ser encontrado na seção **Configurações e status**, conforme mostrado na captura de tela a seguir.

![\[Captura de tela do console mostrando um ARN na seção de configurações e status do painel de detalhes.\]](http://docs.aws.amazon.com/pt_br/documentdb/latest/developerguide/images/documentdb-arn.png)


------
#### [ Using the AWS CLI ]

Para obter um ARN usando o AWS CLI para um recurso específico do Amazon DocumentDB, use `describe` a operação para esse recurso. A tabela a seguir mostra cada AWS CLI operação e a propriedade ARN que é usada com a operação para obter um ARN. 


| AWS CLI Comando | Propriedade do ARN | 
| --- | --- | 
|  `describe-db-instances`  |  `DBInstanceArn`  | 
|  `describe-db-clusters`  |  `DBClusterArn`  | 
|  `describe-db-parameter-groups`  |  `DBParameterGroupArn`  | 
|  `describe-db-cluster-parameter-groups`  |  `DBClusterParameterGroupArn`  | 
|  `describe-db-security-groups`  |  `DBSecurityGroupArn`  | 
|  `describe-db-snapshots`  |  `DBSnapshotArn`  | 
|  `describe-db-cluster-snapshots`  |  `DBClusterSnapshotArn`  | 
|  `describe-db-subnet-groups`  |  `DBSubnetGroupArn`  | 

**Example - Localização do ARN de um cluster**  
A AWS CLI operação a seguir encontra o ARN do cluster. `sample-cluster`  
Para Linux, macOS ou Unix:  

```
aws docdb describe-db-clusters \
    --db-cluster-identifier sample-cluster \
    --query 'DBClusters[*].DBClusterArn'
```
Para Windows:  

```
aws docdb describe-db-clusters ^
    --db-cluster-identifier sample-cluster \
    --query 'DBClusters[*].DBClusterArn'
```
A saída dessa operação é semelhante ao seguinte (formato JSON).  

```
[
    "arn:aws:rds:us-east-1:123456789012:cluster:sample-cluster"
]
```

**Example - Encontrar ARNs vários grupos de parâmetros**  
Para Linux, macOS ou Unix:  

```
aws docdb describe-db-cluster-parameter-groups \
   --query 'DBClusterParameterGroups[*].DBClusterParameterGroupArn'
```
Para Windows:  

```
aws docdb describe-db-cluster-parameter-groups ^
   --query 'DBClusterParameterGroups[*].DBClusterParameterGroupArn'
```
A saída dessa operação é semelhante ao seguinte (formato JSON).  

```
[
    "arn:aws:rds:us-east-1:123456789012:cluster-pg:custom3-6-param-grp",
    "arn:aws:rds:us-east-1:123456789012:cluster-pg:default.aurora5.6",
    "arn:aws:rds:us-east-1:123456789012:cluster-pg:default.docdb3.6"
]
```

------

# Marcação de recursos do Amazon DocumentDB
<a name="tagging"></a>

Você pode usar tags do Amazon DocumentDB (compatível com MongoDB) para adicionar metadados aos recursos do Amazon DocumentDB. Essas tags podem ser usadas com AWS Identity and Access Management as políticas (IAM) para gerenciar o acesso aos recursos do Amazon DocumentDB e controlar quais ações podem ser aplicadas aos recursos. Você também pode usar as tags para monitorar custos agrupando despesas de recursos marcados com tags semelhantes.

Você pode marcar os seguintes recursos do Amazon DocumentDB:
+ Clusters
+ Instâncias
+ Snapshots
+ Snapshots do cluster
+ Grupos de parâmetros
+ Grupos de parâmetros de clusters
+ Grupos de segurança
+ Grupos de sub-redes

## Visão geral de tags de recurso do Amazon DocumentDB
<a name="tagging-overview"></a>

Uma tag do Amazon DocumentDB é um par de nome/valor que você define e associa a um recurso do Amazon DocumentDB. O nome é referido como *chave*. Fornecer um valor para a chave é opcional. É possível usar tags para atribuir informações arbitrárias a um domínio do Amazon DocumentDB. É possível usar uma chave de tag, por exemplo, para definir uma categoria, e o valor da tag pode ser um item nessa categoria. Por exemplo, você pode definir uma chave de tag como `project` e um valor de tag de `Salix`, indicando que o recurso Amazon DocumentDB está atribuído ao projeto Salix. Você também pode usar tags para designar recursos do Amazon DocumentDB como usados ​​para teste ou produção usando uma chave como `environment=test` ou `environment=production`. Recomendamos que você use um conjunto consistente de chaves de tag para facilitar o rastreamento de metadados associados aos recursos do Amazon DocumentDB.

Também é possível usar tags para organizar sua conta da AWS para refletir sua própria estrutura de custo. Para fazer isso, inscreva-se para obter a fatura da sua Conta da AWS com os valores de chave de tag incluídos. Então, para ver o custo de recursos combinados, organize suas informações de faturamento de acordo com recursos com os mesmos valores de chave de tags. Por exemplo, é possível marcar vários recursos com um nome de aplicação específico, e depois organizar suas informações de faturamento para ver o custo total daquela aplicação em vários serviços. Para mais informações, consulte [Using Cost Allocation Tags](https://docs.aws.amazon.com/awsaccountbilling/latest/aboutv2/cost-alloc-tags.html) no *AWSGuia do usuário do Billing and Cost Management*. 

Cada recurso do Amazon DocumentDB tem um conjunto de tags que contém todas as tags atribuídas a esse recurso. Um conjunto de tags pode conter até 10 tags ou estar vazio. Se você adicionar uma tag a um recurso do Amazon DocumentDB que tenha a mesma chave de uma tag existente no recurso, o novo valor substituirá o valor antigo.

AWSO não aplica nenhum significado semântico às tags. Elas são interpretadas estritamente como cadeias de caracteres. O Amazon DocumentDB pode definir tags em uma instância de banco de dados ou outros recursos do Amazon DocumentDB, dependendo das configurações usadas ao criar o recurso. Por exemplo, o Amazon DocumentDB pode adicionar uma tag indicando que uma instância é para produção ou teste.

Você pode adicionar uma tag a um snapshot, mas sua conta não refletirá esse agrupamento.

Você pode usar o Console de gerenciamento da AWS ou a AWS CLI para adicionar, listar e excluir tags dos recursos do Amazon DocumentDB. Ao usar a AWS CLI, você deve fornecer o nome do recurso da Amazon (ARN) para o recurso com o qual deseja trabalhar. Para obter mais informações sobre ARNs do Amazon DocumentDB, consulte [Entendendo o Amazon DocumentDB Amazon Resource Names () ARNs](documentdb-arns.md).

## Restrições de tag
<a name="tagging-constraints"></a>

As restrições a seguir se aplicam às tags do Amazon DocumentDB:
+ Número máximo de tags por recurso - 10
+ Comprimento máximo da **chave** - 128 caracteres Unicode
+ Comprimento máximo de **valor** - 256 caracteres Unicode
+ Caracteres válidos para **Chave** e **Valor** - letras maiúsculas e minúsculas no conjunto de caracteres UTF-8, dígitos, espaço e os seguintes caracteres: `_ . : / = + -` e `@` (Java regex: `"^([\\p{L}\\p{Z}\\p{N}_.:/=+\\-]*)$"`)
+ As chaves e valores das tags diferenciam maiúsculas de minúsculas.
+ O prefixo `aws:` não pode ser usado para chaves ou valores de tag; ele é reservado para a AWS.

## Adicionar e atualizar tags em um recurso do Amazon DocumentDB
<a name="tagging-add"></a>

É possível adicionar até 10 tags a um recurso usando o Console de gerenciamento da AWS ou o AWS CLI.

------
#### [ Using the Console de gerenciamento da AWS ]

O processo de adicionar uma tag a um recurso é semelhante, independentemente do recurso ao qual você está adicionando a tag. Neste exemplo, você adiciona uma tag a um cluster.

**Para adicionar ou atualizar tags a um cluster usando o console**

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

1. No painel de navegação, escolha **clusters**.

1. Escolha o nome do cluster ao qual você deseja adicionar tags.

1. Role para baixo até a seção **Tags** e depois escolha **Editar**.

1. Para cada tag que você deseja adicionar a este recurso, faça o seguinte:

   1. Para adicionar uma nova tag, insira o nome da tag na caixa **Chave**. Para alterar o valor de uma tag, localize o nome da tag na coluna **Chave**.

   1. Para atribuir um valor novo ou atualizado à tag, insira um valor para a tag na caixa **Valor**.

   1. Se você tiver mais tags para adicionar, escolha **Adicionar**. Caso contrário, quando terminar, escolha **Salvar**.

------
#### [ Using the AWS CLI ]

O processo de adicionar uma tag a um recurso é semelhante, independentemente do recurso ao qual você está adicionando as tags. Neste exemplo, você adiciona três tags a um cluster. A segunda tag, `key2`, não tem valor.

Use a operação AWS CLI da `add-tags-to-resource` com esses parâmetros.

**Parâmetros**
+ **--resource-name**—O ARN do recurso do Amazon DocumentDB ao qual você deseja adicionar as tags.
+ **--tags**: uma lista das tags (par de chave/valor) que você deseja adicionar a esse recurso no formato `Key=key-name,Value=tag-value`.

**Example**  
Para Linux, macOS ou Unix:  

```
aws docdb add-tags-to-resource \
    --resource-name arn:aws:rds:us-east-1:1234567890:cluster:sample-cluster \
    --tags Key=key1,Value=value1 Key=key2 Key=key3,Value=value3
```
Para Windows:  

```
aws docdb add-tags-to-resource ^
    --resource-name arn:aws:rds:us-east-1:1234567890:cluster:sample-cluster \
    --tags Key=key1,Value=value1 Key=key2 Key=key3,Value=value3
```

A operação `add-tags-to-resource` não produzirá uma saída. Para ver os resultados da operação, use a operação `list-tags-for-resource`.

------

## Listar tags em um recurso do Amazon DocumentDB
<a name="tagging-list"></a>

Você pode usar o Console de gerenciamento da AWS ou a AWS CLI para obter uma lista das tags para um recurso do Amazon DocumentDB.

------
#### [ Using the Console de gerenciamento da AWS ]

O processo de listar tags em um recurso é semelhante, independentemente do recurso ao qual você está adicionando a tag. Neste exemplo, você lista as tags para um cluster.

**Para listar as tags em um cluster usando o console**

1. Abra o console do Amazon DocumentDB em [https://console.aws.amazon.com/docdb](https://console.aws.amazon.com/docdb).

1. No painel de navegação, escolha **clusters**.

1. Escolha o nome do cluster para o qual você deseja listar tags.

1. Para ver uma lista das tags nesse recurso, role para baixo até a seção **Tags**.

------
#### [ Using the AWS CLI ]

O processo de listar as tags em um recurso é semelhante, independentemente do recurso para o qual você está listando a tag. Neste exemplo, você lista as tags em um cluster.

Use a operação AWS CLI da `list-tags-for-resource` com esses parâmetros.

**Parâmetros**
+ **--resource-name**—Obrigatório. O ARN do recurso do Amazon DocumentDB para o qual você deseja listar as tags para.

**Example**  
Para Linux, macOS ou Unix:  

```
aws docdb list-tags-for-resource \
    --resource-name arn:aws:rds:us-east-1:1234567890:cluster:sample-cluster
```
Para Windows:  

```
aws docdb list-tags-for-resource ^
    --resource-name arn:aws:rds:us-east-1:1234567890:cluster:sample-cluster
```

A saída dessa operação é semelhante ao seguinte (formato JSON).

```
{
    "TagList": [
        {
            "Key": "key1",
            "Value": "value1"
        },
        {
            "Key": "key2",
            "Value": ""
        },
        {
            "Key": "key3",
            "Value": "value3"
        }
    ]
}
```

------

## Remover tags de um recurso do Amazon DocumentDB
<a name="tagging-remove"></a>

Você pode usar o Console de gerenciamento da AWS ou a AWS CLI para remover tags de recursos do Amazon DocumentDB.

------
#### [ Using the Console de gerenciamento da AWS ]

O processo de remover tags de um recurso é semelhante, independentemente do recurso do qual você está removendo a tag. Neste exemplo, você remove as tags de um cluster.

**Para remover tags de um cluster usando o console**

1. Abra o console do Amazon DocumentDB em [https://console.aws.amazon.com/docdb](https://console.aws.amazon.com/docdb).

1. No painel de navegação, escolha **clusters**.

1. Escolha o nome do cluster do qual você deseja remover as tags.

1. Role para baixo até a seção **Tags** e depois escolha **Edit (Editar)**.

1. Se você deseja remover todas as tags desse recurso, escolha **Remover todas**. Caso contrário, para cada tag que você deseja remover deste recurso, faça o seguinte:

   1. Localize o nome da tag na coluna **Chave**.

   1. Escolha **Remover** na mesma linha que a chave de tag.

   1. Quando terminar, escolha **Salvar**.

------
#### [ Using the AWS CLI ]

O processo de remover uma tag de um recurso é semelhante, independentemente do recurso do qual você está removendo a tag. Neste exemplo, você remove a tag de um cluster.

Use a operação AWS CLI da `remove-tags-from-resource` com esses parâmetros.
+ **--resource-name**—Obrigatório. O ARN do recurso do Amazon DocumentDB do qual você deseja remover as tags.
+ **--tag-keys**—Obrigatório. Uma lista das chaves de tag que você deseja remover deste recurso.

**Example**  
Para Linux, macOS ou Unix:  

```
aws docdb remove-tags-from-resource \
    --resource-name arn:aws:rds:us-east-1:1234567890:cluster:sample-cluster \
    --tag-keys key1 key3
```
Para Windows:  

```
aws docdb remove-tags-from-resource ^
    --resource-name arn:aws:rds:us-east-1:1234567890:cluster:sample-cluster \
    --tag-keys key1 key3
```

A operação `removed-tags-from-resource` não produzirá uma saída. Para ver os resultados da operação, use a operação `list-tags-for-resource`.

------

# Manutenção do Amazon DocumentDB
<a name="db-instance-maintain"></a>

Periodicamente, o Amazon DocumentDB realiza a manutenção em seus recursos. Geralmente, a manutenção envolve atualizações do mecanismo de banco de dados (manutenção do cluster) ou do sistema operacional (SO) subjacente da instância (manutenção da instância). As atualizações do mecanismo de banco de dados são patches obrigatórios e incluem correções de segurança, correções de bugs e aprimoramentos no mecanismo de banco de dados. Embora a maioria dos patches do sistema operacional sejam opcionais, se você não os aplicar por algum tempo, o patch poderá ser necessário e aplicado automaticamente para manter sua postura de segurança. Portanto, recomendamos que você aplique atualizações do sistema operacional às suas instâncias do Amazon DocumentDB assim que elas estiverem disponíveis. 

Os patches do mecanismo de banco de dados exigem que você coloque os clusters do Amazon DocumentDB offline por um curto período. Uma vez disponíveis, esses patches são automaticamente programados para serem aplicados durante uma próxima janela de manutenção programada do seu cluster do Amazon DocumentDB.

A manutenção do cluster e de instâncias tem suas próprias janelas de manutenção. As modificações no cluster e na instância que você optou por não aplicar imediatamente também são aplicadas durante a janela de manutenção. Por padrão, quando você cria um cluster, o Amazon DocumentDB atribui uma janela de manutenção para um cluster e cada instância. É possível escolher a janela de manutenção ao criar um cluster ou uma instância. Você também pode modificar as janelas de manutenção a qualquer momento para atender às suas programações ou práticas comerciais. Em geral, é recomendável escolher janelas de manutenção que minimizem o impacto da manutenção em sua aplicação (por exemplo, em noites ou fins de semana).

**Topics**
+ [Notificações para patches do mecanismo do Amazon DocumentDB](#patch-notifications)
+ [Consultar ações de manutenção pendentes do Amazon DocumentDB](#view-pending-maintenance)
+ [Atualizações do mecanismo do Amazon DocumentDB](#db-instance-updates-apply)
+ [Atualizações iniciadas pelo usuário](#user-initiated-updates)
+ [Gerenciar suas janelas de manutenção do Amazon DocumentDB](#maintenance-window)
+ [Atualizações do sistema operacional do Amazon DocumentDB](#os-system-updates)

## Notificações para patches do mecanismo do Amazon DocumentDB
<a name="patch-notifications"></a>

Você receberá notificações de manutenção dos patches necessários do mecanismo de banco de dados por meio de eventos de integridade no Health Dashboard (AHD) no AWS console e por meio de e-mails. Quando um patch de manutenção do mecanismo Amazon DocumentDB estiver disponível em uma AWS região específica, todas as contas de usuário do Amazon DocumentDB afetadas na região receberão uma notificação por AHD e por e-mail para cada versão do Amazon DocumentDB afetada pelo patch. Você pode ver essas notificações na seção **Alterações agendadas** do AHD no AWS console. A notificação terá detalhes sobre o momento da disponibilidade do patch, o cronograma de aplicação automática, a lista de clusters afetados e as notas de lançamento. Essa notificação também será enviada por e-mail para o endereço de e-mail do usuário raiz da AWS conta.

![\[O console do Amazon DocumentDB mostrando a guia Alterações programadas para atualizações de patches de mecanismos.\]](http://docs.aws.amazon.com/pt_br/documentdb/latest/developerguide/images/scheduled-changes.png)


Depois de receber essa notificação, você pode optar por aplicar automaticamente esses patches de mecanismo aos seus clusters do Amazon DocumentDB antes da data programada de aplicação automática. Ou você pode esperar que os patches do mecanismo sejam aplicados automaticamente durante uma próxima janela de manutenção (opção padrão).

**nota**  
O **status** da notificação no AHD será definido como “Em andamento” até que um novo patch do mecanismo do Amazon DocumentDB com uma nova versão do patch do mecanismo seja lançado.  
Depois que o patch do mecanismo for aplicado ao seu cluster do Amazon DocumentDB, a versão do patch do mecanismo do cluster será atualizada para refletir a versão na notificação. É possível executar o comando `db.runCommand({getEngineVersion: 1})` para verificar essa atualização.

AWS Health também se integra à Amazon EventBridge , que usa eventos para criar aplicativos escaláveis orientados a eventos e se integra a mais de 20 destinos AWS Lambda, incluindo Amazon Simple Queue Service (SQS) e outros. Você pode usar o código do `AWS_DOCDB_DB_PATCH_UPGRADE_MAINTENANCE_SCHEDULED` evento para configurar a Amazon EventBridge antes que os patches do motor estejam disponíveis. Você pode configurar EventBridge para responder ao evento e realizar ações automaticamente, como capturar informações do evento, iniciar eventos adicionais, enviar notificações por meio de canais adicionais, como notificações push para o AWS Console Mobile Application, e tomar ações corretivas ou outras, quando um patch do mecanismo Amazon DocumentDB estiver disponível em sua região. 

No raro cenário de o Amazon DocumentDB, se cancelar um patch de mecanismo, você receberá uma notificação do AHD e um e-mail informando sobre o cancelamento. Assim, você pode usar o código do `AWS_DOCDB_DB_PATCH_UPGRADE_MAINTENANCE_CANCELLED` evento para configurar EventBridge a Amazon para responder a esse evento. Consulte o *Guia EventBridge do usuário da Amazon* para saber mais sobre o uso [ EventBridge das regras da Amazon](https://docs.aws.amazon.com/eventbridge/latest/userguide/eb-rules.html).

## Consultar ações de manutenção pendentes do Amazon DocumentDB
<a name="view-pending-maintenance"></a>

Você pode ver se uma atualização de manutenção está disponível para seu cluster usando Console de gerenciamento da AWS o. ou AWS CLI o.

Se uma atualização estiver disponível, será possível executar uma das seguintes ações:
+ Adiar uma ação de manutenção atualmente programada para a próxima janela de manutenção (somente para patches do sistema operacional).
+ Aplicar as ações de manutenção imediatamente.
+ Agendar as ações de manutenção para serem iniciadas durante a próxima janela de manutenção.

**nota**  
Se você não tomar nenhuma ação, as ações de manutenção necessárias, como patches de motor, serão aplicadas automaticamente em uma próxima janela de manutenção programada.

A janela de manutenção determina quando as operações pendentes começam, mas não limita o tempo total de execução dessas operações.

------
#### [ Using the Console de gerenciamento da AWS ]

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

1. No painel de navegação, escolha **Clusters**.

1. Se uma atualização estiver disponível, ela será indicada pela palavra **Disponível**, **Obrigatória** ou **Próxima janela** na coluna **Manutenção** do cluster no console do Amazon DocumentDB, conforme mostrado aqui:  
![\[O console do Amazon DocumentDB mostrando a coluna Manutenção para clusters.\]](http://docs.aws.amazon.com/pt_br/documentdb/latest/developerguide/images/db-cluster-maintenance-updates-status.png)

1. Para executar uma ação, escolha a instância o cluster de banco de dados para mostrar seus detalhes e escolha **Manutenção e backups**. Os itens de **manutenção pendentes** são exibidos.  
![\[Console do Amazon DocumentDB mostrando a janela de manutenção dos clusters.\]](http://docs.aws.amazon.com/pt_br/documentdb/latest/developerguide/images/cluster-maint-3.png)

------
#### [ Using the AWS CLI ]

Use a AWS CLI operação a seguir para determinar quais ações de manutenção estão pendentes. A saída aqui mostra que não há ações de manutenção pendentes.

```
aws docdb describe-pending-maintenance-actions
```

A saída dessa operação é semelhante ao seguinte (formato JSON).

```
{
    "PendingMaintenanceActions": []
}
```

------

## Atualizações do mecanismo do Amazon DocumentDB
<a name="db-instance-updates-apply"></a>

Com o Amazon DocumentDB, você pode escolher quando aplicar operações de manutenção. Você pode decidir quando o Amazon DocumentDB aplica as atualizações usando o Console de gerenciamento da AWS ou. AWS CLI

Use os procedimentos neste tópico para atualizar imediatamente ou programar uma atualização para seu cluster.

------
#### [ Using the Console de gerenciamento da AWS ]

É possível usar o console para gerenciar atualizações para seus clusters do Amazon DocumentDB.

**Para gerenciar a atualização de um cluster**

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

1. No painel de navegação, escolha **Clusters**.

1. Na lista de clusters, escolha o botão ao lado do nome do cluster ao qual você deseja aplicar a operação de manutenção.

1. No menu **Actions (Ações)**, escolha uma das opções a seguir:
   + **Upgrade now (Atualizar agora)** para executar imediatamente as tarefas de manutenção pendentes.
   + **Upgrade at next window (Atualizar na próxima janela)** para executar as tarefas de manutenção pendentes durante a próxima janela de manutenção do cluster.

   Como alternativa, é possível clicar em **Aplicar agora** ou **Aplicar na próxima janela de manutenção** na seção Manutenção pendente da guia **Manutenção e backups** do cluster (consulte **Uso do Console de gerenciamento da AWS** na seção anterior).
**nota**  
Se não houver tarefas de manutenção pendentes, as opções anteriores estarão inativas.

------
#### [ Using the AWS CLI ]

Para aplicar uma atualização pendente a um cluster, use a `apply-pending-maintenance-action` AWS CLI operação.

**Parâmetros**
+ **--resource-identifier** - O nome do recurso da Amazon (ARN) do Amazon DocumentDB ao qual a ação de manutenção pendente se aplica.
+ **--apply-action** - a ação de manutenção pendente a ser aplicada a esse recurso.

  Valores válidos: `system-update` e `db-upgrade`.
+ **--opt-in-type** - um valor que especifica o tipo de solicitação de inclusão ou desfaz uma solicitação de inclusão. Uma solicitação de inclusão do tipo `immediate` não pode ser desfeita.

  Valores válidos:
  + `immediate` – aplique a ação de manutenção imediatamente.
  + `next-maintenance` - Aplique a ação de manutenção durante a próxima janela de manutenção do recurso.
  + `undo-opt-in`–– cancele quaisquer solicitações de inclusão `next-maintenance` existentes.

**Example**  
Para Linux, macOS ou Unix:  

```
aws docdb apply-pending-maintenance-action \
    --resource-identifier arn:aws:rds:us-east-1:123456789012:db:docdb \
    --apply-action system-update \
    --opt-in-type immediate
```
Para Windows:  

```
aws docdb apply-pending-maintenance-action ^
    --resource-identifier arn:aws:rds:us-east-1:123456789012:db:docdb ^
    --apply-action system-update ^
    --opt-in-type immediate
```

Para retornar uma lista de recursos que têm pelo menos uma atualização pendente, use o `describe-pending-maintenance-actions` AWS CLI comando. 

**Example**  
Para Linux, macOS ou Unix:  

```
aws docdb describe-pending-maintenance-actions \
    --resource-identifier arn:aws:rds:us-east-1:001234567890:db:docdb
```
Para Windows:  

```
aws docdb describe-pending-maintenance-actions ^
    --resource-identifier arn:aws:rds:us-east-1:001234567890:db:docdb
```
A saída dessa operação é semelhante ao seguinte (formato JSON).  

```
{
    "PendingMaintenanceActions": [
        {
            "ResourceIdentifier": "arn:aws:rds:us-east-1:001234567890:cluster:sample-cluster",
            "PendingMaintenanceActionDetails": [
                {
                    "Action": "system-update",
                    "CurrentApplyDate": "2019-01-11T03:01:00Z",
                    "Description": "db-version-upgrade",
                    "ForcedApplyDate": "2019-01-18T03:01:00Z",
                    "AutoAppliedAfterDate": "2019-01-11T03:01:00Z"
                }
            ]
        }
    ]
}
```

Você também pode retornar uma lista de recursos para um cluster especificando o `--filters` parâmetro da `describe-pending-maintenance-actions` AWS CLI operação. O formato da operação `--filters` é `Name=filter-name,Values=resource-id,...`.

`db-cluster-id` são os valores aceitáveis para o parâmetro `Name` do filtro. Esse valor aceita uma lista de identificadores de cluster ou ARNs. A lista retornada inclui apenas ações de manutenção pendentes para os clusters identificados por esses identificadores ou ARNs.

O exemplo a seguir retorna as ações de manutenção pendentes para os clusters `sample-cluster1` e `sample-cluster2`.

**Example**  
Para Linux, macOS ou Unix:  

```
aws docdb describe-pending-maintenance-actions \
   --filters Name=db-cluster-id,Values=sample-cluster1,sample-cluster2
```
Para Windows:  

```
aws docdb describe-pending-maintenance-actions ^
   --filters Name=db-cluster-id,Values=sample-cluster1,sample-cluster2
```

------

### Aplicar datas
<a name="db-instance-updates-apply-date"></a>

Cada ação de manutenção tem uma respectiva data de aplicação que você pode encontrar ao descrever as ações de manutenção pendentes. Quando você lê o resultado das ações de manutenção pendentes do AWS CLI, três datas são listadas. Esses valores de data serão `null` quando a manutenção for opcional. Os valores serão preenchidos quando a ação de manutenção correspondente for programada ou aplicada.
+ **CurrentApplyDate** - Data em que a ação de manutenção será aplicada imediatamente ou durante a próxima janela de manutenção. 
+ **ForcedApplyDate** - Data em que a manutenção será aplicada automaticamente, independente de sua janela de manutenção.
+ **AutoAppliedAfterDate** - Data depois da qual a manutenção será aplicada durante a janela de manutenção do cluster.

## Atualizações iniciadas pelo usuário
<a name="user-initiated-updates"></a>

Como usuário do Amazon DocumentDB, você pode iniciar atualizações para seus clusters ou instâncias. Por exemplo, você pode modificar a classe de uma instância para uma com mais ou menos memória ou alterar o grupo de parâmetros de um cluster. O Amazon DocumentDB visualiza essas alterações de forma diferente das atualizações iniciadas pelo Amazon DocumentDB. Para obter mais informações sobre como modificar um cluster ou uma instância, consulte o seguinte:
+ [Modificar um cluster do Amazon DocumentDB](db-cluster-modify.md)
+ [Modificar uma instância do Amazon DocumentDB](db-instance-modify.md)

Para ver uma lista de modificações pendentes iniciadas pelo usuário, execute o comando a seguir.

**Example**  
**Para ver as alterações pendentes iniciados pelo usuário para suas instâncias**  
Para Linux, macOS ou Unix:  

```
aws docdb describe-db-instances \
    --query 'DBInstances[*].[DBClusterIdentifier,DBInstanceIdentifier,PendingModifiedValues]'
```
Para Windows:  

```
aws docdb describe-db-instances ^
    --query 'DBInstances[*].[DBClusterIdentifier,DBInstanceIdentifier,PendingModifiedValues]'
```
A saída dessa operação é semelhante ao seguinte (formato JSON).  
Nesse caso, `sample-cluster-instance` tem uma alteração pendente em uma classe de instância `db.r5.xlarge` e `sample-cluster-instance-2` não tem alterações pendentes.  

```
[
    [
        "sample-cluster",
        "sample-cluster-instance",
        {
            "DBInstanceClass": "db.r5.xlarge"
        }
    ],
    [
        "sample-cluster",
        "sample-cluster-instance-2",
        {}
    ]
]
```

## Gerenciar suas janelas de manutenção do Amazon DocumentDB
<a name="maintenance-window"></a>

Cada instância e cluster têm uma janela de manutenção semanal durante a qual todas as alterações pendentes são aplicadas. A janela de manutenção é uma oportunidade para controlar quando ocorrerão as modificações e aplicações de patches de software, caso elas sejam solicitadas ou exigidas. Se um evento de manutenção estiver programado para uma determinada semana, ele é iniciado durante a janela de manutenção de 30 minutos que você identificar. A maioria dos eventos de manutenção também é concluída durante a janela de manutenção de 30 minutos, embora os eventos de manutenção mais longos possam levar mais de 30 minutos para serem concluídos.

A janela de manutenção de 30 minutos é selecionada aleatoriamente de um bloco de tempo de 8 horas por região. Se você não especificar uma janela de manutenção preferencial ao criar ou modificar uma instância ou cluster, o Amazon DocumentDB atribuirá uma janela de manutenção de 30 minutos em um dia da semana selecionado aleatoriamente.

A tabela a seguir lista os blocos de tempo de cada região dos quais as janelas de manutenção padrão são atribuídas.


| Nome da região | Região | Bloco de tempo UTC | 
| --- | --- | --- | 
| Leste dos EUA (Ohio) | us-east-2 | 03:00-11:00 | 
| Leste dos EUA (Norte da Virgínia) | us-east-1 | 03:00-11:00 | 
| Oeste dos EUA (Oregon) | us-west-2 | 06:00-14:00 | 
| África (Cidade do Cabo) | af-south-1 | 03:00-11:00 | 
| Ásia-Pacífico (Hong Kong) | ap-east-1 | 06:00-14:00 | 
| Ásia-Pacífico (Hyderabad) | ap-south-2 | 06:30–14:30 | 
| Ásia-Pacífico (Malásia) | ap-southeast-5 | 13:00-21:00 | 
| Ásia-Pacífico (Mumbai) | ap-south-1 | 06:00-14:00 | 
| Ásia-Pacífico (Osaka) | ap-northeast-3 | 12:00-20:00 | 
| Ásia-Pacífico (Seul) | ap-northeast-2 | 13:00-21:00 | 
| Ásia-Pacífico (Singapura) | ap-southeast-1 | 14:00-22:00 | 
| Ásia-Pacífico (Sydney) | ap-southeast-2 | 12:00-20:00 | 
| Ásia-Pacífico (Jacarta) | ap-southeast-3 | 08:00-16:00 | 
| Ásia-Pacífico (Melbourne) | ap-southeast-4 | 11:00-19:00 | 
| Ásia-Pacífico (Tailândia) | ap-southeast-7 | 15:00-23:00 | 
| Ásia-Pacífico (Tóquio) | ap-northeast-1 | 13:00-21:00 | 
| Canadá (Central) | ca-central-1 | 03:00-11:00 | 
| China (Pequim) | cn-north-1 | 06:00-14:00 | 
| China (Ningxia) | cn-northwest-1 | 06:00-14:00 | 
| Europa (Frankfurt) | eu-central-1 | 21:00-05:00 | 
| Europa (Zurique) | eu-central-2 | 02:00-10:00 | 
| Europa (Irlanda) | eu-west-1 | 22:00-06:00 | 
| Europa (Londres) | eu-west-2 | 22:00-06:00 | 
| Europa (Milão) | eu-south-1 | 02:00-10:00 | 
| Europa (Paris) | eu-west-3 | 23:59-07:29 | 
| Europa (Espanha) | eu-south-2 | 02:00-10:00 | 
| Europa (Estocolmo) | eu-north-1 | 04:00 — 12:00 | 
| México (Central) | mx-central-1 | 03:00-11:00 | 
| Oriente Médio (Emirados Árabes Unidos) | me-central-1 | 05:00-13:00 | 
| América do Sul (São Paulo) | sa-east-1 | 00:00-08:00 | 
| Israel (Tel Aviv) | il-central-1 | 04:00-12:00 | 
| AWS GovCloud (Leste dos EUA) | us-gov-east-1 | 17:00-01:00 | 
| AWS GovCloud (Oeste dos EUA) | us-gov-west-1 | 06:00-14:00 | 

### Gerenciar suas janelas de manutenção do Amazon DocumentDB
<a name="maintenance-windows"></a>

A janela de manutenção deve ser definida no horário de menor utilização e, portanto, talvez precise ser alterada de vez em quando. Seu cluster ou a instância estará indisponível durante esse tempo somente se as alterações do sistema (como uma operação de armazenamento em escala ou uma alteração da classe de instância) estiverem sendo aplicadas e exigirem uma interrupção. E, depois, estará indisponível apenas pelo intervalo mínimo de tempo necessário para fazer as alterações necessárias.

Para atualizações no mecanismo de banco de dados, o Amazon DocumentDB usa a janela de manutenção preferencial do cluster e não a janela de manutenção para instâncias individuais.

**Para alterar a janela de manutenção**
+ Para um cluster: consulte [Modificar um cluster do Amazon DocumentDB](db-cluster-modify.md).
+ Para uma instância: consulte [Modificar uma instância do Amazon DocumentDB](db-instance-modify.md).

## Atualizações do sistema operacional do Amazon DocumentDB
<a name="os-system-updates"></a>

As instâncias nos clusters do Amazon DocumentDB ocasionalmente exigem atualizações do sistema operacional. O Amazon DocumentDB faz upgrade do sistema operacional para uma versão mais recente para melhorar a performance do banco de dados e o procedimento de segurança geral dos clientes. As atualizações do sistema operacional não alteram a versão do mecanismo do cluster nem a classe de uma instância do Amazon DocumentDB.

Recomendamos que você atualize primeiro as instâncias do leitor em um cluster, e depois a instância do gravador a fim de maximizar a disponibilidade de seu cluster. Não recomendamos atualizar as instâncias do leitor e do gravador ao mesmo tempo, pois pode ocasionar um período de inatividade mais longo no caso de um failover.

A maioria das atualizações do sistema operacional do Amazon DocumentDB são opcionais e não têm uma data definida para aplicá-las. No entanto, se você não aplicar essas atualizações por um tempo, elas poderão eventualmente se tornar necessárias e aplicadas automaticamente durante a janela de manutenção da sua instância. Isso ajuda a manter a postura de segurança de seu banco de dados. Para evitar qualquer tempo de inatividade inesperado, recomendamos que você aplique atualizações do sistema operacional às suas instâncias do Amazon DocumentDB assim que elas estiverem disponíveis e defina a janela de manutenção da instância no momento de sua conveniência, de acordo com as necessidades de sua empresa. 

Para ser notificado quando uma nova atualização opcional estiver disponível, será possível assinar o RDS-EVENT-0230 na categoria de evento de aplicação de patch de segurança. Para obter informações sobre como se inscrever em eventos do Amazon DocumentDB, consulte [Inscrição em eventos do Amazon DocumentDB](https://docs.aws.amazon.com/documentdb/latest/developerguide/event-subscriptions.subscribe.html).

É necessário esperar que, quando a manutenção for realizada em seu cluster ou na instância, se a instância for principal, ocorrerá o failover. Para melhorar sua disponibilidade, recomendamos que você use mais de uma instância para seus clusters do Amazon DocumentDB. Para obter mais informações, consulte [Failover do Amazon DocumentDB](failover.md).

**nota**  
Para alguns recursos de gerenciamento, o Amazon DocumentDB usa a tecnologia operacional que é compartilhada com o Amazon Relational Database Service (Amazon RDS).

**Importante**  
Sua instância do Amazon DocumentDB permanecerá off-line durante a atualização do sistema operacional. É possível minimizar o tempo de inatividade do cluster com um cluster de várias instâncias. Se você não tiver um cluster de várias instâncias, poderá optar por criar temporariamente um adicionando instâncias secundárias para realizar essa manutenção e, em seguida, excluindo as instâncias de leitura adicionais quando a manutenção for concluída (cobranças regulares pela instância secundária serão aplicadas). 

**nota**  
A aplicação de todas as atualizações opcionais e obrigatórias pode ser necessária para cumprir várias obrigações de conformidade. Recomendamos que você aplique todas as atualizações disponibilizadas pelo Amazon DocumentDB rotineiramente durante suas janelas de manutenção.

Você pode usar o Console de gerenciamento da AWS ou o AWS CLI para determinar se uma atualização está disponível.

------
#### [ Using the Console de gerenciamento da AWS ]

Como determinar se uma atualização está disponível usando o Console de gerenciamento da AWS:

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

1. No painel de navegação, escolha **Clusters** e selecione a instância.

1. Escolha **Manutenção**.

1. Na seção **Manutenção pendente**, encontre a atualização do sistema operacional.

![\[O console do Amazon DocumentDB mostrando a coluna Manutenção para clusters.\]](http://docs.aws.amazon.com/pt_br/documentdb/latest/developerguide/images/maintenance-available-1.png)


É possível selecionar a atualização do sistema operacional e clicar em **Aplicar agora** ou **Aplicar na próxima janela de manutenção** na seção **Manutenção pendente**. Se o valor de manutenção for **próxima janela**, adie os itens de manutenção escolhendo **Adiar atualização**. Não é possível adiar uma ação de manutenção que já tiver sido iniciada.

Como alternativa, é possível escolher a instância em uma lista de clusters clicando em **Clusters** no painel de navegação e selecionando **Aplicar agora** ou **Aplicar na próxima janela de manutenção** no menu **Ações**. 

------
#### [ Using the AWS CLI ]

Para determinar se uma atualização está disponível usando o AWS CLI, chame o `describe-pending-maintenance-actions` comando:

```
aws docdb describe-pending-maintenance-actions
```

```
{
  "ResourceIdentifier": "arn:aws:docdb:us-east-1:123456789012:db:mydb2",
  "PendingMaintenanceActionDetails": [
    {
      "Action": "system-update",
      "Description": "New Operating System update is available"
    }
  ]
}
```

------

As atualizações do sistema operacional são específicas da versão do mecanismo e das classes de instância do Amazon DocumentDB. Portanto, as instâncias do Amazon DocumentDB recebem ou exigem atualizações em momentos diferentes. Quando uma atualização do sistema operacional estiver disponível para sua instância com base na versão do mecanismo e na classe de instância, essa atualização aparecerá no console. Ele também pode ser visualizado executando o AWS CLI `describe-pending-maintenance-actions` comando ou chamando a operação `DescribePendingMaintenanceActions` da API.

Se você não estiver executando a versão mais recente do patch de cluster do seu mecanismo do Amazon DocumentDB, talvez não veja a atualização do sistema operacional listada como manutenção disponível. Para visualizar e gerenciar a atualização do sistema operacional, você deve primeiro atualizar para a versão mais recente do patch do mecanismo.

# Noções básicas dos perfis vinculados ao serviço
<a name="service-linked-roles"></a>

O Amazon DocumentDB (com compatibilidade com o MongoDB) usa AWS Identity and Access Management funções vinculadas a serviços (IAM). A [função vinculada ao serviço](https://docs.aws.amazon.com/IAM/latest/UserGuide/id_roles_terms-and-concepts.html#iam-term-service-linked-role) é um tipo exclusivo de perfil do IAM vinculada diretamente ao Amazon DocumentDB. As funções vinculadas ao serviço são predefinidas pelo Amazon DocumentDB e incluem todas as permissões que o serviço exige para chamar outros AWS serviços em seu nome.

Um perfil vinculado ao serviço facilita a configuração do Amazon DocumentDB porque você não precisa adicionar as permissões necessárias manualmente. O Amazon DocumentDB define as permissões dos perfis vinculados ao serviço e, a não ser que esteja definido de outra forma, somente o Amazon DocumentDB poderá assumir os perfis. As permissões definidas incluem a política de confiança e a política de permissões, que não pode ser anexada a nenhuma outra entidade do IAM.

Você pode excluir os perfis somente depois de primeiro excluir seus recursos relacionados. Isso protege seus recursos do Amazon DocumentDB, pois você não pode remover por engano as permissões para acessar os recursos.

Para obter informações sobre outros serviços compatíveis com perfis vinculados a serviços, consulte [Serviços da AWS compatíveis com o IAM](https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_aws-services-that-work-with-iam.html) e procure os serviços que contenham **Sim** na coluna **Perfil vinculado a serviço**. Escolha um **Sim** com um link para visualizar a documentação do perfil vinculado a esse serviço.

## Permissões de perfil vinculado ao serviço para o Amazon DocumentDB
<a name="service-linked-role-permissions"></a>

O Amazon DocumentDB (com compatibilidade com o MongoDB) usa a função vinculada ao serviço chamada RDS para **AWSServiceRoleForpermitir que** o Amazon DocumentDB chame serviços em nome dos seus clusters. AWS 

A função vinculada ao serviço do AWSService RoleFor RDS confia nos seguintes serviços para assumir a função:
+ `docdb.amazonaws.com`

A política de permissões do perfil permite que o Amazon DocumentDB conclua as seguintes ações nos recursos especificados:
+ Ações em `ec2`:
  + `AssignPrivateIpAddresses`
  + `AuthorizeSecurityGroupIngress`
  + `CreateNetworkInterface`
  + `CreateSecurityGroup`
  + `DeleteNetworkInterface`
  + `DeleteSecurityGroup`
  + `DescribeAvailabilityZones`
  + `DescribeInternetGateways`
  + `DescribeSecurityGroups`
  + `DescribeSubnets`
  + `DescribeVpcAttribute`
  + `DescribeVpcs`
  + `ModifyNetworkInterfaceAttribute`
  + `RevokeSecurityGroupIngress`
  + `UnassignPrivateIpAddresses`
+ Ações em `sns`:
  + `ListTopic`
  + `Publish`
+ Ações em `cloudwatch`:
  + `PutMetricData`
  + `GetMetricData`
  + `CreateLogStream`
  + `PullLogEvents`
  + `DescribeLogStreams`
  + `CreateLogGroup`

**nota**  
É necessário configurar permissões para que uma entidade do IAM (por exemplo, um usuário, grupo ou função) crie, edite ou exclua um perfil vinculado ao serviço. Você pode encontrar a seguinte mensagem de erro:  
**Impossível criar o recurso. Você se você tem permissão para criar o perfil vinculado ao serviço. Caso contrário, aguarde e tente novamente mais tarde.**  
Se você vir esse erro, verifique se você tem as seguintes permissões:  

```
{
    "Action": "iam:CreateServiceLinkedRole",
    "Effect": "Allow",
    "Resource": "arn:aws:iam::*:role/aws-service-role/rds.amazonaws.com/AWSServiceRoleForRDS",
    "Condition": {
        "StringLike": {
            "iam:AWSServiceName":"rds.amazonaws.com"
        }
    }
}
```

Para obter mais informações, consulte [Permissões de perfil vinculado ao serviço](https://docs.aws.amazon.com/IAM/latest/UserGuide/using-service-linked-roles.html#service-linked-role-permissions) no *Guia do usuário do IAM*.

## Criar um perfil vinculado ao serviço para o Amazon DocumentDB
<a name="service-linked-roles-create"></a>

Não é necessário criar manualmente um perfil vinculado ao serviço. Quando você cria um cluster, o Amazon DocumentDB cria um perfil vinculado ao serviço para você. 

Se você excluir essa função vinculada ao serviço e precisar criá-la novamente, poderá usar esse mesmo processo para recriar a função em sua conta. Quando você cria um cluster, o Amazon DocumentDB cria um perfil vinculado ao serviço para você novamente. 

## Modificar um perfil vinculado ao serviço do Amazon DocumentDB
<a name="service-linked-roles-edit"></a>

O Amazon DocumentDB não permite que você modifique a função vinculada ao serviço do AWSService RoleFor RDS. Depois que criar um perfil vinculado ao serviço, você não poderá alterar o nome do perfil, pois várias entidades podem fazer referência a ele. No entanto, você poderá modificar a descrição do perfil usando o IAM. Para mais informações, consulte [Editar uma função vinculada ao serviço](https://docs.aws.amazon.com/IAM/latest/UserGuide/using-service-linked-roles.html#edit-service-linked-role) no *Guia do usuário do IAM*.

## Excluir um perfil vinculado ao serviço para o Amazon DocumentDB
<a name="service-linked-roles-delete"></a>

Se você não precisar mais usar um atributo ou serviço que requer uma função vinculada a serviço, é recomendável excluí-la. Dessa forma, você não tem uma entidade não utilizada que não seja monitorada ativamente ou mantida. No entanto, você deve excluir todos os clusters antes de excluir a função vinculada ao serviço.

### Limpeza de um perfil vinculado a serviço do Amazon DocumentDB
<a name="service-linked-roles-clean-up"></a>

Antes de usar o IAM para excluir uma função vinculada a um serviço, você deve primeiro confirmar que a função não tem sessões ativas e remover todos os recursos usados por ela.

**Para verificar se a função vinculada ao serviço tem uma sessão ativa usando o console**

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

1. No painel de navegação do console do IAM, escolha **Funções** e, em seguida, escolha o nome (não a caixa de seleção) da função do **AWSServiceRoleForRDS.**

1. Na página **Resumo** para a função selecionada, escolha a guia **Consultor de Acesso**.

1. Na guia **Consultor de acesso**, revise a atividade recente para a função vinculada ao serviço.
**nota**  
Se você não tiver certeza se o Amazon DocumentDB está usando AWSService RoleFor a função RDS, você pode tentar excluir a função. Se o serviço estiver usando a função, a exclusão falhará e você poderá visualizar as regiões da em que a função está sendo usada. Se a função está sendo usada, você deve aguardar a sessão final antes de excluir a função. Não é possível revogar a sessão de uma função vinculada a um serviço. 

Se você quiser remover a função do AWSService RoleFor RDS, primeiro exclua *todas as* suas instâncias e clusters. Para obter informações sobre como excluir instâncias e clusters, consulte os seguintes tópicos:
+ [Excluir uma instância do Amazon DocumentDB](db-instance-delete.md)
+ [Excluir um cluster do Amazon DocumentDB](db-cluster-delete.md)

## Regiões compatíveis com os perfis vinculados a serviços do Amazon DocumentDB
<a name="slr-regions"></a>

O Amazon DocumentDB oferece suporte a funções vinculadas a serviços em todas as regiões em que o serviço está disponível. Para obter mais informações, consulte [https://docs.aws.amazon.com/documentdb/latest/developerguide/regions-and-azs.html#regions-and-azs-availability](https://docs.aws.amazon.com/documentdb/latest/developerguide/regions-and-azs.html#regions-and-azs-availability).

 

# Usar fluxos de alterações com o Amazon DocumentDB
<a name="change_streams"></a>

O atributo de fluxos de alterações do Amazon DocumentDB (compativel com MongoDB) fornece uma sequência ordenada por tempo das alterações que ocorrem nas coleções do cluster. É possível ler eventos de um fluxo de alterações para implementar muitos casos de uso diferentes, incluindo o seguinte:
+ Notificação de alterações
+ Pesquisa de texto completo com o Amazon OpenSearch Service (OpenSearch Service)
+ Analytics com Amazon Redshift

As aplicações podem usar os fluxos de alterações para assinar as alterações de dados em coleções individuais. Os eventos dos fluxos de alterações são ordenados à medida que ocorrem no cluster e são armazenados por 3 horas (por padrão) após a gravação do evento. O período de retenção pode ser estendido até 7 dias usando o parâmetro `change_stream_log_retention_duration`. Para modificar o período de retenção do fluxo de alterações, consulte [Modificação da duração da retenção do log do fluxo de alterações](https://docs.aws.amazon.com/documentdb/latest/developerguide/change_streams.html#change_streams-modifying_log_retention).

**Topics**
+ [Operações compatíveis](#change_streams-supported_ops)
+ [Faturamento](#change_streams-billing)
+ [Limitações](#change_streams-limitations)
+ [Ativar fluxos de alterações](#change_streams-enabling)
+ [Exemplo: usar fluxos de alterações com Python](#change_streams-using_example)
+ [Pesquisa completa de documentos](#change_streams-lookup)
+ [Retomar um fluxo de alterações](#change_streams-resuming)
+ [Retomar um fluxo de alterações com `startAtOperationTime`](#change_streams-startAtOperation)
+ [Retomar um fluxo de alterações com `postBatchResumeToken`](#change_streams-postBatchResumeToken)
+ [Transações em fluxos de alterações](#change_streams-transactions)
+ [Modificar a duração da retenção do log do fluxo de alterações](#change_streams-modifying_log_retention)
+ [Usar fluxos de alterações em instâncias secundárias](#change-streams-secondary-instances)

## Operações compatíveis
<a name="change_streams-supported_ops"></a>

O Amazon DocumentDB oferece suporte às seguintes operações para fluxos de alterações:
+ Todos os eventos de alteração compatíveis na API `db.collection.watch()`, `db.watch()` e `client.watch()` do MongoDB.
+ Pesquisa completa de documentos para atualizações.
+ Estágios de agregação: `$match`, `$project`, `$redact`, `$addFields` e `$replaceRoot`.
+ Retomando um fluxo de alterações a partir de um token de currículo
+ Retomar um fluxo de alterações de um carimbo de data/hora usando `startAtOperation` (aplicável ao Amazon DocumentDB 4.0\$1)

## Faturamento
<a name="change_streams-billing"></a>

O atributo de fluxos de alterações do Amazon DocumentDB é desativado por padrão e não incorre em cobranças adicionais até ser ativado e usado. O uso de fluxos de mudança em um cluster gera custos adicionais de leitura, gravação IOs e armazenamento. É possível usar a operação `modifyChangeStreams` de API para habilitar esse atributo para seu cluster. Para obter mais informações sobre preços, consulte [Preços do Amazon DocumentDB](https://aws.amazon.com/documentdb/pricing/). 

## Limitações
<a name="change_streams-limitations"></a>

Os fluxos de alterações têm as seguintes limitações no Amazon DocumentDB:
+ No Amazon DocumentDB 3.6 e no Amazon DocumentDB 4.0, os fluxos de alterações só podem ser abertos de uma conexão com a instância primária de um cluster do Amazon DocumentDB. A leitura de fluxos de alteração em uma instância de réplica não é compatível com o Amazon DocumentDB 3.6. e no Amazon DocumentDB 4.0. Ao chamar a operação de API `watch()`, é necessário especificar uma preferência de leitura `primary` para garantir que todas as leituras sejam direcionadas à instância principal (consulte a seção [Exemplo](#change_streams-using_example)). 
+ No Amazon DocumentDB 5.0, os fluxos de alterações podem ser abertos tanto da instância primária quanto da instância secundária, incluindo clusters globais. É possível especificar uma preferência de leitura secundária para redirecionar os fluxos de alteração para instâncias secundárias. Consulte [Usar fluxos de alterações em instâncias secundárias](#change-streams-secondary-instances) para saber sobre outras práticas recomendadas e limitações.
+ Os eventos gravados em um fluxo de alterações para uma coleção estão disponíveis por até 7 dias (o padrão é 3 horas). Os dados de fluxos de alterações são excluídos após a janela de duração de retenção de log, mesmo que nenhuma nova alteração tenha ocorrido. 
+ Uma operação de gravação de longa duração em uma coleção como `updateMany` ou `deleteMany` pode interromper temporariamente a gravação dos eventos dos fluxos de alterações até que ela seja concluída.
+ O Amazon DocumentDB não oferece suporte ao log de operações do MongoDB (`oplog`).
+ Com o Amazon DocumentDB, é necessário ativar explicitamente os fluxos de alterações em determinada coleção.
+ Se o tamanho total de um evento de fluxos de alterações (incluindo os dados das alterações e o documento completo, se solicitado) for maior do que `16 MB`, o cliente sofrerá uma falha de leitura nos fluxos de alterações.
+ Atualmente, o driver Ruby não é aceito ao usar `db.watch()` e `client.watch()` com o Amazon DocumentDB 3.6.
+ A saída do comando `updateDescription` nos fluxos de alterações é diferente no Amazon DocumentDB e no MongoDB quando o valor atualizado do campo é o mesmo do anterior:
  + O Amazon DocumentDB não retornará um campo na saída de `updateDescription` se o campo fornecido for especificado no comando `$set` e seu valor de destino já for igual ao valor de origem.
  + O MongoDB retorna o campo na saída, mesmo que o valor especificado seja igual ao valor atual.

## Ativar fluxos de alterações
<a name="change_streams-enabling"></a>

É possível habilitar os fluxos de alterações do Amazon DocumentDB em todas as coleções em um determinado banco de dados ou apenas em coleções específicas. Veja a seguir os exemplos de como habilitar os fluxos de alterações em diferentes casos de uso com o shell do Mongo. As strings vazias são tratadas como curingas na especificação de nomes de banco de dados e coleções.

```
//Enable change streams for the collection "foo" in database "bar"
db.adminCommand({modifyChangeStreams: 1,
    database: "bar",
    collection: "foo", 
    enable: true});
```

```
//Disable change streams on collection "foo" in database "bar"
db.adminCommand({modifyChangeStreams: 1,
    database: "bar",
    collection: "foo", 
    enable: false});
```

```
//Enable change streams for all collections in database "bar"
db.adminCommand({modifyChangeStreams: 1,
    database: "bar",
    collection: "", 
    enable: true});
```

```
//Enable change streams for all collections in all databases in a cluster
db.adminCommand({modifyChangeStreams: 1,
    database: "",
    collection: "", 
    enable: true});
```

Os fluxos de alterações serão ativados em uma coleção se qualquer uma destas opções for verdadeira:
+ O banco de dados e a coleção estão explicitamente ativados.
+ O banco de dados que contém a coleção está ativado. 
+ Todos os bancos de dados estão ativados.

Eliminar uma coleção de um banco de dados não desativará os fluxos de alterações dessa coleção se o banco de dados pai também tiver fluxos de alterações ativados, ou se todos os bancos de dados do cluster estiverem ativados. Se uma coleção for criada com o mesmo nome da coleção excluída, os fluxos de alterações serão ativados para essa coleção.

É possível listar todos os fluxos de alterações ativados para o cluster usando o estágio de agregação do pipeline `$listChangeStreams`. Todas as etapas de agregação compatíveis com o Amazon DocumentDB podem ser usadas no pipeline para processamento adicional. Se uma coleção ativada anteriormente tiver sido desativada, ela não aparecerá na saída `$listChangeStreams`.

```
//List all databases and collections with change streams enabled
cursor = new DBCommandCursor(db,
    db.runCommand(
        {aggregate: 1,
        pipeline: [{$listChangeStreams: 1}], 
        cursor:{}}));
```

```
//List of all databases and collections with change streams enabled 
{ "database" : "test", "collection" : "foo" } 
{ "database" : "bar", "collection" : "" }
{ "database" : "", "collection" : "" }
```

```
//Determine if the database “bar” or collection “bar.foo” have change streams enabled
cursor = new DBCommandCursor(db,
  db.runCommand(
      {aggregate: 1,
       pipeline: [{$listChangeStreams: 1},
                  {$match: {$or: [{database: "bar", collection: "foo"},
                                  {database: "bar", collection: ""},
                                  {database: "", collection: ""}]}}
                 ],
      cursor:{}}));
```

## Exemplo: usar fluxos de alterações com Python
<a name="change_streams-using_example"></a>

Veja a seguir um exemplo do uso de um fluxo de alterações do Amazon DocumentDB com Python no nível da coleção.

```
import os
import sys
from pymongo import MongoClient, ReadPreference
      
username = "DocumentDBusername"
password = <Insert your password> 

clusterendpoint = "DocumentDBClusterEndpoint”
client = MongoClient(clusterendpoint, username=username, password=password, tls='true', tlsCAFile='global-bundle.pem')

db = client['bar']
 
#While ‘Primary’ is the default read preference, here we give an example of
#how to specify the required read preference when reading the change streams
coll = db.get_collection('foo', read_preference=ReadPreference.PRIMARY)
#Create a stream object
stream = coll.watch()
#Write a new document to the collection to generate a change event
coll.insert_one({'x': 1})
#Read the next change event from the stream (if any)
print(stream.try_next())

"""
Expected Output:
{'_id': {'_data': '015daf94f600000002010000000200009025'},
'clusterTime': Timestamp(1571788022, 2),
'documentKey': {'_id': ObjectId('5daf94f6ea258751778163d6')},
'fullDocument': {'_id': ObjectId('5daf94f6ea258751778163d6'), 'x': 1},
'ns': {'coll': 'foo', 'db': 'bar'},
'operationType': 'insert'}
"""

#A subsequent attempt to read the next change event returns nothing, as there are no new changes
print(stream.try_next())

"""
Expected Output:
None
""" 
 
#Generate a new change event by updating a document
result = coll.update_one({'x': 1}, {'$set': {'x': 2}})
print(stream.try_next())

"""
Expected Output:
{'_id': {'_data': '015daf99d400000001010000000100009025'},
'clusterTime': Timestamp(1571789268, 1),
'documentKey': {'_id': ObjectId('5daf9502ea258751778163d7')},
'ns': {'coll': 'foo', 'db': 'bar'},
'operationType': 'update',
'updateDescription': {'removedFields': [], 'updatedFields': {'x': 2}}}
"""
```

Veja a seguir um exemplo do uso de um fluxo de alterações do Amazon DocumentDB com Python no nível do banco de dados. 

```
import os
import sys
from pymongo import MongoClient

username = "DocumentDBusername"
password = <Insert your password>
clusterendpoint = "DocumentDBClusterEndpoint”
client = MongoClient(clusterendpoint, username=username, password=password, tls='true', tlsCAFile='global-bundle.pem')

db = client['bar']
#Create a stream object
stream = db.watch()
coll = db.get_collection('foo')
#Write a new document to the collection foo to generate a change event
coll.insert_one({'x': 1})
 
#Read the next change event from the stream (if any)
print(stream.try_next())

"""
Expected Output:
{'_id': {'_data': '015daf94f600000002010000000200009025'},
'clusterTime': Timestamp(1571788022, 2),
'documentKey': {'_id': ObjectId('5daf94f6ea258751778163d6')},
'fullDocument': {'_id': ObjectId('5daf94f6ea258751778163d6'), 'x': 1},
'ns': {'coll': 'foo', 'db': 'bar'},
'operationType': 'insert'}
"""
#A subsequent attempt to read the next change event returns nothing, as there are no new changes
print(stream.try_next())

"""
Expected Output:
None
""" 
 
coll = db.get_collection('foo1')

#Write a new document to another collection to generate a change event
coll.insert_one({'x': 1})
print(stream.try_next())

"""
Expected Output: Since the change stream cursor was the database level you can see change events from different collections in the same database
{'_id': {'_data': '015daf94f600000002010000000200009025'},
'clusterTime': Timestamp(1571788022, 2),
'documentKey': {'_id': ObjectId('5daf94f6ea258751778163d6')},
'fullDocument': {'_id': ObjectId('5daf94f6ea258751778163d6'), 'x': 1},
'ns': {'coll': 'foo1', 'db': 'bar'},
'operationType': 'insert'}
"""
```

## Pesquisa completa de documentos
<a name="change_streams-lookup"></a>

O evento de alteração de atualização não inclui o documento completo, apenas a alteração que foi feita. Se o seu caso de uso exigir o documento completo afetado por uma atualização, é possível ativar a pesquisa completa do documento na abertura do fluxo. 

O documento `fullDocument` de um evento de fluxos de alterações de atualização representa a versão mais atual do documento atualizado no momento em que ele é pesquisado. Se ocorrerem alterações entre a operação de atualização e a pesquisa do `fullDocument`, o documento `fullDocument` poderá não representar o estado dele no momento da atualização.

Para criar um objeto de fluxo com a pesquisa de atualização ativada, use este exemplo:

```
stream = coll.watch(full_document='updateLookup')
 
#Generate a new change event by updating a document
result = coll.update_one({'x': 2}, {'$set': {'x': 3}})

stream.try_next()
```

A saída do objeto de fluxo será semelhante ao seguinte:

```
{'_id': {'_data': '015daf9b7c00000001010000000100009025'},
'clusterTime': Timestamp(1571789692, 1),
'documentKey': {'_id': ObjectId('5daf9502ea258751778163d7')},
'fullDocument': {'_id': ObjectId('5daf9502ea258751778163d7'), 'x': 3},
'ns': {'coll': 'foo', 'db': 'bar'},
'operationType': 'update',
'updateDescription': {'removedFields': [], 'updatedFields': {'x': 3}}}
```

## Retomar um fluxo de alterações
<a name="change_streams-resuming"></a>

É possível retomar um fluxo de alterações posteriormente usando um token de retomada, que é igual ao campo `_id` do último documento de evento de alteração recuperado.

```
import os
import sys
from pymongo import MongoClient

username = "DocumentDBusername"
password = <Insert your password> 
clusterendpoint = "DocumentDBClusterEndpoint”
client = MongoClient(clusterendpoint, username=username, password=password, tls='true', tlsCAFile='global-bundle.pem', retryWrites='false')

db = client['bar']
coll = db.get_collection('foo')
#Create a stream object
stream = db.watch()
coll.update_one({'x': 1}, {'$set': {'x': 4}})
event = stream.try_next()
token = event['_id']
print(token)

"""
Output: This is the resume token that we will later us to resume the change stream
{'_data': '015daf9c5b00000001010000000100009025'}
"""
#Python provides a nice shortcut for getting a stream’s resume token
print(stream.resume_token)

"""
Output
{'_data': '015daf9c5b00000001010000000100009025'}
"""
#Generate a new change event by updating a document
result = coll.update_one({'x': 4}, {'$set': {'x': 5}})
#Generate another change event by inserting a document
result = coll.insert_one({'y': 5})
#Open a stream starting after the selected resume token
stream = db.watch(full_document='updateLookup', resume_after=token)
#Our first change event is the update with the specified _id
print(stream.try_next())

"""
#Output: Since we are resuming the change stream from the resume token, we will see all events after the first update operation. In our case, the change stream will resume from the update operation {x:5}

{'_id': {'_data': '015f7e8f0c000000060100000006000fe038'}, 
'operationType': 'update', 
'clusterTime': Timestamp(1602129676, 6), 
'ns': {'db': 'bar', 'coll': 'foo'}, 
'documentKey': {'_id': ObjectId('5f7e8f0ac423bafbfd9adba2')}, 
'fullDocument': {'_id': ObjectId('5f7e8f0ac423bafbfd9adba2'), 'x': 5}, 
'updateDescription': {'updatedFields': {'x': 5}, 'removedFields': []}}
"""
#Followed by the insert
print(stream.try_next())

"""
#Output:
{'_id': {'_data': '015f7e8f0c000000070100000007000fe038'}, 
'operationType': 'insert', 
'clusterTime': Timestamp(1602129676, 7), 
'ns': {'db': 'bar', 'coll': 'foo'}, 
'documentKey': {'_id': ObjectId('5f7e8f0cbf8c233ed577eb94')}, 
'fullDocument': {'_id': ObjectId('5f7e8f0cbf8c233ed577eb94'), 'y': 5}}
"""
```

## Retomar um fluxo de alterações com `startAtOperationTime`
<a name="change_streams-startAtOperation"></a>

É possível retomar um fluxo de alterações posteriormente a partir de um carimbo de data/hora específico usando `startAtOperationTime`.

**nota**  
A capacidade de usar `startAtOperationTime` está disponível no Amazon DocumentDB 4.0\$1. Ao usar `startAtOperationTime`, o cursor do fluxo de alterações retornará apenas as alterações que ocorreram no carimbo de data/hora especificado ou após ele. Os comandos `startAtOperationTime` e `resumeAfter` são mutuamente exclusivos e, portanto, não podem ser usados juntos.

```
import os
import sys
from pymongo import MongoClient

username = "DocumentDBusername"
password = <Insert your password> 
clusterendpoint = "DocumentDBClusterEndpoint”
client = MongoClient(clusterendpoint, username=username, password=password, tls='true', tlsCAFile='rds-root-ca-2020.pem',retryWrites='false')
db = client['bar']
coll = db.get_collection('foo')
#Create a stream object
stream = db.watch()
coll.update_one({'x': 1}, {'$set': {'x': 4}})
event = stream.try_next()
timestamp = event['clusterTime']
print(timestamp)
"""
Output
Timestamp(1602129114, 4)
"""
#Generate a new change event by updating a document
result = coll.update_one({'x': 4}, {'$set': {'x': 5}})
result = coll.insert_one({'y': 5})
#Generate another change event by inserting a document
#Open a stream starting after specified time stamp

stream = db.watch(start_at_operation_time=timestamp)
print(stream.try_next())

"""
#Output: Since we are resuming the change stream at the time stamp of our first update operation (x:4), the change stream cursor will point to that event
{'_id': {'_data': '015f7e941a000000030100000003000fe038'}, 
'operationType': 'update', 
'clusterTime': Timestamp(1602130970, 3), 
'ns': {'db': 'bar', 'coll': 'foo'}, 
'documentKey': {'_id': ObjectId('5f7e9417c423bafbfd9adbb1')}, 
'updateDescription': {'updatedFields': {'x': 4}, 'removedFields': []}}
"""

print(stream.try_next())
"""
#Output: The second event will be the subsequent update operation (x:5)
{'_id': {'_data': '015f7e9502000000050100000005000fe038'}, 
'operationType': 'update', 
'clusterTime': Timestamp(1602131202, 5),
'ns': {'db': 'bar', 'coll': 'foo'}, 
'documentKey': {'_id': ObjectId('5f7e94ffc423bafbfd9adbb2')}, 
'updateDescription': {'updatedFields': {'x': 5}, 'removedFields': []}}
"""

print(stream.try_next())

"""
#Output: And finally the last event will be the insert operation (y:5)
{'_id': {'_data': '015f7e9502000000060100000006000fe038'}, 
'operationType': 'insert', 
'clusterTime': Timestamp(1602131202, 6), 
'ns': {'db': 'bar', 'coll': 'foo'}, 
'documentKey': {'_id': ObjectId('5f7e95025c4a569e0f6dde92')}, 
'fullDocument': {'_id': ObjectId('5f7e95025c4a569e0f6dde92'), 'y': 5}}
"""
```

## Retomar um fluxo de alterações com `postBatchResumeToken`
<a name="change_streams-postBatchResumeToken"></a>

O fluxo de alterações do Amazon DocumentDB agora retorna um campo adicional chamado `postBatchResumeToken`. Esse campo é retornado do comando `$changestream` e do comando `getMore`.

Exemplo do comando `$changestream` em Python:

```
db.command({"aggregate": "sales", "pipeline": [{ "$changeStream": {}}], "cursor": {"batchSize": 1}})
```

Saída esperada:

```
cursor" : {
   "firstBatch" : [ ],
   "postBatchResumeToken" : {"_data" : "0167c8cbe60000000004"},
   "id" : NumberLong("9660788144470"),
   "ns" : "test.sales"
}
```

Exemplo do comando `getMore` em Python:

```
db.command({"getMore": NumberLong(<cursor id>), "collection": "sales", "batchSize": 1 })
```

Saída esperada

```
cursor" : {
   "nextBatch" : [ ],
   "postBatchResumeToken" : {"_data" : "0167c8cbe60000000004"},
   "id" : NumberLong("9660788144470"),
   "ns" : "test.sales"
}
```

O campo `postBatchResumeToken` pode ser usado para abrir novos cursores de fluxo de alterações no campo `resumeAfter`, semelhante à forma como o token de retomada é usado.

Abra um fluxo começando após o `postBatchResumeToken` selecionado:

```
post_batch_resume_token = output['cursor']['postBatchResumeToken']
stream = db.watch(full_document='updateLookup', resume_after=post_batch_resume_token)
```

Ao contrário de um token de retomada normal, que sempre corresponde a uma entrada de log de operações (oplog) que reflete um evento real, `postBatchResumeToken` corresponde a uma entrada de oplog que o fluxo de alterações examinou no servidor, o que não é necessariamente uma alteração correspondente.

A tentativa de continuar com um antigo token de retomada regular forçará o banco de dados a verificar todas as entradas do oplog entre o carimbo de data e hora especificado e a hora atual. Isso pode gerar muitas consultas internamente com a varredura de cada subconsulta por um pequeno período de tempo. Isso causará um pico no uso da CPU e degradará a performance do banco de dados. Continuar com o último `postBatchResumeToken` ignora a verificação de entradas não correspondidas do oplog.

## Transações em fluxos de alterações
<a name="change_streams-transactions"></a>

Os eventos do Change Stream não conterão eventos de transações and/or abortadas não confirmadas. Por exemplo, se você iniciar uma transação com uma operação `INSERT` e uma operação `UPDATE`, e se sua operação `INSERT` tiver êxito, mas a operação `UPDATE` falhar, a transação será revertida. Como esta transação foi revertida, seu fluxo de alterações não conterá nenhum evento para esta transação.

## Modificar a duração da retenção do log do fluxo de alterações
<a name="change_streams-modifying_log_retention"></a>

Você pode modificar a duração da retenção do log do stream de alterações para ser entre 1 hora e 7 dias usando o Console de gerenciamento da AWS ou AWS CLI o.

------
#### [ Using the Console de gerenciamento da AWS ]

**Como modificar a duração da retenção do log do fluxo de alterações**

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

1. No painel de navegação, escolha **Grupos de parâmetros**. 
**dica**  
Caso não visualize o painel de navegação à esquerda da tela, selecione o ícone do menu (![\[Hamburger menu icon with three horizontal lines.\]](http://docs.aws.amazon.com/pt_br/documentdb/latest/developerguide/images/docdb-menu-icon.png)) no canto superior esquerdo da página.

1. No painel **Grupos de parâmetros**, escolha o grupo de parâmetros de cluster associado ao cluster. Para identificar o grupo de parâmetros de cluster associado ao cluster, consulte [Determinando o grupo de parâmetros de um cluster do Amazon DocumentDB](cluster_parameter_groups-describe.md#cluster_parameter_groups-determine). 

1. A página resultante mostra os parâmetros e os detalhes correspondentes para seu grupo de parâmetros do cluster. Selecione o parâmetro `change_stream_log_retention_duration`.

1. No canto superior direito da página, selecione **Editar** para alterar o valor do parâmetro. O parâmetro `change_stream_log_retention_duration` pode ser modificado para ficar entre 1 hora e 7 dias.

1. Faça a alteração e escolha **Modificar parâmetro de cluster** para salvar as alterações. Para descartar as alterações, escolha **Cancelar**.

------
#### [ Using the AWS CLI ]

Para modificar o parâmetro `change_stream_log_retention_duration` de um grupo de parâmetros de cluster, use a operação `modify-db-cluster-parameter-group` com os parâmetros a seguir:
+ **--db-cluster-parameter-group-name** — Obrigatório. O nome do grupos de parâmetros de cluster que você está modificando. Para identificar o grupo de parâmetros de cluster associado ao cluster, consulte [Determinando o grupo de parâmetros de um cluster do Amazon DocumentDB](cluster_parameter_groups-describe.md#cluster_parameter_groups-determine). 
+ **--parameters** — Obrigatório. O parâmetro que você está modificando. Cada entrada de parâmetro deve incluir o seguinte: 
  + **ParameterName** — O nome do parâmetro que você está modificando. Neste caso, é `change_stream_log_retention_duration` 
  + **ParameterValue** — O novo valor para esse parâmetro. 
  + **ApplyMethod** — como você deseja aplicar as alterações nesse parâmetro. Os valores permitidos são `immediate` e `pending-reboot`. 
**nota**  
Os parâmetros com `ApplyType` de `static` devem ter um `ApplyMethod` de `pending-reboot`. 

1. Para alterar os valores do parâmetro `change_stream_log_retention_duration`, execute o seguinte comando e substitua `parameter-value` pelo valor para o qual deseja modificar o parâmetro. 

   Para Linux, macOS ou Unix:

   ```
   aws docdb modify-db-cluster-parameter-group \
       --db-cluster-parameter-group-name sample-parameter-group \
       --parameters "ParameterName=change_stream_log_retention_duration,ParameterValue=<parameter-value>,ApplyMethod=immediate"
   ```

   Para Windows:

   ```
   aws docdb modify-db-cluster-parameter-group ^
       --db-cluster-parameter-group-name sample-parameter-group ^
       --parameters "ParameterName=change_stream_log_retention_duration,ParameterValue=<parameter-value>,ApplyMethod=immediate"
   ```

   A saída dessa operação é semelhante ao seguinte (formato JSON).

   ```
   {
       "DBClusterParameterGroupName": "sample-parameter-group"
   }
   ```

1. Aguarde pelo menos 5 minutos.

1. Liste os valores de parâmetro de `sample-parameter-group` para garantir que suas alterações foram feitas. 

   Para Linux, macOS ou Unix:

   ```
   aws docdb describe-db-cluster-parameters \
       --db-cluster-parameter-group-name sample-parameter-group
   ```

   Para Windows:

   ```
   aws docdb describe-db-cluster-parameters ^
       --db-cluster-parameter-group-name sample-parameter-group
   ```

   A saída dessa operação é semelhante ao seguinte (formato JSON).

   ```
   {
       "Parameters": [
           {
               "ParameterName": "audit_logs",
               "ParameterValue": "disabled",
               "Description": "Enables auditing on cluster.",
               "Source": "system",
               "ApplyType": "dynamic",
               "DataType": "string",
               "AllowedValues": "enabled,disabled",
               "IsModifiable": true,
               "ApplyMethod": "pending-reboot"
           },
           {
               "ParameterName": "change_stream_log_retention_duration",
               "ParameterValue": "12345",
               "Description": "Duration of time in seconds that the change stream log is retained and can be consumed.",
               "Source": "user",
               "ApplyType": "dynamic",
               "DataType": "integer",
               "AllowedValues": "3600-86400",
               "IsModifiable": true,
               "ApplyMethod": "immediate"
           }
       ]
   }
   ```

------

**nota**  
A retenção de log de fluxo de alterações não excluirá logs mais antigos que o valor `change_stream_log_retention_duration` configurado até que o tamanho do log seja maior que (>) 51.200 MB.

## Usar fluxos de alterações em instâncias secundárias
<a name="change-streams-secondary-instances"></a>

Para começar a usar o fluxo de alterações em instâncias secundárias, abra o cursor do fluxo de alterações com `readPreference` como secundário.

É possível abrir um cursor de fluxo de alterações para observar os eventos de alteração em uma coleção específica ou em todas as coleções em um cluster ou banco de dados. É possível abrir um cursor do fluxo de alterações em qualquer instância do Amazon DocumentDB e buscar documentos do fluxo de alterações das instâncias do escritor e do leitor. É possível compartilhar tokens de fluxo de alterações (como `resumeToken` ou `startOperationTime`) em diferentes cursores de fluxo de alterações abertos em uma instância de gravador e leitor.

**Exemplo**

```
import os
import sys
from pymongo import MongoClient, ReadPreference
      
username = "DocumentDBusername"
password = <Your password> 

clusterendpoint = "DocumentDBClusterEndpoint"

client = MongoClient(clusterendpoint, username=username, password=password, tls='true', tlsCAFile='global-bundle.pem')

db = client['bar']
 
# Make sure to use SECONDARY to redirect cursor reads from secondary instances
coll = db.get_collection('foo', read_preference=ReadPreference.SECONDARY)

# Create a stream object on RO. The token needs to generated from PRIMARY.
stream = coll.watch(resumeAfter=token)

for event in stream:
   print(event)
```

**Diretrizes e limitações para fluxos de alterações em instâncias secundárias**
+ Os eventos do fluxo de alterações precisam ser replicados da instância primária para as instâncias secundárias. Você pode monitorar o atraso a partir da `DBInstanceReplicaLag` métrica na Amazon CloudWatch.
+ Os carimbos de data e hora em instâncias secundárias nem sempre estão sincronizados com a instância primária. Nesse caso, espere atrasos para que o carimbo de data e hora da instância secundária possa se atualizar. Como prática recomendada, recomendamos usar `startAtOperationTime` ou `resumeToken` iniciar o relógio na instância secundária.
+ Será possível ter um throughput menor em instâncias secundárias em comparação com a instância primária se o tamanho do documento for grande e você estiver fazendo `fullDocumentLookup`, e se houver um alto workload de gravação simultânea na instância primária. Como prática recomendada, recomendamos que você monitore a taxa de acertos do cache do buffer na secundária e certifique-se de que a taxa de acertos do cache do buffer seja alta.

# Usando agrupamento no Amazon DocumentDB 8.0
<a name="collation"></a>

O Amazon DocumentDB 8.0 agora oferece suporte ao agrupamento. O agrupamento permite que você configure regras específicas do idioma para comparação de strings. Com o agrupamento, você pode especificar regras para comparações com distinção entre maiúsculas e minúsculas ou especificar uma localidade de idioma. O agrupamento pode ser configurado no nível da coleção ou do índice no DocumentDB 8.0. Quando você usa o agrupamento no DocumentDB, internamente, um documento de agrupamento é criado com os seguintes parâmetros. 

```
{
locale: string,
caseLevel: boolean,
caseFirst: string,
strength: int,
numericOrdering: boolean,
alternate: string,
maxVariable: string,
backwards: boolean,
normalization: boolean
}
```

## Limitações
<a name="collation-limitations"></a>

O agrupamento tem as seguintes limitações no Amazon DocumentDB:
+ O agrupamento é compatível com o planner v3 disponível no Amazon DocumentDB 8.0. Mudar para plannerv2 ou plannerv1 pode causar comportamentos inconsistentes, incluindo erros de “Índice não encontrado”.
+ Devido às diferenças inerentes à biblioteca, se uma coleção mongodb com agrupamento for exportada, você precisará atualizar os arquivos metadata.bson e alterar sua versão de 57.1 para 60.2 antes da migração.
+ Em casos raros, suas configurações de agrupamento podem violar o limite interno na contagem de caracteres, causando o erro abaixo. “Erro: o documento de agrupamento tem atributos não padrão mais do que os suportados. Por favor, reduza o número de opções.” Nesse caso, tente reduzir as opções fornecidas no documento de agrupamento ou, alternativamente, tente usar valores padrão sempre que possível.

# Usando visualizações no Amazon DocumentDB 8.0
<a name="views"></a>
+ O Amazon DocumentDB 8.0 agora oferece suporte a visualizações. As visualizações funcionam como coleções virtuais que apresentam dados com base em operações de agregação especificadas. Ao criar uma exibição, você define uma consulta que transforma dados de uma ou mais coleções de origem. O Amazon DocumentDB 8.0 executa essa consulta toda vez que a visualização é acessada, sem consumir recursos adicionais de armazenamento. Diferentemente das coleções padrão, as visualizações no Amazon DocumentDB 8.0 não armazenam documentos em disco, o que as torna uma solução eficiente para apresentar dados transformados ou filtrados aos aplicativos. Para criar uma visualização no Amazon DocumentDB, você pode usar o comando CreateView ou o método auxiliar db.CreateView (): 

  ```
  db.createView("viewName","sourceCollection",
  [
      { $match: { status: "active" } },
      { $project: { _id: 1, name: 1, email: 1 } }
  ]
  )
  ```

  Isso cria uma visualização chamada “ViewName” com base em “SourceCollection” que inclui apenas documentos e projetos ativos, somente os campos \$1id, nome e e-mail. As visualizações no Amazon DocumentDB são somente para leitura. As operações de gravação nas visualizações retornarão um erro. Para um desempenho ideal com grandes conjuntos de dados, você pode estruturar seus pipelines de visualização para maximizar a eficiência. Para pipelines de agregação complexos, é recomendável usar o estágio \$1match como o primeiro estágio ou no início do pipeline para reduzir o número de documentos que os estágios subsequentes precisam processar, melhorando assim o desempenho da consulta. 

## Práticas recomendadas
<a name="views-bestpractices"></a>

Algumas das melhores práticas a serem seguidas com as visualizações estão listadas abaixo.
+ Filtrar antecipadamente: use os estágios \$1match no início dos pipelines de visualização para reduzir a quantidade de dados processados.
+ Evite agregações complexas: para visualizações acessadas com frequência com agregações complexas, considere criar uma coleção separada com resultados pré-computados que são atualizados periodicamente.
+ Planejamento de indexação: garanta que os campos usados nos pipelines de visualização, especialmente nas operações \$1match e \$1sort, estejam devidamente indexados na coleção de origem.
+ Otimização de consultas: use o comando explain para entender como suas consultas de visualização são executadas e otimizá-las adequadamente.
+ Alternativas para visualizações: dadas as diferenças funcionais entre as visualizações do Amazon DocumentDB e do MongoDB, considere usar coleções regulares com atualizações programadas como alternativa às visualizações quando encontrar limitações.

## Compatibilidade do operador agregador
<a name="views-aggregators"></a>

O Amazon DocumentDB oferece suporte a muitos operadores de agregação em definições de visualização, ao mesmo tempo em que continua expandindo a compatibilidade. Ao usar visualizações, concentre-se nos seguintes operadores compatíveis:
+ \$1match para filtrar documentos
+ \$1project para seleção e transformação de campo
+ \$1addFields para adicionar campos computados
+ \$1sort para resultados de pedidos
+ \$1limit e \$1skip para paginação

Alguns operadores especializados, como \$1currentOp, \$1replaceRoot e \$1geoNear, atualmente trabalham em consultas de agregação direta em vez de definições de visualização.

## Aproveitando índices e visualizações
<a name="views-indexes"></a>

As visualizações no Amazon DocumentDB 8.0 usam os índices da coleção subjacente. Como resultado, você não pode criar, eliminar ou reconstruir índices diretamente em uma exibição. No entanto, índices bem projetados na coleção de origem podem melhorar significativamente o desempenho da consulta de visualização. Abaixo estão algumas etapas para otimizar o desempenho da consulta nas visualizações:
+ Certifique-se de que existam índices apropriados nos campos de coleção de origem usados no pipeline da visualização, especialmente nas operações \$1match e \$1sort
+ Use o método explain () para analisar os planos de execução de consultas e verificar o uso do índice. Por exemplo, `db.viewName.find({...}).explain() `

# Usar AWS Lambda com fluxos de alterações
<a name="using-lambda"></a>

O Amazon DocumentDB é integrado ao AWS Lambda para que você possa usar as funções do Lambda para processar registros em um fluxo de alterações. O mapeamento da origem do evento do Lambda é um recurso que pode ser usado para invocar funções do Lambda para processar eventos do Amazon DocumentDB que não invocam diretamente o Lambda. Com o fluxo de alterações do Amazon DocumentDB como origem do evento, é possível criar aplicações orientadas por eventos que respondam às mudanças em seus dados. Por exemplo, é possível usar as funções do Lambda para processar novos documentos, rastrear atualizações de documentos existentes ou registrar documentos excluídos.

É possível configurar um mapeamento da origem do evento para enviar registros de seu fluxo de alterações no Amazon DocumentDB para uma função do Lambda. Os eventos podem ser enviados um por vez ou agrupados para melhorar a eficiência, e serão processados em ordem. É possível configurar o comportamento de lote do mapeamento da origem do evento com base na duração de um intervalo específico (0 a 300 segundos) ou na contagem de registros em lote (limite máximo de 10.000 registros). É possível criar vários mapeamentos de origem de evento para processar os mesmos dados com várias funções do Lambda ou processar itens de vários fluxos com uma única função.

Se a sua função retornar um erro, o Lambda tentará executar novamente o lote até que o processamento seja bem-sucedido ou os dados expirem. Caso os eventos no fluxo de alterações tenham expirado, o Lambda desabilitará o mapeamento da origem do evento. Nesse caso, é possível criar um novo mapeamento da origem do evento e configurá-lo com uma posição inicial de sua escolha. Mapeamentos de fontes de eventos do Lambda processam eventos pelo menos uma vez devido à natureza distribuída de seus agentes de sondagem. Como resultado, sua função do Lambda pode receber eventos duplicados em situações raras. Siga as melhores práticas para trabalhar com funções AWS Lambda e crie funções idempotentes para evitar problemas relacionados a eventos duplicados. Para obter mais informações, consulte [Como usar o do AWS Lambda console com o Amazon DocumentDB](https://docs.aws.amazon.com/lambda/latest/dg/with-documentdb.html) no *Guia do desenvolvedor do AWS Lambda*.

Como práticas recomendadas de performance, a função do Lambda precisa ser de curta duração. Para evitar a introdução de atrasos de processamento desnecessários, ela também não deve executar uma lógica complexa. Para um fluxo de alta velocidade em particular, é melhor acionar fluxos de trabalho assíncronos de função de etapa de pós-processamento do que Lambdas síncronos de longa execução. Para obter mais informações sobre o AWS Lambda, consulte o [Guia do desenvolvedor do AWS Lambda](https://docs.aws.amazon.com/lambda/latest/dg/welcome.html). 

## Limitações
<a name="lambda-limitations"></a>

Veja a seguir limitações a considerar ao trabalhar com o Amazon DocumentDB e o AWS Lambda:
+ O AWS Lambda é atualmente compatível somente no Amazon DocumentDB 4.0 e 5.0.
+ O AWS Lambda não é atualmente compatível com clusters elásticos ou clusters globais.
+ Os tamanhos de payload do AWS Lambda não podem exceder 6 MB. Para obter mais informações sobre tamanhos de lote do Lambda, consulte “Comportamento de lotes” na seção [Mapeamentos da origem do evento do Lambda](https://docs.aws.amazon.com/lambda/latest/dg/invocation-eventsourcemapping.html#invocation-eventsourcemapping-batching) no *Guia do desenvolvedor do AWS Lambda*.