1.4. Fonctionnalités et plugins OADP


Les fonctionnalités OpenShift API for Data Protection (OADP) offrent des options pour sauvegarder et restaurer les applications.

Les plugins par défaut permettent à Velero de s’intégrer à certains fournisseurs de cloud et de sauvegarder et restaurer Red Hat OpenShift Service sur les ressources AWS.

1.4.1. Caractéristiques OADP

L’API OpenShift pour la protection des données (OADP) prend en charge les fonctionnalités suivantes:

Backup

Il est possible d’utiliser OADP pour sauvegarder toutes les applications sur OpenShift Platform, ou vous pouvez filtrer les ressources par type, espace de noms ou étiquette.

L’OADP sauvegarde les objets Kubernetes et les images internes en les enregistrant comme fichier d’archive sur le stockage d’objets. L’OADP sauvegarde les volumes persistants (PV) en créant des instantanés avec l’API de snapshot cloud native ou avec l’interface de stockage de conteneurs (CSI). Dans le cas des fournisseurs de cloud qui ne prennent pas en charge les instantanés, OADP sauvegarde les ressources et les données PV avec Restic.

Note

Il faut exclure les opérateurs de la sauvegarde d’une application pour la sauvegarde et la restauration pour réussir.

Restore

Il est possible de restaurer des ressources et des PV à partir d’une sauvegarde. Il est possible de restaurer tous les objets dans une sauvegarde ou de filtrer les objets par l’espace de noms, le PV ou l’étiquette.

Note

Il faut exclure les opérateurs de la sauvegarde d’une application pour la sauvegarde et la restauration pour réussir.

Calendrier
Les sauvegardes peuvent être programmées à des intervalles spécifiés.
Crochets
Il est possible d’utiliser des crochets pour exécuter des commandes dans un conteneur sur un pod, par exemple, fsfreeze pour geler un système de fichiers. Il est possible de configurer un crochet pour s’exécuter avant ou après une sauvegarde ou une restauration. Les crochets de restauration peuvent fonctionner dans un conteneur d’init ou dans le conteneur d’application.

1.4.2. Plugins OADP

L’API OpenShift pour la protection des données (OADP) fournit des plugins Velero par défaut qui sont intégrés aux fournisseurs de stockage pour prendre en charge les opérations de sauvegarde et d’instantané. Il est possible de créer des plugins personnalisés basés sur les plugins Velero.

L’OADP fournit également des plugins pour Red Hat OpenShift Service sur les sauvegardes de ressources AWS, les sauvegardes de ressources OpenShift Virtualization et les instantanés CSI (Container Storage Interface).

Expand
Tableau 1.3. Plugins OADP
Plugin OADPFonctionEmplacement de stockage

AWS

Sauvegarde et restaure les objets Kubernetes.

AWS S3

Sauvegarde et restaure les volumes avec des instantanés.

AWS EBS

à propos de OpenShift

Sauvegarde et restaure Red Hat OpenShift Service sur les ressources AWS. [1]

Boutique d’objets

KubeVirt

Sauvegarde et restaure les ressources OpenShift Virtualization. [2]

Boutique d’objets

CSI

Sauvegarde et restaure des volumes avec des instantanés CSI. [3]

Le stockage en nuage qui prend en charge les instantanés CSI

le VSM

Le logiciel VolumeSnapshotMover déplace les snapshots du cluster dans un magasin d’objets à utiliser lors d’un processus de restauration pour récupérer des applications étatiques, dans des situations telles que la suppression de clusters. [4]

Boutique d’objets

  1. Il est obligatoire.
  2. Les disques de machine virtuelle sont sauvegardés avec des instantanés CSI ou Restic.
  3. Le plugin csi utilise l’API instantanée Kubernetes CSI.

    • Le logiciel OADP 1.1 ou version ultérieure utilise snapshot.storage.k8s.io/v1
    • Le logiciel OADP 1.0 utilise snapshot.storage.k8s.io/v1beta1
  4. L’OADP 1.2 seulement.

1.4.3. À propos des plugins OADP Velero

Lorsque vous installez Velero, vous pouvez configurer deux types de plugins:

  • Plugins de fournisseur de cloud par défaut
  • Des plugins personnalisés

Les deux types de plugins sont facultatifs, mais la plupart des utilisateurs configurent au moins un plugin fournisseur de cloud.

1.4.3.1. Plugins de fournisseurs de cloud Velero par défaut

Lorsque vous configurez le fichier oadp_v1alpha1_dpa.yaml, vous pouvez installer l’un des plugins par défaut suivants:

  • AWS (Amazon Web Services)
  • ajouter au panier OpenShift Velero plugin
  • CSI (Interface de stockage de conteneurs)
  • KubeVirt (KubeVirt)

Lors du déploiement, vous spécifiez les plugins par défaut souhaités dans le fichier oadp_v1alpha1_dpa.yaml.

Exemple de fichier

Le fichier .yaml suivant installe les plugins openshift, aws, azure et gcp:

 apiVersion: oadp.openshift.io/v1alpha1
 kind: DataProtectionApplication
 metadata:
   name: dpa-sample
 spec:
   configuration:
     velero:
       defaultPlugins:
       - openshift
       - aws
       - azure
       - gcp
