Skip to content

New block custom iops ranges added and test cases updated #203

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Conversation

MeetanshiGupta
Copy link
Contributor

New block custom iops ranges added, test cases updated and MaximumBlockVolumeDiskSizeInGb variable added.
GHE Issue - https://github.ibm.com/alchemy-containers/armada-storage/issues/6768

Copy link

linux-foundation-easycla bot commented Nov 28, 2024

CLA Signed

The committers listed above are authorized under a signed CLA.

@k8s-ci-robot k8s-ci-robot added cncf-cla: no Indicates the PR's author has not signed the CNCF CLA. needs-ok-to-test Indicates a PR that requires an org member to verify it is safe to test. labels Nov 28, 2024
@k8s-ci-robot
Copy link
Contributor

Hi @MeetanshiGupta. Thanks for your PR.

I'm waiting for a kubernetes-sigs member to verify that this patch is reasonable to test. If it is, they should reply with /ok-to-test on its own line. Until that is done, I will not automatically test new commits in this PR, but the usual testing commands by org members will still work. Regular contributors should join the org to skip this step.

Once the patch is verified, the new status will be reflected by the ok-to-test label.

I understand the commands that are listed here.

Instructions for interacting with me using PR comments are available here. If you have questions or suggestions related to my behavior, please file an issue against the kubernetes-sigs/prow repository.

@k8s-ci-robot k8s-ci-robot added size/L Denotes a PR that changes 100-499 lines, ignoring generated files. cncf-cla: yes Indicates the PR's author has signed the CNCF CLA. and removed cncf-cla: no Indicates the PR's author has not signed the CNCF CLA. labels Nov 28, 2024
Copy link
Contributor

@sameshai sameshai left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Please add MaximumBlockVolumeDiskSizeInGb in driver constants. Let remove dependancy on ibm-csi-common

@prankulmahajan
Copy link
Member

/ok-to-test

@k8s-ci-robot k8s-ci-robot added ok-to-test Indicates a non-member PR verified by an org member that is safe to test. and removed needs-ok-to-test Indicates a PR that requires an org member to verify it is safe to test. labels Nov 28, 2024
…iskSizeInGb created and referenced

Signed-off-by: Meetanshi-Gupta <[email protected]>
@prankulmahajan
Copy link
Member

@MeetanshiGupta Please remove changes from vendor dir. Also can you fix the failed tests

Signed-off-by: Meetanshi-Gupta <[email protected]>
Copy link
Contributor

@sameshai sameshai left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Code Changes looks good , please post the results with volume storage class secret for each new range then we should be good

Also do few negative cases and error should be in format

invalid IOPS: <%v> for capacity: <%vGiB>. Should be in range [%d - %d]",

https://github.com/kubernetes-sigs/ibm-vpc-block-csi-driver/tree/master/examples/kubernetes#storageclass-secret

Copy link
Contributor

@arahamad arahamad left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@MeetanshiGupta , Can you upload the test results

@coveralls
Copy link

coveralls commented Nov 28, 2024

Coverage Status

coverage: 79.935% (-0.2%) from 80.183%
when pulling 90c167d on MeetanshiGupta:mg-new-custom-iops-ranges-added
into 47fa964 on kubernetes-sigs:master.

@vasudha786
Copy link

vasudha786 commented Nov 28, 2024

With Block add-on and without Secret

vasudha@Vasudhas-MacBook-Pro ibm-vpc-block-csi-driver % cat mysc.yaml
allowVolumeExpansion: true
apiVersion: storage.k8s.io/v1
kind: StorageClass
metadata:
  annotations:
    armada-service: addon-vpc-block-csi-driver
    kubectl.kubernetes.io/last-applied-configuration: |
      {"allowVolumeExpansion":true,"apiVersion":"storage.k8s.io/v1","kind":"StorageClass","metadata":{"annotations":{"armada-service":"addon-vpc-block-csi-driver","razee.io/build-url":"https://travis.ibm.com/alchemy-containers/addon-vpc-block-csi-driver/builds/28230890","razee.io/source-url":"https://github.ibm.com/alchemy-containers/addon-vpc-block-csi-driver/commit/e779cb44dffe48ea4725922fea772eb698c66856","version":"5.1.29_642"},"labels":{"addonmanager.kubernetes.io/mode":"Reconcile","app":"ibm-vpc-block-csi-driver","razee/force-apply":"true"},"name":"ibmc-vpc-block-custom"},"parameters":{"billingType":"hourly","classVersion":"1","csi.storage.k8s.io/fstype":"ext4","encrypted":"false","encryptionKey":"","iops":"400","profile":"custom","region":"","resourceGroup":"","tags":"","zone":""},"provisioner":"vpc.block.csi.ibm.io","reclaimPolicy":"Delete"}
    razee.io/build-url: https://travis.ibm.com/alchemy-containers/addon-vpc-block-csi-driver/builds/28230890
    razee.io/source-url: https://github.ibm.com/alchemy-containers/addon-vpc-block-csi-driver/commit/e779cb44dffe48ea4725922fea772eb698c66856
    version: 5.1.29_642
  creationTimestamp: "2024-11-21T10:49:15Z"
  labels:
    addonmanager.kubernetes.io/mode: Reconcile
    app: ibm-vpc-block-csi-driver
    razee/force-apply: "true"
  name: ibmc-vpc-block-custom-48000iops
  resourceVersion: "9048"
  uid: 8c12122b-2af9-4981-9075-87d795dfa8fc
parameters:
  billingType: hourly
  classVersion: "1"
  csi.storage.k8s.io/fstype: ext4
  encrypted: "false"
  encryptionKey: ""
  iops: "48000"
  profile: custom
  region: ""
  resourceGroup: ""
  tags: ""
  zone: ""
provisioner: vpc.block.csi.ibm.io
reclaimPolicy: Delete
volumeBindingMode: Immediate
vasudha@Vasudhas-MacBook-Pro ibm-vpc-block-csi-driver % cat mypvc.yaml
apiVersion: v1
kind: PersistentVolumeClaim
metadata:
  name: pvc16000
  #name: testpvc
spec:
  accessModes:
  - ReadWriteOnce
  resources:
    requests:
      storage: 16000Gi
  storageClassName: ibmc-vpc-block-custom-48000iops% 
vasudha@Vasudhas-MacBook-Pro ibm-vpc-block-csi-driver % kubectl apply -f mysc.yaml
storageclass.storage.k8s.io/ibmc-vpc-block-custom-48000iops created
vasudha@Vasudhas-MacBook-Pro ibm-vpc-block-csi-driver % kubectl apply -f mypvc.yaml
persistentvolumeclaim/pvc16000 created
vasudha@Vasudhas-MacBook-Pro ibm-vpc-block-csi-driver % kubectl get pvc               
NAME       STATUS    VOLUME   CAPACITY   ACCESS MODES   STORAGECLASS                      VOLUMEATTRIBUTESCLASS   AGE
pvc16000   Pending                                      ibmc-vpc-block-custom-48000iops   <unset>                 9s
vasudha@Vasudhas-MacBook-Pro ibm-vpc-block-csi-driver % kubectl get pvc
NAME       STATUS   VOLUME                                     CAPACITY   ACCESS MODES   STORAGECLASS                      VOLUMEATTRIBUTESCLASS   AGE
pvc16000   Bound    pvc-a70ed360-1772-415e-8721-1211bb22c0d9   16000Gi    RWO            ibmc-vpc-block-custom-48000iops   <unset>                 37s

