Skip to main content
Uma versão mais recente deste produto está disponível.
O português é fornecido por meio de tradução automática para sua conveniência. O inglês precede o português em caso de inconsistências.

Restaure aplicativos usando Trident Protect

Você pode usar Trident Protect para restaurar seu aplicativo a partir de um snapshot ou backup. Restaurar a partir de um snapshot existente será mais rápido ao restaurar o aplicativo para o mesmo cluster.

Observação
  • Ao restaurar um aplicativo, todos os ganchos de execução configurados para o aplicativo são restaurados juntamente com o aplicativo. Se houver um gancho de execução pós-restauração, ele é executado automaticamente como parte da operação de restauração.

  • A restauração a partir de um backup para um namespace diferente ou para o namespace original é suportada para volumes qtree. No entanto, a restauração a partir de um snapshot para um namespace diferente ou para o namespace original não é suportada para volumes qtree.

  • Você pode usar configurações avançadas para personalizar as operações de restauração. Para saber mais, consulte "Use as configurações avançadas de restauração do Trident Protect".

Restaurar a partir de um backup para um namespace diferente

Ao restaurar um backup para um namespace diferente usando um BackupRestore CR, Trident Protect restaura o aplicativo em um novo namespace e cria um CR de aplicativo para o aplicativo restaurado. Para proteger o aplicativo restaurado, crie backups ou snapshots sob demanda, ou estabeleça um cronograma de proteção.

Observação
  • Restaurar um backup para um namespace diferente com recursos existentes não alterará nenhum recurso que compartilhe nomes com aqueles no backup. Para restaurar todos os recursos do backup, exclua e recrie o namespace de destino ou restaure o backup para um novo namespace.

  • Ao usar uma CR para restaurar para um novo namespace, você deve criar manualmente o namespace de destino antes de aplicar a CR. Trident Protect cria namespaces automaticamente somente quando se utiliza a CLI.

Antes de começar

Certifique-se de que o tempo de expiração do token de sessão da AWS seja suficiente para quaisquer operações de restauração do s3 de longa duração. Se o token expirar durante a operação de restauração, a operação pode falhar.