Copy to Clipboard Toggle word wrap

1.4.3.2. Plugins Velero personnalisés

Lors du déploiement, vous pouvez installer un plugin Velero personnalisé en spécifiant l’image et le nom du plugin lorsque vous configurez le fichier oadp_v1alpha1_dpa.yaml.

Lors du déploiement, vous spécifiez les plugins personnalisés souhaités dans le fichier oadp_v1alpha1_dpa.yaml.

Exemple de fichier

Le fichier .yaml suivant installe les plugins openshift, azure et gcp par défaut et un plugin personnalisé qui a le nom custom-plugin-example et l’image quay.io/example-repo/custom-velero-plugin:

apiVersion: oadp.openshift.io/v1alpha1
kind: DataProtectionApplication
metadata:
 name: dpa-sample
spec:
 configuration:
   velero:
     defaultPlugins:
     - openshift
     - azure
     - gcp
     customPlugins:
     - name: custom-plugin-example
       image: quay.io/example-repo/custom-velero-plugin
Copy to Clipboard Toggle word wrap
Note

Les plugins Velero sont lancés en tant que processus distincts. Après la fin de l’opération Velero, soit avec succès ou non, ils sortent. La réception d’un EOF reçu, l’arrêt du message de boucle recv dans les journaux de débogage indique qu’une opération de plugin est terminée. Cela ne signifie pas qu’une erreur s’est produite.

1.4.4. Plugins OADP problèmes connus

La section suivante décrit les problèmes connus dans les plugins OpenShift API for Data Protection (OADP):

Lorsque la sauvegarde et l’emplacement de stockage de sauvegarde (BSL) sont gérés en dehors du champ d’application de l’application de protection des données (DPA), le contrôleur OADP, ce qui signifie que la réconciliation DPA ne crée pas le fichier oadp-<bsl_name>-bsl_provider>-registry-secret pertinent.

Lorsque la sauvegarde est exécutée, le plugin OpenShift Velero panique sur la sauvegarde imagestream, avec l’erreur de panique suivante:

024-02-27T10:46:50.028951744Z time="2024-02-27T10:46:50Z" level=error msg="Error backing up item"
backup=openshift-adp/<backup name> error="error executing custom action (groupResource=imagestreams.image.openshift.io,
namespace=<BSL Name>, name=postgres): rpc error: code = Aborted desc = plugin panicked:
runtime error: index out of range with length 1, stack trace: goroutine 94…
Copy to Clipboard Toggle word wrap
1.4.4.1.1. Contournement pour éviter l’erreur de panique

Afin d’éviter l’erreur de panique du plugin Velero, effectuez les étapes suivantes:

  1. Étiqueter le BSL personnalisé avec l’étiquette correspondante:

    $ oc label backupstoragelocations.velero.io <bsl_name> app.kubernetes.io/component=bsl
    Copy to Clipboard Toggle word wrap
  2. Après que le BSL soit étiqueté, attendez que le DPA se réconcilie.

    Note

    Il est possible de forcer la réconciliation en apportant tout changement mineur au DPA lui-même.

  3. Lorsque le DPA se réconcilie, confirmez que les oadp-&lt;bsl_name&gt;-&lt;bsl_provider&gt;-registry-secret pertinents ont été créés et que les données de registre correctes y ont été peuplées:

    $ oc -n openshift-adp get secret/oadp-<bsl_name>-<bsl_provider>-registry-secret -o json | jq -r '.data'
    Copy to Clipboard Toggle word wrap

1.4.4.2. Défaut de segmentation du contrôleur OpenShift ADP

Lorsque vous configurez un DPA avec à la fois cloudstorage et restic activé, le pod openshift-adp-controller-manager se bloque et redémarre indéfiniment jusqu’à ce que le pod échoue avec un défaut de segmentation de boucle de crash.

Le velero ou le cloudstorage peuvent être définis, car ce sont des champs mutuellement exclusifs.

  • Lorsque vous avez défini à la fois velero et cloudstorage, le gestionnaire openshift-adp-controller-manager échoue.
  • Lorsque vous n’avez ni velero ni cloudstorage défini, le gestionnaire openshift-adp-controller-manager échoue.

Consultez l’OADP-1054 pour plus d’informations à ce sujet.

Lorsque vous configurez un DPA, vous devez définir le velero ou le cloudstorage. Lorsque vous définissez les deux API dans votre DPA, le pod openshift-adp-controller-manager échoue avec un défaut de segmentation de boucle de panne.

Retour au début
Red Hat logoGithubredditYoutubeTwitter

Apprendre

Essayez, achetez et vendez

Communautés

À propos de la documentation Red Hat

Nous aidons les utilisateurs de Red Hat à innover et à atteindre leurs objectifs grâce à nos produits et services avec un contenu auquel ils peuvent faire confiance. Découvrez nos récentes mises à jour.

Rendre l’open source plus inclusif

Red Hat s'engage à remplacer le langage problématique dans notre code, notre documentation et nos propriétés Web. Pour plus de détails, consultez le Blog Red Hat.

À propos de Red Hat

Nous proposons des solutions renforcées qui facilitent le travail des entreprises sur plusieurs plates-formes et environnements, du centre de données central à la périphérie du réseau.

Theme

© 2025 Red Hat