Debian linstor?

Has anyone had any luck at all in installing Linstor on their Debian server?

I would like to run Debian Bookworm with my setup but it’s been very hard to get everything working and even with Docker it doesn’t seem to work right for the satellite and controllers. I have used the releases from linbit website and tried to use their git repo as well. It works very easily with Ubuntu which is nice, but I would like to avoid Ubuntu at all costs.

Anyone have any insight in this?

As an example:
Am I suppose to run the docker images with any special parameters? I can’t run any linstor commands if I just run the docker image. Documentation is pretty bad, im hoping someone knows something?

@bensmrs what have you been deploying your environment on?

So far I’ve done my own testing on Ubuntu but I’ll eventually want to run it on Debian too. Though in my case I’ll only really care about the Satellites, the Controller can run in a container or VM and so can be on Ubuntu easily enough.

On Debian, this can get tricky. I don’t recommend using LINBIT’s PPA, because Ubuntu PPAs are notoriously not that well supported on Debian, but I think you can still get it working. LINBIT only makes available their official Debian packages for Proxmox (the full repos require a subscription). Would be nice to have that packaged in Debian :slight_smile:

Step 1: Use LINBIT’s Proxmox repository

My current environment is running Bookworm (I still have to test if it can be upgraded to Trixie), so the corresponding Proxmox version is 8. I’m using the following sources file:

Types: deb
URIs: https://packages.linbit.com/public
Suites: proxmox-8
Components: drbd-9
Architectures: amd64
Signed-By: /etc/apt/keyrings/linbit.asc

Note that LINBIT provides a linbit-keyring package; do NOT install it, as it installs their key in trusted.gpg.d. Unarchive the linbit-keyring package to find the key, or use this one:

-----BEGIN PGP PUBLIC KEY BLOCK-----

xsFNBGZsIboBEADLvvRG52QXsGL7d33xOYQzxjriCdLsXTnBhsC/bQc4dpQBfAp7
FEYhp93NcrwwPXLp5thYHfg3RF/O5pbyvpAnKZJt0rXMEvwy2K3JVJL7ddYs4cU6
I4m1n6W+YYQydEeMmZUFc77DNwQ74Dw3Xx/natz1dK2Y9S0pyBPb2ZMtWwDMuDpV
P/Y/W/wuDMWusbtSjVb+4TXJy046vPBobzi2jtQyaPJFfqwRiYqJYrQmsnns7L3F
ksd63Y4veqK9rvNiYDVXZNsXja0An59rUdwhMlHj/wJWhr23SnSbcQv3hkvY/I19
YT5FD9Y9srmRG2tIiQbK2rAjLqjKNGvYINRBlwnLDCCnoiCLJTahi2CT90aOr0Ae
7QKITi9cpDZJO+/vaLw7JnHEmhpt5W1WySFtSgSQWIYdkhF2Rx1aOkQwT/Ig6rDV
tkA8CjJ4ACMYXAx+zh+pxIRg2JNkLoGdl7pc/+5f4VV9iup3VW5U9MoC3KzZBDGJ
/DNF9x/1Rkf/H7tP3pYU3UmaPOCMvOx3zuwo1qqEUT9pKxybZo+lOPdNVgZbAuKY
C2jJa3Mv64IqyBds9tfZY8Sj+pbhfSvgTSmXR0WARXPS3po1PjUicnrStc+cWfEY
g7vh4Wn2EsExlgmdARvDl1TgENQCLshTI2jTIPu9XXUZlDVltGJZuGem4wARAQAB
zSlMSU5CSVQgUGFja2FnZSBhbmQgUmVwb3NpdG9yeSBTaWduaW5nIEtlecLBjgQT
AQoAOBYhBE5ThVRnJtE8tkmHLPwFox24Jv5IBQJmbCG6AhsDBQsJCAcCBhUKCQgL
AgQWAgMBAh4BAheAAAoJEPwFox24Jv5IaTIP/0qHRPuK0cKPsMEw7Bx+y9liST9y
XC6xEbcWEPm9qkjW73/ZdTLRKI4Ty9UGH7Q0zQ1otUdGYOolidtDAYKS2V3++PwQ
mbESJJiKOeKs1rjXeEBUr0usyhsL3P4/hFLCMf1ctgZNWklanu/N/aMQVjTQoYJu
rDCxq1y58/3hAyrWQ2kITHjVvpP5cXqXpDlwiLKy+oYNxvUdE6FUzNbuQ6htzWyQ
ugmMyjjqjlfD6gC7OqDcXk9eUf7AHbgf5+UQ+RbjMZ+YBoH9gihL/1TI1Ith50NX
5cVRMyscZ9inWFK8Fw2ubD8ZifmIQfrMZJMW0iajgJhX0GAqczl54Ihb08EODeRO
82oOgoeIJ7H14y2WfYA7Pb2Zap6WLrvA+k3arsr94aSDGutpThTBABR9F7F3fOLo
8dlv+jGXnsHtTeU9qh2+ZifyPZ3BVukyizoQk+TDxOavqNryQc7zLpwKsGymRJjP
M3ODV1fUVm6hLgPSMJP0tLakvK76+o/RCr5z5gCUyxjnnV0pbkYLhhE7FtLeSoPb
rxmNRzSFfdXk2uD1idlh54559JdSSh/HzqdZ1biizLs+xJK8JZPZI+3F/whVylwU
iwOhLRojCowfN2DhiiAencH0fsjgec3PT51bdCU6agvH8f6l1ivAuRb1RGT9WGpo
Xe+WxMjgfi4lbTsF
=m29F
-----END PGP PUBLIC KEY BLOCK-----

Save it to /etc/apt/keyrings/linbit.asc, apt update, and you’re good to go :slight_smile:

Step 2: Install DRBD 9

apt install linux-headers-amd64 drbd-dkms

Optional, but required if you’re using secure boot: register your DKMS MOK

yes dkms | head -n 2 | mokutil --import /var/lib/dkms/mok.pub
Reboot and enroll the key when prompted (with the password dkms).

Step 3: Install LINSTOR

For a hyperconverged setup, apt install linstor-client linstor-controller linstor-satellite.
You may drop whichever package you don’t need. On my setup, I also need drbd-reactor.

I have worked on an Ansible role at $job to automate everything and reconfigure LINSTOR to have a fully distributed controller. I’ll release it in a few days (but it will need to be adapted, as it’s only meant to work on my environment).

@bensmrs thank you !