How to Configure Longhorn for Specific Node Usage?

0
9
Asked By TechieNinja92 On

I'm currently working with Longhorn and have a few requirements I need help with. I want to limit storage writes to only three specific nodes that have available disks. Additionally, I need to ensure that all nodes in my cluster can access Longhorn storage. I'm planning to deploy everything using Helm and would like to make adjustments through a config.yaml file. I've already set up labels and taints on my nodes, but it seems like Longhorn isn't cooperating with my setup. If anyone has experience with this and can provide a sample config.yaml or other insights, I'd really appreciate it!

3 Answers

Answered By CloudCommander77 On

From my experience, the Longhorn documentation is pretty spot-on. I found that enabling the "Create Default Disk on Labeled Nodes" option did the trick for me. On the nodes where I wanted the disks, I applied this label: `node.longhorn.io/create-default-disk=true`. This way, Longhorn only sets up storage on the labeled nodes, but I could still utilize Longhorn storage classes across all nodes. You can check out the official guide for more info: [Longhorn Documentation](https://github.com/longhorn/longhorn/blob/master/enhancements/20200319-default-disks-and-node-configuration.md).

HelloAgain123 -

Thanks for the tip! I'm struggling with Longhorn placing resources on my control nodes. Do you have any recommendations on how to prevent that? Maybe taints on the control nodes?

Answered By SysAdminSam On

For labeling nodes, you can either use the Longhorn CLI or the UI. After labeling, ensure to set node affinity on your storage class to match the specified labels. I’ll provide more updates once I’m awake and can dive deeper into this!

Answered By DockerDiva44 On

I stick with the official Longhorn Helm chart for deployment. Here’s a snippet of the values I use:

```yaml
defaultSettings:
defaultDataPath: "/opt/longhorn/"
createDefaultDiskLabeledNodes: true
ingress:
enabled: true
ingressClassName: kong
host: ""
tls: false
path: /longhorn/
pathType: Prefix
annotations:
konghq.com/strip-path: "true"
persistence:
defaultClassReplicaCount: 1
```

Don’t forget to label the nodes you want Longhorn to use for disks like this: `kubectl label nodes node_name node.longhorn.io/create-default-disk=true`. This setup has worked really well for me!

BlockBuster99 -

Thanks for sharing! Do you have advice on avoiding deployments on control nodes? Should I apply taints to those?

Related Questions

LEAVE A REPLY

Please enter your comment!
Please enter your name here

This site uses Akismet to reduce spam. Learn how your comment data is processed.