Observação Ao restaurar backups usando Kopia como o data mover, você pode opcionalmente especificar anotações no CR ou usando a CLI para controlar o comportamento do armazenamento temporário usado pelo Kopia. Consulte o "Documentação Kopia" para mais informações sobre as opções que você pode configurar. Use o comando tridentctl-protect create --help para mais informações sobre como especificar anotações com a Trident Protect CLI.
Use um CR
Passos
  1. Crie o arquivo de recurso personalizado (CR) e nomeie-o trident-protect-backup-restore-cr.yaml.

  2. No arquivo que você criou, configure os seguintes atributos:

    • metadata.name: (Obrigatório) O nome deste recurso personalizado; escolha um nome único e adequado ao seu ambiente.

    • spec.appArchivePath: O caminho dentro do AppVault onde o conteúdo do backup está armazenado. Você pode usar o seguinte comando para encontrar esse caminho:

      kubectl get backups <BACKUP_NAME> -n my-app-namespace -o jsonpath='{.status.appArchivePath}'
    • spec.appVaultRef: (Obrigatório) O nome do AppVault onde o conteúdo do backup está armazenado.

    • spec.namespaceMapping: O mapeamento do namespace de origem da operação de restauração para o namespace de destino. Substitua my-source-namespace e my-destination-namespace pelas informações do seu ambiente.

      ---
      apiVersion: protect.trident.netapp.io/v1
      kind: BackupRestore
      metadata:
        name: my-cr-name
        namespace: my-destination-namespace
      spec:
        appArchivePath: my-backup-path
        appVaultRef: appvault-name
        namespaceMapping: [{"source": "my-source-namespace", "destination": "my-destination-namespace"}]
  3. (Opcional) Se precisar selecionar apenas determinados recursos do aplicativo para restaurar, adicione filtros que incluam ou excluam recursos marcados com rótulos específicos:

    Observação Trident Protect seleciona alguns recursos automaticamente devido à sua relação com os recursos que você seleciona. Por exemplo, se você selecionar um recurso de reivindicação de volume persistente e ele tiver um pod associado, Trident Protect também restaurará o pod associado.
    • resourceFilter.resourceSelectionCriteria: (obrigatório para filtragem) Use Include ou Exclude para incluir ou excluir um recurso definido em resourceMatchers. Adicione os seguintes parâmetros resourceMatchers para definir os recursos a serem incluídos ou excluídos:

      • resourceFilter.resourceMatchers: Uma matriz de objetos resourceMatcher. Se você definir vários elementos nesta matriz, eles correspondem como uma operação OR, e os campos dentro de cada elemento (group, kind, version) correspondem como uma operação AND.

        • resourceMatchers[].group: (Opcional) Grupo do recurso a ser filtrado.

        • resourceMatchers[].kind: (Opcional) Tipo do recurso a ser filtrado.

        • resourceMatchers[].version: (Opcional) Versão do recurso a ser filtrado.

        • resourceMatchers[].names: (Opcional) Nomes no campo metadata.name do Kubernetes do recurso a ser filtrado.

        • resourceMatchers[].namespaces: (Opcional) Namespaces no campo metadata.name do Kubernetes do recurso a ser filtrado.

        • resourceMatchers[].labelSelectors: (Opcional) String seletora de rótulo no campo metadata.name do Kubernetes do recurso, conforme definido no "Documentação do Kubernetes". Por exemplo: "trident.netapp.io/os=linux".

          Por exemplo:

    spec:
      resourceFilter:
        resourceSelectionCriteria: "Include"
        resourceMatchers:
          - group: my-resource-group-1
            kind: my-resource-kind-1
            version: my-resource-version-1
            names: ["my-resource-names"]
            namespaces: ["my-resource-namespaces"]
            labelSelectors: ["trident.netapp.io/os=linux"]
          - group: my-resource-group-2
            kind: my-resource-kind-2
            version: my-resource-version-2
            names: ["my-resource-names"]
            namespaces: ["my-resource-namespaces"]
            labelSelectors: ["trident.netapp.io/os=linux"]
  4. Após preencher o arquivo trident-protect-backup-restore-cr.yaml com os valores corretos, aplique a CR:

    kubectl apply -f trident-protect-backup-restore-cr.yaml
Use o CLI
Passos
  1. Restaure o backup para um namespace diferente, substituindo os valores entre colchetes pelas informações do seu ambiente. O namespace-mapping argumento usa namespaces separados por dois pontos para mapear os namespaces de origem para os namespaces de destino corretos no formato source1:dest1,source2:dest2. Por exemplo:

    tridentctl-protect create backuprestore <my_restore_name> \
    --backup <backup_namespace>/<backup_to_restore> \
    --namespace-mapping <source_to_destination_namespace_mapping> \
    -n <application_namespace>

Restaurar de um backup para o namespace original

Você pode restaurar um backup para o namespace original a qualquer momento.

Antes de começar

Certifique-se de que o tempo de expiração do token de sessão da AWS seja suficiente para quaisquer operações de restauração do s3 de longa duração. Se o token expirar durante a operação de restauração, a operação pode falhar.

