Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Request for a -longhorn variant #1432

Open
robertwbl opened this issue May 23, 2024 · 4 comments
Open

Request for a -longhorn variant #1432

robertwbl opened this issue May 23, 2024 · 4 comments

Comments

@robertwbl
Copy link

Describe the solution you'd like:
Longhorn has the following dependencies:

  • Make sure bash, curl, findmnt, grep, awk and blkid has been installed in all nodes of the Kubernetes cluster.
  • Make sure open-iscsi has been installed, and the iscsid daemon is running on all nodes of the Kubernetes cluster.

All of these except open-iscsi are included in SLE Micro, and given Longhorn is part of the Rancher family it feels appropriate to include this package so that when building a seed image via Elemental, we can use Elemental nodes as storage nodes with Longhorn in our cluster.

Anything else you would like to add:
I tested a deployment of Longhorn on cluster nodes that didn't have this dependency and can confirm the deployment fails

Environment:

  • Elemental release version (use cat /etc/os-release): v2.0.2
  • Rancher version: v2.8.4
  • Kubernetes version (use kubectl version): v1.28.9+k3s1
  • Cloud provider or hardware configuration: Harvester
@robertwbl
Copy link
Author

Just to note that although not explicitly mentioned, the iscsi_tcp kernel module is also a requirement. Without it volumes will fail to attach to nodes and longhorn instance-manager logs will show: libkmod: kmod_module_insert_module: could not find module by name='iscsi_tcp'\niscsiadm: Could not insert module tcp. Kmod error -2\niscsiadm: iSCSI driver tcp is not loaded. Load the module then retry the command.\niscsiadm: Could not perform SendTargets discovery: iSCSI driver not found. Please make sure it is loaded, and retry the operation\n: exit status 12"

More details here: longhorn/longhorn#1853

@robertwbl
Copy link
Author

Another gottcha - If you want to use a Longhorn volume with the access mode of ReadWriteMany (RWX) then nfs-utils or nfs-common is also required, else you'll run into errors along the lines of: [MountVolume.MountDevice failed for volume pvc-foo : rpc error: code = Internal desc = mount failed: exit status 32 Mounting command: /usr/local/sbin/nsmounter Mounting arguments: mount -t nfs -o :/pvc /var/lib/kubelet/plugins/kubernetes.io/csi/driver.longhorn.io/globalmount Output: mount: /var/lib/kubelet/plugins/kubernetes.io/csi/driver.longhorn.io/ globalmount bad option; for several filesystems (e.g. nfs, cifs) you might need a /sbin/mount.<type> helper program.]

@kkaempf
Copy link
Contributor

kkaempf commented Jun 3, 2024

We should probably define a -longhorn variant 🤔

@kkaempf kkaempf added kind/enhancement New feature or request area/longhorn labels Jun 3, 2024
@kkaempf kkaempf changed the title Add the open-iscsi package to Micro for Rancher Request for a -longhorn variant Jun 3, 2024
@kkaempf kkaempf added this to the Micro6 milestone Jun 3, 2024
@kkaempf
Copy link
Contributor

kkaempf commented Jun 5, 2024

open-iscsi is in the baremetal variant for SL Micro 6.0 (but might be missing from 5.5 🤔 )

@kkaempf kkaempf modified the milestones: Micro6, Micro6.1 Jun 11, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
Status: 🗳️ To Do
Development

No branches or pull requests

2 participants