Clonando um volume para um cluster Amazon DocumentDB - Amazon DocumentDB

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

Clonando um volume para um cluster Amazon DocumentDB

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.

Visão geral da clonagem do Amazon DocumentDB

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, consulteComo funciona a clonagem do Amazon DocumentDB.

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, você poderá excluí-lo.

Limitações da clonagem do Amazon DocumentDB

Atualmente, a clonagem do Amazon DocumentDB; tem as seguintes limitações:

  • Você pode 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. Nesse caso, as sub-redes dessas VPCs devem ser mapeadas mas mesmas Zonas de Disponibilidade.

Como funciona a clonagem do Amazon DocumentDB

A clonagem do Amazon DocumentDB funciona na camada de armazenamento de um cluster do Amazon DocumentDB. Ele usa um copy-on-writeprotocolo 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 Gerenciando clusters do Amazon DocumentDB.

Entendendo o copy-on-write protocolo

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

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.

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.

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

Excluindo um volume de cluster de origem

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.

Criando um clone do Amazon DocumentDB

Você pode criar um clone na mesma AWS conta do cluster Amazon DocumentDB de origem. Para fazer isso, você pode usar o AWS Management Console 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 AWS Management Console

O procedimento a seguir descreve como clonar um cluster Amazon DocumentDB usando AWS Management Console.

Criação de um clone usando os AWS Management Console 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 AWS Management Console
  1. Faça login no e abra AWS Management Console o console do Amazon DocumentDB em https://console.aws.amazon.com/docdb.

  2. No painel de navegação, escolha Clusters.

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

    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.

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

    2. 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.
    3. Em Configurações de rede, escolha um Grupo de sub-rede para seu caso de uso e os grupos de segurança VPC associados.

    4. 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.
    5. 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.
    6. 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 Gerenciando clusters do Amazon DocumentDB.

  5. 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 CLI. Os parâmetros usados com esse comando controlam o tipo de capacidade e outros detalhes do cluster Amazon DocumentDB vazio (clone) sendo criado.

  2. Crie a instância do Amazon DocumentDB para o clone usando o comando create-db-instanceCLI 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 Configurando a AWS CLI. Também é possível especificar --region em cada um dos comandos da CLI seguintes.

Tópicos

    Criando o clone

    Os parâmetros específicos que você passa para o comando restore-db-cluster-to-point-in-time 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 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 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 Verificando o status e obtendo detalhes do clone abaixo:

    Verificando o status e obtendo 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", } ]

    Criando a instância do Amazon DocumentDB para seu clone

    Use o comando create-db-instanceCLI 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 Descrição

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