Skip to main content

Kasten Kickstart Part 2. K3s install on Rocky Linux

  • December 23, 2025
  • 8 comments
  • 75 views

Geoff Burke
Forum|alt.badge.img+22

The Kasten Kickstart Part 2. Installing K3s on Rocky Linux!

We will install K3s a lightweight Kubernetes Distribution

curl -sFl https://get.k3s.io | sh -s - --disable=local-storage

Create a folder in your home directory .kube

mkdir .kube

 

Copy the generated Kubeconfig file and change ownership to your local username:

 

sudo cp /etc/rancher/k3s/k3s.yaml .kube/config

sudo chown youruser:youruser .kube/config

 

We need to make sure that your shell will read from this Kubeconfig file:

Add the following to your .bashrc file, vi or nano .bashrc

export KUBECONFIG=/home/yourusername/.kube/config

To make the changes kick in right away:

exec bash

 

Now test:

kubectl get nodes

 

To cut down on typing we can create aliases and enable auto completion. In Rock Linux bash autocompletion is not installed by default so will install that and push the necessary commands for our shell:

dnf install bash-completion -y

source <(kubectl completion bash) # set up autocomplete in bash into the current shell, bash-completion package should be installed first.
echo "source <(kubectl completion bash)" >> ~/.bashrc # add autocomplete permanently to your bash shell.

I will create an alias called k but you can choose whatever suits you, edit .bashrc and add:

alias k=kubectl
complete -o default -F __start_kubectl k

 

We will use Helm to install our storage system Longhorn and later Kasten. We need to install that as well:

sudo dnf install helm

helm list

 

Thinking ahead Kasten uses csi snapshots to create backups and by default K3s does not have the external snapshotter installed, follow these steps to install:

 

git clone https://github.com/kubernetes-csi/external-snapshotter.git

cd external-snapshotter

kubectl kustomize client/config/crd | kubectl create -f -

kubectl -n kube-system kustomize deploy/kubernetes/snapshot-controller | kubectl create -f -

 

Now for our storage system Longhorn. Longhorn requires open-iscsi to be installed.

sudo dnf install iscsi-initiator-utils -y

 

Remember in our lab we are using a single node Kubernetes installation so we don't want Longhorn to try and create its default number of replicas which are 3, since we only have 1 node.

We can influence the way Helm installs its helm charts by using value files.

Let's create the following values file: longhorn_values.yaml

defaultSettings:
defaultReplicaCount: "1"

persistence:
defaultClassReplicaCount: 1

 

Now we are ready to install Longhorn:

helm install longhorn longhorn/longhorn --namespace longhorn-system --create-namespace --values longhorn_values.yaml

 

Finally we need to create a volumesnapshotclass for Longhorn.

vi or nano longhorn_volumesnapshotclass.yaml

kind: VolumeSnapshotClass
apiVersion: snapshot.storage.k8s.io/v1
metadata:
name: longhorn
driver: driver.longhorn.io
deletionPolicy: Delete
parameters:
type: snap

 

Apply the manifest:

k apply -f longhorn_volumesnapshotclass.yaml

 

 

8 comments

Chris.Childerhose
Forum|alt.badge.img+21
  • Veeam Legend, Veeam Vanguard
  • December 23, 2025

Excellent episode. 👍


AndrePulia
Forum|alt.badge.img+9
  • Veeam Vanguard
  • December 23, 2025

@Geoff Burke Oh Geoff, I really need to start my Kasten/Kubernet studies ! thank you for the video.


michaelcade
Forum|alt.badge.img+7
  • Product Strategy
  • December 24, 2025

Geoff taking the Veeam Vanguard status to the next level with Veeam green bedding behind him! 

Big fan of K3s…. 


michaelcade
Forum|alt.badge.img+7
  • Product Strategy
  • December 24, 2025

Geoff, you might have covered this but what is the make up of the VM and its storage? Did you create a VM with multiple disks? 

OS is using one of those disks? Then Longhorn using the data disk? I might have missed that at the start of day 1? 

Also love your #BashHacks I am a ZSH shell user but there is a lot to be said about learning Linux here to deal with Kubernetes. 
 


Geoff Burke
Forum|alt.badge.img+22
  • Author
  • Veeam Vanguard
  • December 24, 2025

Geoff, you might have covered this but what is the make up of the VM and its storage? Did you create a VM with multiple disks? 

OS is using one of those disks? Then Longhorn using the data disk? I might have missed that at the start of day 1? 

Also love your #BashHacks I am a ZSH shell user but there is a lot to be said about learning Linux here to deal with Kubernetes. 
 

VM is coming in todays i.e. Dec 24 Part 4. I am trying to do this bit by bit :) 


michaelcade
Forum|alt.badge.img+7
  • Product Strategy
  • December 25, 2025

No I mean the Rocky VM on Proxmox? 
 

I just wondered how this looks 


Geoff Burke
Forum|alt.badge.img+22
  • Author
  • Veeam Vanguard
  • December 25, 2025

No I mean the Rocky VM on Proxmox? 
 

I just wondered how this looks 

got it 😀 . Some minor things. like by default in the minimal Rocky iso git is not installed and some other things but nothing we can’t get used to 😅


Geoff Burke
Forum|alt.badge.img+22
  • Author
  • Veeam Vanguard
  • December 31, 2025

Instructions added, please tell me if I made a mess of anything 🤣