Clonazione di volumi tra spazi dei nomi
Utilizzando Trident, puoi creare nuovi volumi utilizzando volumi esistenti o snapshot di volume da uno spazio dei nomi diverso all'interno dello stesso cluster Kubernetes.
Prerequisiti
Prima di clonare i volumi, assicurarsi che i backend di origine e di destinazione siano dello stesso tipo e abbiano la stessa classe di archiviazione.
|
|
La clonazione tra spazi dei nomi è supportata solo per ontap-san E ontap-nas driver di archiviazione. I cloni di sola lettura non sono supportati.
|
Avvio rapido
È possibile impostare la clonazione del volume in pochi semplici passaggi.
Configurare il PVC di origine per clonare il volumeIl proprietario dello spazio dei nomi di origine concede l'autorizzazione ad accedere ai dati nel PVC di origine.
Concedi l'autorizzazione per creare un CR nello spazio dei nomi di destinazioneL'amministratore del cluster concede l'autorizzazione al proprietario dello spazio dei nomi di destinazione per creare il CR TridentVolumeReference.
Crea TridentVolumeReference nello spazio dei nomi di destinazioneIl proprietario dello spazio dei nomi di destinazione crea il CR TridentVolumeReference per fare riferimento al PVC di origine.
Crea il PVC clone nello spazio dei nomi di destinazioneIl proprietario dello spazio dei nomi di destinazione crea PVC per clonare il PVC dallo spazio dei nomi di origine.
Configurare gli spazi dei nomi di origine e di destinazione
Per garantire la sicurezza, la clonazione di volumi tra namespace richiede la collaborazione e l'azione del proprietario del namespace di origine, dell'amministratore del cluster e del proprietario del namespace di destinazione. Il ruolo dell'utente viene designato in ogni fase.
-
Proprietario dello spazio dei nomi di origine: Crea il PVC(
pvc1) nello spazio dei nomi di origine(namespace1) che concede l'autorizzazione alla condivisione con lo spazio dei nomi di destinazione(namespace2) utilizzando ilcloneToNamespaceannotazione.kind: PersistentVolumeClaim apiVersion: v1 metadata: name: pvc1 namespace: namespace1 annotations: trident.netapp.io/cloneToNamespace: namespace2 spec: accessModes: - ReadWriteMany storageClassName: trident-csi resources: requests: storage: 100GiTrident crea il PV e il suo volume di archiviazione backend.
-
È possibile condividere il PVC con più namespace utilizzando un elenco delimitato da virgole. Per esempio,
trident.netapp.io/cloneToNamespace: namespace2,namespace3,namespace4. -
Puoi condividere con tutti gli spazi dei nomi utilizzando
*. Per esempio,trident.netapp.io/cloneToNamespace: * -
È possibile aggiornare il PVC per includere il
cloneToNamespaceannotazione in qualsiasi momento.
-
-
Amministratore del cluster: assicurarsi che sia presente il corretto RBAC per concedere l'autorizzazione al proprietario dello spazio dei nomi di destinazione per creare il CR TridentVolumeReference nello spazio dei nomi di destinazione(
namespace2). -
Proprietario dello spazio dei nomi di destinazione: Crea un CR TridentVolumeReference nello spazio dei nomi di destinazione che fa riferimento allo spazio dei nomi di origine
pvc1.apiVersion: trident.netapp.io/v1 kind: TridentVolumeReference metadata: name: my-first-tvr namespace: namespace2 spec: pvcName: pvc1 pvcNamespace: namespace1 -
Proprietario dello spazio dei nomi di destinazione: Crea un PVC(
pvc2) nello spazio dei nomi di destinazione(namespace2) utilizzando ilcloneFromPVCOcloneFromSnapshot, EcloneFromNamespaceannotazioni per designare il PVC di origine.kind: PersistentVolumeClaim apiVersion: v1 metadata: annotations: trident.netapp.io/cloneFromPVC: pvc1 trident.netapp.io/cloneFromNamespace: namespace1 name: pvc2 namespace: namespace2 spec: accessModes: - ReadWriteMany storageClassName: trident-csi resources: requests: storage: 100Gi
Limitazioni
-
Per i PVC forniti tramite driver ontap-nas-economy, i cloni di sola lettura non sono supportati.