This guide will walk you through all the steps to successfully install and configure KumoScale™ Storage Node software running in Managed Mode.
KumoScale control cluster software for Managed Mode can be installed and configured for either:
- Kubernetes™ Clusters, with Provisioning and volume management support using control operators with your own Kubernetes cluster with high availability KumoScale operators and Provisioner pods.
- Bare Metal Provisioner servers, with Provisioning and volume management supported using the Command Line Interface or REST API.
Note: If you are using KumoScale software in Appliance Mode follow the instructions in KumoScale Installation Guide for Appliance Mode.
The installation described in this manual consists of installing and configuring the following KumoScale software for Managed Mode:
- KumoScale Storage Node Modules, includes a target kernel component, an embedded engine, and Command Line Interface (CLI) for management and control. The storage node software is installed directly on your OS and kernel.
- KumoScale Operators (for use with Kubernetes clusters only) to manage KumoScale services. There are two control operators that run as services on the Kubernetes cluster: the install operator and the configuration operator. These enable you to use custom resource (CR) files and operators to configure and manage storage. This feature is not available when using bare-metal KumoScale Provisioner servers.
- KumoScale Provisioner, a service for provisioning, analyzing, and managing storage nodes. When using the Provisioner with a Kubernetes cluster, KumoScale software uses an existing pod you’ve configured for load balancing and references storage requirements and analytics data to determine the best location for allocating requested volumes. When using KumoScale Provisioner on bare-metal, the provisioner is installed as a service via rpms.
Additional components that provide internal logging and analysis can be added to the storage cluster.
- See the KumoScale documentation web site for information on installing KumoScale software for Ansible™, CSI Driver, and OpenStack ™ orchestration.
- If you are interested in deploying third-party applications such as Fluentd™, Loki™, Prometheus™, or Grafana™, contact technical support for assistance. Our team will advise you on how to deploy and customize the process.
Before you Begin
The KumoScale Provisioner service is a software entity that provides the following functionality:
- Maintains relevant KumoScale software inventory of the data center.
- Extracts analytic information from an analysis server (relevant for future versions).
- Receives volume requests with various storage classes and criteria.
- Selects the best location for a requested volume according to storage class and criteria.
- Maintains volume mapping across the data center.
- The KumoScale Provisioner Software is delivered as a binary container for Kubernetes deployment or as an rpm package for installation on bare-metal servers.
Before you begin the installation, confirm the following requirements have been met depending on whether you are using the KumoScale software on bare-metal or with a Kubernetes cluster.
- KumoScale storage node software may be installed on RHEL 8, CentOS™ 7/8, and Ubuntu™ 20.04.3 LTS with kernel 5.x. It has been tested on CentOS 7.9 and CentOS 8.3 with kernel 5.10.61, and Ubuntu 20.04.3 LTS with kernel 5.4.0-91-generic. The Provisioner for bare-metal also requires Java™ Runtime Environment (JRE) 1.8 and above.
- You have read the Release Notes documentation for additional information on installation and use of KumoScale software products.
- If using Managed Mode with an existing Kubernetes cluster, ensure:
- The version installed is one of 1.15, 1.16-1.19, or 1.20- 1.22.
- It is installed and configured for high-availability according to the best practices of the selected distribution.
- A pod is configured to support load balancing. This pod will act as the Provisioner load balancer. We recommend using metallb. See https://metallb.org/ for more information.
This document is written for storage administrators. It is assumed that the reader has a working knowledge of storage, networking, and Kubernetes orchestration.
Installation and Configuration Steps
This guide will walk you through all the steps to installing and configuring KumoScale software for Managed Mode. You will need to complete these steps in the following order as documented in the sections listed.
- Installing and Using KumoScale Software for Storage Nodes applies to both KumoScale Provisioner software on bare-metal and Kubernetes cluster environments. It explains how to install and maintain KumoScale software on target storage nodes. This includes details on platform settings, required kernel modules, the KumoScale Engine, and KumoScale CLI.
- Installing and Using KumoScale Operators applies only to those using an existing Kubernetes cluster. It explains how to install the KumoScale operators and use them with Custom Resource (CR) files to manage your storage environment.
- Installing and Configuring KumoScale Provisioner provides instructions on how to install and configure the KumoScale Provisioner specific to whether you are using KumoScale Provisioner on bare metal or with an existing Kubernetes cluster.
- Configuring Storage Nodes provides the high level steps for configuring storage nodes specific to whether you are using KumoScale software on bare metal or with an existing Kubernetes cluster
In addition the following section is provided for general reference for setting up compute nodes for deployment, whether under Kubernetes, OpenStack, or Ansible software.
- Installing the NVMe™ Host Module Patch on Compute Nodes provides instructions on how to compile and install the NVMe host module patch required for each compute node. This step is independent of KumoScale software but is needed to complete a deployment.
Additional documentation, including the KumoScale HCL document, User Manual, CSI user manual, OpenStack user manual, and Ansible user manual, are available on the KumoScale documentation web site.