@vasudha786
Copy link

vasudha786 commented Nov 28, 2024

With Block add-on and with Secret

vasudha@Vasudhas-MacBook-Pro ibm-vpc-block-csi-driver % cat secret.yaml
apiVersion: v1
kind: Secret
type: vpc.block.csi.ibm.io
metadata:
  name: test1
  namespace: kube-system
stringData:
  iops: "48000"%                                                                                                    
vasudha@Vasudhas-MacBook-Pro ibm-vpc-block-csi-driver % cat sc.yaml
allowVolumeExpansion: true
apiVersion: storage.k8s.io/v1
kind: StorageClass
metadata:
  name: ibmc-vpc-block-custom-iops-16000
parameters:
  billingType: hourly
  classVersion: "1"
  csi.storage.k8s.io/fstype: ext4
  csi.storage.k8s.io/provisioner-secret-name: test1
  csi.storage.k8s.io/provisioner-secret-namespace: kube-system
  profile: custom
  encrypted: "true"
  encryptionKey: ""
provisioner: vpc.block.csi.ibm.io
reclaimPolicy: Delete
volumeBindingMode: Immediate%                                                                                       
vasudha@Vasudhas-MacBook-Pro ibm-vpc-block-csi-driver % cat pvc.yaml
apiVersion: v1
kind: PersistentVolumeClaim
metadata:
  name: test1
spec:
  storageClassName: ibmc-vpc-block-custom-iops-16000
  accessModes:
    - ReadWriteOnce
  resources:
    requests:
      storage: 16000Gi%
vasudha@Vasudhas-MacBook-Pro ibm-vpc-block-csi-driver % kubectl apply -f secret.yaml  
secret/test1 created
vasudha@Vasudhas-MacBook-Pro ibm-vpc-block-csi-driver % kubectl apply -f sc.yaml    
storageclass.storage.k8s.io/ibmc-vpc-block-custom-iops-16000 created
vasudha@Vasudhas-MacBook-Pro ibm-vpc-block-csi-driver % kubectl apply -f pvc.yaml
persistentvolumeclaim/test1 created
vasudha@Vasudhas-MacBook-Pro ibm-vpc-block-csi-driver % kubectl get pvc          
NAME    STATUS    VOLUME   CAPACITY   ACCESS MODES   STORAGECLASS                       VOLUMEATTRIBUTESCLASS   AGE
test1   Pending                                      ibmc-vpc-block-custom-iops-16000   <unset>                 10s
vasudha@Vasudhas-MacBook-Pro ibm-vpc-block-csi-driver % kubectl describe pvc test1
Name:          test1
Namespace:     default
StorageClass:  ibmc-vpc-block-custom-iops-16000
Status:        Pending
Volume:        
Labels:        <none>
Annotations:   volume.beta.kubernetes.io/storage-provisioner: vpc.block.csi.ibm.io
               volume.kubernetes.io/storage-provisioner: vpc.block.csi.ibm.io
Finalizers:    [kubernetes.io/pvc-protection]
Capacity:      
Access Modes:  
VolumeMode:    Filesystem
Used By:       <none>
Events:
  Type     Reason                Age                From                                                                                      Message
  ----     ------                ----               ----                                                                                      -------
  Warning  ProvisioningFailed    25s                vpc.block.csi.ibm.io_ibm-vpc-block-csi-controller-0_f068970d-fbe0-420f-99bc-fabd58a0b47a  failed to provision volume with StorageClass "ibmc-vpc-block-custom-iops-16000": rpc error: code = InvalidArgument desc = {RequestID: ce4ecbba-8501-4869-b25b-5c122f144617 , Code: InvalidParameters, Description: Failed to extract parameters, BackendError: invalid PVC size for custom class: <16000>. Should be in range [10 - 2048]GiB, Action: Please provide valid parameters}
  Warning  ProvisioningFailed    24s                vpc.block.csi.ibm.io_ibm-vpc-block-csi-controller-0_f068970d-fbe0-420f-99bc-fabd58a0b47a  failed to provision volume with StorageClass "ibmc-vpc-block-custom-iops-16000": rpc error: code = InvalidArgument desc = {RequestID: 90364f6f-91d0-4d99-965e-032848372546 , Code: InvalidParameters, Description: Failed to extract parameters, BackendError: invalid PVC size for custom class: <16000>. Should be in range [10 - 2048]GiB, Action: Please provide valid parameters}
  Warning  ProvisioningFailed    22s                vpc.block.csi.ibm.io_ibm-vpc-block-csi-controller-0_f068970d-fbe0-420f-99bc-fabd58a0b47a  failed to provision volume with StorageClass "ibmc-vpc-block-custom-iops-16000": rpc error: code = InvalidArgument desc = {RequestID: c7cfada2-e259-42fe-9bca-15e1c89029d7 , Code: InvalidParameters, Description: Failed to extract parameters, BackendError: invalid PVC size for custom class: <16000>. Should be in range [10 - 2048]GiB, Action: Please provide valid parameters}
  Warning  ProvisioningFailed    18s                vpc.block.csi.ibm.io_ibm-vpc-block-csi-controller-0_f068970d-fbe0-420f-99bc-fabd58a0b47a  failed to provision volume with StorageClass "ibmc-vpc-block-custom-iops-16000": rpc error: code = InvalidArgument desc = {RequestID: 99497d5a-05bb-4137-90c7-1ed7645680e0 , Code: InvalidParameters, Description: Failed to extract parameters, BackendError: invalid PVC size for custom class: <16000>. Should be in range [10 - 2048]GiB, Action: Please provide valid parameters}
  Normal   ExternalProvisioning  13s (x2 over 25s)  persistentvolume-controller                                                               Waiting for a volume to be created either by the external provisioner 'vpc.block.csi.ibm.io' or manually by the system administrator. If volume creation is delayed, please verify that the provisioner is running and correctly registered.
  Normal   Provisioning          10s (x5 over 25s)  vpc.block.csi.ibm.io_ibm-vpc-block-csi-controller-0_f068970d-fbe0-420f-99bc-fabd58a0b47a  External provisioner is provisioning volume for claim "default/test1"
  Warning  ProvisioningFailed    10s                vpc.block.csi.ibm.io_ibm-vpc-block-csi-controller-0_f068970d-fbe0-420f-99bc-fabd58a0b47a  failed to provision volume with StorageClass "ibmc-vpc-block-custom-iops-16000": rpc error: code = InvalidArgument desc = {RequestID: 0e1cfee5-7013-4877-8fea-a8afce327242 , Code: InvalidParameters, Description: Failed to extract parameters, BackendError: invalid PVC size for custom class: <16000>. Should be in range [10 - 2048]GiB, Action: Please provide valid parameters}

@sameshai sameshai self-requested a review November 28, 2024 14:20
@prankulmahajan
Copy link
Member

/lgtm

@k8s-ci-robot k8s-ci-robot added the lgtm "Looks good to me", indicates that a PR is ready to be merged. label Nov 29, 2024
Copy link
Contributor

