Criação e gerenciamento de volumes duplicados do File Storage for Classic

Crie um volume de armazenamento de arquivos duplicados a partir de um snapshot, com opções de capacidade e desempenho herdadas e personalizáveis. A duplicata pode ser dependente ou independente.

É possível criar uma duplicata de um IBM Cloud® File Storage for Classic existente. O volume duplicado herda as opções de capacidade e desempenho do volume original por padrão. No entanto, ambos os atributos podem ser alterados. A duplicata tem uma cópia dos dados até o ponto-em-tempo do instantâneo que foi usado para criá-lo. O volume duplicado pode ser dependente ou independente do volume original.

Se você é um usuário de conta Dedicado do IBM Cloud® Kubernetes Service, veja suas opções para duplicar um volume na documentação do IBM Cloud Kubernetes Service.

Como a duplicata é baseada nos dados em uma captura instantânea de um momento, o espaço de captura instantânea é necessário no volume original antes de poder criar uma duplicata. Para obter mais informações sobre capturas instantâneas e como pedir espaço de captura instantânea, consulte a documentação da Captura instantânea.

Tipos de volumes duplicados

Duplicata independente

É possível criar duplicatas independentes dos volumes primário e de réplica. A nova duplicata é criada no mesmo data center que o volume original. Se você criar uma duplicata a partir de um volume réplica, o volume duplicado será criado no mesmo data center que a réplica.

Usos comuns de um volume duplicado independente

  • Cópia dourada Use um volume de armazenamento como uma cópia mestre, a partir da qual você possa criar várias instâncias para diversos fins.
  • Atualizações de dados. Crie uma cópia dos seus dados de produção para montá-la no seu ambiente de teste.
  • Desenvolvimento e testes. Crie até quatro duplicatas simultâneas de um volume por vez para criar dados duplicados para desenvolvimento e teste.

Duplicata dependente

Os volumes duplicados dependentes são criados usando um instantâneo a partir do volume primário. Os volumes de réplica não podem ser usados para criar ou atualizar os volumes duplicados dependentes.

Usos comuns para um volume duplicado dependente

  • Teste de recuperação de desastre. Crie uma duplicata de seu volume de origem e compare-a com a réplica. Ao comparar a duplicata para a réplica é possível verificar se os dados que estão sendo replicados estão intactos e podem ser usados se ocorrer um desastre, sem interromper a replicação.
  • Restaurar da captura instantânea. Restaure dados no volume original com arquivos e data específicos por meio de uma captura instantânea sem sobrescrever o volume original inteiro com a função de restauração de captura instantânea.
  • Atualizações de dados. Crie uma cópia dos seus dados de produção para montá-la no seu ambiente de teste.
  • Desenvolvimento e testes. Crie até quatro duplicatas simultâneas de um volume por vez para criar dados duplicados para desenvolvimento e teste.

Criação de uma cópia de um volume específico no console

  1. Acesse a sua lista de File Storage for Classic. No menu Infrastructure VPC icon Classic Infrastructure, clique em Storage File Storage for Classic.

  2. Localize e clique no nome do volume.

  3. Clique em Ações Ícone de ações > Compartilhar Compartilhar.

  4. Selecione se a duplicata é para ser dependente ou independente.

  5. Escolha sua opção de captura instantânea.

    • Crie agora um instantâneo com os dados mais recentes.
    • Use o último instantâneo que foi tomado anteriormente.
  6. A localização e o Perfil das IOPS permanecem iguais ao volume original.

  7. É possível escolher provisionar o volume duplicado com método de faturamento por hora ou mensal. O tipo de faturamento para o volume original é selecionado automaticamente e será possível mudá-lo se você desejar.

  8. Será possível especificar IOPS ou Camada de IOPS diferentes para o novo volume se você desejar. A designação de IOPS do volume original é configurada por padrão. As combinações de desempenho e tamanho disponíveis são exibidas.

    • Se o seu volume original for a camada 0,25 IOPS Endurance, não será possível fazer uma nova seleção.
    • Se seu volume original for a camada de 2, 4 ou 10 IOPS do Endurance, será possível se mover em qualquer lugar entre essas camadas para o novo volume.
  9. É possível atualizar o tamanho do novo volume para que seja maior que o do original. O tamanho do volume original é configurado por padrão.

    O File Storage for Classic pode ser redimensionado para 10 vezes o tamanho original do volume.

  10. É possível atualizar o espaço de captura instantânea do novo volume para incluir mais, menos ou nenhum espaço de captura instantânea. O espaço de captura instantânea do volume original é configurado por padrão.

  11. Marque a caixa para confirmar que você leu e concordou com os termos, em seguida, clique em Criar para fazer o seu pedido.

