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

disk-snapshot: support volume group snapshot APIs #1176

Open
wants to merge 18 commits into
base: master
Choose a base branch
from

Conversation

AlbeeSo
Copy link
Member

@AlbeeSo AlbeeSo commented Sep 26, 2024

This PR will:

  1. bump snapshot client version from v4 to v8 and add default volumegroupsnapshotclass alibabacloud-disk-group-snapshot
  2. add groupcontrollerserver for disk driver
  3. implement volumegroupsnapshot APIs
  4. allow users use volumegroupsnapshot by set feature-gate EnableVolumeGroupSnapshots=true

pls test with yaml like:

apiVersion: groupsnapshot.storage.k8s.io/v1alpha1
kind: VolumeGroupSnapshot
metadata:
  name: new-group-snapshot-demo
spec:
  volumeGroupSnapshotClassName: alibabacloud-disk-group-snapshot
  source:
    selector:
      matchLabels:
        app: mysql

What type of PR is this?

/kind feature
/kind api-change

What this PR does / why we need it:

Which issue(s) this PR fixes:

Fixes #

Special notes for your reviewer:

VolumeGroupSnapshot need K8s >= 1.27

Does this PR introduce a user-facing change?


Additional documentation e.g., KEPs (Kubernetes Enhancement Proposals), usage docs, etc.:


@k8s-ci-robot k8s-ci-robot added kind/feature Categorizes issue or PR as related to a new feature. kind/api-change Categorizes issue or PR as related to adding, removing, or otherwise changing an API cncf-cla: yes Indicates the PR's author has signed the CNCF CLA. labels Sep 26, 2024
@k8s-ci-robot k8s-ci-robot added the size/XXL Denotes a PR that changes 1000+ lines, ignoring generated files. label Sep 26, 2024
@k8s-ci-robot
Copy link
Contributor

[APPROVALNOTIFIER] This PR is NOT APPROVED

This pull-request has been approved by: AlbeeSo
Once this PR has been reviewed and has the lgtm label, please assign mowangdk for approval. For more information see the Kubernetes Code Review Process.

The full list of commands accepted by this bot can be found 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 the needs-rebase Indicates a PR cannot be merged because it has merge conflicts with HEAD. label Oct 11, 2024
@k8s-ci-robot k8s-ci-robot added needs-rebase Indicates a PR cannot be merged because it has merge conflicts with HEAD. and removed needs-rebase Indicates a PR cannot be merged because it has merge conflicts with HEAD. labels Oct 11, 2024
@k8s-ci-robot k8s-ci-robot removed the needs-rebase Indicates a PR cannot be merged because it has merge conflicts with HEAD. label Oct 15, 2024
pkg/disk/group_volume_snapshot_utils.go Show resolved Hide resolved
pkg/disk/groupcontrollerserver.go Outdated Show resolved Hide resolved
pkg/disk/group_volume_snapshot_utils.go Show resolved Hide resolved
pkg/disk/group_volume_snapshot_utils.go Outdated Show resolved Hide resolved
@AlbeeSo AlbeeSo force-pushed the feat/group-snapshot-rewrite branch 3 times, most recently from 438d20f to 1a3002d Compare October 18, 2024 09:49
@AlbeeSo
Copy link
Member Author

AlbeeSo commented Oct 21, 2024

To compated with single snapshot, groupsnapshot removed the limit of request as the sidecar version bumped to v8.
I test with:

  1. create a app 2 ssd disks.
  2. create groupsnapshot, and always failed with The operation is not supported to the specified disk due to its disk category.
  3. change category during retry
  4. succeed creating a groupsnapshot.

i will submit another PR to update the logic of single snapshot, after this one is merged. @mowangdk

@k8s-ci-robot k8s-ci-robot added the needs-rebase Indicates a PR cannot be merged because it has merge conflicts with HEAD. label Oct 31, 2024
@k8s-ci-robot k8s-ci-robot removed the needs-rebase Indicates a PR cannot be merged because it has merge conflicts with HEAD. label Nov 7, 2024
@k8s-ci-robot k8s-ci-robot added the needs-rebase Indicates a PR cannot be merged because it has merge conflicts with HEAD. label Nov 8, 2024
@k8s-ci-robot k8s-ci-robot added needs-rebase Indicates a PR cannot be merged because it has merge conflicts with HEAD. and removed needs-rebase Indicates a PR cannot be merged because it has merge conflicts with HEAD. labels Nov 19, 2024
@k8s-ci-robot k8s-ci-robot removed the needs-rebase Indicates a PR cannot be merged because it has merge conflicts with HEAD. label Nov 20, 2024
@AlbeeSo
Copy link
Member Author

AlbeeSo commented Nov 22, 2024

csi-sanity test run on #1224

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
cncf-cla: yes Indicates the PR's author has signed the CNCF CLA. kind/api-change Categorizes issue or PR as related to adding, removing, or otherwise changing an API kind/feature Categorizes issue or PR as related to a new feature. size/XXL Denotes a PR that changes 1000+ lines, ignoring generated files.
Projects
None yet
Development

Successfully merging this pull request may close these issues.

4 participants