Gerenciando compartilhamentos de arquivo de réplica

Gerencie compartilhamentos de arquivos réplicas removendo as relações de replicação para criar compartilhamentos independentes de leitura/gravação que possam ser atualizados e excluídos separadamente.

Você precisa de funções de usuário do IAM de Administrador ou Editor para criar e gerenciar réplicas de compartilhamento de arquivo e o relacionamento de replicação. Para uma lista dessas funções e ações, consulte Funções do IAM para criação e gerenciamento de compartilhamentos de arquivo.

Informações de sincronização de replicação

Replicação é uma operação assíncrona, que não é instantânea. Após cada operação de sincronização, o sistema fornece informações úteis sobre o último processo de replicação, como data de início e de encerramento e volume de dados transferidos. Visualizando as informações de replicação, é possível ver quanto tempo a última replicação levou e calcular a taxa de transferência. Ver os valores de dados transferidos pode ajudar a estimar os encargos de transferência globais no final do período de faturamento.

É possível usar as informações de sincronização de replicação para ajustar seu planejamento de replicação. Ele pode ajudar a equilibrar o custo e a frequência com que você precisa que os dados sejam atualizados na réplica para satisfazer seu objetivo do ponto de recuperaçãoNo planejamento da recuperação de desastres, o tempo em que os dados são restaurados é medido em tempo (segundos, minutos, horas), começando na instância recuperada e terminando no ponto do desastre. . Ele também pode ajudar a determinar se o processo de replicação está em perigo de degradação

Quando a quantia de dados a serem transferidos exceder a quantia de dados que podem ser transferidos durante a janela da replicação com a taxa de transferência normal, o processo de replicação não poderá ser concluído e o status de replicação se tornará degraded Se esta situação ocorrer, tente ajustar a taxa da mudança no compartilhamento de arquivo e a frequência de replicação..

O sistema consulta o status da última sincronização a cada 15 minutos. O resultado mostra os dados da última replicação concluída. Se uma replicação estiver em andamento quando a consulta for executada não será mostrada na resposta. Após a conclusão da replicação, a próxima consulta atualiza as últimas informações de sincronização. Você pode esperar um pequeno atraso entre a conclusão da replicação e o momento em que as últimas informações de sincronização são atualizadas nas interfaces.

É possível ver informações sobre a última operação de replicação ao visualizar os detalhes do compartilhamento de origem ou de réplica. Para obter mais informações, consulte Exibir detalhes de um compartilhamento de arquivos no console.

É possível ver informações sobre a última operação de replicação ao listar os detalhes do compartilhamento de origem ou réplica. Para obter mais informações, consulte Visualizar detalhes de um compartilhamento de arquivo da CLI.

É possível recuperar programaticamente os detalhes da última sincronização chamando o método /shares na API do VPC. Procure a seção latest_sync na resposta da API para ver quando a replicação foi iniciada (started_at), quando terminou (completed_at) e quantos dados foram transferidos (data_transferred). Para obter mais informações, consulte Visualizar um único compartilhamento de arquivo com a API

Além disso, você pode visualizar informações históricas da sincronização de replicação recente ao usar IBM Cloud Logs. Quando a replicação ocorre, o serviço de arquivo gera uma mensagem de log do regional-file.00002I, que inclui informações sobre quando a replicação ocorreu e quantos dados foram transferidos Para obter mais informações, consulte Logging for VPC.

Verificando a replicação por meio da API

Você pode usar a API para verificar se a replicação foi bem-sucedida, está pendente ou falhou. É possível fazer a solicitação GET /shares/{share_id} para ver o status com o ID de compartilhamento dos compartilhamentos de origem ou de réplica.

curl -X GET \
"$vpc_api_endpoint/v1/shares/$share_id?version=2023-08-08&generation=2"\
-H "Authorization: Bearer $iam_token"

Na resposta, consulte a propriedade latest_job O exemplo mostra o failover de replicação bem-sucedido:

  "created_at": "2023-08-08T23:31:59Z",
  "crn": "crn:[...]",
  "encryption": "provider_managed",
  "href": "$vpc_api_endpoint/v1/shares/199d78ec-b971-4a5c-a904-8f37ae710c63",
  "id": "199d78ec-b971-4a5c-a904-8f37ae710c63",
  "iops": 3000,
  "lifecycle_state": "stable",
  "name": "share-name1",
  .
  .
  .
  "latest_job": {
      "status": "succeeded",
      "status_reason": {
          "code": "",
          "message": "",
          "more_info": ""
      },
      "type": "replication_failover"
  }

Para uma divisão de replicação, quando o compartilhamento de réplica está sendo dividido do compartilhamento de origem, é possível ver um status running para latest_job na resposta.

"latest_job": {
    "status": "running",
     "status_reason": {
          "code": "",
          "message": "",
         "more_info": ""
    },
    "type": "replication_split"
},

Uma operação de replicação failover ou split não poderá ocorrer se qualquer outra operação estiver sendo executada no compartilhamento do arquivo, como o tamanho de expansão, por exemplo, É possível ver um erro 409 na resposta indicando o problema. Consulte o exemplo a seguir.

