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

[Azure-file-csi] Provision failed with "InvalidHeaderValue" when specifying "smb" protocol and existing Premium type storageAccount

XMLWordPrintable

    • Quality / Stability / Reliability
    • False
    • Hide

      None

      Show
      None
    • None
    • Important
    • No
    • None
    • None
    • Rejected
    • None
    • None
    • None
    • None
    • None
    • None
    • None
    • None

      Description of problem:

      When specifying "smb" protocol and existing Premium type storageAccount, the pvc provisioning failed with the following "InvalidHeaderValue" message:
        Warning  ProvisioningFailed    10m (x6 over 30m)          file.csi.azure.com_wduan-0728a-az-v9p9q-master-1_99edb94e-0183-4a36-92a6-c9e0e3091c15  (combined from similar events): failed to provision volume with StorageClass "azurefile-csi-test-7-storageaccount": rpc error: code = Internal desc = failed to create file share(pvc-a922c0ec-1e25-4136-a298-ef807a199137) on account(wduanplrs) type() subsID() rg(wduan-0728a-az-v9p9q-rg) location() size(2), error: storage.FileSharesClient#Create: Failure responding to request: StatusCode=400 -- Original Error: autorest/azure: Service returned an error. Status=400 Code="InvalidHeaderValue" Message="The value for one of the HTTP headers is not in the correct format.\nRequestId:aad9f53e-d01a-0011-2528-c1d455000000\nTime:2023-07-28T07:49:41.8009387Z"

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

      4.14.0-0.nightly-2023-07-27-172239

      How reproducible:

      Always

      Steps to Reproduce:

      1. Create Azure cluster
      
      2. In Azure portal, manually create one storage account(wduanplrs), type is Premium_LRS. With this storage account, fileshare with "smb" protocol could be created successfully in Azure portal.
      
      3. create storageclass specifying "smb" protocol and this storageAccount cat<<EOF| oc create -f -
      ---
      allowVolumeExpansion: true
      apiVersion: storage.k8s.io/v1
      kind: StorageClass
      metadata:
        name: azurefile-csi-test-7-storageaccount
      parameters:
        storageAccount: wduanplrs
        protocol: smb
      provisioner: file.csi.azure.com
      reclaimPolicy: Delete
      volumeBindingMode: Immediate
      ---
      apiVersion: v1
      kind: PersistentVolumeClaim
      metadata:
        name: mypvc-rwx-ds-7-storageaccount
      spec:
        accessModes:
        - ReadWriteMany
        resources:
          requests:
            storage: 2Gi
        storageClassName: "azurefile-csi-test-7-storageaccount"
      EOF
      
      4. check the pvc is ProvisioningFailed with "InvalidHeaderValue" as below.
        Warning  ProvisioningFailed    <invalid> (x11 over 35m)   file.csi.azure.com_wduan-0728a-az-v9p9q-master-1_99edb94e-0183-4a36-92a6-c9e0e3091c15  (combined from similar events): failed to provision volume with StorageClass "azurefile-csi-test-7-storageaccount": rpc error: code = Internal desc = failed to create file share(pvc-a922c0ec-1e25-4136-a298-ef807a199137) on account(wduanplrs) type() subsID() rg(wduan-0728a-az-v9p9q-rg) location() size(2), error: storage.FileSharesClient#Create: Failure responding to request: StatusCode=400 -- Original Error: autorest/azure: Service returned an error. Status=400 Code="InvalidHeaderValue" Message="The value for one of the HTTP headers is not in the correct format.\nRequestId:fee27c0d-501a-00aa-6c2a-c135a1000000\nTime:2023-07-28T08:06:07.5185456Z"
      
      5. some log from CSI Driver(csi-provisioner):
      I0728 07:21:07.549249       1 connection.go:194] GRPC request: {"capacity_range":{"required_bytes":2147483648},"name":"pvc-a922c0ec-1e25-4136-a298-ef807a199137","parameters":{"csi.storage.k8s.io/pv/name":"pvc-a922c0ec-1e25-4136-a298-ef807a199137","csi.storage.k8s.io/pvc/name":"mypvc-rwx-ds-7-storageaccount","csi.storage.k8s.io/pvc/namespace":"wduan","protocol":"smb","storageAccount":"wduanplrs"},"volume_capabilities":[{"AccessType":{"Mount":{}},"access_mode":{"mode":5}}]}
      I0728 07:21:07.557513       1 request.go:1188] Response Body: {"kind":"Event","apiVersion":"v1","metadata":{"name":"mypvc-rwx-ds-7-storageaccount.1775f70c58cf77e9","namespace":"wduan","uid":"014cc32a-f71b-4e9e-9a41-8df33291a4ab","resourceVersion":"145072","creationTimestamp":"2023-07-28T07:21:07Z","managedFields":[{"manager":"csi-provisioner","operation":"Update","apiVersion":"v1","time":"2023-07-28T07:21:07Z","fieldsType":"FieldsV1","fieldsV1":{"f:count":{},"f:firstTimestamp":{},"f:involvedObject":{},"f:lastTimestamp":{},"f:message":{},"f:reason":{},"f:source":{"f:component":{}},"f:type":{}}}]},"involvedObject":{"kind":"PersistentVolumeClaim","namespace":"wduan","name":"mypvc-rwx-ds-7-storageaccount","uid":"a922c0ec-1e25-4136-a298-ef807a199137","apiVersion":"v1","resourceVersion":"144900"},"reason":"Provisioning","message":"External provisioner is provisioning volume for claim \"wduan/mypvc-rwx-ds-7-storageaccount\"","source":{"component":"file.csi.azure.com_wduan-0728a-az-v9p9q-master-1_99edb94e-0183-4a36-92a6-c9e0e3091c15"},"firstTimestamp":"2023-07-28T07:21:07Z","la [truncated 127 chars]
      I0728 07:21:08.049149       1 connection.go:201] GRPC error: rpc error: code = Internal desc = failed to create file share(pvc-a922c0ec-1e25-4136-a298-ef807a199137) on account(wduanplrs) type() subsID() rg(wduan-0728a-az-v9p9q-rg) location() size(2), error: storage.FileSharesClient#Create: Failure responding to request: StatusCode=400 -- Original Error: autorest/azure: Service returned an error. Status=400 Code="InvalidHeaderValue" Message="The value for one of the HTTP headers is not in the correct format.\nRequestId:772f29ab-a01a-003c-3824-c15795000000\nTime:2023-07-28T07:21:08.0055923Z"
      I0728 07:21:08.049171       1 controller.go:816] CreateVolume failed, supports topology = false, node selected false => may reschedule = false => state = Finished: rpc error: code = Internal desc = failed to create file share(pvc-a922c0ec-1e25-4136-a298-ef807a199137) on account(wduanplrs) type() subsID() rg(wduan-0728a-az-v9p9q-rg) location() size(2), error: storage.FileSharesClient#Create: Failure responding to request: StatusCode=400 -- Original Error: autorest/azure: Service returned an error. Status=400 Code="InvalidHeaderValue" Message="The value for one of the HTTP headers is not in the correct format.\nRequestId:772f29ab-a01a-003c-3824-c15795000000\nTime:2023-07-28T07:21:08.0055923Z" 

      Actual results:

      The pvc is ProvisioningFailed with "InvalidHeaderValue"

      Expected results:

      From upstream doc, it is supported and the PVC provisioning should succeed. 

      Additional info:

       

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

                Created:
                Updated: