SUSE Rancher and RKE2
SUSE Rancher ⧉ (Rancher Manager, Rancher Prime) is a management plane for Kubernetes clusters and not a Kubernetes distribution of its own. Simplyblock is installed into a downstream cluster managed by Rancher, never into the Rancher management cluster.
A Rancher-based deployment is made up of three layers, and the simplyblock requirements differ per layer:
| Layer | Examples | Simplyblock requirements |
|---|---|---|
| Management plane | Rancher Manager, Rancher Prime | None |
| Kubernetes distribution | RKE2 ⧉, K3s ⧉ | Privileged permissions on hardened clusters |
| Worker node OS | SUSE Linux Enterprise, SUSE Linux Micro, RHEL, Ubuntu | Supported Linux distribution |
Info
Not all worker nodes of a downstream cluster have to host storage components. Simplyblock uses node labels to identify nodes that participate in the storage cluster. Storage workloads can be isolated on dedicated worker nodes or node pools.
Prerequisites
The downstream cluster has to be operational, and cluster administrator privileges are required. kubectl is
configured against the downstream cluster with the kubeconfig provided by the Rancher UI, not with the kubeconfig of
the management cluster.
The cluster and its worker nodes have to meet the general simplyblock requirements:
Required Permissions
The Simplyblock CSI driver connects NVMe over Fabrics devices, formats them, and mounts them. Therefore, it runs as a privileged container.
By default, RKE2 ships a Pod Security Admission configuration that enforces the privileged standard cluster-wide, and
nothing else has to be granted. On a cluster provisioned with the CIS hardening profile, the restricted standard is
enforced instead, and only the RKE2 system namespaces are exempted from it. The simplyblock namespace therefore has to
be labeled with the exemptions itself.
apiVersion: v1
kind: Namespace
metadata:
name: simplyblock
labels:
pod-security.kubernetes.io/enforce: privileged
pod-security.kubernetes.io/enforce-version: latest
pod-security.kubernetes.io/audit: privileged
pod-security.kubernetes.io/audit-version: latest
pod-security.kubernetes.io/warn: privileged
pod-security.kubernetes.io/warn-version: latest
kubectl apply -f simplyblock-namespace.yaml
The namespace is created before the operator is installed. Otherwise, the Helm chart creates an unlabeled namespace of its own, and the exemptions never take effect.
CPU Topology and Core Isolation
The kubelet CPU topology and the core isolation of the storage nodes are configured by simplyblock through the Helm values of the operator. The cluster definition of RKE2 or K3s stays untouched:
| Helm value | Purpose |
|---|---|
storagenode.enableCpuTopology |
Enables the CPU topology configuration on storage nodes |
storagenode.isolateCores |
Enables the automatic core isolation |
storagenode.skipKubeletConfiguration |
Skips the kubelet CPU topology configuration if already set up |
storagenode.reservedSystemCpu |
Reserves CPU cores for the host and system workloads |
The full list of values is documented in the Kubernetes Reference.
SUSE Linux Micro Nodes
SUSE Linux Micro ⧉ (SL Micro, formerly SLE Micro)
is supported as a worker node operating system and needs no image customization. Huge pages are allocated by
simplyblock automatically, and /etc is writable, so configuration drop-ins are applied directly.
Additional packages cannot be installed in place, because the root filesystem is read-only. Such a change is applied
with transactional-update and takes effect after a reboot.
Installation of Simplyblock
To install the simplyblock components on a Rancher-managed cluster, follow the instructions to install the Simplyblock Operator and follow the instructions to deploy the storage nodes and CSI driver.