2 node proxmox cluster, w/rpi as the qnetd tiebreaker
linstor cluster running on the PVE nodes (with same rpi as the drbd tiebreaker)
Several utility VMs running on PVE with linstor backed storage
Several VMs setup as a kubernetes kluster (3x control plane, 2x worker)
The issue I have is that now I want to install piraeus in that kubernetes kluster, and configure it to use the existing linstor cluster as an external linstor cluster. Currently piraeus 2.7.1 points to linstor controller/satellite versions v1.29.2. The Proxmox repo, and the Ubuntu PPA (used by RPi), only have versions 1.30.4-1. My proxmox/rpi setup is currently held at version 1.30.2-1. So either of those 2 versions would work, but not 1.29.2.
The piraeus repo’s release-2.8.0 branch would indicate the next piraeus release will point to linstor 1.30.4. So this brings up some questions:
If I install the not-yet-released 2.8.0 of piraues and it uses linstor satellite/controller versions 1.30.4, will that work with proxmox/rpi after I upgrade to 1.30.4-1. Based on the finding in the other ticket, I would think no, because the version check is done on the entire version string.
How can I use external linstor cluster in piraeus if none of the available versions match it’s version?
Is it acceptable to patch the piraues yaml files and have it point to 1.30.4-1? This is what I’m tempted to do, but I’m worried about the -1 suffix.
To be fair, I haven’t actually tried this yet, but I’m quite certain I would hit the version mismatch issue, and reverting builds is not possible since the binaries are removed from the repos. So I’m hesitant to try without some feedback.
@kermat you got involved in the other ticket about versioning issues between proxmox repo and the ubuntu PPA, perhaps you have some guidance here?
I went ahead and tried it, and to my surprise it seems to “just work”. So I have not upgraded the linstor components on the PVE/Rpi. They are still 1.30.2-1. I then installed the not-yet-released release-2.8.0 branch of piraeus operator from github, which points to 1.30.4. However, the linstor-satellite pod that was started after pointing to my external linstor controller is using the container versioned with 1.30.2. And then I’m able to see them in the linstor node list output:
(ignore the pve1-pve3 nodes, they are powered down on purpose).
So it would seem that the piraeus operator has some logic implemented to run the version of the linstor-satellite container that matches the existing external linstor cluster.
$ kubectl get -n piraeus-datastore pod linstor-satellite.pvek8s-worker-1-wclhf -o yaml|grep piraeus-server| head -n 1
image: quay.io/piraeusdatastore/piraeus-server:v1.30.2