Skip to content
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

[ISSUE-651] Immediate volume binding mode proposal #652

Merged
merged 2 commits into from
Dec 16, 2021
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 2 additions & 0 deletions docs/README.md
Original file line number Diff line number Diff line change
Expand Up @@ -13,6 +13,8 @@ Features
--------

- [Dynamic provisioning](https://kubernetes-csi.github.io/docs/external-provisioner.html): Volumes are created dynamically when `PersistentVolumeClaim` objects are created.
- Volume binding modes
- WaitForFirstConsumer
- Inline volumes
- LVM support
- Storage classes for the different drive types: HDD, SSD, NVMe
Expand Down
44 changes: 44 additions & 0 deletions docs/proposals/immediate-volume-binding-mode.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,44 @@
[This is a template for CSI-Baremetal's changes proposal. ]
# Proposal: Immediate Volume Binding Mode

Last updated: 14-Dec-2021


## Abstract

CSI doesn't support `Immediate` volumeBindingMode. It relies on capacity reservation request issued from scheduler extender.

## Background

Some applications might want to use `Immediate` volumeBindingMode mode. However this is not recommended for topology-constrained
volumes since PersitentVolumes will be created without knowledge of the Pod's scheduling requirements.

## Proposal

CSI Controller must check `volumeBindingMode` on CreateVolume request. When mode is set to `Immediate` it should pick target
Node and AvailableCapacity.

## Rationale

It's not clear what is the use case for the `Immediate` volumeBindingMode. We shouldn't proceed with the implementation at the curremt moment.
safronovD marked this conversation as resolved.
Show resolved Hide resolved

## Compatibility

No issues with the compatibility - no new APIs and Kubernetes features are required to support this feature.

## Implementation

CSI Controller shouldn't check for AvailableCapacityReservation on CreateVolume request when volumeBindingMode is set to `Immediate`.

## Assumptions (if applicable)

ID | Name | Descriptions | Comments
---| -----| -------------| --------
ASSUM-1 | | |


## Open issues (if applicable)

ID | Name | Descriptions | Status | Comments
---| -----| -------------| ------ | --------
ISSUE-1 | | | |