-
Notifications
You must be signed in to change notification settings - Fork 263
Description
Hello,
we are currently working on DR flow for our aws fsx ontap filesystem solution,
our use-case is - we use ontap-san-economy drivers for 100 luns (PVC's) per flexVol - tagged and backed up using aws Backup service, then restored into new FSX filesystem (new cluster, new svm, volumes containing multiple LUNs imported from recovery points)
next logical step is recreate pvc+pv pairs in the new cluster:
we have those backed up using velero, current strategy is to take the LUN data from pv
internalID: /svm/svm-8b492990/flexvol/trident_lun_pool_trident_HUUIAUUPCE/lun/trident_pvc_551d8895_a01f_479c_9437_feba9edca656
take the new fsx filesystem backendUUID, and use tridentctl import volume:
https://docs.netapp.com/us-en/trident/trident-use/vol-import.html#ontap-san
docs specifically state support for ontap-san-economy storage drivers, but do not give example for single LUN import.
recreate the pvc template for the new cluster, e.g.:
apiVersion: v1
kind: PersistentVolumeClaim
metadata:
name: workspaces-ws-lpaav-data
namespace: ws-ns-workspaces-ws-lpaav
labels:
workspace-resource: workspaces-ws-lpaav
workspace.devx.sap.com/backup: "true"
workspace.devx.sap.com/persistence-fsx: "true"
wsid: workspaces-ws-lpaav
spec:
accessModes:
- ReadWriteOnce
resources:
requests:
storage: 10Gi
storageClassName: netapp-economy-encrypted
and import (restored from the restore point) volume(s) into trident using:
tridentctl -n trident import volume fs-04c800c498b492990-economy trident_lun_pool_trident_HUUIAUUPCE/trident_pvc_63250213_5073_4e9c_aa30_4d1a3dd19151 -f ws-ckv8p-pvc.yaml
but the command does not work:
seastranger@W-5CG3503TSZ:~/repos/esm/trident/ws$ tridentctl -n trident import volume fs-04c800c498b492990-economy trident_lun_pool_trident_HUUIAUUPCE/trident_pvc_63250213_5073_4e9c_aa30_4d1a3dd19151 -f ws-ckv8p-pvc.yaml
Error: error communicating with Trident REST API; Post "http://127.0.0.1:8000/trident/v1/volume/import": EOF
command terminated with exit code 1
Error: exit status 1
i see the following logs in the controller:
time="2025-12-10T15:41:41Z" level=debug msg="ImportVolume: created pending PVC." PVC="&PersistentVolumeClaim{ObjectMeta:{workspaces-ws-lpaav-data ws-ns-workspaces-ws-lpaav a9f94a12-8757-424e-922b-4fb48871dd7a 55716001 0 2025-12-10 15:41:41 +0000 UTC <nil> <nil> map[workspace-resource:workspaces-ws-lpaav workspace.devx.sap.com/backup:true workspace.devx.sap.com/persistence-fsx:true wsid:workspaces-ws-lpaav] map[trident.netapp.io/importBackendUUID:0591493b-1bfc-43f6-b010-4dae8c28b844 trident.netapp.io/importOriginalName:trident_lun_pool_trident_HUUIAUUPCE/trident_pvc_63250213_5073_4e9c_aa30_4d1a3dd19151 trident.netapp.io/notManaged:false volume.beta.kubernetes.io/storage-provisioner:csi.trident.netapp.io] [] [kubernetes.io/pvc-protection] [{trident_orchestrator Update v1 2025-12-10 15:41:41 +0000 UTC FieldsV1 {\"f:metadata\":{\"f:annotations\":{\".\":{},\"f:trident.netapp.io/importBackendUUID\":{},\"f:trident.netapp.io/importOriginalName\":{},\"f:trident.netapp.io/notManaged\":{},\"f:volume.beta.kubernetes.io/storage-provisioner\":{}},\"f:labels\":{\".\":{},\"f:workspace-resource\":{},\"f:workspace.devx.sap.com/backup\":{},\"f:workspace.devx.sap.com/persistence-fsx\":{},\"f:wsid\":{}}},\"f:spec\":{\"f:accessModes\":{},\"f:resources\":{\"f:requests\":{\".\":{},\"f:storage\":{}}},\"f:storageClassName\":{},\"f:volumeMode\":{}}} }]},Spec:PersistentVolumeClaimSpec{AccessModes:[ReadWriteOnce],Resources:VolumeResourceRequirements{Limits:ResourceList{},Requests:ResourceList{storage: {{10756292608 0} {<nil>} 10756292608 DecimalSI},},},VolumeName:,Selector:nil,StorageClassName:*netapp-economy-encrypted,VolumeMode:*Filesystem,DataSource:nil,DataSourceRef:nil,VolumeAttributesClassName:nil,},Status:PersistentVolumeClaimStatus{Phase:Pending,AccessModes:[],Capacity:ResourceList{},Conditions:[]PersistentVolumeClaimCondition{},AllocatedResources:ResourceList{},AllocatedResourceStatuses:map[ResourceName]ClaimResourceStatus{},CurrentVolumeAttributesClassName:nil,ModifyVolumeStatus:nil,},}" logLayer=rest_frontend requestID=eb5d93e0-9e0b-42b8-9c47-b6faa8f9acc2 requestSource=REST workflow="volume=import"
time="2025-12-10T15:41:41Z" level=info msg=">>>> waitForCachedPVByName" MaxElapsedTime=3m0s Name=pvc-a9f94a12-8757-424e-922b-4fb48871dd7a logLayer=rest_frontend namespace=ws-ns-workspaces-ws-lpaav pvc=workspaces-ws-lpaav-data requestID=eb5d93e0-9e0b-42b8-9c47-b6faa8f9acc2 requestSource=REST workflow="volume=import"
time="2025-12-10T15:41:41Z" level=debug msg="Could not find cached PV object by name." logLayer=rest_frontend name=pvc-a9f94a12-8757-424e-922b-4fb48871dd7a requestID=eb5d93e0-9e0b-42b8-9c47-b6faa8f9acc2 requestSource=REST workflow="volume=import"
time="2025-12-10T15:41:41Z" level=debug msg=">>>> checkAndHandleUnrecoverableError" logLayer=rest_frontend requestID=eb5d93e0-9e0b-42b8-9c47-b6faa8f9acc2 requestSource=REST workflow="volume=import"
time="2025-12-10T15:41:41Z" level=debug msg="<<<< checkAndHandleUnrecoverableError" logLayer=rest_frontend requestID=eb5d93e0-9e0b-42b8-9c47-b6faa8f9acc2 requestSource=REST workflow="volume=import"
time="2025-12-10T15:41:42Z" level=debug msg="Could not find cached PV object by name." logLayer=rest_frontend name=pvc-a9f94a12-8757-424e-922b-4fb48871dd7a requestID=eb5d93e0-9e0b-42b8-9c47-b6faa8f9acc2 requestSource=REST workflow="volume=import"
time="2025-12-10T15:41:42Z" level=debug msg=">>>> checkAndHandleUnrecoverableError" logLayer=rest_frontend requestID=eb5d93e0-9e0b-42b8-9c47-b6faa8f9acc2 requestSource=REST workflow="volume=import"
time="2025-12-10T15:41:42Z" level=debug msg="<<<< checkAndHandleUnrecoverableError" logLayer=rest_frontend requestID=eb5d93e0-9e0b-42b8-9c47-b6faa8f9acc2 requestSource=REST workflow="volume=import"
time="2025-12-10T15:41:43Z" level=debug msg="Could not find cached PV object by name." logLayer=rest_frontend name=pvc-a9f94a12-8757-424e-922b-4fb48871dd7a requestID=eb5d93e0-9e0b-42b8-9c47-b6faa8f9acc2 requestSource=REST workflow="volume=import"
time="2025-12-10T15:41:43Z" level=debug msg=">>>> checkAndHandleUnrecoverableError" logLayer=rest_frontend requestID=eb5d93e0-9e0b-42b8-9c47-b6faa8f9acc2 requestSource=REST workflow="volume=import"
time="2025-12-10T15:41:43Z" level=debug msg="<<<< checkAndHandleUnrecoverableError" logLayer=rest_frontend requestID=eb5d93e0-9e0b-42b8-9c47-b6faa8f9acc2 requestSource=REST workflow="volume=import"
time="2025-12-10T15:41:45Z" level=debug msg="Could not find cached PV object by name." logLayer=rest_frontend name=pvc-a9f94a12-8757-424e-922b-4fb48871dd7a requestID=eb5d93e0-9e0b-42b8-9c47-b6faa8f9acc2 requestSource=REST workflow="volume=import"
time="2025-12-10T15:41:45Z" level=debug msg=">>>> checkAndHandleUnrecoverableError" logLayer=rest_frontend requestID=eb5d93e0-9e0b-42b8-9c47-b6faa8f9acc2 requestSource=REST workflow="volume=import"
time="2025-12-10T15:41:46Z" level=debug msg="<<<< checkAndHandleUnrecoverableError" logLayer=rest_frontend requestID=eb5d93e0-9e0b-42b8-9c47-b6faa8f9acc2 requestSource=REST workflow="volume=import"
time="2025-12-10T15:41:47Z" level=debug msg="REST API call received." Duration="9.635µs" Method=GET RequestURL=/trident/v1/version Route=GetVersion logLayer=rest_frontend requestID=c75ac54b-bbff-477b-aa05-25be7ab477a3 requestSource=REST workflow="trident_rest=logger"
time="2025-12-10T15:41:47Z" level=debug msg="REST API call complete." Duration="142.291µs" Method=GET RequestURL=/trident/v1/version Route=GetVersion StatusCode=200 logLayer=rest_frontend requestID=c75ac54b-bbff-477b-aa05-25be7ab477a3 requestSource=REST workflow="trident_rest=logger"
time="2025-12-10T15:41:48Z" level=debug msg="Could not find cached PV object by name." logLayer=rest_frontend name=pvc-a9f94a12-8757-424e-922b-4fb48871dd7a requestID=eb5d93e0-9e0b-42b8-9c47-b6faa8f9acc2 requestSource=REST workflow="volume=import"
time="2025-12-10T15:41:48Z" level=debug msg=">>>> checkAndHandleUnrecoverableError" logLayer=rest_frontend requestID=eb5d93e0-9e0b-42b8-9c47-b6faa8f9acc2 requestSource=REST workflow="volume=import"
time="2025-12-10T15:41:48Z" level=debug msg="<<<< checkAndHandleUnrecoverableError" logLayer=rest_frontend requestID=eb5d93e0-9e0b-42b8-9c47-b6faa8f9acc2 requestSource=REST workflow="volume=import"
time="2025-12-10T15:41:53Z" level=debug msg="Could not find cached PV object by name." logLayer=rest_frontend name=pvc-a9f94a12-8757-424e-922b-4fb48871dd7a requestID=eb5d93e0-9e0b-42b8-9c47-b6faa8f9acc2 requestSource=REST workflow="volume=import"
time="2025-12-10T15:41:53Z" level=debug msg=">>>> checkAndHandleUnrecoverableError" logLayer=rest_frontend requestID=eb5d93e0-9e0b-42b8-9c47-b6faa8f9acc2 requestSource=REST workflow="volume=import"
time="2025-12-10T15:41:53Z" level=debug msg="<<<< checkAndHandleUnrecoverableError" logLayer=rest_frontend requestID=eb5d93e0-9e0b-42b8-9c47-b6faa8f9acc2 requestSource=REST workflow="volume=import"
Could you please update the docs with example of volume import for single lun in multi-lun flexVol, using ontap-san-economy drivers ? Am i doing something wrong with my approach for volume/pvc restoration in separate cluster/fsx filesystem from aws vol backup ?
Thanks in advance