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

Promote CSI raw blocks to beta #74909

Merged
merged 1 commit into from Mar 7, 2019

Conversation

@bswartz
Copy link
Contributor

bswartz commented Mar 4, 2019

What type of PR is this?

/kind feature

What this PR does / why we need it:
Promote the CSIBlockVolume feature to beta.

Does this PR introduce a user-facing change?:

The CSIBlockVolume feature gate is now beta, and defaults to enabled.
@bswartz

This comment has been minimized.

Copy link
Contributor Author

bswartz commented Mar 4, 2019

@k8s-ci-robot k8s-ci-robot requested review from wongma7 and msau42 Mar 4, 2019

@k8s-ci-robot

This comment has been minimized.

Copy link
Contributor

k8s-ci-robot commented Mar 4, 2019

@bswartz: GitHub didn't allow me to request PR reviews from the following users: mkimuram.

Note that only kubernetes members and repo collaborators can review this PR, and authors cannot review their own PRs.

In response to this:

/cc @mkimuram @wongma7 @msau42

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/test-infra repository.

@msau42

This comment has been minimized.

Copy link
Member

msau42 commented Mar 4, 2019

As part of this PR, can you:

  • temporarily update the csi hostpath driver version to canary (now that kubernetes-csi/csi-driver-host-path#6 has merged)
  • Toggle CapBlock to true for csi hostpath
  • Let's see if the block tests get run in pull-kubernetes-e2e-gce

@bswartz bswartz force-pushed the NetApp:csi-raw-block-to-beta2 branch from 928b305 to 6bb2b3e Mar 5, 2019

@k8s-ci-robot k8s-ci-robot added sig/testing and removed needs-sig labels Mar 5, 2019

@wongma7

This comment has been minimized.

Copy link
Contributor

wongma7 commented Mar 5, 2019

pod events:

I0305 04:53:59.684] Mar 5 04:53:31.152: INFO: At 2019-03-05 04:49:09 +0000 UTC - event for security-context-e17ae819-3f01-11e9-a91a-0e847381c6db: {attachdetach-controller } SuccessfulAttachVolume: AttachVolume.Attach succeeded for volume "pvc-db295e29-3f01-11e9-acd4-42010a280002"
66516
I0305 04:53:59.684] Mar 5 04:53:31.152: INFO: At 2019-03-05 04:49:19 +0000 UTC - event for security-context-e17ae819-3f01-11e9-a91a-0e847381c6db: {kubelet e2e-71257-674b9-minion-group-g244} FailedMapVolume: MapVolume.SetUp failed for volume "pvc-db295e29-3f01-11e9-acd4-42010a280002" : rpc error: code = Internal desc = failed to create target path: /var/lib/kubelet/plugins/kubernetes.io/csi/volumeDevices/publish/pvc-db295e29-3f01-11e9-acd4-42010a280002: open /var/lib/kubelet/plugins/kubernetes.io/csi/volumeDevices/publish/pvc-db295e29-3f01-11e9-acd4-42010a280002: no such file or directory
66517
I0305 04:53:59.685] Mar 5 04:53:31.152: INFO: At 2019-03-05 04:50:15 +0000 UTC - event for security-context-e17ae819-3f01-11e9-a91a-0e847381c6db: {kubelet e2e-71257-674b9-minion-group-g244} FailedMount: Unable to mount volumes for pod "security-context-e17ae819-3f01-11e9-a91a-0e847381c6db_volumemode-5198(e17bcbb0-3f01-11e9-acd4-42010a280002)": timeout expired waiting for volumes to attach or mount for pod "volumemode-5198"/"security-context-e17ae819-3f01-11e9-a91a-0e847381c6db". list of unmounted volumes=[volume1]. list of unattached volumes=[volume1 default-token-rk7j6]

kubelet logs:

I0305 04:49:19.839965 1620 csi_block.go:179] kubernetes.io/csi: blockMapper.publishVolumeForBlock created directory for publishPath successfully [/var/lib/kubelet/plugins/kubernetes.io/csi/volumeDevices/publish]
E0305 04:49:19.881850 1620 csi_block.go:201] kubernetes.io/csi: blockMapper.publishVolumeForBlock failed: rpc error: code = Internal desc = failed to create target path: /var/lib/kubelet/plugins/kubernetes.io/csi/volumeDevices/publish/pvc-db295e29-3f01-11e9-acd4-42010a280002: open /var/lib/kubelet/plugins/kubernetes.io/csi/volumeDevices/publish/pvc-db295e29-3f01-11e9-acd4-42010a280002: no such file or directory

Where hostpath csi driver returns that error:
https://github.com/kubernetes-csi/csi-driver-host-path/blob/master/pkg/hostpath/nodeserver.go#L87

@@ -33,7 +33,7 @@ spec:
- mountPath: /registration
name: registration-dir
- name: hostpath
image: quay.io/k8scsi/hostpathplugin:v1.0.1
image: quay.io/k8scsi/hostpathplugin:canary

This comment has been minimized.

@wongma7

wongma7 Mar 5, 2019

Contributor