Depois de clicar em Criar, aparece a janela de confirmação do pedido. Ao fechar a janela, você volta para a lista de recursos. Você pode voltar para a sua lista de compartilhamentos File Storage for Classic para clicar na duplicata recém-provisionada. A seção de detalhes do compartilhamento exibe informações como Duplicate Type, um link para a página de detalhes do pai share e o nome do instantâneo que foi usado para criar a duplicata.

Criação de uma duplicata pela CLI

Antes de iniciar, decida sobre o cliente CLI que deseja usar.

Criando uma duplicata a partir da CLI IBMCLOUD

É possível usar o comando ibmcloud sl file volume-duplicate para criar uma duplicata para seu compartilhamento de arquivo.. O exemplo a seguir cria uma duplicata independente do compartilhamento de arquivo 560382016

ibmcloud sl file volume-duplicate 560382016
This action will incur charges on your account. Continue?> y
OK
Order 110554892 was placed.
 > Storage as a Service
 > File Storage
 > 500 GBs
 > 4 IOPS per GB
 > 500 GB (Snapshot Space)
You may run 'ibmcloud sl file volume-list --order 110554892' to find this file volume after it is ready.

Sua nova duplicata está pronta dentro de minutos.

$ ibmcloud sl file volume-list --order 110554892
id          username             datacenter   storage_type             capacity_gb   bytes_used   IOPs   ip_addr                                 lunId   active_transactions   rep_partner_count   notes
560391190   SL02SEV1414935_269   dal09        endurance_file_storage   500           -            -      fsf-dal0902b-fz.service.softlayer.com   -       1                     0                   -

Se você tiver um snapshot específico que contenha os dados que deseja usar para criar o volume duplicado, especifique o ID do snapshot usando a opção --origin-snapshot-id.

Quando desejar criar uma duplicata dependente do volume, use o comando com a opção --dependent-duplicate. Consulte o exemplo a seguir.

$ ibmcloud sl file volume-duplicate 560391190 --dependent-duplicate
This action will incur charges on your account. Continue?> y
OK
Order 110553472 was placed.
 > Storage as a Service
 > File Storage
 > 500 GBs
 > 4 IOPS per GB
 > 500 GB (Snapshot Space)
You may run 'ibmcloud sl file volume-list --order 110553472' to find this file volume after it is ready.

Para obter mais informações sobre todos os parâmetros disponíveis para esse comando, consulte ibmcloud sl file volume-duplicate.

Criando uma duplicata por meio da SLCLI

Para criar um volume duplicado independente File Storage for Classic, você pode usar o seguinte comando.

$ slcli file volume-duplicate --help
Usage: slcli file volume-duplicate [OPTIONS] ORIGIN_VOLUME_ID
Options:
  -o, --origin-snapshot-id INTEGER
                                  ID of an origin volume snapshot to use for
                                  duplcation.
  -c, --duplicate-size INTEGER    Size of duplicate file volume in GB. ***If
                                  no size is specified, the size of the origin
                                  volume will be used.***
                                  Minimum: [the size
                                  of the origin volume]
  -i, --duplicate-iops INTEGER    Performance Storage IOPS, between 100 and
                                  6000 in multiples of 100 [only used for
                                  performance volumes] ***If no IOPS value is
                                  specified, the IOPS value of the origin
                                  volume will be used.***
                                  Requirements: [If
                                  IOPS/GB for the origin volume is less than
                                  0.3, IOPS/GB for the duplicate must also be
                                  less than 0.3. If IOPS/GB for the origin
                                  volume is greater than or equal to 0.3,
                                  IOPS/GB for the duplicate must also be
                                  greater than or equal to 0.3.]
  -t, --duplicate-tier [0.25|2|4|10]
                                  Endurance Storage Tier (IOPS per GB) [only
                                  used for endurance volumes] ***If no tier is
                                  specified, the tier of the origin volume
                                  will be used.***
                                  Requirements: [If IOPS/GB
                                  for the origin volume is 0.25, IOPS/GB for
                                  the duplicate must also be 0.25. If IOPS/GB
                                  for the origin volume is greater than 0.25,
                                  IOPS/GB for the duplicate must also be
                                  greater than 0.25.]
  -s, --duplicate-snapshot-size INTEGER
                                  The size of snapshot space to order for the
                                  duplicate. ***If no snapshot space size is
                                  specified, the snapshot space size of the
                                  origin file volume will be used.***
                                  Input
                                  "0" for this parameter to order a duplicate
                                  volume with no snapshot space.
  --billing [hourly|monthly]      Optional parameter for Billing rate (default
                                  to monthly)
  -h, --help                      Show this message and exit.

