Uploaded image for project: 'OpenShift Bugs'
  1. OpenShift Bugs
  2. OCPBUGS-23050

[Azure-File-CSI-Driver] accountQuota parameter in storageclass doesn't work as expected

XMLWordPrintable

    • Icon: Bug Bug
    • Resolution: Done-Errata
    • Icon: Major Major
    • None
    • premerge
    • Storage / Operators
    • None
    • No
    • Proposed
    • False
    • Hide

      None

      Show
      None

      Description of problem:

      PVC doesn't get provisioned after hit the accountQuota.

      Version-Release number of selected component (if applicable):

      4.15 pre-merge test version with the open PR openshift/azure-file-csi-driver#42
      Driver version: 1.29.1 

      How reproducible:

      Always

      Steps to Reproduce:

      1. setting the quota:200 in storageclass
      2. create pvc(01) 100Gi secceed
      3. create pvc(02) 200Gi secceed (it doesn't consider quota for new added size)
      4. create pvc(03) 100Gi Pending
      It repeats:
      I1107 11:37:49.014067       1 controllerserver.go:502] total used quota on account(fc43722f8b7b949f0b7fb08) is 300 GB, file share number: 2
      W1107 11:37:49.014132       1 controllerserver.go:504] account(fc43722f8b7b949f0b7fb08) used quota(200 GB) is over 300 GB, skip matching current account
      I1107 11:37:49.014144       1 azure_storageaccount.go:613] Get storage account(fc43722f8b7b949f0b7fb08) from cache
      ...
      E1107 11:37:49.201403       1 utils.go:81] GRPC error: rpc error: code = Internal desc = failed to get total quota on account(fc43722f8b7b949f0b7fb08), error: storage.FileSharesClient#List: Failure responding to request: StatusCode=429 -- Original Error: autorest/azure: Service returned an error. Status=429 Code="TooManyRequests" Message="The request is being throttled as the limit has been reached for operation type - List_ObservationWindow_00:05:00. For more information, see - https://aka.ms/srpthrottlinglimits"
      W1107 11:37:50.331873       1 controllerserver.go:487] EnsureStorageAccount() failed with error(could not list storage accounts for account type Standard_GRS: Retriable: false, RetryAfter: 2s, HTTPStatusCode: 429, RawError: {"error":{"code":"TooManyRequests","message":"The request is being throttled as the limit has been reached for operation type - List_ObservationWindow_00:05:00. For more information, see - https://aka.ms/srpthrottlinglimits"}}), waiting for retrying
      W1107 11:37:50.331904       1 utils.go:139] sleep 16 more seconds, waiting for throttling complete 

      Actual results:

      The new PVC doesn't get provisioned after hit the accountQuota.

      Expected results:

      The doc doesn't have the detail usage, so we tried this parameter would limit for "each" storage account and skip the storage account to use new one.

      Additional info:

      Storageclass used:

      allowVolumeExpansion: true
      apiVersion: storage.k8s.io/v1
      kind: StorageClass
      metadata:
        name: azurefile-csi-test-20-accountquota-test
      parameters:
        skuName: Standard_GRS
        accountQuota: "200"
      provisioner: file.csi.azure.com
      reclaimPolicy: Delete
      volumeBindingMode: Immediate

            rbednar@redhat.com Roman Bednar
            wduan@redhat.com Wei Duan
            Wei Duan Wei Duan
            Votes:
            0 Vote for this issue
            Watchers:
            4 Start watching this issue

              Created:
              Updated:
              Resolved: