This article is aimed at open source technology enthusiasts who are interested in container technologies and have hands-on experience with Kubernetes.
A special interest group (SIG) is a community within a larger organisation. Its members have a shared interest in advancing a specific area of knowledge, learning or technology, for which they co-operate to affect or to produce solutions within their particular field, and may communicate, meet and organise conferences. Kubernetes Special Interest Groups are designed for developers and other community members to meet regularly and bond over their interests within the Kubernetes community. They contribute to an area of the code base, to a sub-project or a related one, and have some ownership over the vision and technical decisions. SIGs are used as a governance and scaling mechanism. As Kubernetes has become bigger and more people want to contribute to it, there is a need to prevent the community from evolving into a monolithic structure. Hence the community collectively decided to distribute the decision making, and SIGs are its way of doing that.
The Kubernetes SIGs do not entirely work on another technology; instead, they work as an integrator or glue to add support for those technologies in the Kubernetes ecosystem. For example, take a look at the lists of SIGs — from AWS and OpenStack to Big Data and Scalability; there’s a place for everyone to contribute and instructions for forming a new SIG if your special interest isn’t yet covered. As a member of the Kubernetes community, you are welcome to join any of the SIG meetings you are interested in. No registration is required. If you have a special interest in how Kubernetes works with another technology, first check out the number of SIGs in operation. If none seems to fit your requirement, feel free to start a new one.
The Kubernetes Storage SIG is a working group within the Kubernetes contributor community and, as the name suggests, its members are interested in storage and volume plugins.
SIG Storage is responsible for:
- Ensuring that different types of file and block storage — which includes ephemeral, persistent, local or remote storage — are available
- Availability of storage wherever a container is scheduled, which includes life cycle operations like provisioning/creating, attaching, mounting, unmounting, detaching and deleting volumes
- Performing storage capacity management like determining container ephemeral storage usage, volume resizing, etc
- Influencing scheduling of containers based on storage, which in turn is based on data gravity, availability, etc
- Performing other generic operations on storage like snapshotting
- The scope of Kubernetes Storage SIG includes the following volume operations:
- Creation of persistent volume claims and persistent volumes
- Storage classes and dynamic provisioning
- Managing Kubernetes volume plugins
- Adhering to Container Storage Interface (CSI)
- Management of secret volumes, ConfigMap volumes, DownwardAPI volumes and EmptyDir volumes in association with Node SIG
- SIG Storage is not responsible for managing the following:
- The data path of remote storage (GCE PD, AWS EBS, NFS, etc)
- How bits are transferred
- Where bits are stored
- The container writable layer
- Vendor-specific storage plugins/drivers
The recently released Kubernetes 1.13 has added options for topology-aware volume provisioning. Prior to this feature, dynamic provisioning was handled independently from pod scheduling, resulting in a PersistentVolumeClaim (PVC) getting created in an entirely different zone and/or in pods that could not be completely scheduled for various reasons. The new feature improves the multi-zone cluster experience with persistent volumes. It allows Kubernetes to make intelligent decisions when dynamically provisioning volumes by getting scheduler input on the best place to provision a volume for a pod.
Contributing to Storage SIG
Here is some basic information that will help anyone interested in contributing to Storage SIG:
- There are SIG public meetings every two weeks, on Thursdays, at 10.30 p.m. IST (9 a.m. PT).
- If readers are interested in contributing to the storage features in Kubernetes, they should read the storage SIG guide for new contributors at https://github.com/kubernetes/community/blob/master/sig-storage/contributing.md.
- They can join the discussion on Kubernetes Slack at the sig-storage channel.
- Documentation for currently supported volume plugins is available at https://kubernetes.io/docs/concepts/storage/volumes/.