Volumes duplicados dependentes também podem ser pedidos a partir da CLI, com a opção --dependent-duplicate TRUE.

slcli file volume-duplicate --dependent-duplicate TRUE <primary-vol-id>

Para obter mais informações sobre opções de comando disponíveis, consulte file volume-duplicate.

Criando um compartilhamento duplicado com a API

Para pedir um volume duplicado independente Block Storage for Classic com a API, é possível fazer uma chamada POST /SoftLayer_Product_Order/placeOrder. O exemplo de API REST a seguir cria uma duplicata independente para um volume de Endurance (camadas IOPS).

URL
https://USERNAME:APIKEY@api.softlayer.com/rest/v3.1/SoftLayer_Product_Order/placeOrder
Tipo
POST

Corpo da solicitação

    {
       "parameters":[{
       "complexType": "SoftLayer_Container_Product_Order_Network_Storage_AsAService",
       "packageId": 531,
       "duplicateOriginVolumeId":<PrimaryId>,
       "isDependentDuplicateFlag": 1,
       "prices": [{"id": 12207}, {"id": 10723}, {"id": 10413}, {"id": 15749}, {"id":14043}],
       "quantity": 1,
       "location": 2,
       "volumeSize":23
       }]
   }

Se você tiver um snapshot específico que contenha os dados que deseja usar para criar o volume duplicado, especifique o ID do snapshot na propriedade duplicateOriginSnapshotId.

Para pedir uma duplicata dependente para um volume de Desempenho (IOPS customizado), faça uma chamada POST /SoftLayer_Product_Order/placeOrder como o exemplo da API de REST a seguir:

URL
https://USERNAME:APIKEY@api.softlayer.com/rest/v3.1/SoftLayer_Product_Order/placeOrder
Tipo
POST

Corpo da solicitação

   {
       "parameters":[{
       "complexType": "SoftLayer_Container_Product_Order_Network_Storage_AsAService",
       "packageId": 531,
       "duplicateOriginVolumeId":<PrimaryId>,
       "isDependentDuplicateFlag": 1,
       "prices": [{"id": 15751}, {"id": 19487}, {"id": 18983}, {"id": 15749}, {"id":14043}],
       "quantity": 1,
       "iops":456,
       "location": 2,
       "volumeSize":23
       }]
   }

Se você tiver um snapshot específico que contenha os dados que deseja usar para criar o volume duplicado, especifique o ID do snapshot na propriedade duplicateOriginSnapshotId.

Para obter mais informações sobre a API e as opções, consulte a Referência da API Procure o SoftLayer_Container_Product_Order_Network_Storage_AsAService tipo de dados.

Gerenciando seu volume duplicado

Todos os volumes duplicados podem ser acessados por um host para operações de leitura e gravação assim que o volume for provisionado.

No entanto, snapshots e replicação de volumes duplicados independentes não são permitidos até que a cópia de dados do original para a duplicata seja completa e o volume duplicado seja totalmente independente. Dependendo do tamanho dos dados, o processo de separação pode levar várias horas. Quando estiver concluída, a cópia poderá ser gerenciada e utilizada como um volume independente.

Enquanto os dados estão sendo copiados do volume original para a cópia independente, é possível observar que o indicador de status na página de detalhes mostra que a duplicação está em andamento. Durante esse período, você pode conectar-se a um host e ler e gravar no volume, mas não pode criar programações de instantâneos nem atualizar os dados a partir do compartilhamento de arquivos original. Quando o processo de separação estiver concluído, o novo volume será independente do original e poderá ser gerenciado com instantâneos e replicação, como de costume. A duplicata independente pode ser atualizada manualmente usando um instantâneo do volume pai após a conclusão da conversão.

Dependentes duplicatas não passam pelo processo de separação e podem ser renovadas manualmente a qualquer momento. O processo de atualização pode ser iniciado na CLI, com a API ou no console. Posteriormente, se desejar converter a duplicata dependente em um volume independente, será possível iniciar esse processo usando a UI, a API ou a CLI também.

O volume duplicado dependente bloqueia o instantâneo original para que o instantâneo não possa ser excluído enquanto a duplicata dependente existir.

Atualizando dados na duplicata do volume pai no console

