/kubestr

Primary LanguageGoApache License 2.0Apache-2.0

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.

asciicast

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 check if a StorageClass supports a block mount -

  • Run ./kubestr blockmount -s StorageClass

Roadmap

  • In the future we plan to allow users to post their FIO results and compare to others.