need the latest changes from https://github.com/kubernetes-csi/csi-driver-host-path/blob/master/deploy/hostpath/csi-hostpath-plugin.yaml
e.g.

        - hostPath:
            path: /var/lib/kubelet/plugins
            type: Directory
            name: plugins-dir

@bswartz bswartz force-pushed the NetApp:csi-raw-block-to-beta2 branch from 6bb2b3e to 71578d9 Mar 6, 2019

@k8s-ci-robot k8s-ci-robot added size/S and removed size/XS labels Mar 6, 2019

@bswartz

This comment has been minimized.

Copy link
Contributor Author

bswartz commented Mar 6, 2019

/retest

@msau42

This comment has been minimized.

Copy link
Member

msau42 commented Mar 6, 2019

Failing tests are not related to block.

I went through passed tests and I found one test case for raw block with CSI:

[sig-storage] CSI Volumes [Driver: csi-hostpath] [Testpattern: Dynamic PV (block volmode)] volumeMode should create sc, pod, pv, and pvc, read/write to the pv, and delete all created resources

@mkimuram @wongma7 are there more block tests that are supposed to run?

I think this is supposed to run but didn't?

  • provisioning.go: should create and delete block persistent volumes
@msau42

This comment has been minimized.

Copy link
Member

msau42 commented Mar 6, 2019

There's also this failure test case for drivers that dont support block:

[sig-storage] CSI Volumes [Driver: csi-hostpath-v0] [Testpattern: Dynamic PV (block volmode)] volumeMode should fail in binding dynamic provisioned PV to PVC
@bswartz

This comment has been minimized.

Copy link
Contributor Author

bswartz commented Mar 6, 2019

/retest

@wongma7

This comment has been minimized.

Copy link
Contributor

wongma7 commented Mar 6, 2019

those 2 tests ran in the latest results:
[sig-storage] CSI Volumes [Driver: csi-hostpath] [Testpattern: Dynamic PV (default fs)] provisioning should create and delete block persistent volumes 55s
[sig-storage] CSI Volumes [Driver: csi-hostpath-v0] [Testpattern: Dynamic PV (block volmode)] volumeMode should fail in binding dynamic provisioned PV to PVC 5m19s
there aren't any other tests specifically for block, we test provisioning, r/w, & binding. Other test suites: volumeio writes to files & volumes tests different filesystems etc.

@mkimuram

This comment has been minimized.

Copy link
Contributor

mkimuram commented Mar 6, 2019

there aren't any other tests specifically for block

Right. And once #74693 is merged, these tests will be also tested, except the tests that require different nodes. (Because hostpath driver will require specific node.)

@msau42

This comment has been minimized.

Copy link
Member

msau42 commented Mar 6, 2019

Maybe @mkimuram can you include these commits in your PR so that we can immediately validate the new tests against the csi hostpath driver?

@bswartz bswartz force-pushed the NetApp:csi-raw-block-to-beta2 branch from 71578d9 to 9a04b67 Mar 6, 2019

@bswartz bswartz force-pushed the NetApp:csi-raw-block-to-beta2 branch from 9a04b67 to 1493e68 Mar 6, 2019

@msau42

This comment has been minimized.

Copy link
Member

msau42 commented Mar 6, 2019

/lgtm
The same in-tree raw block tests are testing the hostpath csi driver now and are passing.

More test coverage in general for in-tree + csi will be part of #74693

@bswartz

This comment has been minimized.

Copy link
Contributor Author

bswartz commented Mar 6, 2019

/retest

@saad-ali
Copy link
Member

saad-ali left a comment

/lgtm
/approve

@k8s-ci-robot

This comment has been minimized.

Copy link
Contributor

k8s-ci-robot commented Mar 6, 2019

[APPROVALNOTIFIER] This PR is APPROVED

This pull-request has been approved by: bswartz, saad-ali

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

@msau42

This comment has been minimized.

Copy link
Member

msau42 commented Mar 7, 2019

/kind feature
/priority important-soon

@k8s-ci-robot k8s-ci-robot merged commit 6dbe989 into kubernetes:master Mar 7, 2019

17 checks passed

cla/linuxfoundation bswartz authorized
Details
pull-kubernetes-bazel-build Job succeeded.
Details
pull-kubernetes-bazel-test Job succeeded.
Details
pull-kubernetes-conformance-image-test Skipped.
pull-kubernetes-cross Skipped.
pull-kubernetes-e2e-gce Job succeeded.
Details
pull-kubernetes-e2e-gce-100-performance Job succeeded.
Details
pull-kubernetes-e2e-gce-device-plugin-gpu Job succeeded.
Details
pull-kubernetes-godeps Skipped.
pull-kubernetes-integration Job succeeded.
Details
pull-kubernetes-kubemark-e2e-gce-big Job succeeded.
Details
pull-kubernetes-local-e2e Skipped.
pull-kubernetes-node-e2e Job succeeded.
Details
pull-kubernetes-typecheck Job succeeded.
Details
pull-kubernetes-verify Job succeeded.
Details
pull-publishing-bot-validate Skipped.
tide In merge pool.
Details

@msau42 msau42 referenced this pull request Mar 9, 2019

Merged

CSI raw block to beta #12931

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
You can’t perform that action at this time.