-
Notifications
You must be signed in to change notification settings - Fork 47
STOR-2627: Enable nodeAllocatableUpdatePeriodSeconds in AWS EBS #435
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
base: main
Are you sure you want to change the base?
STOR-2627: Enable nodeAllocatableUpdatePeriodSeconds in AWS EBS #435
Conversation
|
@jsafrane: This pull request references STOR-2627 which is a valid jira issue. In response to this:
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 openshift-eng/jira-lifecycle-plugin repository. |
|
@jsafrane: This pull request references STOR-2627 which is a valid jira issue. In response to this:
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 openshift-eng/jira-lifecycle-plugin repository. |
|
[APPROVALNOTIFIER] This PR is APPROVED This pull-request has been approved by: jsafrane 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 |
a8b38c3 to
d741e5c
Compare
|
@jsafrane: This pull request references STOR-2627 which is a valid jira issue. In response to this:
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 openshift-eng/jira-lifecycle-plugin repository. |
ca7b756 to
960a598
Compare
|
/test e2e-aws-csi |
| cfg.ExtraControlPlaneControllers = append(cfg.ExtraControlPlaneControllers, ctrl) | ||
| } | ||
|
|
||
| cfg.ExtraReplacementsFunc = func() []string { |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Hi @jsafrane , I did some tests for enable nodeAllocatableUpdatePeriodSeconds in ebs csi driver and found that we still needs openshift/csi-external-attacher#89 which contains(kubernetes-csi/external-attacher@462cd54 we needed for MutableCSINodeAllocatableCount featuregate args in external attacher). In addition it seems the cfg.ExtraReplacementsFunc only do the replace the first time in cluster install when I enable the TechPreviewNoUpgrade it does not update the csidriver, I needs to delete the csidriver trigger the resource reconcile and update it with nodeAllocatableUpdatePeriodSeconds: 600. This should be an issue when upgrade/enable featuregate. Could you help check when you get a chance? Thank you! ^^
# After enable the TechPreviewNoUpgrade the csidriver does not update
$ oc get csidriver ebs.csi.aws.com -oyaml
apiVersion: storage.k8s.io/v1
kind: CSIDriver
metadata:
annotations:
csi.openshift.io/managed: "true"
operator.openshift.io/spec-hash: d37d616b853448c2d019d19e3987ebfb751f3da09de52be009406f4d8f8fd7d6
creationTimestamp: "2025-10-23T06:09:33Z"
name: ebs.csi.aws.com
resourceVersion: "86418"
uid: 8ac66b43-1f14-4be7-9d4b-1e65f29ed14a
spec:
attachRequired: true
fsGroupPolicy: File
podInfoOnMount: false
requiresRepublish: false
seLinuxMount: true
storageCapacity: false
volumeLifecycleModes:
- Persistent
# delete the csidriver trigger reconcile
$ oc delete csidriver ebs.csi.aws.com
csidriver.storage.k8s.io "ebs.csi.aws.com" deleted
$ oc get csidriver ebs.csi.aws.com -oyaml
apiVersion: storage.k8s.io/v1
kind: CSIDriver
metadata:
annotations:
csi.openshift.io/managed: "true"
operator.openshift.io/spec-hash: d37d616b853448c2d019d19e3987ebfb751f3da09de52be009406f4d8f8fd7d6
creationTimestamp: "2025-10-23T07:01:02Z"
name: ebs.csi.aws.com
resourceVersion: "116117"
uid: 84d59f30-7b5f-4059-9cb5-a02089c2093b
spec:
attachRequired: true
fsGroupPolicy: File
nodeAllocatableUpdatePeriodSeconds: 600
podInfoOnMount: false
requiresRepublish: false
seLinuxMount: true
storageCapacity: false
volumeLifecycleModes:
- PersistentThere was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
You are correct, the external-attacher rebase is necessary too.
it seems the cfg.ExtraReplacementsFunc only do the replace the first time in cluster install when I enable the TechPreviewNoUpgrade it does not update the csidriver
I'll look into this. The operator should restart when something changes FeatureGates...
AWS EBS CSI driver should support MutableCSINodeAllocatableCount feature. Set CSIDriver nodeAllocatableUpdatePeriodSeconds to 10 minutes when the feature gate is enabled. Kubelet will then call NodeGetDriverInfo every 10 minutes to update the attach limit of EBS volumes.
03dd4d7 to
0c680e0
Compare
0c680e0 to
708693b
Compare
|
@jsafrane: The following tests failed, say
Full PR test history. Your PR dashboard. 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. I understand the commands that are listed here. |
|
/hold |
AWS EBS CSI driver should support
MutableCSINodeAllocatableCountfeature.When the feature gate is enabled:
nodeAllocatableUpdatePeriodSecondsto 10 minutes, so kubelet knows it should periodically refresh attachment count from the driver.To be tested together with openshift/api#2502 and after rebase to 1.34. Testing with 1.33 won't harm, but then you need to retest after the rebase...
cc @openshift/storage