"errors": [
    {
        "code": "share_operation_pending",
          "message": "An operation 'replication_failover' is pending on file share, request to 'replication_split' cannot be accepted.",
          "more_info": "Before sending another request wait for the current operation to complete and try again."
     }
],
"trace": "4634eee2-0a9b-43b7-b35e-8885cc258500"

Removendo o relacionamento de replicação

É possível encerrar a replicação removendo a relação de replicação entre o compartilhamento de arquivos de origem e o compartilhamento de arquivos de réplica. A operação é chamada de divisão de compartilhamentos de arquivo. A remoção do relacionamento de replicação cria dois compartilhamentos de arquivo independentes de leitura/gravação. Os dados não são mais sincronizados entre eles É possível gerenciar cada compartilhamento de arquivos separadamente, ampliar a capacidade e ajustar o IOPS, além de criar mais réplicas.

Você também pode especificar que os compartilhamentos de arquivos de origem e réplica sejam divididos caso uma operação de failover não seja bem-sucedida.

A remoção da relação de replicação não pode ocorrer quando outra operação estiver sendo realizada no compartilhamento de arquivos de origem ou na réplica (por exemplo, quando o tamanho do compartilhamento de arquivos estiver sendo ampliado). A operação de divisão permanece em estado pendente até que a outra operação seja concluída.

Ao remover o relacionamento de replicação, não é possível desfazer a ação. Além disso, os dados na réplica não são sincronizados automaticamente com o arquivo de origem antes da remoção da relação de replicação.

Remoção da relação de replicação no console

Para remover a relação de replicação no console:

  1. Acesse a lista de todos os compartilhamentos de arquivos. No console IBM Cloud, clique no ícone do menu Navegação > ícone VPC de infraestrutura > Armazenamento > Compartilhamentos de armazenamento de arquivos.

  2. Clique no nome de um compartilhamento de arquivo ou compartilhamento de arquivo de réplica para acessar sua página de detalhes.

  3. Na seção Relacionamento de replicação de compartilhamento de arquivo, clique em Remover relacionamento de replicação. A remoção do relacionamento de replicação cria dois compartilhamentos de arquivo independentes.

  4. Na nova janela, clique em “Desvincular ”. Os dados na réplica não são sincronizados automaticamente com o compartilhamento de arquivos de origem antes que a relação de replicação seja removida.

A página de detalhes do compartilhamento de arquivos indica que não há relação de replicação.

Removendo o relacionamento de replicação da CLI

Para usar a CLI, deve-se instalar a CLI da IBM Cloud e o plug-in da CLI da VPC. Para obter mais informações, consulte os Pré-requisitos da CLI.

  1. Localize seu compartilhamento por meio da CLI, listando seus compartilhamentos de arquivo na região com o comando ibmcloud is shares

    ibmcloud is shares
    
    Listing shares in all resource groups and region us-south under account Test Account as user test.user@ibm.com...
    ID                                          Name                    Lifecycle state   Zone         Profile   Size(GB)   Resource group  Replication role   Accessor binding role   Snapshot count   Snapshot size
    r006-2a10af45-de9e-4894-8e9e-fd01a25ec529   my-replica-file-share   stable            us-south-1   dp2       101        Default         replica            none                    0                0
    r006-74634ace-43bd-4983-a22b-47b1c9662794   my-source-file-share    stable            us-south-2   dp2       101        Default         source             none                    1                1
    r006-b1707390-3825-41eb-a5bb-1161f77f8a58   my-vpc-file-share       stable            us-south-2   dp2       1000       Default         none               none                    0                0
    r006-b696742a-92ee-4f6a-bfd7-921d6ddf8fa6   my-file-share           stable            us-south-2   dp2       1500       Default         none               none                    0                0
    
  2. Visualize os detalhes do compartilhamento de arquivo que deseja modificar com o comando ibmcloud is share.

    ibmcloud is share my-file-share
    
    Getting file share my-file-share under account Test Account as user test.user@ibm.com...
    
    ID                           r006-b696742a-92ee-4f6a-bfd7-921d6ddf8fa6
    Name                         my-file-share
    CRN                          crn:v1:bluemix:public:is:us-south-2:a/a1234567::share:r006-b696742a-92ee-4f6a-bfd7-921d6ddf8fa6
    Lifecycle state              stable
    Access control mode          security_group
    Accessor binding role        none
    Zone                         us-south-2
    Profile                      dp2
    Size(GB)                     1500
    IOPS                         2000
    Encryption                   provider_managed
    Mount Targets                ID                                          Name
                                 r006-dd497561-c7c9-4dfb-af0a-c84eeee78b61   my-cli-share-mount-target-1
    
    Resource group               ID                                 Name
                                 db8e8d865a83e0aae03f25a492c5b39e   Default
    
    Created                      2023-10-18T22:15:15+00:00
    Latest job                   Job status   Job status reasons
                                 succeeded    -
    
    Replication share            ID                                          Name               Resource type
                                 r006-6d1719da-f790-45cc-9f68-896fd5673a1a   my-replica-share   share
    
    Replication role             source
    Replication status           active
    Replication status reasons   Status code   Status message
                                 -             -
    
    Snapshot count               0
    Snapshot size                0
    Source snapshot              -
    Allowed Access Protocols     nfs4
    Availability Mode            zonal
    Bandwidth(Mbps)              1
    Storage Generation           1
    
  3. Execute o comando ibmcloud is share-replica-split e especifique o compartilhamento de arquivo de réplica por seu nome ou ID

    ibmcloud is share-replica-split r006-6d1719da-f790-45cc-9f68-896fd5673a1a
    
    This will disassociate a replica file share r006-6d1719da-f790-45cc-9f68-896fd5673a1a from its source file share and cannot be undone. Continue [y/N] ?> y
    The request to disassociate a replica file share r006-6d1719da-f790-45cc-9f68-896fd5673a1a from its source file share was accepted, under account Test Accouont as user test.user@ibm.com...
    OK
    Replica File share r006-6d1719da-f790-45cc-9f68-896fd5673a1a is disassociated.
    
  4. O resultado dessa operação são dois compartilhamentos de arquivos independentes para leitura e gravação. Ao listar os compartilhamentos de arquivo na região, é possível ver none na coluna de replicação dos dois compartilhamentos de arquivo.

    ibmcloud is shares
    
    Listing shares in all resource groups and region us-south under account Test Account as user test.user@ibm.com...
    ID                                          Name                    Lifecycle state   Zone         Profile   Size(GB)   Resource group   Replication role
    r006-dc6a644d-c7da-4c91-acf0-d66b47fc8516   my-replica-file-share   stable            us-south-1   dp2       1500       Default          replica
    r006-e4acfa9b-88b0-4f90-9320-537e6fa3482a   my-source-file-share    stable            us-south-2   dp2       1500       Default          source
    r006-6d1719da-f790-45cc-9f68-896fd5673a1a   my-replica-share        stable            us-south-3   dp2       1500       Default          none
    r006-925214bc-ded5-4626-9d8e-bc4e2e579232   my-new-file-share       stable            us-south-2   dp2       500        Default          none
    r006-b1707390-3825-41eb-a5bb-1161f77f8a58   my-vpc-file-share       stable            us-south-2   dp2       1000       Default          none
    r006-b696742a-92ee-4f6a-bfd7-921d6ddf8fa6   my-file-share           stable            us-south-2   dp2       1500       Default          none
    

