Skip to main content
È disponibile una versione più recente di questo prodotto.
La versione in lingua italiana fornita proviene da una traduzione automatica. Per eventuali incoerenze, fare riferimento alla versione in lingua inglese.

Importa volumi

Collaboratori

È possibile importare volumi di storage esistenti come PV Kubernetes utilizzando tridentctl import.

Driver che supportano l'importazione di volumi

Questa tabella illustra i driver che supportano l'importazione di volumi e la release in cui sono stati introdotti.

Driver Rilasciare

ontap-nas

19.04

ontap-nas-flexgroup

19.04

solidfire-san

19.04

azure-netapp-files

19.04

gcp-cvs

19.04

ontap-san

19.04

Perché è necessario importare i volumi?

Esistono diversi casi di utilizzo per l'importazione di un volume in Trident:

  • La creazione di un'applicazione e il riutilizzo del set di dati esistente

  • Utilizzo di un clone di un set di dati per un'applicazione temporanea

  • Ricostruzione di un cluster Kubernetes guasto

  • Migrazione dei dati delle applicazioni durante il disaster recovery

Come funziona l'importazione?

Il file PVC (Persistent Volume Claim) viene utilizzato dal processo di importazione del volume per creare il PVC. Come minimo, il file PVC deve includere i campi name, namespace, accessModes e storageClassName, come illustrato nell'esempio seguente.

kind: PersistentVolumeClaim
apiVersion: v1
metadata:
  name: my_claim
  namespace: my_namespace
spec:
  accessModes:
    - ReadWriteOnce
  storageClassName: my_storage_class

Il tridentctl client viene utilizzato per importare un volume di storage esistente. Trident importa il volume persistendo i metadati del volume e creando PVC e PV.

$ tridentctl import volume <backendName> <volumeName> -f <path-to-pvc-file>

Per importare un volume di storage, specificare il nome del backend Astra Trident contenente il volume, nonché il nome che identifica in modo univoco il volume nello storage (ad esempio: ONTAP FlexVol, Volume elemento, percorso del volume CVS). Il volume di storage deve consentire l'accesso in lettura/scrittura ed essere accessibile dal backend Astra Trident specificato. Il -f L'argomento string è obbligatorio e specifica il percorso del file YAML o JSON PVC.

Quando Astra Trident riceve la richiesta del volume di importazione, le dimensioni del volume esistente vengono determinate e impostate nel PVC. Una volta importato il volume dal driver di storage, il PV viene creato con un ClaimRef sul PVC. La policy di recupero viene inizialmente impostata su retain Nel PV. Dopo che Kubernetes ha eseguito il binding con PVC e PV, la policy di recupero viene aggiornata in modo da corrispondere alla policy di recupero della classe di storage. Se il criterio di recupero della classe di storage è delete, Il volume di storage viene cancellato quando il PV viene cancellato.

Quando viene importato un volume con --no-manage Argomento: Trident non esegue operazioni aggiuntive sul PVC o sul PV per il ciclo di vita degli oggetti. Perché Trident ignora gli eventi PV e PVC per --no-manage Oggetti, il volume di storage non viene cancellato quando il PV viene cancellato. Vengono ignorate anche altre operazioni, come il clone del volume e il ridimensionamento del volume. Questa opzione è utile se si desidera utilizzare Kubernetes per carichi di lavoro containerizzati, ma altrimenti si desidera gestire il ciclo di vita del volume di storage al di fuori di Kubernetes.

Al PVC e al PV viene aggiunta un'annotazione che serve a doppio scopo per indicare che il volume è stato importato e se il PVC e il PV sono gestiti. Questa annotazione non deve essere modificata o rimossa.

Trident 19.07 e versioni successive gestiscono il collegamento di PVS e montano il volume come parte dell'importazione. Per le importazioni che utilizzano versioni precedenti di Astra Trident, non verranno eseguite operazioni nel percorso dei dati e l'importazione del volume non verificherà se il volume può essere montato. Se si commette un errore con l'importazione del volume (ad esempio, StorageClass non è corretta), è possibile ripristinare modificando la policy di recupero sul PV in retain, Eliminando PVC e PV e riprovando il comando di importazione del volume.

ontap-nas e. ontap-nas-flexgroup importazioni

Ogni volume creato con ontap-nas Driver è un FlexVol sul cluster ONTAP. Importazione di FlexVol con ontap-nas il driver funziona allo stesso modo. Un FlexVol già presente in un cluster ONTAP può essere importato come ontap-nas PVC. Allo stesso modo, è possibile importare i volumi FlexGroup come ontap-nas-flexgroup PVC.