@arahamad arahamad left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@MeetanshiGupta , lets make it uniform between storage class and storage class secret, may be batter to remove validation check

@k8s-ci-robot k8s-ci-robot added size/M Denotes a PR that changes 30-99 lines, ignoring generated files. and removed lgtm "Looks good to me", indicates that a PR is ready to be merged. size/L Denotes a PR that changes 100-499 lines, ignoring generated files. labels Nov 29, 2024
Copy link
Contributor

@sameshai sameshai left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Please fix the test cases , remove the validation for iops from the test cases from TestOverrideParams

{
			testCaseName: "Secret invalid IOPS for custom class",
			request: &csi.CreateVolumeRequest{Name: volumeName, CapacityRange: &csi.CapacityRange{RequiredBytes: 11811160064, LimitBytes: utils.MinimumVolumeSizeInBytes + utils.MinimumVolumeSizeInBytes},
				Parameters: map[string]string{Profile: "custom",
					Zone:          "testzone",
					Region:        "us-south-test",
					Tag:           "test",
					ResourceGroup: "myresourcegroups",
					Encrypted:     "false",
					EncryptionKey: "123",
					IOPS:          noIops,
				},
				Secrets: map[string]string{
					IOPS: secretInvalidIops,
				},
			},
			expectedVolume: &provider.Volume{Name: &volumeName,
				Capacity:  &volumeSize,
				VPCVolume: provider.VPCVolume{Profile: &provider.Profile{Name: "custom"}},
			},
			expectedStatus: false,
			expectedError:  fmt.Errorf("%v:<%v> invalid value", IOPS, secretInvalidIops),
		},

@k8s-ci-robot k8s-ci-robot added size/L Denotes a PR that changes 100-499 lines, ignoring generated files. and removed size/M Denotes a PR that changes 30-99 lines, ignoring generated files. labels Nov 29, 2024
Copy link
Contributor

@sameshai sameshai left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

/ok-to-test

@vasudha786
Copy link

vasudha786 commented Nov 29, 2024

Testing of negative test cases via secret

  1. 16000GiB 49000iops
vasudha@Vasudhas-MacBook-Pro ibm-vpc-block-csi-driver % kubectl apply -f secret.yaml 
secret/test1 created
vasudha@Vasudhas-MacBook-Pro ibm-vpc-block-csi-driver % kubectl apply -f sc.yaml                                           
storageclass.storage.k8s.io/ibmc-vpc-block-custom-iops-16000 created
vasudha@Vasudhas-MacBook-Pro ibm-vpc-block-csi-driver % kubectl apply -f pvc.yaml    
persistentvolumeclaim/test1 created
vasudha@Vasudhas-MacBook-Pro ibm-vpc-block-csi-driver % kubectl get pvc              
NAME    STATUS    VOLUME   CAPACITY   ACCESS MODES   STORAGECLASS                       VOLUMEATTRIBUTESCLASS   AGE
test1   Pending                                      ibmc-vpc-block-custom-iops-16000   <unset>                 12s
vasudha@Vasudhas-MacBook-Pro ibm-vpc-block-csi-driver % kubectl describe pvc test1
Name:          test1
Namespace:     default
StorageClass:  ibmc-vpc-block-custom-iops-16000
Status:        Pending
Volume:        
Labels:        <none>
Annotations:   volume.beta.kubernetes.io/storage-provisioner: vpc.block.csi.ibm.io
               volume.kubernetes.io/storage-provisioner: vpc.block.csi.ibm.io
Finalizers:    [kubernetes.io/pvc-protection]
Capacity:      
Access Modes:  
VolumeMode:    Filesystem
Used By:       <none>
Events:
  Type     Reason                Age               From                                                                                                     Message
  ----     ------                ----              ----                                                                                                     -------
  Warning  ProvisioningFailed    17s               vpc.block.csi.ibm.io_ibm-vpc-block-csi-controller-56c5c6964f-xhclf_4ce6a88a-c053-477d-bed5-1bee9868e4ee  failed to provision volume with StorageClass "ibmc-vpc-block-custom-iops-16000": rpc error: code = Internal desc = {RequestID: 765e9e24-8023-43e7-855d-f96a9e91980c , Code: InternalError, Description: Internal error occurred%!(EXTRA string=creation), BackendError: {Code:FailedToPlaceOrder, Type:ProvisioningFailed, Description:Failed to create volume with the storage provider, BackendError:Trace Code:765e9e24-8023-43e7-855d-f96a9e91980c, The volume profile specified in the request is not valid for the provided capacity and/or IOPS. Please check , RC:500}, Action: Please check 'BackendError' tag for more details}
  Warning  ProvisioningFailed    16s               vpc.block.csi.ibm.io_ibm-vpc-block-csi-controller-56c5c6964f-xhclf_4ce6a88a-c053-477d-bed5-1bee9868e4ee  failed to provision volume with StorageClass "ibmc-vpc-block-custom-iops-16000": rpc error: code = Internal desc = {RequestID: 35841593-46b2-442b-83da-bf5530b70752 , Code: InternalError, Description: Internal error occurred%!(EXTRA string=creation), BackendError: {Code:FailedToPlaceOrder, Type:ProvisioningFailed, Description:Failed to create volume with the storage provider, BackendError:Trace Code:35841593-46b2-442b-83da-bf5530b70752, The volume profile specified in the request is not valid for the provided capacity and/or IOPS. Please check , RC:500}, Action: Please check 'BackendError' tag for more details}
  Warning  ProvisioningFailed    13s               vpc.block.csi.ibm.io_ibm-vpc-block-csi-controller-56c5c6964f-xhclf_4ce6a88a-c053-477d-bed5-1bee9868e4ee  failed to provision volume with StorageClass "ibmc-vpc-block-custom-iops-16000": rpc error: code = Internal desc = {RequestID: b411a5f9-f969-43c4-9bbf-376e9f9561a6 , Code: InternalError, Description: Internal error occurred%!(EXTRA string=creation), BackendError: {Code:FailedToPlaceOrder, Type:ProvisioningFailed, Description:Failed to create volume with the storage provider, BackendError:Trace Code:b411a5f9-f969-43c4-9bbf-376e9f9561a6, The volume profile specified in the request is not valid for the provided capacity and/or IOPS. Please check , RC:500}, Action: Please check 'BackendError' tag for more details}
  Normal   ExternalProvisioning  9s (x2 over 18s)  persistentvolume-controller                                                                              Waiting for a volume to be created either by the external provisioner 'vpc.block.csi.ibm.io' or manually by the system administrator. If volume creation is delayed, please verify that the provisioner is running and correctly registered.
  Warning  ProvisioningFailed    9s                vpc.block.csi.ibm.io_ibm-vpc-block-csi-controller-56c5c6964f-xhclf_4ce6a88a-c053-477d-bed5-1bee9868e4ee  failed to provision volume with StorageClass "ibmc-vpc-block-custom-iops-16000": rpc error: code = Internal desc = {RequestID: 52add7f1-2e42-4eaf-9f8f-be11b796e174 , Code: InternalError, Description: Internal error occurred%!(EXTRA string=creation), BackendError: {Code:FailedToPlaceOrder, Type:ProvisioningFailed, Description:Failed to create volume with the storage provider, BackendError:Trace Code:52add7f1-2e42-4eaf-9f8f-be11b796e174, The volume profile specified in the request is not valid for the provided capacity and/or IOPS. Please check , RC:500}, Action: Please check 'BackendError' tag for more details}
  Normal   Provisioning          1s (x5 over 18s)  vpc.block.csi.ibm.io_ibm-vpc-block-csi-controller-56c5c6964f-xhclf_4ce6a88a-c053-477d-bed5-1bee9868e4ee  External provisioner is provisioning volume for claim "default/test1"
  Warning  ProvisioningFailed    1s                vpc.block.csi.ibm.io_ibm-vpc-block-csi-controller-56c5c6964f-xhclf_4ce6a88a-c053-477d-bed5-1bee9868e4ee  failed to provision volume with StorageClass "ibmc-vpc-block-custom-iops-16000": rpc error: code = Internal desc = {RequestID: 1c54171d-7d0e-46ce-a686-1450f19a8e4f , Code: InternalError, Description: Internal error occurred%!(EXTRA string=creation), BackendError: {Code:FailedToPlaceOrder, Type:ProvisioningFailed, Description:Failed to create volume with the storage provider, BackendError:Trace Code:1c54171d-7d0e-46ce-a686-1450f19a8e4f, The volume profile specified in the request is not valid for the provided capacity and/or IOPS. Please check , RC:500}, Action: Please check 'BackendError' tag for more details}
