kubernetes-sigs / aws-ebs-csi-driver

CSI driver for Amazon EBS https://aws.amazon.com/ebs/
Apache License 2.0
974 stars 787 forks source link

Unable to create 100MiB PVC from snapshot created from 100MiB PVC #1209

Open kaovilai opened 2 years ago

kaovilai commented 2 years ago

/kind bug Created PVC-A with 100MiB request (ebs gives back 1GiB) Create VolumeSnapshot-A - 1GiB snapshot created Create new 100MiB requested PVC-B using 1GiB VolumeSnapshot-A as data source

What happened?

Generated from ebs.csi.aws.com_<nodeip>_<uuid?>
9 times in the last 3 minutes
failed to provision volume with StorageClass "gp2-csi": error getting handle for DataSource Type VolumeSnapshot by Name velero-pc-data-lmkpz: requested volume size 104857600 is less than the size 1073741824 for the source snapshot velero-pc-data-lmkpz

What you expected to happen? EBS driver should know that PVC-B if created without datasource, it would result in 1GiB volume, so final requested volume size should be the same as the source snapshot. Thus, there should be enough space in the resulting PVC-B for VolumeSnapshot-A to fit onto.

How to reproduce it (as minimally and precisely as possible)? Created PVC-A with 100MiB request (ebs gives back 1GiB) Create VolumeSnapshot-A - 1GiB snapshot created Create new 100MiB requested PVC-B using 1GiB VolumeSnapshot-A as data source

Anything else we need to know?: End user who requested 100MiB should not need to know the details of CreateVolume API (the fact that it round up to GiB). They expect that if they requested 100MiB PVC, they snapshot it, they can use the snapshot as a datasource towards another 100MiB requested PVC

Environment

rdpsin commented 2 years ago

This is due to the fact the validation is done in external-provisioner, before controller's CreateVolume is called.

kaovilai commented 2 years ago

Filed issue https://github.com/kubernetes-csi/external-provisioner/issues/727

k8s-triage-robot commented 2 years ago

The Kubernetes project currently lacks enough contributors to adequately respond to all issues and PRs.

This bot triages issues and PRs according to the following rules:

You can:

Please send feedback to sig-contributor-experience at kubernetes/community.

/lifecycle stale

kaovilai commented 2 years ago

/remove-lifecycle stale

k8s-triage-robot commented 1 year ago

The Kubernetes project currently lacks enough contributors to adequately respond to all issues and PRs.

This bot triages issues and PRs according to the following rules:

You can:

Please send feedback to sig-contributor-experience at kubernetes/community.

/lifecycle stale

kaovilai commented 1 year ago

/remove-lifecycle stale

k8s-triage-robot commented 1 year ago

The Kubernetes project currently lacks enough contributors to adequately respond to all issues and PRs.

This bot triages issues and PRs according to the following rules:

You can:

Please send feedback to sig-contributor-experience at kubernetes/community.

/lifecycle stale

kaovilai commented 1 year ago

/remove-lifecycle stale

k8s-triage-robot commented 1 year ago

The Kubernetes project currently lacks enough contributors to adequately respond to all issues.

This bot triages un-triaged issues according to the following rules:

You can:

Please send feedback to sig-contributor-experience at kubernetes/community.

/lifecycle stale

kaovilai commented 1 year ago

/remove-lifecycle stale

k8s-triage-robot commented 1 year ago

The Kubernetes project currently lacks enough contributors to adequately respond to all issues.

This bot triages un-triaged issues according to the following rules:

You can:

Please send feedback to sig-contributor-experience at kubernetes/community.

/lifecycle stale

k8s-triage-robot commented 8 months ago

The Kubernetes project currently lacks enough active contributors to adequately respond to all issues.

This bot triages un-triaged issues according to the following rules:

You can:

Please send feedback to sig-contributor-experience at kubernetes/community.

/lifecycle rotten

kaovilai commented 8 months ago

/remove-lifecycle rotten

k8s-triage-robot commented 5 months ago

The Kubernetes project currently lacks enough contributors to adequately respond to all issues.

This bot triages un-triaged issues according to the following rules:

You can:

Please send feedback to sig-contributor-experience at kubernetes/community.

/lifecycle stale

kaovilai commented 5 months ago

unstale

kaovilai commented 5 months ago

/remove-lifecycle stale

k8s-triage-robot commented 2 months ago

The Kubernetes project currently lacks enough contributors to adequately respond to all issues.

This bot triages un-triaged issues according to the following rules:

You can:

Please send feedback to sig-contributor-experience at kubernetes/community.

/lifecycle stale

kaovilai commented 2 months ago

unstale

kaovilai commented 2 months ago

/remove-lifecycle stale