Observação Ao restaurar backups usando Kopia como o data mover, você pode opcionalmente especificar anotações no CR ou usando a CLI para controlar o comportamento do armazenamento temporário usado pelo Kopia. Consulte o "Documentação Kopia" para mais informações sobre as opções que você pode configurar. Use o comando tridentctl-protect create --help para mais informações sobre como especificar anotações com a Trident Protect CLI.
Use um CR
Passos
  1. Crie o arquivo de recurso personalizado (CR) e nomeie-o trident-protect-backup-ipr-cr.yaml.

  2. No arquivo que você criou, configure os seguintes atributos:

    • metadata.name: (Obrigatório) O nome deste recurso personalizado; escolha um nome único e adequado ao seu ambiente.

    • spec.appArchivePath: O caminho dentro do AppVault onde o conteúdo do backup está armazenado. Você pode usar o seguinte comando para encontrar esse caminho:

      kubectl get backups <BACKUP_NAME> -n my-app-namespace -o jsonpath='{.status.appArchivePath}'
    • spec.appVaultRef: (Obrigatório) O nome do AppVault onde o conteúdo do backup está armazenado.

      Por exemplo:

    ---
    apiVersion: protect.trident.netapp.io/v1
    kind: BackupInplaceRestore
    metadata:
      name: my-cr-name
      namespace: my-app-namespace
    spec:
      appArchivePath: my-backup-path
      appVaultRef: appvault-name
  3. (Opcional) Se precisar selecionar apenas determinados recursos do aplicativo para restaurar, adicione filtros que incluam ou excluam recursos marcados com rótulos específicos:

    Observação Trident Protect seleciona alguns recursos automaticamente devido à sua relação com os recursos que você seleciona. Por exemplo, se você selecionar um recurso de reivindicação de volume persistente e ele tiver um pod associado, Trident Protect também restaurará o pod associado.
    • resourceFilter.resourceSelectionCriteria: (obrigatório para filtragem) Use Include ou Exclude para incluir ou excluir um recurso definido em resourceMatchers. Adicione os seguintes parâmetros resourceMatchers para definir os recursos a serem incluídos ou excluídos:

      • resourceFilter.resourceMatchers: Uma matriz de objetos resourceMatcher. Se você definir vários elementos nesta matriz, eles correspondem como uma operação OR, e os campos dentro de cada elemento (group, kind, version) correspondem como uma operação AND.

        • resourceMatchers[].group: (Opcional) Grupo do recurso a ser filtrado.

        • resourceMatchers[].kind: (Opcional) Tipo do recurso a ser filtrado.

        • resourceMatchers[].version: (Opcional) Versão do recurso a ser filtrado.

        • resourceMatchers[].names: (Opcional) Nomes no campo metadata.name do Kubernetes do recurso a ser filtrado.

        • resourceMatchers[].namespaces: (Opcional) Namespaces no campo metadata.name do Kubernetes do recurso a ser filtrado.

        • resourceMatchers[].labelSelectors: (Opcional) String seletora de rótulo no campo metadata.name do Kubernetes do recurso, conforme definido no "Documentação do Kubernetes". Por exemplo: "trident.netapp.io/os=linux".

          Por exemplo:

    spec:
      resourceFilter:
        resourceSelectionCriteria: "Include"
        resourceMatchers:
          - group: my-resource-group-1
            kind: my-resource-kind-1
            version: my-resource-version-1
            names: ["my-resource-names"]
            namespaces: ["my-resource-namespaces"]
            labelSelectors: ["trident.netapp.io/os=linux"]
          - group: my-resource-group-2
            kind: my-resource-kind-2
            version: my-resource-version-2
            names: ["my-resource-names"]
            namespaces: ["my-resource-namespaces"]
            labelSelectors: ["trident.netapp.io/os=linux"]
  4. Após preencher o arquivo trident-protect-backup-ipr-cr.yaml com os valores corretos, aplique a CR:

    kubectl apply -f trident-protect-backup-ipr-cr.yaml
Use o CLI
Passos
  1. Restaure o backup para o namespace original, substituindo os valores entre colchetes pelas informações do seu ambiente. O backup argumento usa um namespace e um nome de backup no formato <namespace>/<name>. Por exemplo:

    tridentctl-protect create backupinplacerestore <my_restore_name> \
    --backup <namespace/backup_to_restore> \
    -n <application_namespace>

Restaurar de um backup para um cluster diferente

Você pode restaurar um backup em um cluster diferente se houver um problema com o cluster original.