vasudha@Vasudhas-MacBook-Pro ibm-vpc-block-csi-driver % cat secret.yaml
apiVersion: v1
kind: Secret
type: vpc.block.csi.ibm.io
metadata:
  name: test1
  namespace: kube-system
stringData:
  iops: "49000"%                                                                                                                                         
vasudha@Vasudhas-MacBook-Pro ibm-vpc-block-csi-driver % cat sc.yaml    
allowVolumeExpansion: true
apiVersion: storage.k8s.io/v1
kind: StorageClass
metadata:
  name: ibmc-vpc-block-custom-iops-16000
parameters:
  billingType: hourly
  classVersion: "1"
  csi.storage.k8s.io/fstype: ext4
  csi.storage.k8s.io/provisioner-secret-name: test1
  csi.storage.k8s.io/provisioner-secret-namespace: kube-system
  profile: custom
  encrypted: "true"
  encryptionKey: ""
provisioner: vpc.block.csi.ibm.io
reclaimPolicy: Delete
volumeBindingMode: Immediate%                                                                                                                            vasudha@Vasudhas-MacBook-Pro ibm-vpc-block-csi-driver % cat pvc.yaml
apiVersion: v1
kind: PersistentVolumeClaim
metadata:
  name: test1
spec:
  storageClassName: ibmc-vpc-block-custom-iops-16000
  accessModes:
    - ReadWriteOnce
  resources:
    requests:
      storage: 16000Gi% 
  1. 16000GiB 950iops
vasudha@Vasudhas-MacBook-Pro ibm-vpc-block-csi-driver % kubectl apply -f sc.yaml 
storageclass.storage.k8s.io/ibmc-vpc-block-custom-iops-16000 created
vasudha@Vasudhas-MacBook-Pro ibm-vpc-block-csi-driver % kubectl apply -f secret.yaml
secret/test1 created
vasudha@Vasudhas-MacBook-Pro ibm-vpc-block-csi-driver % kubectl apply -f pvc.yaml   
persistentvolumeclaim/test1 created
vasudha@Vasudhas-MacBook-Pro ibm-vpc-block-csi-driver % kubectl get pvc
NAME    STATUS    VOLUME   CAPACITY   ACCESS MODES   STORAGECLASS                       VOLUMEATTRIBUTESCLASS   AGE
test1   Pending                                      ibmc-vpc-block-custom-iops-16000   <unset>                 6s
vasudha@Vasudhas-MacBook-Pro ibm-vpc-block-csi-driver % kubectl describe pvc test1   
Name:          test1
Namespace:     default
StorageClass:  ibmc-vpc-block-custom-iops-16000
Status:        Pending
Volume:        
Labels:        <none>
Annotations:   volume.beta.kubernetes.io/storage-provisioner: vpc.block.csi.ibm.io
               volume.kubernetes.io/storage-provisioner: vpc.block.csi.ibm.io
Finalizers:    [kubernetes.io/pvc-protection]
Capacity:      
Access Modes:  
VolumeMode:    Filesystem
Used By:       <none>
Events:
  Type     Reason                Age               From                                                                                                     Message
  ----     ------                ----              ----                                                                                                     -------
  Warning  ProvisioningFailed    11s               vpc.block.csi.ibm.io_ibm-vpc-block-csi-controller-56c5c6964f-xhclf_4ce6a88a-c053-477d-bed5-1bee9868e4ee  failed to provision volume with StorageClass "ibmc-vpc-block-custom-iops-16000": rpc error: code = Internal desc = {RequestID: 7af64a58-1bec-4357-a318-908cf4b319bc , Code: InternalError, Description: Internal error occurred%!(EXTRA string=creation), BackendError: {Code:FailedToPlaceOrder, Type:ProvisioningFailed, Description:Failed to create volume with the storage provider, BackendError:Trace Code:7af64a58-1bec-4357-a318-908cf4b319bc, The volume profile specified in the request is not valid for the provided capacity and/or IOPS. Please check , RC:500}, Action: Please check 'BackendError' tag for more details}
  Warning  ProvisioningFailed    10s               vpc.block.csi.ibm.io_ibm-vpc-block-csi-controller-56c5c6964f-xhclf_4ce6a88a-c053-477d-bed5-1bee9868e4ee  failed to provision volume with StorageClass "ibmc-vpc-block-custom-iops-16000": rpc error: code = Internal desc = {RequestID: a7c8bfd5-eef1-4328-bcb0-049e764fb0a0 , Code: InternalError, Description: Internal error occurred%!(EXTRA string=creation), BackendError: {Code:FailedToPlaceOrder, Type:ProvisioningFailed, Description:Failed to create volume with the storage provider, BackendError:Trace Code:a7c8bfd5-eef1-4328-bcb0-049e764fb0a0, The volume profile specified in the request is not valid for the provided capacity and/or IOPS. Please check , RC:500}, Action: Please check 'BackendError' tag for more details}
  Warning  ProvisioningFailed    8s                vpc.block.csi.ibm.io_ibm-vpc-block-csi-controller-56c5c6964f-xhclf_4ce6a88a-c053-477d-bed5-1bee9868e4ee  failed to provision volume with StorageClass "ibmc-vpc-block-custom-iops-16000": rpc error: code = Internal desc = {RequestID: 08e4e4f2-b095-4be5-a8a8-cf3a6b66985c , Code: InternalError, Description: Internal error occurred%!(EXTRA string=creation), BackendError: {Code:FailedToPlaceOrder, Type:ProvisioningFailed, Description:Failed to create volume with the storage provider, BackendError:Trace Code:08e4e4f2-b095-4be5-a8a8-cf3a6b66985c, The volume profile specified in the request is not valid for the provided capacity and/or IOPS. Please check , RC:500}, Action: Please check 'BackendError' tag for more details}
  Normal   ExternalProvisioning  7s (x2 over 12s)  persistentvolume-controller                                                                              Waiting for a volume to be created either by the external provisioner 'vpc.block.csi.ibm.io' or manually by the system administrator. If volume creation is delayed, please verify that the provisioner is running and correctly registered.
  Normal   Provisioning          4s (x4 over 12s)  vpc.block.csi.ibm.io_ibm-vpc-block-csi-controller-56c5c6964f-xhclf_4ce6a88a-c053-477d-bed5-1bee9868e4ee  External provisioner is provisioning volume for claim "default/test1"
  Warning  ProvisioningFailed    4s                vpc.block.csi.ibm.io_ibm-vpc-block-csi-controller-56c5c6964f-xhclf_4ce6a88a-c053-477d-bed5-1bee9868e4ee  failed to provision volume with StorageClass "ibmc-vpc-block-custom-iops-16000": rpc error: code = Internal desc = {RequestID: 510461ee-7af0-48c3-8cd1-c1e5e61cbf85 , Code: InternalError, Description: Internal error occurred%!(EXTRA string=creation), BackendError: {Code:FailedToPlaceOrder, Type:ProvisioningFailed, Description:Failed to create volume with the storage provider, BackendError:Trace Code:510461ee-7af0-48c3-8cd1-c1e5e61cbf85, The volume profile specified in the request is not valid for the provided capacity and/or IOPS. Please check , RC:500}, Action: Please check 'BackendError' tag for more details}