Para obter mais informações sobre as opções de comandos, consulte ibmcloud is share-replica-split.

Removendo o relacionamento de replicação com a API

Faça uma solicitação DELETE /shares/{replica_id}/source para remover o relacionamento de replicação. Dividir um compartilhamento de arquivo remove o relacionamento de replicação e cria dois compartilhamentos de arquivos independentes. Depois de remover o relacionamento, não é possível restabelecer o relacionamento. Um compartilhamento de arquivo não poderá ser dividido, se o lifecycle_state do compartilhamento de arquivo for updating ou se as operações de réplica estiverem em andamento

curl -X DELETE \
"$vpc_api_endpoint/v1/shares/{replica_share_id}/source?version=2023-08-08&generation=2"\
-H "Authorization: Bearer $iam_token"\

Uma resposta bem-sucedida indica que a solicitação de desassociar um compartilhamento de arquivo de réplica de seu compartilhamento de arquivo de origem foi aceita.

Removendo o relacionamento de replicação com o Terraform

Use o recurso ibm_is_share_replica_operations para dividir os compartilhamentos de origem e réplica. Dividir um compartilhamento de arquivo remove o relacionamento de replicação e cria dois compartilhamentos de arquivos independentes. Depois de remover o relacionamento, não é possível restabelecer o relacionamento.

resource "ibm_is_share_replica_operations" "test" {
  share_replica = ibm_is_share.replica.id
  split_share = true
}

Para obter mais informações sobre argumentos e atributos, consulte ibm_is_share_replica_operations.

Exclusão de réplicas e compartilhamentos de arquivos de origem

Talvez você queira excluir a réplica do compartilhamento de arquivos por vários motivos. Um dos possíveis motivos é desbloquear a exclusão do compartilhamento de arquivos de origem. Como o compartilhamento de arquivos réplica está em replicação ativa a partir do compartilhamento de origem, ele deve ser separado do compartilhamento de origem antes que este possa ser excluído. Você pode dividir as ações de duas maneiras:

  • Execute uma divisão manual, que remove a relação de replicação e cria dois compartilhamentos de arquivos independentes, com acesso de leitura e gravação. Em seguida, você pode usar ou excluir o compartilhamento de arquivos de réplica da mesma forma que usaria ou excluiria um compartilhamento de arquivos normal.

  • Exclua a réplica do compartilhamento de arquivos diretamente após ter excluído seus alvos de montagem. Um processo split é iniciado automaticamente no plano de fundo Após a conclusão da operação de divisão, o compartilhamento de arquivo de réplica é excluído e o compartilhamento de origem também pode ser excluído.

Você pode excluir compartilhamentos de arquivos (fonte ou réplica) no console, na CLI, com a API ou no Terraform.