Conforme o tempo passa e o volume primário muda, o volume duplicado pode ser atualizado com essas mudanças para refletir o estado atual por meio da ação de atualização. A atualização consiste em criar um instantâneo do volume primário e, em seguida, atualizar o volume duplicado utilizando os dados desse instantâneo.

Se o volume duplicado for independente, será possível parar uma operação de atualização em execução e iniciar uma nova..

  1. Acesse a sua lista de File Storage for Classic. No menu Infrastructure VPC icon Classic Infrastructure, clique em Storage File Storage for Classic.

  2. Localize o volume duplicado e clique em seu nome para visualizar os detalhes do volume.

  3. Clique em Ações Ícone Ações > Restaurar snapshot pai.

  4. Na lista de capturas instantâneas, selecione a captura instantânea pai que contém os dados que deseja restaurar para o volume duplicado. Se o volume duplicado que você está atualizando for um volume independente, será possível parar uma operação em execução e forçar uma nova restauração para iniciar. Se desejar forçar a parada de um processo de atualização atual, marque a caixa antes de continuar

    A restauração de dados a partir de um snapshot resulta na perda de todos os dados criados ou modificados desde que o snapshot selecionado foi gerado. Durante a transação de atualização, o volume duplicado é desativado e deve ser remontado após a conclusão da atualização.

  5. Clique em “Sim” para iniciar a atualização. A atualização pode demorar um pouco para ser concluída. A barra de status mostra a porcentagem dos dados copiados para o volume. Para ver status atualizado, atualize a página no navegador.

Convertendo um volume dependente em uma duplicata independente no console

  1. Acesse a sua lista de File Storage for Classic. No menu Infrastructure VPC icon Classic Infrastructure, clique em Storage File Storage for Classic.
  2. Localize o volume duplicado e clique em seu nome para visualizar os detalhes do volume.
  3. Clique em Ações Ícone Ações > Converter Duplicata Dependente.
  4. Marque a caixa para confirmar que deseja prosseguir com a conversão.
  5. Clique em Sim.

O processo de conversão pode demorar algum tempo para ser concluído. Quanto maior for o volume, mais demorado é necessário para converdá-lo. Você pode visualizar o status do processo na página de detalhes do volume sob o cabeçalho Duplicate conversion status.

Atualização de dados na duplicata a partir do volume pai da CLI

Conforme o tempo passa e o volume primário muda, o volume duplicado pode ser atualizado com essas mudanças para refletir o estado atual por meio da ação de atualização. A atualização envolve obter uma captura instantânea do volume primário e, em seguida, atualizar o volume duplicado usando essa captura instantânea.

Uma atualização não incorre em tempo de inatividade no volume primário. No entanto, durante a transação de atualização, o volume duplicado não está disponível e deve ser remontado após a atualização ser concluída.

O processo de atualização pode ser demorado. Se você descobrir que tem novos dados que deseja copiar para o volume duplicado independente, você pode emitir o comando file volume-refresh com a opção --force-refresh para parar todas as transações de atualização em andamento e pendentes e iniciar uma nova atualização.

O processo de atualização da força funciona apenas em volumes independentes.

Atualizando dados em uma duplicata dependente a partir da CLI IBMCLOUD

É possível usar o comando ibmcloud sl file volume-refresh para atualizar os dados em seu volume duplicado com os dados de uma snapshot do volume pai. O exemplo a seguir mostra como criar manualmente uma captura instantânea do volume pai 560391190 e, em seguida, usar a nova captura instantânea 560391944 para atualizar os dados no compartilhamento de arquivo 560391814

$ ibmcloud sl file snapshot-create 560391190
OK
New snapshot 560391944 was created.
$ ibmcloud sl file volume-refresh 560391814 560391944
OK

Para obter mais informações sobre todos os parâmetros disponíveis para esse comando, consulte ibmcloud sl file volume-refresh.

Atualizando dados em uma duplicata dependente da SLCLI

É possível iniciar as atualizações usando o comando a seguir.

slcli file volume-refresh <duplicate-vol-id> <primary-snapshot-id>

Para obter mais informações sobre opções de comando disponíveis, consulte slcli file volume-refresh.

Convertendo um volume dependente para uma duplicata independente da CLI

Se você quiser usar o volume dependente como um volume autônomo no futuro, poderá convertê-lo em um volume normal e independente do tipo “ File Storage for Classic ” por meio da CLI.

Convertendo um volume dependente a partir da CLI IBMCLOUD

Use o comando ibmcloud sl file volume-convert para converter uma duplicata dependente em um compartilhamento de arquivo independente O exemplo a seguir mostra como converter o compartilhamento de arquivo 560391814 em um volume independente