vasudha@Vasudhas-MacBook-Pro ibm-vpc-block-csi-driver % cat pvc.yaml                
apiVersion: v1
kind: PersistentVolumeClaim
metadata:
  name: test1
spec:
  storageClassName: ibmc-vpc-block-custom-iops-16000
  accessModes:
    - ReadWriteOnce
  resources:
    requests:
      storage: 16000Gi%                                                                                                                                  
vasudha@Vasudhas-MacBook-Pro ibm-vpc-block-csi-driver % cat sc.yaml 
allowVolumeExpansion: true
apiVersion: storage.k8s.io/v1
kind: StorageClass
metadata:
  name: ibmc-vpc-block-custom-iops-16000
parameters:
  billingType: hourly
  classVersion: "1"
  csi.storage.k8s.io/fstype: ext4
  csi.storage.k8s.io/provisioner-secret-name: test1
  csi.storage.k8s.io/provisioner-secret-namespace: kube-system
  profile: custom
  encrypted: "true"
  encryptionKey: ""
provisioner: vpc.block.csi.ibm.io
reclaimPolicy: Delete
volumeBindingMode: Immediate%                                                                                                                            vasudha@Vasudhas-MacBook-Pro ibm-vpc-block-csi-driver % cat secret.yaml
apiVersion: v1
kind: Secret
type: vpc.block.csi.ibm.io
metadata:
  name: test1
  namespace: kube-system
stringData:
  iops: "950"%  
  1. 7999GiB 250iops
vasudha@Vasudhas-MacBook-Pro ibm-vpc-block-csi-driver % kubectl apply -f secret.yaml
secret/test1 created
vasudha@Vasudhas-MacBook-Pro ibm-vpc-block-csi-driver % kubectl apply -f sc.yaml    
storageclass.storage.k8s.io/ibmc-vpc-block-custom-iops-7999 created
vasudha@Vasudhas-MacBook-Pro ibm-vpc-block-csi-driver % kubectl apply -f pvc.yaml
persistentvolumeclaim/test1 created
vasudha@Vasudhas-MacBook-Pro ibm-vpc-block-csi-driver % kubectl get pvc
NAME    STATUS    VOLUME   CAPACITY   ACCESS MODES   STORAGECLASS                      VOLUMEATTRIBUTESCLASS   AGE
test1   Pending                                      ibmc-vpc-block-custom-iops-7999   <unset>                 13s
vasudha@Vasudhas-MacBook-Pro ibm-vpc-block-csi-driver % kubectl describe pvc test1
Name:          test1
Namespace:     default
StorageClass:  ibmc-vpc-block-custom-iops-7999
Status:        Pending
Volume:        
Labels:        <none>
Annotations:   volume.beta.kubernetes.io/storage-provisioner: vpc.block.csi.ibm.io
               volume.kubernetes.io/storage-provisioner: vpc.block.csi.ibm.io
Finalizers:    [kubernetes.io/pvc-protection]
Capacity:      
Access Modes:  
VolumeMode:    Filesystem
Used By:       <none>
Events:
  Type     Reason                Age                From                                                                                                     Message
  ----     ------                ----               ----                                                                                                     -------
  Warning  ProvisioningFailed    17s                vpc.block.csi.ibm.io_ibm-vpc-block-csi-controller-56c5c6964f-xhclf_4ce6a88a-c053-477d-bed5-1bee9868e4ee  failed to provision volume with StorageClass "ibmc-vpc-block-custom-iops-7999": rpc error: code = Internal desc = {RequestID: 689819ff-2c8c-44b4-8782-89a28089b04d , Code: InternalError, Description: Internal error occurred%!(EXTRA string=creation), BackendError: {Code:FailedToPlaceOrder, Type:ProvisioningFailed, Description:Failed to create volume with the storage provider, BackendError:Trace Code:689819ff-2c8c-44b4-8782-89a28089b04d, The volume profile specified in the request is not valid for the provided capacity and/or IOPS. Please check , RC:500}, Action: Please check 'BackendError' tag for more details}
  Warning  ProvisioningFailed    16s                vpc.block.csi.ibm.io_ibm-vpc-block-csi-controller-56c5c6964f-xhclf_4ce6a88a-c053-477d-bed5-1bee9868e4ee  failed to provision volume with StorageClass "ibmc-vpc-block-custom-iops-7999": rpc error: code = Internal desc = {RequestID: 2755018a-5dcd-469a-805f-83db78ade534 , Code: InternalError, Description: Internal error occurred%!(EXTRA string=creation), BackendError: {Code:FailedToPlaceOrder, Type:ProvisioningFailed, Description:Failed to create volume with the storage provider, BackendError:Trace Code:2755018a-5dcd-469a-805f-83db78ade534, The volume profile specified in the request is not valid for the provided capacity and/or IOPS. Please check , RC:500}, Action: Please check 'BackendError' tag for more details}
  Warning  ProvisioningFailed    14s                vpc.block.csi.ibm.io_ibm-vpc-block-csi-controller-56c5c6964f-xhclf_4ce6a88a-c053-477d-bed5-1bee9868e4ee  failed to provision volume with StorageClass "ibmc-vpc-block-custom-iops-7999": rpc error: code = Internal desc = {RequestID: 1a17d52f-18bf-4f26-aec8-7829d6905847 , Code: InternalError, Description: Internal error occurred%!(EXTRA string=creation), BackendError: {Code:FailedToPlaceOrder, Type:ProvisioningFailed, Description:Failed to create volume with the storage provider, BackendError:Trace Code:1a17d52f-18bf-4f26-aec8-7829d6905847, The volume profile specified in the request is not valid for the provided capacity and/or IOPS. Please check , RC:500}, Action: Please check 'BackendError' tag for more details}
  Normal   ExternalProvisioning  11s (x2 over 18s)  persistentvolume-controller                                                                              Waiting for a volume to be created either by the external provisioner 'vpc.block.csi.ibm.io' or manually by the system administrator. If volume creation is delayed, please verify that the provisioner is running and correctly registered.
  Warning  ProvisioningFailed    9s                 vpc.block.csi.ibm.io_ibm-vpc-block-csi-controller-56c5c6964f-xhclf_4ce6a88a-c053-477d-bed5-1bee9868e4ee  failed to provision volume with StorageClass "ibmc-vpc-block-custom-iops-7999": rpc error: code = Internal desc = {RequestID: 59e73f8b-8686-4793-a379-faf7669f2f58 , Code: InternalError, Description: Internal error occurred%!(EXTRA string=creation), BackendError: {Code:FailedToPlaceOrder, Type:ProvisioningFailed, Description:Failed to create volume with the storage provider, BackendError:Trace Code:59e73f8b-8686-4793-a379-faf7669f2f58, The volume profile specified in the request is not valid for the provided capacity and/or IOPS. Please check , RC:500}, Action: Please check 'BackendError' tag for more details}
  Normal   Provisioning          1s (x5 over 18s)   vpc.block.csi.ibm.io_ibm-vpc-block-csi-controller-56c5c6964f-xhclf_4ce6a88a-c053-477d-bed5-1bee9868e4ee  External provisioner is provisioning volume for claim "default/test1"
  Warning  ProvisioningFailed    1s                 vpc.block.csi.ibm.io_ibm-vpc-block-csi-controller-56c5c6964f-xhclf_4ce6a88a-c053-477d-bed5-1bee9868e4ee  failed to provision volume with StorageClass "ibmc-vpc-block-custom-iops-7999": rpc error: code = Internal desc = {RequestID: 727ab9cb-ecfd-4813-a533-216bb55a01fa , Code: InternalError, Description: Internal error occurred%!(EXTRA string=creation), BackendError: {Code:FailedToPlaceOrder, Type:ProvisioningFailed, Description:Failed to create volume with the storage provider, BackendError:Trace Code:727ab9cb-ecfd-4813-a533-216bb55a01fa, The volume profile specified in the request is not valid for the provided capacity and/or IOPS. Please check , RC:500}, Action: Please check 'BackendError' tag for more details}
