Kubestr
What is it?
Kubestr is a collection of tools to discover, validate and evaluate your kubernetes storage options.
As adoption of Kubernetes grows so have the persistent storage offerings that are available to users. The introduction of CSI (Container Storage Interface) has enabled storage providers to develop drivers with ease. In fact there are around a 100 different CSI drivers available today. Along with the existing in-tree providers, these options can make choosing the right storage difficult.
Kubestr can assist in the following ways-
- Identify the various storage options present in a cluster.
- Validate if the storage options are configured correctly.
- Evaluate the storage using common benchmarking tools like FIO.
- View the contents of a PersistentVolumeClaim in a graphical filesystem browser.
Resources
Video
- Cloud Native Live: Introducing Kubestr – A New Way to Explore your Kubernetes Storage Options
- Introducing Kubestr - A handy tool for Kubernetes Storage
- A new way to benchmark your kubernetes storage DoK Talks #71
Blogs
- Benchmarking and Evaluating Your Kubernetes Storage with Kubestr
- Kubestr: The Easy Button for Validating and Debugging Your Storage in Kubernetes
- Introducing Kubestr - A handy tool for Kubernetes Storage
Using Kubestr
To install the tool -
- Ensure that the Kubernetes context is set and the cluster is accessible through your terminal. (Does kubectl work?)
- Download the latest release here.
- Unpack the tool and make it an executable
chmod +x kubestr
.
To discover available storage options -
- Run
./kubestr
To run an FIO test -
- Run
./kubestr fio -s <storage class>
- Additional options like
--size
and--fiofile
can be specified. - For more information visit our fio page.
To check a CSI drivers snapshot and restore capabilities -
- Run
./kubestr csicheck -s <storage class> -v <volume snapshot class>
To view the contents of a PersistentVolumeClaim in a graphical filesystem browser -
- Run
./kubestr browse <pvc name> -n <namespace> -v <volume snapshot class>
Roadmap
- For future work please refer to our GitHub issues page. Feel free to post here for any feature requests.
Contributing
- Forking and contributing to this project are very welcome. Please visit our github page here.