Observação
  • Ao restaurar backups usando Kopia como o data mover, você pode opcionalmente especificar anotações no CR ou usando a CLI para controlar o comportamento do armazenamento temporário usado pelo Kopia. Consulte o "Documentação Kopia" para mais informações sobre as opções que você pode configurar. Use o comando tridentctl-protect create --help para mais informações sobre como especificar anotações com a Trident Protect CLI.

  • Ao usar uma CR para restaurar para um novo namespace, você deve criar manualmente o namespace de destino antes de aplicar a CR. Trident Protect cria namespaces automaticamente somente quando se utiliza a CLI.

Antes de começar

Certifique-se de que os seguintes pré-requisitos sejam atendidos:

  • O cluster de destino tem Trident Protect instalado.

  • O cluster de destino tem acesso ao caminho do bucket do mesmo AppVault que o cluster de origem, onde o backup está armazenado.

  • Certifique-se de que seu ambiente local possa se conectar ao bucket de storage de objetos definido no AppVault CR ao executar o comando tridentctl-protect get appvaultcontent. Se as restrições de rede impedirem o acesso, execute o Trident Protect CLI a partir de um pod no cluster de destino.

  • Certifique-se de que o tempo de expiração do token de sessão da AWS seja suficiente para quaisquer operações de restauração de longa duração. Se o token expirar durante a operação de restauração, a operação pode falhar.

Passos
  1. Verifique a disponibilidade do AppVault CR no cluster de destino usando o plugin Trident Protect CLI:

    tridentctl-protect get appvault --context <destination_cluster_name>
    Observação Certifique-se de que o namespace destinado à restauração do aplicativo exista no cluster de destino.
  2. Visualize o conteúdo do backup disponível AppVault do cluster de destino:

    tridentctl-protect get appvaultcontent <appvault_name> \
    --show-resources backup \
    --show-paths \
    --context <destination_cluster_name>

    Executar este comando exibe os backups disponíveis no AppVault, incluindo seus clusters de origem, nomes de aplicativos correspondentes, carimbos de data/hora e caminhos de arquivamento.

    Exemplo de saída:

    +-------------+-----------+--------+-----------------+--------------------------+-------------+
    |   CLUSTER   |    APP    |  TYPE  |      NAME       |        TIMESTAMP         |    PATH     |
    +-------------+-----------+--------+-----------------+--------------------------+-------------+
    | production1 | wordpress | backup | wordpress-bkup-1| 2024-10-30 08:37:40 (UTC)| backuppath1 |
    | production1 | wordpress | backup | wordpress-bkup-2| 2024-10-30 08:37:40 (UTC)| backuppath2 |
    +-------------+-----------+--------+-----------------+--------------------------+-------------+
  3. Restaure o aplicativo no cluster de destino usando o nome AppVault e o caminho do arquivo:

Use um CR
  1. Crie o arquivo de recurso personalizado (CR) e nomeie-o trident-protect-backup-restore-cr.yaml.

  2. No arquivo que você criou, configure os seguintes atributos:

    • metadata.name: (Obrigatório) O nome deste recurso personalizado; escolha um nome único e adequado ao seu ambiente.

    • spec.appVaultRef: (Obrigatório) O nome do AppVault onde o conteúdo do backup está armazenado.

    • spec.appArchivePath: O caminho dentro do AppVault onde o conteúdo do backup está armazenado. Você pode usar o seguinte comando para encontrar esse caminho:

      kubectl get backups <BACKUP_NAME> -n my-app-namespace -o jsonpath='{.status.appArchivePath}'
      Observação Se o BackupRestore CR não estiver disponível, você pode usar o comando mencionado na etapa 2 para visualizar o conteúdo do backup.
    • spec.namespaceMapping: O mapeamento do namespace de origem da operação de restauração para o namespace de destino. Substitua my-source-namespace e my-destination-namespace pelas informações do seu ambiente.

      Por exemplo:

    apiVersion: protect.trident.netapp.io/v1
    kind: BackupRestore
    metadata:
      name: my-cr-name
      namespace: my-destination-namespace
    spec:
      appVaultRef: appvault-name
      appArchivePath: my-backup-path
      namespaceMapping: [{"source": "my-source-namespace", "destination": "my-destination-namespace"}]
  3. Após preencher o arquivo trident-protect-backup-restore-cr.yaml com os valores corretos, aplique a CR:

    kubectl apply -f trident-protect-backup-restore-cr.yaml
