Dedicated nodes for longhorn disks

Hi,

I would like to know how to dedicate a node so it can only run longhorn!

We recently built our cluster with RKE and rancher, 3 controlplane nodes for HA and the rest are workers.
We use a local hosting company, and the management doesn’t want to open that up yet. So we pay monthly extra for each VM that has big ssd disks in it.

My idea was to open up the 3 controlplane nodes to become workers too, but I would only allow longhorn to run on it.

That way, we would only need 3 VMs with big disks.

Then from the UI, I would select these nodes to have the disks. 3 nodes, longhorn likes the 3 times redundancy, (ceph that I usually work with likes it that way too), and if I can limit these 3 nodes to run only the longhorn namespace tasks, the extra load on CPU and MEM should be somewhat consistent too.

Is this adviseable? Does this compromise the HA function of the controlplane nodes? What is the cleanest way to do this?

Thx in advance for the wisdom :bowing_man:

I think you can try:

  1. Set tolerations for Longhorn. Here is the doc: https://longhorn.io/docs/1.1.0/advanced-resources/deploy/taint-toleration/
  2. Add the corresponding taints to the 3 nodes designated for Longhorns.

Then any workloads without the tolerations cannot be launched on the 3 nodes.

I set the taint toleration but i end up reinstalling LongHorn cause suddenly i saw a message that my nodes where not ready and i couldn’t get them ready again.

What works for me is the option in Longhorn to disable the nodes you don’t want to take on storage.