vasudha@Vasudhas-MacBook-Pro ibm-vpc-block-csi-driver % cat secret.yaml           
apiVersion: v1
kind: Secret
type: vpc.block.csi.ibm.io
metadata:
  name: test1
  namespace: kube-system
stringData:
  iops: "250"%                                                                                                                                           
vasudha@Vasudhas-MacBook-Pro ibm-vpc-block-csi-driver % cat sc.yaml    
allowVolumeExpansion: true
apiVersion: storage.k8s.io/v1
kind: StorageClass
metadata:
  name: ibmc-vpc-block-custom-iops-7999
parameters:
  billingType: hourly
  classVersion: "1"
  csi.storage.k8s.io/fstype: ext4
  csi.storage.k8s.io/provisioner-secret-name: test1
  csi.storage.k8s.io/provisioner-secret-namespace: kube-system
  profile: custom
  encrypted: "true"
  encryptionKey: ""
provisioner: vpc.block.csi.ibm.io
reclaimPolicy: Delete
volumeBindingMode: Immediate%                                                                                                                            vasudha@Vasudhas-MacBook-Pro ibm-vpc-block-csi-driver % cat pvc.yaml
apiVersion: v1
kind: PersistentVolumeClaim
metadata:
  name: test1
spec:
  storageClassName: ibmc-vpc-block-custom-iops-7999
  accessModes:
    - ReadWriteOnce
  resources:
    requests:
      storage: 7999Gi% 
  1. 7999GiB 45000iops
vasudha@Vasudhas-MacBook-Pro ibm-vpc-block-csi-driver % kubectl apply -f secret.yaml
secret/test1 created
vasudha@Vasudhas-MacBook-Pro ibm-vpc-block-csi-driver % kubectl apply -f sc.yaml    
storageclass.storage.k8s.io/ibmc-vpc-block-custom-iops-7999 created
vasudha@Vasudhas-MacBook-Pro ibm-vpc-block-csi-driver % kubectl apply -f pvc.yaml
persistentvolumeclaim/test1 created
vasudha@Vasudhas-MacBook-Pro ibm-vpc-block-csi-driver % kubectl get pvc          
NAME    STATUS    VOLUME   CAPACITY   ACCESS MODES   STORAGECLASS                      VOLUMEATTRIBUTESCLASS   AGE
test1   Pending                                      ibmc-vpc-block-custom-iops-7999   <unset>                 4s
vasudha@Vasudhas-MacBook-Pro ibm-vpc-block-csi-driver % kubectl describe pvc test1
Name:          test1
Namespace:     default
StorageClass:  ibmc-vpc-block-custom-iops-7999
Status:        Pending
Volume:        
Labels:        <none>
Annotations:   volume.beta.kubernetes.io/storage-provisioner: vpc.block.csi.ibm.io
               volume.kubernetes.io/storage-provisioner: vpc.block.csi.ibm.io