Use o CLI
  1. Use o seguinte comando para restaurar o aplicativo, substituindo os valores entre colchetes pelas informações do seu ambiente. O argumento namespace-mapping usa namespaces separados por dois pontos para mapear os namespaces de origem para os namespaces de destino corretos no formato source1:dest1,source2:dest2. Por exemplo:

    tridentctl-protect create backuprestore <restore_name> \
    --namespace-mapping <source_to_destination_namespace_mapping> \
    --appvault <appvault_name> \
    --path <backup_path> \
    --context <destination_cluster_name> \
    -n <application_namespace>

Restaurar a partir de um Snapshot para um namespace diferente

Você pode restaurar dados de um snapshot usando um arquivo de recurso personalizado (CR) para um namespace diferente ou para o namespace de origem original. Ao restaurar um snapshot para um namespace diferente usando um SnapshotRestore CR, Trident Protect restaura o aplicativo em um novo namespace e cria um CR de aplicativo para o aplicativo restaurado. Para proteger o aplicativo restaurado, crie backups ou snapshots sob demanda, ou estabeleça um agendamento de proteção.

Observação
  • SnapshotRestore é compatível com o atributo spec.storageClassMapping, mas somente quando as classes de armazenamento de origem e destino usam o mesmo backend de armazenamento. Se você tentar restaurar para uma StorageClass que usa um backend de armazenamento diferente, a operação de restauração falhará.

  • Ao usar uma CR para restaurar para um novo namespace, você deve criar manualmente o namespace de destino antes de aplicar a CR. Trident Protect cria namespaces automaticamente somente quando se utiliza a CLI.

Antes de começar

Certifique-se de que o tempo de expiração do token de sessão da AWS seja suficiente para quaisquer operações de restauração do s3 de longa duração. Se o token expirar durante a operação de restauração, a operação pode falhar.