$ ibmcloud sl file volume-convert 560391814
OK

O processo de conversão pode demorar algum tempo para ser concluído. Quanto maior for o volume, mais demorado é necessário para converdá-lo.

Para obter mais informações sobre todos os parâmetros disponíveis para esse comando, consulte ibmcloud sl file volume-convert.

Convertendo um volume dependente da SLCLI

Use o comando abaixo.

slcli file volume-convert <dependent-vol-id>

O processo de conversão pode demorar algum tempo para ser concluído. Quanto maior for o volume, mais demorado é necessário para converdá-lo. Use o comando a seguir para verificar o andamento.

slcli file duplicate-convert-status <dependent-vol-id>

O exemplo a seguir mostra a saída que você pode esperar.

slcli file duplicate-convert-status 370597202
Username            Active Conversion Start Timestamp   Completed Percentage
SL02SEVC307608_74   2022-06-13 14:59:17                 90

Para obter mais informações sobre opções de comando disponíveis, consulte file duplicate-convert-status.

Atualizando dados na duplicata do volume pai com a API

Conforme o tempo passa e o volume primário muda, o volume duplicado pode ser atualizado com essas mudanças para refletir o estado atual por meio da ação de atualização. A atualização consiste em criar um instantâneo do volume primário e, em seguida, atualizar o volume duplicado utilizando os dados desse instantâneo.

Uma atualização não incorre em tempo de inatividade no volume primário. No entanto, durante a transação de atualização, o volume duplicado fica desativado e deve ser remontado após a conclusão da atualização.

O processo de atualização pode ser demorado. Você pode achar que tem novos dados que deseja incluir na duplicata antes que a atualização em execução seja concluída Se esse for o caso, será possível fazer uma segunda chamada para refreshDuplicate e especificar o segundo parâmetro forceRefresh como true para parar todas as transações de atualização em andamento e pendentes e iniciar uma nova atualização Se o segundo parâmetro for configurado como false, ou não for especificado, a chamada falhará se outra atualização já estiver em andamento

O processo de atualização da força funciona apenas em volumes independentes.

Exemplo de API de REST

URL
https://USERNAME:APIKEY@api.softlayer.com/rest/v3.1/SoftLayer_Network_Storage/duplicateVolumeId/refreshDuplicate
Tipo
POST

Corpo da solicitação

   {
    "parameters": [primaryVolumeSnapshotId, true OR false]
   }

Exemplo de API SOAP

URL
https://api.softlayer.com/soap/v3.1/SoftLayer_Network_Storage
Tipo
POST

Corpo da solicitação

   <?xml version="1.0" encoding="UTF-8"?>
   <SOAP-ENV:Envelope xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/" xmlns:ns1="http://api.service.softlayer.com/soap/v3.1/">
   <SOAP-ENV:Header>
    <ns1:authenticate>
     <username>USERNAME</username>
     <apiKey>APIKEY</apiKey>
    </ns1:authenticate>
    <ns2:SoftLayer_Network_StorageInitParameters>
     <id>duplicate Volume Id</id>
    </ns2:SoftLayer_Network_StorageInitParameters>
   </SOAP-ENV:Header>
   <SOAP-ENV:Body>
    <ns1:refreshDuplicate>
      <snapshotId xsi:type="int">primary Volume Snapshot Id</snapshotId>
      <forceRefresh xsi:type="boolean">true</forceRefresh> <-- (remove this tag for normal refresh)
    </ns1:refreshDuplicate>
   </SOAP-ENV:Body>
   </SOAP-ENV:Envelope>

Para obter mais informações sobre a API e as opções, consulte Referência da API e SoftLayer_Network_Storage::refreshDuplicate.

Convertendo um volume dependente em uma duplicata independente com a API

Se você quiser usar o volume dependente como um volume autônomo no futuro, poderá convertê-lo em um volume normal e independente do tipo “ IBM Cloud® Block Storage for Classic ” por meio da API. Veja o exemplo a seguir, que utiliza a API REST.

URL
https://USERNAME:APIKEY@api.softlayer.com/rest/v3.1/SoftLayer_Network_Storage/<storageId>/convertCloneDependentToIndependent
Tipo
POST
Corpo da solicitação
Em branco

Para obter mais informações sobre a API e as opções, consulte a Referência da API

Cancelando um volume de armazenamento com uma duplicata dependente

Para cancelar um volume pai que possua volumes dependentes ativos, é necessário cancelar primeiro os volumes dependentes duplicados.