Importante Un volume ONTAP deve essere di tipo rw per essere importato da Trident. Se un volume è di tipo dp, si tratta di un volume di destinazione SnapMirror; è necessario interrompere la relazione di mirroring prima di importare il volume in Trident.
Importante Il ontap-nas il driver non può importare e gestire qtree. Il ontap-nas e. ontap-nas-flexgroup i driver non consentono nomi di volumi duplicati.

Ad esempio, per importare un volume denominato managed_volume su un backend denominato ontap_nas, utilizzare il seguente comando:

$ tridentctl import volume ontap_nas managed_volume -f <path-to-pvc-file>

+------------------------------------------+---------+---------------+----------+--------------------------------------+--------+---------+
|                   NAME                   |  SIZE   | STORAGE CLASS | PROTOCOL |             BACKEND UUID             | STATE  | MANAGED |
+------------------------------------------+---------+---------------+----------+--------------------------------------+--------+---------+
| pvc-bf5ad463-afbb-11e9-8d9f-5254004dfdb7 | 1.0 GiB | standard      | file     | c5a6f6a4-b052-423b-80d4-8fb491a14a22 | online | true    |
+------------------------------------------+---------+---------------+----------+--------------------------------------+--------+---------+

Per importare un volume denominato unmanaged_volume (su ontap_nas backend), che Trident non gestirà, utilizzare il seguente comando:

$ tridentctl import volume nas_blog unmanaged_volume -f <path-to-pvc-file> --no-manage

+------------------------------------------+---------+---------------+----------+--------------------------------------+--------+---------+
|                   NAME                   |  SIZE   | STORAGE CLASS | PROTOCOL |             BACKEND UUID             | STATE  | MANAGED |
+------------------------------------------+---------+---------------+----------+--------------------------------------+--------+---------+
| pvc-df07d542-afbc-11e9-8d9f-5254004dfdb7 | 1.0 GiB | standard      | file     | c5a6f6a4-b052-423b-80d4-8fb491a14a22 | online | false   |
+------------------------------------------+---------+---------------+----------+--------------------------------------+--------+---------+

Quando si utilizza --no-manage Argomento: Trident non rinomina il volume né convalida se il volume è stato montato. L'operazione di importazione del volume non riesce se il volume non è stato montato manualmente.

Nota È stato risolto un bug esistente in precedenza relativo all'importazione di volumi con UnixPermissions personalizzati. È possibile specificare unixPermissions nella definizione PVC o nella configurazione backend e richiedere ad Astra Trident di importare il volume di conseguenza.

ontap-san importa

Astra Trident può anche importare SAN FlexVol ONTAP che contengono una singola LUN. Ciò è coerente con ontap-san Driver, che crea un FlexVol per ogni PVC e un LUN all'interno di FlexVol. È possibile utilizzare tridentctl import comando nello stesso modo degli altri casi:

  • Includere il nome di ontap-san back-end.

  • Specificare il nome del FlexVol da importare. Tenere presente che questo FlexVol contiene un solo LUN che deve essere importato.

  • Fornire il percorso della definizione PVC che deve essere utilizzata con -f allarme.

  • Scegli tra gestire il PVC o non gestirlo. Per impostazione predefinita, Trident gestirà il PVC e rinominerà il FlexVol e il LUN sul backend. Per importare come volume non gestito, passare a. --no-manage allarme.

Suggerimento Quando si importa un non gestito ontap-san Assicurarsi che il LUN nel FlexVol sia denominato lun0 ed è mappato ad un igroup con gli iniziatori desiderati. Astra Trident gestisce automaticamente questa operazione per un'importazione gestita.

Astra Trident importa il FlexVol e lo associa alla definizione del PVC. Astra Trident rinomina anche FlexVol in pvc-<uuid> E il LUN all'interno di FlexVol a. lun0.

Suggerimento Si consiglia di importare volumi che non dispongono di connessioni attive. Se si desidera importare un volume utilizzato attivamente, clonare prima il volume, quindi eseguire l'importazione.

Esempio

Per importare ontap-san-managed FlexVol presente su ontap_san_default eseguire il backend tridentctl import comando come:

$ tridentctl import volume ontapsan_san_default ontap-san-managed -f pvc-basic-import.yaml -n trident -d

