#Problem initializing storage driver ''gcp-cvs'' with Cloud Volumes Service for GCP

1 messages · Page 1 of 1 (latest)

quartz tinsel
#

Hi Folks,
I am Lorenz and I am trying to provide (NFS) RWX PVCS using the NetApp Astra Trident Operator via the Cloud Volumes Service for GCP.
However I encountered the following problem with myTridentBackendConfig:

{
  "apiVersion": "trident.netapp.io/v1",
  "kind": "TridentBackendConfig",
  "metadata": {
    "name": "basic-nfs",
    "namespace": "nfs"
  },
  "spec": {
    "version": 1,
    "storageClass": "software",
    "serviceLevel": "standard",
    "storageDriverName": "gcp-cvs",
    "projectNumber": "XXXXXXXXX",
    "apiRegion": "eu-west3",
    "apiKey": {
      "type": "service_account",
      "project_id": "XXXXXXXXXXXXX",
      "client_email": "astra-trident-XXXXX@XXXXXXXXXXXXX.iam.gserviceaccount.com",
      "client_id": "XXXXXXXXXXXXXXX",
      "auth_uri": "https://accounts.google.com/o/oauth2/auth",
      "token_uri": "https://oauth2.googleapis.com/token",
      "auth_provider_x509_cert_url": "https://www.googleapis.com/oauth2/v1/certs",
      "client_x509_cert_url": "https://www.googleapis.com/robot/v1/metadata/x509/astra-trident-XXXXXXXXXXXXXX.iam.gserviceaccount.com"
    },
}

Error status:

status:                                                                                  
  backendInfo:                                                                               
    backendName: ""                                                                    
    backendUUID: ""                                                               
  deletionPolicy: delete                                                     
  lastOperationStatus: Failed
  message: 'Failed to create backend: problem initializing storage driver ''gcp-cvs'':
    error validating gcp-cvs driver. failed to read version'                                           
  phase: ""                                                                                        
#

Further infos:

  • Kubernetes 1.29
  • GKE
  • Trident Operator 100.2406.0

Moreover i found the following logs in the controller pods:

trident-main time="2024-07-26T10:58:38Z" level=warning msg="Error communicating with GCP REST interface. API result is 403" crdControllerEvent=add logLayer=core requestID=96d4bd81-4aad-4137-bb26-b03d9e122
8ad requestSource=CRD workflow="cr=reconcile"
trident-main time="2024-07-26T10:58:38Z" level=error msg="Could not initialize storage driver." crdControllerEvent=add error="error validating gcp-cvs driver. failed to read version" logLayer=core request
ID=96d4bd81-4aad-4137-bb26-b03d9e1228ad requestSource=CRD workflow="cr=reconcile"               
trident-main time="2024-07-26T10:58:38Z" level=warning msg="Cannot terminate an uninitialized backend." backend=basic-nfs-2 backendUUID=62682047-a95d-4b88-9f16-a5b71b7b53b4 crdControllerEvent=add driver=g
cp-cvs logLayer=core requestID=96d4bd81-4aad-4137-bb26-b03d9e1228ad requestSource=CRD state=failed workflow="cr=reconcile"
trident-main time="2024-07-26T10:58:38Z" level=info msg="deferred syncing TridentBackendConfig 'nfs/basic-nfs-2', requeuing; reconcile deferred; problem initializing storage driver 'gcp-cvs': error valida
ting gcp-cvs driver. failed to read version" crdControllerEvent=add logLayer=crd_frontend logSource=trident-crd-controller requestID=96d4bd81-4aad-4137-bb26-b03d9e1228ad requestSource=CRD workflow="cr=reconcile"
trident-main time="2024-07-26T11:14:42Z" level=error msg="API has not succeeded after 30.00 seconds." crdControllerEvent=add logLayer=core requestID=94b719e6-b928-45ee-94e9-48101fded691 requestSource=CRD 
workflow="cr=reconcile"                                                                        
#

This looks for me like it is a permission problem.
However, I have already checked the permissions and the service account has the corresponding netappcloudvolumes.admin role and therefore they should be correct.
Furthermore, I have also checked the private_key.
I would appreciate any help or advice on how to solve the problem.

Best Regards,
Lorenz

quartz tinsel
#

I have recreated the credentials secrets without the \n even though they are also in the examples. Now the403 logs are gone. Nevertheless, the tridentbackendConfig is still in the failed state with the following Controller logs:

trident-main time="2024-07-29T12:20:30Z" level=info msg=-------------------------------------------------                                                                                                   
trident-main time="2024-07-29T12:20:30Z" level=info msg=-------------------------------------------------                                                                                                   
trident-main time="2024-07-29T12:23:10Z" level=error msg="Could not initialize storage driver." crdControllerEvent=add error="error validating gcp-cvs driver. failed to read version" logLayer=core request
ID=a4f031d5-b7b9-4c04-a8ae-45dbe98ec799 requestSource=CRD workflow="cr=reconcile"                                                                                                                           
trident-main time="2024-07-29T12:23:10Z" level=warning msg="Cannot terminate an uninitialized backend." backend=basic-nfs-2 backendUUID=d945fffe-620c-4ee4-a3a1-60838c26c269 crdControllerEvent=add driver=g
cp-cvs logLayer=core requestID=a4f031d5-b7b9-4c04-a8ae-45dbe98ec799 requestSource=CRD state=failed workflow="cr=reconcile"                            
quartz tinsel
quartz tinsel
#

Hi, i have digged through a lot of your code and found that the APIURL per default is: https://cloudvolumesgcp-api.netapp.com. Nevertheless, this is the old api version. I tried to change this in my backendconfig, but this was also not helpful. I following i need to activate the old api to test this. Is there anyone here from whom i can receive a corresponding private offer ? Or anyone who can tell me who to contact ?

hot grail
quartz tinsel
#

Thanks for your answer. I will try that and create a more summarized issue.