Use um CR
Passos
  1. Crie o arquivo de recurso personalizado (CR) e nomeie-o trident-protect-snapshot-restore-cr.yaml.

  2. No arquivo que você criou, configure os seguintes atributos:

    • metadata.name: (Obrigatório) O nome deste recurso personalizado; escolha um nome único e adequado ao seu ambiente.

    • spec.appVaultRef: (Obrigatório) O nome do AppVault onde o conteúdo do snapshot está armazenado.

    • spec.appArchivePath: O caminho dentro do AppVault onde o conteúdo do snapshot está armazenado. Você pode usar o seguinte comando para encontrar esse caminho:

      kubectl get snapshots <SNAPHOT_NAME> -n my-app-namespace -o jsonpath='{.status.appArchivePath}'
    • spec.namespaceMapping: O mapeamento do namespace de origem da operação de restauração para o namespace de destino. Substitua my-source-namespace e my-destination-namespace pelas informações do seu ambiente.

      ---
      apiVersion: protect.trident.netapp.io/v1
      kind: SnapshotRestore
      metadata:
        name: my-cr-name
        namespace: my-app-namespace
      spec:
        appVaultRef: appvault-name
        appArchivePath: my-snapshot-path
        namespaceMapping: [{"source": "my-source-namespace", "destination": "my-destination-namespace"}]
  3. (Opcional) Se precisar selecionar apenas determinados recursos do aplicativo para restaurar, adicione filtros que incluam ou excluam recursos marcados com rótulos específicos:

    Observação Trident Protect seleciona alguns recursos automaticamente devido à sua relação com os recursos que você seleciona. Por exemplo, se você selecionar um recurso de reivindicação de volume persistente e ele tiver um pod associado, Trident Protect também restaurará o pod associado.
    • resourceFilter.resourceSelectionCriteria: (obrigatório para filtragem) Use Include ou Exclude para incluir ou excluir um recurso definido em resourceMatchers. Adicione os seguintes parâmetros resourceMatchers para definir os recursos a serem incluídos ou excluídos:

      • resourceFilter.resourceMatchers: Uma matriz de objetos resourceMatcher. Se você definir vários elementos nesta matriz, eles correspondem como uma operação OR, e os campos dentro de cada elemento (group, kind, version) correspondem como uma operação AND.

        • resourceMatchers[].group: (Opcional) Grupo do recurso a ser filtrado.

        • resourceMatchers[].kind: (Opcional) Tipo do recurso a ser filtrado.

        • resourceMatchers[].version: (Opcional) Versão do recurso a ser filtrado.

        • resourceMatchers[].names: (Opcional) Nomes no campo metadata.name do Kubernetes do recurso a ser filtrado.

        • resourceMatchers[].namespaces: (Opcional) Namespaces no campo metadata.name do Kubernetes do recurso a ser filtrado.

        • resourceMatchers[].labelSelectors: (Opcional) String seletora de rótulo no campo metadata.name do Kubernetes do recurso, conforme definido no "Documentação do Kubernetes". Por exemplo: "trident.netapp.io/os=linux".

          Por exemplo:

    spec:
      resourceFilter:
        resourceSelectionCriteria: "Include"
        resourceMatchers:
          - group: my-resource-group-1
            kind: my-resource-kind-1
            version: my-resource-version-1
            names: ["my-resource-names"]
            namespaces: ["my-resource-namespaces"]
            labelSelectors: ["trident.netapp.io/os=linux"]
          - group: my-resource-group-2
            kind: my-resource-kind-2
            version: my-resource-version-2
            names: ["my-resource-names"]
            namespaces: ["my-resource-namespaces"]
            labelSelectors: ["trident.netapp.io/os=linux"]
  4. Após preencher o arquivo trident-protect-snapshot-restore-cr.yaml com os valores corretos, aplique a CR:

    kubectl apply -f trident-protect-snapshot-restore-cr.yaml
Use o CLI
Passos
  1. Restaure o snapshot para um namespace diferente, substituindo os valores entre colchetes pelas informações do seu ambiente.

    • O snapshot argumento usa um namespace e um nome de snapshot no formato <namespace>/<name>.

    • O namespace-mapping`argumento usa namespaces separados por dois pontos para mapear namespaces de origem para os namespaces de destino corretos no formato `source1:dest1,source2:dest2.

      Por exemplo:

    tridentctl-protect create snapshotrestore <my_restore_name> \
    --snapshot <namespace/snapshot_to_restore> \
    --namespace-mapping <source_to_destination_namespace_mapping> \
    -n <application_namespace>

Restaurar de um Snapshot para o namespace original

Você pode restaurar um snapshot para o namespace original a qualquer momento.

Observação Se o seu aplicativo usa vários namespaces e esses namespaces possuem PVCs com o mesmo nome, as operações de restauração de snapshot (tanto no local quanto para um novo namespace) não funcionarão corretamente. Todos os volumes restaurados terão os mesmos dados em vez dos dados corretos para cada namespace. Use backup restore em vez de snapshot restore ou atualize para a versão 26.02 ou posterior, que corrige esse problema.
Antes de começar

Certifique-se de que o tempo de expiração do token de sessão da AWS seja suficiente para quaisquer operações de restauração do s3 de longa duração. Se o token expirar durante a operação de restauração, a operação pode falhar.