Finalizers:    [kubernetes.io/pvc-protection]
Capacity:      
Access Modes:  
VolumeMode:    Filesystem
Used By:       <none>
Events:
  Type     Reason                Age               From                                                                                                     Message
  ----     ------                ----              ----                                                                                                     -------
  Warning  ProvisioningFailed    9s                vpc.block.csi.ibm.io_ibm-vpc-block-csi-controller-56c5c6964f-xhclf_4ce6a88a-c053-477d-bed5-1bee9868e4ee  failed to provision volume with StorageClass "ibmc-vpc-block-custom-iops-7999": rpc error: code = Internal desc = {RequestID: f7fdcc6d-67fb-4b6a-ba20-031c038c1886 , Code: InternalError, Description: Internal error occurred%!(EXTRA string=creation), BackendError: {Code:FailedToPlaceOrder, Type:ProvisioningFailed, Description:Failed to create volume with the storage provider, BackendError:Trace Code:f7fdcc6d-67fb-4b6a-ba20-031c038c1886, The volume profile specified in the request is not valid for the provided capacity and/or IOPS. Please check , RC:500}, Action: Please check 'BackendError' tag for more details}
  Warning  ProvisioningFailed    8s                vpc.block.csi.ibm.io_ibm-vpc-block-csi-controller-56c5c6964f-xhclf_4ce6a88a-c053-477d-bed5-1bee9868e4ee  failed to provision volume with StorageClass "ibmc-vpc-block-custom-iops-7999": rpc error: code = Internal desc = {RequestID: 86eea44a-9a28-446f-910a-88042bce88fa , Code: InternalError, Description: Internal error occurred%!(EXTRA string=creation), BackendError: {Code:FailedToPlaceOrder, Type:ProvisioningFailed, Description:Failed to create volume with the storage provider, BackendError:Trace Code:86eea44a-9a28-446f-910a-88042bce88fa, The volume profile specified in the request is not valid for the provided capacity and/or IOPS. Please check , RC:500}, Action: Please check 'BackendError' tag for more details}
  Normal   ExternalProvisioning  7s (x3 over 10s)  persistentvolume-controller                                                                              Waiting for a volume to be created either by the external provisioner 'vpc.block.csi.ibm.io' or manually by the system administrator. If volume creation is delayed, please verify that the provisioner is running and correctly registered.
  Warning  ProvisioningFailed    5s                vpc.block.csi.ibm.io_ibm-vpc-block-csi-controller-56c5c6964f-xhclf_4ce6a88a-c053-477d-bed5-1bee9868e4ee  failed to provision volume with StorageClass "ibmc-vpc-block-custom-iops-7999": rpc error: code = Internal desc = {RequestID: 7155a43f-59c4-485d-8fc1-438f2bfbe121 , Code: InternalError, Description: Internal error occurred%!(EXTRA string=creation), BackendError: {Code:FailedToPlaceOrder, Type:ProvisioningFailed, Description:Failed to create volume with the storage provider, BackendError:Trace Code:7155a43f-59c4-485d-8fc1-438f2bfbe121, The volume profile specified in the request is not valid for the provided capacity and/or IOPS. Please check , RC:500}, Action: Please check 'BackendError' tag for more details}
  Normal   Provisioning          1s (x4 over 10s)  vpc.block.csi.ibm.io_ibm-vpc-block-csi-controller-56c5c6964f-xhclf_4ce6a88a-c053-477d-bed5-1bee9868e4ee  External provisioner is provisioning volume for claim "default/test1"
  Warning  ProvisioningFailed    1s                vpc.block.csi.ibm.io_ibm-vpc-block-csi-controller-56c5c6964f-xhclf_4ce6a88a-c053-477d-bed5-1bee9868e4ee  failed to provision volume with StorageClass "ibmc-vpc-block-custom-iops-7999": rpc error: code = Internal desc = {RequestID: 2f9f9e15-ea2a-49c4-ab09-5b4601ec9026 , Code: InternalError, Description: Internal error occurred%!(EXTRA string=creation), BackendError: {Code:FailedToPlaceOrder, Type:ProvisioningFailed, Description:Failed to create volume with the storage provider, BackendError:Trace Code:2f9f9e15-ea2a-49c4-ab09-5b4601ec9026, The volume profile specified in the request is not valid for the provided capacity and/or IOPS. Please check , RC:500}, Action: Please check 'BackendError' tag for more details}
vasudha@Vasudhas-MacBook-Pro ibm-vpc-block-csi-driver % cat secret.yaml           
apiVersion: v1
kind: Secret
type: vpc.block.csi.ibm.io
metadata:
  name: test1
  namespace: kube-system
stringData:
  iops: "45000"%                                                                                                                                         
vasudha@Vasudhas-MacBook-Pro ibm-vpc-block-csi-driver % cat sc.yaml               
allowVolumeExpansion: true
apiVersion: storage.k8s.io/v1
kind: StorageClass
metadata:
  name: ibmc-vpc-block-custom-iops-7999
parameters:
  billingType: hourly
  classVersion: "1"
  csi.storage.k8s.io/fstype: ext4
  csi.storage.k8s.io/provisioner-secret-name: test1
  csi.storage.k8s.io/provisioner-secret-namespace: kube-system
  profile: custom
  encrypted: "true"
  encryptionKey: ""
provisioner: vpc.block.csi.ibm.io
reclaimPolicy: Delete
volumeBindingMode: Immediate%                                                                                                                            vasudha@Vasudhas-MacBook-Pro ibm-vpc-block-csi-driver % cat pvc.yaml
apiVersion: v1
kind: PersistentVolumeClaim
metadata:
  name: test1
spec:
  storageClassName: ibmc-vpc-block-custom-iops-7999
  accessModes:
    - ReadWriteOnce
  resources:
    requests:
      storage: 7999Gi% 

@vasudha786
Copy link

Testing of positive test cases via secret

  1. 1000iops 16000GiB
vasudha@Vasudhas-MacBook-Pro ibm-vpc-block-csi-driver % cat secret.yaml
apiVersion: v1
kind: Secret
type: vpc.block.csi.ibm.io
metadata:
  name: test1
  namespace: kube-system
stringData:
  iops: "1000"%                                                                                                                                       
vasudha@Vasudhas-MacBook-Pro ibm-vpc-block-csi-driver % cat sc.yaml
allowVolumeExpansion: true
apiVersion: storage.k8s.io/v1
kind: StorageClass
metadata:
  name: ibmc-vpc-block-custom-iops-16000
parameters:
  billingType: hourly
  classVersion: "1"
  csi.storage.k8s.io/fstype: ext4
  csi.storage.k8s.io/provisioner-secret-name: test1
  csi.storage.k8s.io/provisioner-secret-namespace: kube-system
  profile: custom
  encrypted: "true"
  encryptionKey: ""
provisioner: vpc.block.csi.ibm.io
reclaimPolicy: Delete
volumeBindingMode: Immediate%                                                                                                                         vasudha@Vasudhas-MacBook-Pro ibm-vpc-block-csi-driver % cat pvc.yaml
apiVersion: v1
kind: PersistentVolumeClaim
metadata:
  name: test1
spec:
  storageClassName: ibmc-vpc-block-custom-iops-16000
  accessModes:
    - ReadWriteOnce
  resources:
    requests:
      storage: 16000Gi% 
vasudha@Vasudhas-MacBook-Pro ibm-vpc-block-csi-driver % kubectl apply -f secret.yaml 
secret/test1 created
vasudha@Vasudhas-MacBook-Pro ibm-vpc-block-csi-driver % kubectl apply -f sc.yaml     
storageclass.storage.k8s.io/ibmc-vpc-block-custom-iops-16000 created
vasudha@Vasudhas-MacBook-Pro ibm-vpc-block-csi-driver % kubectl apply -f pvc.yaml
persistentvolumeclaim/test1 created
vasudha@Vasudhas-MacBook-Pro ibm-vpc-block-csi-driver % kubectl get pvc          
NAME    STATUS    VOLUME   CAPACITY   ACCESS MODES   STORAGECLASS                       VOLUMEATTRIBUTESCLASS   AGE
test1   Pending                                      ibmc-vpc-block-custom-iops-16000   <unset>                 6s
vasudha@Vasudhas-MacBook-Pro ibm-vpc-block-csi-driver % kubectl get pvc
NAME    STATUS   VOLUME                                     CAPACITY   ACCESS MODES   STORAGECLASS                       VOLUMEATTRIBUTESCLASS   AGE
test1   Bound    pvc-9a8a7e32-3f0b-4a2b-a999-1506fd50371f   16000Gi    RWO            ibmc-vpc-block-custom-iops-16000   <unset>                 40s
  1. 40000iops 7999GiB
vasudha@Vasudhas-MacBook-Pro ibm-vpc-block-csi-driver % cat secret.yaml
apiVersion: v1
kind: Secret
type: vpc.block.csi.ibm.io
metadata:
  name: test1
  namespace: kube-system
stringData:
  iops: "40000"%                                                                                                                                      
vasudha@Vasudhas-MacBook-Pro ibm-vpc-block-csi-driver % cat sc.yaml    
allowVolumeExpansion: true
apiVersion: storage.k8s.io/v1
kind: StorageClass
metadata:
  name: ibmc-vpc-block-custom-iops-7999