+------------------------------------------+--------+---------------+----------+--------------------------------------+--------+---------+
|                   NAME                   |  SIZE  | STORAGE CLASS | PROTOCOL |             BACKEND UUID             | STATE  | MANAGED |
+------------------------------------------+--------+---------------+----------+--------------------------------------+--------+---------+
| pvc-d6ee4f54-4e40-4454-92fd-d00fc228d74a | 20 MiB | basic         | block    | cd394786-ddd5-4470-adc3-10c5ce4ca757 | online | true    |
+------------------------------------------+--------+---------------+----------+--------------------------------------+--------+---------+
Importante Per poter essere importato da Astra Trident, un volume ONTAP deve essere di tipo rw. Se un volume è di tipo dp, si tratta di un volume di destinazione SnapMirror; è necessario interrompere la relazione di mirroring prima di importare il volume in Astra Trident.

element importa

Con Trident è possibile importare il software NetApp Element/volumi NetApp HCI nel cluster Kubernetes. È necessario il nome del backend Astra Trident e il nome univoco del volume e del file PVC come argomenti per tridentctl import comando.

$ tridentctl import volume element_default element-managed -f pvc-basic-import.yaml -n trident -d

+------------------------------------------+--------+---------------+----------+--------------------------------------+--------+---------+
|                   NAME                   |  SIZE  | STORAGE CLASS | PROTOCOL |             BACKEND UUID             | STATE  | MANAGED |
+------------------------------------------+--------+---------------+----------+--------------------------------------+--------+---------+
| pvc-970ce1ca-2096-4ecd-8545-ac7edc24a8fe | 10 GiB | basic-element | block    | d3ba047a-ea0b-43f9-9c42-e38e58301c49 | online | true    |
+------------------------------------------+--------+---------------+----------+--------------------------------------+--------+---------+
Nota Il driver Element supporta nomi di volumi duplicati. Se sono presenti nomi di volumi duplicati, il processo di importazione dei volumi di Trident restituisce un errore. Come soluzione alternativa, clonare il volume e fornire un nome di volume univoco. Quindi importare il volume clonato.

gcp-cvs importa

Suggerimento Per importare un volume supportato da NetApp Cloud Volumes Service in GCP, identificare il volume in base al percorso del volume anziché al nome.

Per importare un gcp-cvs volume sul backend chiamato gcpcvs_YEppr con il percorso del volume di adroit-jolly-swift, utilizzare il seguente comando:

$ tridentctl import volume gcpcvs_YEppr adroit-jolly-swift -f <path-to-pvc-file> -n trident

+------------------------------------------+--------+---------------+----------+--------------------------------------+--------+---------+
|                   NAME                   |  SIZE  | STORAGE CLASS | PROTOCOL |             BACKEND UUID             | STATE  | MANAGED |
+------------------------------------------+--------+---------------+----------+--------------------------------------+--------+---------+
| pvc-a46ccab7-44aa-4433-94b1-e47fc8c0fa55 | 93 GiB | gcp-storage   | file     | e1a6e65b-299e-4568-ad05-4f0a105c888f | online | true    |
+------------------------------------------+--------+---------------+----------+--------------------------------------+--------+---------+
Nota Il percorso del volume è la parte del percorso di esportazione del volume dopo :/. Ad esempio, se il percorso di esportazione è 10.0.0.1:/adroit-jolly-swift, il percorso del volume è adroit-jolly-swift.

azure-netapp-files importa

Per importare un azure-netapp-files volume sul backend chiamato azurenetappfiles_40517 con il percorso del volume importvol1, eseguire il seguente comando:

$ tridentctl import volume azurenetappfiles_40517 importvol1 -f <path-to-pvc-file> -n trident

+------------------------------------------+---------+---------------+----------+--------------------------------------+--------+---------+
|                   NAME                   |  SIZE   | STORAGE CLASS | PROTOCOL |             BACKEND UUID             | STATE  | MANAGED |
+------------------------------------------+---------+---------------+----------+--------------------------------------+--------+---------+
| pvc-0ee95d60-fd5c-448d-b505-b72901b3a4ab | 100 GiB | anf-storage   | file     | 1c01274f-d94b-44a3-98a3-04c953c9a51e | online | true    |
+------------------------------------------+---------+---------------+----------+--------------------------------------+--------+---------+
Nota Il percorso del volume per il volume ANF è presente nel percorso di montaggio dopo :/. Ad esempio, se il percorso di montaggio è 10.0.0.2:/importvol1, il percorso del volume è importvol1.