Use um CR
Passos
  1. Crie o arquivo de recurso personalizado (CR) e nomeie-o trident-protect-snapshot-ipr-cr.yaml.

  2. No arquivo que você criou, configure os seguintes atributos:

    • metadata.name: (Obrigatório) O nome deste recurso personalizado; escolha um nome único e adequado ao seu ambiente.

    • spec.appVaultRef: (Obrigatório) O nome do AppVault onde o conteúdo do snapshot está armazenado.

    • spec.appArchivePath: O caminho dentro do AppVault onde o conteúdo do snapshot está armazenado. Você pode usar o seguinte comando para encontrar esse caminho:

      kubectl get snapshots <SNAPSHOT_NAME> -n my-app-namespace -o jsonpath='{.status.appArchivePath}'
      ---
      apiVersion: protect.trident.netapp.io/v1
      kind: SnapshotInplaceRestore
      metadata:
        name: my-cr-name
        namespace: my-app-namespace
      spec:
        appVaultRef: appvault-name
        appArchivePath: my-snapshot-path
  3. (Opcional) Se precisar selecionar apenas determinados recursos do aplicativo para restaurar, adicione filtros que incluam ou excluam recursos marcados com rótulos específicos:

    Observação Trident Protect seleciona alguns recursos automaticamente devido à sua relação com os recursos que você seleciona. Por exemplo, se você selecionar um recurso de reivindicação de volume persistente e ele tiver um pod associado, Trident Protect também restaurará o pod associado.
    • resourceFilter.resourceSelectionCriteria: (obrigatório para filtragem) Use Include ou Exclude para incluir ou excluir um recurso definido em resourceMatchers. Adicione os seguintes parâmetros resourceMatchers para definir os recursos a serem incluídos ou excluídos:

      • resourceFilter.resourceMatchers: Uma matriz de objetos resourceMatcher. Se você definir vários elementos nesta matriz, eles correspondem como uma operação OR, e os campos dentro de cada elemento (group, kind, version) correspondem como uma operação AND.

        • resourceMatchers[].group: (Opcional) Grupo do recurso a ser filtrado.

        • resourceMatchers[].kind: (Opcional) Tipo do recurso a ser filtrado.

        • resourceMatchers[].version: (Opcional) Versão do recurso a ser filtrado.

        • resourceMatchers[].names: (Opcional) Nomes no campo metadata.name do Kubernetes do recurso a ser filtrado.

        • resourceMatchers[].namespaces: (Opcional) Namespaces no campo metadata.name do Kubernetes do recurso a ser filtrado.

        • resourceMatchers[].labelSelectors: (Opcional) String seletora de rótulo no campo metadata.name do Kubernetes do recurso, conforme definido no "Documentação do Kubernetes". Por exemplo: "trident.netapp.io/os=linux".

          Por exemplo:

    spec:
      resourceFilter:
        resourceSelectionCriteria: "Include"
        resourceMatchers:
          - group: my-resource-group-1
            kind: my-resource-kind-1
            version: my-resource-version-1
            names: ["my-resource-names"]
            namespaces: ["my-resource-namespaces"]
            labelSelectors: ["trident.netapp.io/os=linux"]
          - group: my-resource-group-2
            kind: my-resource-kind-2
            version: my-resource-version-2
            names: ["my-resource-names"]
            namespaces: ["my-resource-namespaces"]
            labelSelectors: ["trident.netapp.io/os=linux"]
  4. Após preencher o arquivo trident-protect-snapshot-ipr-cr.yaml com os valores corretos, aplique a CR:

    kubectl apply -f trident-protect-snapshot-ipr-cr.yaml
Use o CLI
Passos
  1. Restaure o snapshot para o namespace original, substituindo os valores entre colchetes pelas informações do seu ambiente. Por exemplo:

    tridentctl-protect create snapshotinplacerestore <my_restore_name> \
    --snapshot <namespace/snapshot_to_restore> \
    -n <application_namespace>

Verifique o status de uma operação de restauração

Você pode usar a linha de comando para verificar o status de uma operação de restauração que está em andamento, foi concluída ou falhou.

Passos
  1. Use o seguinte comando para recuperar o status da operação de restauração, substituindo os valores entre colchetes pelas informações do seu ambiente:

    kubectl get backuprestore -n <namespace_name> <my_restore_cr_name> -o jsonpath='{.status}'