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

Blogs

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.