parameters:
  billingType: hourly
  classVersion: "1"
  csi.storage.k8s.io/fstype: ext4
  csi.storage.k8s.io/provisioner-secret-name: test1
  csi.storage.k8s.io/provisioner-secret-namespace: kube-system
  profile: custom
  encrypted: "true"
  encryptionKey: ""
provisioner: vpc.block.csi.ibm.io
reclaimPolicy: Delete
volumeBindingMode: Immediate%                                                                                                                         vasudha@Vasudhas-MacBook-Pro ibm-vpc-block-csi-driver % cat pvc.yaml
apiVersion: v1
kind: PersistentVolumeClaim
metadata:
  name: test1
spec:
  storageClassName: ibmc-vpc-block-custom-iops-7999
  accessModes:
    - ReadWriteOnce
  resources:
    requests:
      storage: 7999Gi% 
vasudha@Vasudhas-MacBook-Pro ibm-vpc-block-csi-driver % kubectl apply -f secret.yaml
secret/test1 created
vasudha@Vasudhas-MacBook-Pro ibm-vpc-block-csi-driver % kubectl apply -f sc.yaml    
storageclass.storage.k8s.io/ibmc-vpc-block-custom-iops-7999 created
vasudha@Vasudhas-MacBook-Pro ibm-vpc-block-csi-driver % kubectl apply -f pvc.yaml
persistentvolumeclaim/test1 created
vasudha@Vasudhas-MacBook-Pro ibm-vpc-block-csi-driver % kubectl get pvc
NAME    STATUS    VOLUME   CAPACITY   ACCESS MODES   STORAGECLASS                      VOLUMEATTRIBUTESCLASS   AGE
test1   Pending                                      ibmc-vpc-block-custom-iops-7999   <unset>                 21s
vasudha@Vasudhas-MacBook-Pro ibm-vpc-block-csi-driver % kubectl get pvc
NAME    STATUS    VOLUME   CAPACITY   ACCESS MODES   STORAGECLASS                      VOLUMEATTRIBUTESCLASS   AGE
test1   Pending                                      ibmc-vpc-block-custom-iops-7999   <unset>                 26s
vasudha@Vasudhas-MacBook-Pro ibm-vpc-block-csi-driver % kubectl get pvc
NAME    STATUS   VOLUME                                     CAPACITY   ACCESS MODES   STORAGECLASS                      VOLUMEATTRIBUTESCLASS   AGE
test1   Bound    pvc-d6a9c34e-88bc-4f67-a3eb-8c2d8876be7c   7999Gi     RWO            ibmc-vpc-block-custom-iops-7999   <unset>                 53s

  1. 48000iops 9999GiB
vasudha@Vasudhas-MacBook-Pro ibm-vpc-block-csi-driver % cat secret.yaml
apiVersion: v1
kind: Secret
type: vpc.block.csi.ibm.io
metadata:
  name: test1
  namespace: kube-system
stringData:
  iops: "48000"%                                                                                                                                      
vasudha@Vasudhas-MacBook-Pro ibm-vpc-block-csi-driver % cat sc.yaml    
allowVolumeExpansion: true
apiVersion: storage.k8s.io/v1
kind: StorageClass
metadata:
  name: ibmc-vpc-block-custom-iops-9999
parameters:
  billingType: hourly
  classVersion: "1"
  csi.storage.k8s.io/fstype: ext4
  csi.storage.k8s.io/provisioner-secret-name: test1
  csi.storage.k8s.io/provisioner-secret-namespace: kube-system
  profile: custom
  encrypted: "true"
  encryptionKey: ""
provisioner: vpc.block.csi.ibm.io
reclaimPolicy: Delete
volumeBindingMode: Immediate%                                                                                                                         vasudha@Vasudhas-MacBook-Pro ibm-vpc-block-csi-driver % cat pvc.yaml
apiVersion: v1
kind: PersistentVolumeClaim
metadata:
  name: test1
spec:
  storageClassName: ibmc-vpc-block-custom-iops-9999
  accessModes:
    - ReadWriteOnce
  resources:
    requests:
      storage: 9999Gi%  
vasudha@Vasudhas-MacBook-Pro ibm-vpc-block-csi-driver % kubectl apply -f secret.yaml
secret/test1 created
vasudha@Vasudhas-MacBook-Pro ibm-vpc-block-csi-driver % kubectl apply -f sc.yaml    
storageclass.storage.k8s.io/ibmc-vpc-block-custom-iops-9999 created
vasudha@Vasudhas-MacBook-Pro ibm-vpc-block-csi-driver % kubectl apply -f pvc.yaml
persistentvolumeclaim/test1 created
vasudha@Vasudhas-MacBook-Pro ibm-vpc-block-csi-driver % kubectl get pvc           
NAME    STATUS    VOLUME   CAPACITY   ACCESS MODES   STORAGECLASS                      VOLUMEATTRIBUTESCLASS   AGE
test1   Pending                                      ibmc-vpc-block-custom-iops-9999   <unset>                 11s
vasudha@Vasudhas-MacBook-Pro ibm-vpc-block-csi-driver % kubectl get pvc
NAME    STATUS    VOLUME   CAPACITY   ACCESS MODES   STORAGECLASS                      VOLUMEATTRIBUTESCLASS   AGE
test1   Pending                                      ibmc-vpc-block-custom-iops-9999   <unset>                 24s
vasudha@Vasudhas-MacBook-Pro ibm-vpc-block-csi-driver % kubectl get pvc
NAME    STATUS   VOLUME                                     CAPACITY   ACCESS MODES   STORAGECLASS                      VOLUMEATTRIBUTESCLASS   AGE
test1   Bound    pvc-b68686fb-c717-4eab-bc3c-b4398e82382e   9999Gi     RWO            ibmc-vpc-block-custom-iops-9999   <unset>                 53s

Copy link
Contributor

@arahamad arahamad left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

/lgtm

please verify before releasing it

@k8s-ci-robot
Copy link
Contributor

[APPROVALNOTIFIER] This PR is APPROVED

This pull-request has been approved by: arahamad, MeetanshiGupta, sameshai

The full list of commands accepted by this bot can be found here.

The pull request process is described here

Needs approval from an approver in each of these files:

Approvers can indicate their approval by writing /approve in a comment
Approvers can cancel approval by writing /approve cancel in a comment

@k8s-ci-robot k8s-ci-robot added lgtm "Looks good to me", indicates that a PR is ready to be merged. approved Indicates a PR has been approved by an approver from all required OWNERS files. labels Nov 29, 2024
@k8s-ci-robot k8s-ci-robot merged commit 2f19d90 into kubernetes-sigs:master Nov 29, 2024
6 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
approved Indicates a PR has been approved by an approver from all required OWNERS files. cncf-cla: yes Indicates the PR's author has signed the CNCF CLA. lgtm "Looks good to me", indicates that a PR is ready to be merged. ok-to-test Indicates a non-member PR verified by an org member that is safe to test. size/L Denotes a PR that changes 100-499 lines, ignoring generated files.
Projects
None yet
Development

Successfully merging this pull request may close these issues.

7 participants