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

Add a storage-provisioner-gluster addon #3521

Merged
merged 3 commits into from
Jan 16, 2019

Conversation

nixpanic
Copy link
Contributor

@nixpanic nixpanic commented Jan 9, 2019

This addon makes it easy for users to deploy Gluster with dynamic provisioning. A simple

$ minikube addons enable storage-provisioner-gluster

is sufficient to get the required Pods and StorageClass.

The included README.md explains a little more how things work and how users can use the PVCs that get dynamically created for the user.

The 2nd and 3rd patches in this PR make the last enabled storage addon the default StorageClass. That means if storage-provisioner-gluster is enabled as last, the existing StorageClasses will have their is-default annotation set to false, and for storage-provisioner-gluster it is set to true. The same counts for other orders in enabling.

With this addon dynamic provisioning based on Gluster can be enabled:

    $ minikube addons enable storage-provisioner-gluster

This will deploy several pods in a new 'storage-gluster' namespace:

 - glusterfs, storage service with a 10GB sparse /srv/fake-disk.img
 - heketi, a smart Gluster volume manager
 - glusterfile-provisioner, external-storage provisioner

In addition, the StorageClass 'glusterfile' will be created. It is
currently not configured as default StorageClass, so PVCs need to refer
to the new StorageClass.
…-default

There can only be one StorageClass be marked as default. When the
storage-provisioner-gluster addon is enabled, users expect it to be the
default StorageClass.

Instead of removing the "is-default" annotation from the other
StorageClasses, set it to "false". This leaves only the "glusterfile"
StorageClass as "is-default".
When a storage provider is enabled (storage-provisioner-glusterfile),
mark it "is-default" and set "is-default" to "false" in all other
StorageClasses.
@k8s-ci-robot k8s-ci-robot added cncf-cla: yes Indicates the PR's author has signed the CNCF CLA. size/XL Denotes a PR that changes 500-999 lines, ignoring generated files. labels Jan 9, 2019
@minikube-bot
Copy link
Collaborator

Can one of the admins verify this patch?

@tstromberg
Copy link
Contributor

@minikube-bot OK to test

@tstromberg tstromberg added the lgtm "Looks good to me", indicates that a PR is ready to be merged. label Jan 14, 2019
@tstromberg tstromberg merged commit 8bc8816 into kubernetes:master Jan 16, 2019
@k8s-ci-robot
Copy link
Contributor

[APPROVALNOTIFIER] This PR is APPROVED

This pull-request has been approved by: nixpanic, tstromberg

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

@k8s-ci-robot k8s-ci-robot added the approved Indicates a PR has been approved by an approver from all required OWNERS files. label Jan 16, 2019
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
approved Indicates a PR has been approved by an approver from all required OWNERS files. cncf-cla: yes Indicates the PR's author has signed the CNCF CLA. lgtm "Looks good to me", indicates that a PR is ready to be merged. size/XL Denotes a PR that changes 500-999 lines, ignoring generated files.
Projects
None yet
Development

Successfully merging this pull request may close these issues.

4 participants